summaryrefslogtreecommitdiff
path: root/src/gui/setup_audio.cpp
diff options
context:
space:
mode:
authorBjørn Lindeijer <bjorn@lindeijer.nl>2009-04-13 21:33:06 +0200
committerBjørn Lindeijer <bjorn@lindeijer.nl>2009-04-13 21:35:19 +0200
commit28bc8c0edb549cdbbe0832c4202630a039f738b1 (patch)
tree9989f31a5121f82af5aa264ebfe7096c5ea5030f /src/gui/setup_audio.cpp
parent627e1bc7eee5b821d29b2161dec4991cae7bf9c0 (diff)
downloadmana-client-28bc8c0edb549cdbbe0832c4202630a039f738b1.tar.gz
mana-client-28bc8c0edb549cdbbe0832c4202630a039f738b1.tar.bz2
mana-client-28bc8c0edb549cdbbe0832c4202630a039f738b1.tar.xz
mana-client-28bc8c0edb549cdbbe0832c4202630a039f738b1.zip
Some cleanup of the Configuration interface
Mainly avoid all the convertions from integer to float and then to string and also back from string to float and then to integer.
Diffstat (limited to 'src/gui/setup_audio.cpp')
-rw-r--r--src/gui/setup_audio.cpp19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/gui/setup_audio.cpp b/src/gui/setup_audio.cpp
index 5e13574e..3f98c44f 100644
--- a/src/gui/setup_audio.cpp
+++ b/src/gui/setup_audio.cpp
@@ -79,9 +79,14 @@ Setup_Audio::Setup_Audio():
void Setup_Audio::apply()
{
- if (mSoundCheckBox->isSelected())
+ mSoundEnabled = mSoundCheckBox->isSelected();
+ mSfxVolume = (int) config.getValue("sfxVolume", 100);
+ mMusicVolume = (int) config.getValue("musicVolume", 60);
+
+ config.setValue("sound", mSoundEnabled);
+
+ if (mSoundEnabled)
{
- config.setValue("sound", 1);
try
{
sound.init();
@@ -92,20 +97,16 @@ void Setup_Audio::apply()
logger->log("Warning: %s", err);
}
- if (engine) {
+ if (engine)
+ {
Map *currentMap = engine->getCurrentMap();
sound.playMusic(currentMap->getProperty("music"), -1);
}
}
else
{
- config.setValue("sound", 0);
sound.close();
}
-
- mSoundEnabled = config.getValue("sound", 0);
- mSfxVolume = (int) config.getValue("sfxVolume", 100);
- mMusicVolume = (int) config.getValue("musicVolume", 60);
}
void Setup_Audio::cancel()
@@ -118,7 +119,7 @@ void Setup_Audio::cancel()
sound.setMusicVolume(mMusicVolume);
mMusicSlider->setValue(mMusicVolume);
- config.setValue("sound", mSoundEnabled ? 1 : 0);
+ config.setValue("sound", mSoundEnabled);
config.setValue("sfxVolume", mSfxVolume);
config.setValue("musicVolume", mMusicVolume);
}