19 #include <QDialogButtonBox> 20 #include <QPushButton> 23 #include "ui_sonivoxsettingsdialog.h" 33 const QString SonivoxSettingsDialog::QSTR_PREFERENCES = QStringLiteral(
"SonivoxEAS");
34 const QString SonivoxSettingsDialog::QSTR_BUFFERTIME = QStringLiteral(
"BufferTime");
35 const QString SonivoxSettingsDialog::QSTR_REVERBTYPE = QStringLiteral(
"ReverbType");
36 const QString SonivoxSettingsDialog::QSTR_REVERBAMT = QStringLiteral(
"ReverbAmt");
37 const QString SonivoxSettingsDialog::QSTR_CHORUSTYPE = QStringLiteral(
"ChorusType");
38 const QString SonivoxSettingsDialog::QSTR_CHORUSAMT = QStringLiteral(
"ChorusAmt");
40 SonivoxSettingsDialog::SonivoxSettingsDialog(QWidget *parent) :
42 ui(new Ui::SonivoxSettingsDialog)
45 ui->combo_Reverb->addItem(QStringLiteral(
"Large Hall"), 0);
46 ui->combo_Reverb->addItem(QStringLiteral(
"Hall"), 1);
47 ui->combo_Reverb->addItem(QStringLiteral(
"Chamber"), 2);
48 ui->combo_Reverb->addItem(QStringLiteral(
"Room"), 3);
49 ui->combo_Reverb->addItem(QStringLiteral(
"None"), -1);
50 ui->combo_Reverb->setCurrentIndex(4);
52 ui->combo_Chorus->addItem(QStringLiteral(
"Preset 1"), 0);
53 ui->combo_Chorus->addItem(QStringLiteral(
"Preset 2"), 1);
54 ui->combo_Chorus->addItem(QStringLiteral(
"Preset 3"), 2);
55 ui->combo_Chorus->addItem(QStringLiteral(
"Preset 4"), 3);
56 ui->combo_Chorus->addItem(QStringLiteral(
"None"), -1);
57 ui->combo_Chorus->setCurrentIndex(4);
58 connect(ui->buttonBox->button(QDialogButtonBox::RestoreDefaults), &QPushButton::pressed,
59 this, &SonivoxSettingsDialog::restoreDefaults);
62 SonivoxSettingsDialog::~SonivoxSettingsDialog()
67 void SonivoxSettingsDialog::accept()
73 void SonivoxSettingsDialog::showEvent(QShowEvent *event)
79 void SonivoxSettingsDialog::readSettings()
82 SettingsFactory settings;
83 settings->beginGroup(QSTR_PREFERENCES);
84 int bufferTime = settings->value(QSTR_BUFFERTIME, 60).toInt();
85 int reverbType = settings->value(QSTR_REVERBTYPE, 1).toInt();
86 int reverbAmt = settings->value(QSTR_REVERBAMT, 25800).toInt();
87 int chorusType = settings->value(QSTR_CHORUSTYPE, -1).toInt();
88 int chorusAmt = settings->value(QSTR_CHORUSAMT, 0).toInt();
91 ui->spnTime->setValue(bufferTime);
92 ui->dial_Reverb->setValue(reverbAmt);
93 ui->dial_Chorus->setValue(chorusAmt);
94 int reverbIndex = ui->combo_Reverb->findData(reverbType);
95 int chorusIndex = ui->combo_Chorus->findData(chorusType);
96 ui->combo_Reverb->setCurrentIndex(reverbIndex);
97 ui->combo_Chorus->setCurrentIndex(chorusIndex);
100 void SonivoxSettingsDialog::writeSettings()
102 SettingsFactory settings;
103 settings->beginGroup(QSTR_PREFERENCES);
104 settings->setValue(QSTR_BUFFERTIME, ui->spnTime->value());
105 settings->setValue(QSTR_REVERBTYPE, ui->combo_Reverb->currentData());
106 settings->setValue(QSTR_CHORUSTYPE, ui->combo_Chorus->currentData());
107 settings->setValue(QSTR_REVERBAMT, ui->dial_Reverb->value());
108 settings->setValue(QSTR_CHORUSAMT, ui->dial_Chorus->value());
109 settings->endGroup();
113 void SonivoxSettingsDialog::restoreDefaults()
115 ui->spnTime->setValue(60);
116 ui->combo_Reverb->setCurrentIndex(1);
117 ui->dial_Reverb->setValue(25800);
118 ui->combo_Chorus->setCurrentIndex(4);
119 ui->dial_Chorus->setValue(0);
Definition of the Sonivox Synth configuration dialog.
SettingsFactory class declaration.