diff options
Diffstat (limited to 'muse2/muse/widgets/genset.cpp')
-rw-r--r-- | muse2/muse/widgets/genset.cpp | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/muse2/muse/widgets/genset.cpp b/muse2/muse/widgets/genset.cpp index 60127a0a..5d94a41d 100644 --- a/muse2/muse/widgets/genset.cpp +++ b/muse2/muse/widgets/genset.cpp @@ -37,6 +37,7 @@ #include "globals.h" #include "icons.h" #include "helper.h" +#include "filedialog.h" namespace MusEGui { @@ -76,7 +77,11 @@ GlobalSettingsConfig::GlobalSettingsConfig(QWidget* parent) projDirOpenToolButton->setIcon(*openIcon); connect(projDirOpenToolButton, SIGNAL(clicked()), SLOT(browseProjDir())); - + startSongFileOpenToolButton->setIcon(*openIcon); + connect(startSongFileOpenToolButton, SIGNAL(clicked()), SLOT(browseStartSongFile())); + startSongResetToolButton->setIcon(*undoIcon); + connect(startSongResetToolButton, SIGNAL(clicked()), SLOT(startSongReset())); + connect(applyButton, SIGNAL(clicked()), SLOT(apply())); connect(okButton, SIGNAL(clicked()), SLOT(ok())); connect(cancelButton, SIGNAL(clicked()), SLOT(cancel())); @@ -165,7 +170,8 @@ void GlobalSettingsConfig::updateSettings() startSongEntry->setText(MusEGlobal::config.startSong); startSongGroup->button(MusEGlobal::config.startMode)->setChecked(true); - + readMidiConfigFromSongCheckBox->setChecked(MusEGlobal::config.startSongLoadConfig); + recDrumGroup->button(MusEGlobal::config.newDrumRecordCondition)->setChecked(true); showTransport->setChecked(MusEGlobal::config.transportVisible); @@ -268,8 +274,11 @@ void GlobalSettingsConfig::apply() MusEGlobal::config.startSong = startSongEntry->text(); MusEGlobal::config.startMode = startSongGroup->checkedId(); + MusEGlobal::config.startSongLoadConfig = readMidiConfigFromSongCheckBox->isChecked(); + MusEGlobal::config.newDrumRecordCondition = MusECore::newDrumRecordCondition_t(recDrumGroup->checkedId()); + int das = dummyAudioSize->currentIndex(); MusEGlobal::config.dummyAudioBufSize = dummyAudioBufSizes[das]; MusEGlobal::config.dummyAudioSampleRate = dummyAudioRate->value(); @@ -508,5 +517,24 @@ void GlobalSettingsConfig::browseProjDir() projDirEntry->setText(dir); } +void GlobalSettingsConfig::browseStartSongFile() +{ + bool doReadMidiPorts; + QString sstr = startSongGroup->button(1)->isChecked() ? QString("templates") : QString(""); + + QString fn = MusEGui::getOpenFileName(sstr, MusEGlobal::med_file_pattern, this, + tr("MusE: Choose start template or song"), &doReadMidiPorts, MusEGui::MFileDialog::GLOBAL_VIEW); + if (!fn.isEmpty()) { + startSongEntry->setText(fn); + readMidiConfigFromSongCheckBox->setChecked(doReadMidiPorts); + } +} + +void GlobalSettingsConfig::startSongReset() +{ + startSongEntry->setText(MusEGlobal::museGlobalShare + QString("/templates/default.med")); + readMidiConfigFromSongCheckBox->setChecked(false); +} + } // namespace MusEGui |