Skip to content
Snippets Groups Projects
Commit 7cad1831 authored by SeeLook's avatar SeeLook :musical_note:
Browse files

Synced instrument combos for ASIO, restoring RT audio state after canceling settings

parent a46c3378
No related branches found
No related tags found
No related merge requests found
......@@ -319,6 +319,9 @@ AudioInSettings::AudioInSettings(TaudioParams* params, Ttune* tune, QWidget* par
connect(m_splitVolChB, &QCheckBox::toggled, this, &AudioInSettings::splitByVolChanged);
connect(m_skipStillerChB, &QCheckBox::toggled, this, &AudioInSettings::skipStillerChanged);
connect(m_adjustToInstrButt, &TselectInstrument::instrumentChanged, this, &AudioInSettings::adjustInstrSlot);
#if defined(Q_OS_WIN)
connect(m_inDeviceCombo, SIGNAL(currentIndexChanged(int)), this, SIGNAL(asioDriverChanged(int)));
#endif
}
......@@ -424,6 +427,7 @@ void AudioInSettings::generateDevicesList() {
void AudioInSettings::updateAudioDevList() {
m_inDeviceCombo->blockSignals(true);
m_inDeviceCombo->clear();
m_inDeviceCombo->addItems(TaudioIN::getAudioDevicesList());
if (m_inDeviceCombo->count()) {
......@@ -438,6 +442,7 @@ void AudioInSettings::updateAudioDevList() {
m_inDeviceCombo->addItem(tr("no devices found"));
m_inDeviceCombo->setDisabled(true);
}
m_inDeviceCombo->blockSignals(false);
}
......@@ -644,12 +649,6 @@ void AudioInSettings::JACKASIOSlot() {
TrtAudio::setJACKorASIO(m_JACK_ASIO_ChB->isChecked());
updateAudioDevList();
emit rtApiChanged();
#if defined(Q_OS_WIN)
if (m_JACK_ASIO_ChB->isChecked())
connect(m_inDeviceCombo, SIGNAL(currentIndexChanged(int)), this, SIGNAL(asioDriverChanged(int)));
else
disconnect(m_inDeviceCombo, SIGNAL(currentIndexChanged(int)), this, SIGNAL(asioDriverChanged(int)));
#endif
}
......@@ -701,3 +700,4 @@ void AudioInSettings::adjustInstrSlot(int instr) {
......@@ -132,8 +132,10 @@ AudioOutSettings::AudioOutSettings(TaudioParams* aParams, QWidget* parent) :
connect(radioGr, SIGNAL(buttonClicked(int)), this, SLOT(audioOrMidiChanged()));
connect(m_JACK_ASIO_ChB, &QCheckBox::clicked, this, &AudioOutSettings::JACKASIOSlot);
#if defined(Q_OS_WIN)
connect(m_audioOutDevListCombo, SIGNAL(currentIndexChanged(int)), this, SIGNAL(asioDriverChanged(int)));
#endif
setFocusPolicy(Qt::StrongFocus);
}
void AudioOutSettings::generateDevicesList() {
......@@ -161,6 +163,7 @@ void AudioOutSettings::setDevicesCombo() {
void AudioOutSettings::updateAudioDevList() {
m_audioOutDevListCombo->blockSignals(true);
m_audioOutDevListCombo->clear();
m_audioOutDevListCombo->addItems(TaudioOUT::getAudioDevicesList());
if (m_audioOutDevListCombo->count()) {
......@@ -175,6 +178,7 @@ void AudioOutSettings::updateAudioDevList() {
m_audioOutDevListCombo->addItem(tr("no devices found"));
m_audioOutDevListCombo->setDisabled(true);
}
m_audioOutDevListCombo->blockSignals(false);
}
......@@ -273,12 +277,6 @@ void AudioOutSettings::JACKASIOSlot() {
TrtAudio::setJACKorASIO(m_JACK_ASIO_ChB->isChecked());
updateAudioDevList();
emit rtApiChanged();
#if defined(Q_OS_WIN)
if (m_JACK_ASIO_ChB->isChecked())
connect(m_audioOutDevListCombo, SIGNAL(currentIndexChanged(int)), this, SIGNAL(asioDriverChanged(int)));
else
disconnect(m_audioOutDevListCombo, SIGNAL(currentIndexChanged(int)), this, SIGNAL(asioDriverChanged(int)));
#endif
}
......
......@@ -96,6 +96,7 @@ TsettingsDialog::TsettingsDialog(QWidget *parent, EsettingsMode mode) :
connect(okBut, SIGNAL(clicked()), this, SLOT(accept()));
connect(navList, SIGNAL(currentRowChanged(int)), this, SLOT(changeSettingsWidget(int)));
connect(this, SIGNAL(accepted()), this, SLOT(saveSettings()));
connect(this, SIGNAL(rejected()), this, SLOT(cancelSlot()));
connect(defaultBut, SIGNAL(pressed()), this, SLOT(restoreDefaults()));
connect(m_helpButt, SIGNAL(pressed()), this, SLOT(helpSlot()));
......@@ -112,6 +113,12 @@ TsettingsDialog::TsettingsDialog(QWidget *parent, EsettingsMode mode) :
}
void TsettingsDialog::cancelSlot() {
if (m_sndInSett && Tcore::gl()->A->JACKorASIO != m_sndInSett->rtApiCheckBox()->isChecked())
TrtAudio::setJACKorASIO(Tcore::gl()->A->JACKorASIO);
}
void TsettingsDialog::saveSettings() {
if (m_scoreSett)
m_scoreSett->saveSettings();
......
......@@ -54,6 +54,7 @@ public:
public slots:
void saveSettings();
void restoreDefaults();
void cancelSlot(); /** When user rejected settings */
private:
TglobalSettings *m_globalSett;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment