Ticket #2561: soundfont.patch

File soundfont.patch, 1.8 KB (added by salty-horse, 18 years ago)

Fix for soundfont setting

  • gui/options.cpp

     
    178178
    179179                // GS extensions setting
    180180                _enableGSCheckbox->setState(ConfMan.getBool("enable_gs", _domain));
     181
     182                String soundFont(ConfMan.get("soundfont", _domain));
     183                if (soundFont.empty() || !ConfMan.hasKey("soundfont", _domain))
     184                        _soundFont->setLabel("None");
     185                else
     186                        _soundFont->setLabel(soundFont);
    181187        }
    182188
    183 
     189        // Volume options
    184190        if (_musicVolumeSlider) {
    185191                int vol;
    186192
     
    246252                        }
    247253                }
    248254
     255                // MIDI options
    249256                if (_multiMidiCheckbox) {
    250257                        if (_enableMIDISettings) {
    251258                                ConfMan.set("multi_midi", _multiMidiCheckbox->getState(), _domain);
    252259                                ConfMan.set("native_mt32", _mt32Checkbox->getState(), _domain);
    253260                                ConfMan.set("enable_gs", _enableGSCheckbox->getState(), _domain);
     261
     262                                String soundFont = _soundFont->getLabel();
     263                                if (!soundFont.empty() && (soundFont != "None"))
     264                                        ConfMan.set("soundfont", soundFont, _domain);
    254265                        } else {
    255266                                ConfMan.removeKey("multi_midi", _domain);
    256267                                ConfMan.removeKey("native_mt32", _domain);
    257268                                ConfMan.removeKey("enable_gs", _domain);
     269                                ConfMan.removeKey("soundfont", _domain);
    258270                        }
    259271                }
    260272
     
    513525        // Set _savePath to the current save path
    514526        Common::String dir(ConfMan.get("savepath", _domain));
    515527        Common::String extraPath(ConfMan.get("extrapath", _domain));
    516         Common::String soundFont(ConfMan.get("soundfont", _domain));
    517528
    518529        if (!dir.empty()) {
    519530                _savePath->setLabel(dir);
     
    529540        } else {
    530541                _extraPath->setLabel(extraPath);
    531542        }
    532 
    533         if (soundFont.empty() || !ConfMan.hasKey("soundfont", _domain)) {
    534                 _soundFont->setLabel("None");
    535         } else {
    536                 _soundFont->setLabel(soundFont);
    537         }
    538543#endif
    539544}
    540545