added multi_midi/native_mt32 settings (we *really* need to come up with a good way to share code between GlobalOptionsDialog and EditGameDialog)

svn-id: r11145
This commit is contained in:
Max Horn 2003-11-05 01:22:19 +00:00
parent 4cff7c8b97
commit c207fe6a95
2 changed files with 21 additions and 5 deletions

View File

@ -95,6 +95,9 @@ protected:
PopUpWidget *_gfxPopUp;
CheckboxWidget *_fullscreenCheckbox;
CheckboxWidget *_aspectCheckbox;
CheckboxWidget *_multiMidiCheckbox;
CheckboxWidget *_mt32Checkbox;
};
EditGameDialog::EditGameDialog(const String &domain, GameSettings target)
@ -215,6 +218,17 @@ EditGameDialog::EditGameDialog(const String &domain, GameSettings target)
tab->addTab("Audio");
yoffset = vBorder;
// Multi midi setting
_multiMidiCheckbox = new CheckboxWidget(tab, 10, yoffset, 280, 16, "Mixed Adlib/MIDI mode");
_multiMidiCheckbox->setState(ConfMan.getBool("multi_midi", _domain));
yoffset += 16;
// Native mt32 setting
_mt32Checkbox = new CheckboxWidget(tab, 10, yoffset, 280, 16, "True Roland MT-32 (disable GM emulation)");
_mt32Checkbox->setState(ConfMan.getBool("native_mt32", _domain));
yoffset += 16;
// TODO: Volume/driver/midi/... settings
@ -242,6 +256,8 @@ void EditGameDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 dat
ConfMan.set("description", _descriptionWidget->getLabel(), newDomain);
ConfMan.set("fullscreen", _fullscreenCheckbox->getState(), newDomain);
ConfMan.set("aspect_ratio", _aspectCheckbox->getState(), newDomain);
ConfMan.set("multi_midi", _multiMidiCheckbox->getState(), newDomain);
ConfMan.set("native_mt32", _mt32Checkbox->getState(), newDomain);
Common::Language lang = (Common::Language)_langPopUp->getSelectedTag();
if (lang < 0)

View File

@ -157,19 +157,17 @@ GlobalOptionsDialog::GlobalOptionsDialog(GameDetector &detector)
_sfxVolumeLabel->setFlags(WIDGET_CLEARBG);
yoffset += 16;
#if 1
// TODO: cd drive setting
// TODO: multi midi setting
// TODO: native mt32 setting
// Multi midi setting
_multiMidiCheckbox = new CheckboxWidget(tab, 10, yoffset, 280, 16, "Mixed Adlib/MIDI mode");
_multiMidiCheckbox->setState(ConfMan.getBool("multi_midi"));
yoffset += 16;
// Native mt32 setting
_mt32Checkbox = new CheckboxWidget(tab, 10, yoffset, 280, 16, "True Roland MT-32 (disable GM emulation)");
_mt32Checkbox->setState(ConfMan.getBool("native_mt32"));
yoffset += 16;
#endif
// TODO: cd drive setting
//
// 3) The miscellaneous tab
@ -268,6 +266,8 @@ void GlobalOptionsDialog::handleCommand(CommandSender *sender, uint32 cmd, uint3
ConfMan.set("sfx_volume", _sfxVolumeSlider->getValue());
ConfMan.set("fullscreen", _fullscreenCheckbox->getState());
ConfMan.set("aspect_ratio", _aspectCheckbox->getState());
ConfMan.set("multi_midi", _multiMidiCheckbox->getState());
ConfMan.set("native_mt32", _mt32Checkbox->getState());
const MidiDriverDescription *md = getAvailableMidiDrivers();
for (; md->name; md++) {