Revision: 2419 http://rigsofrods.svn.sourceforge.net/rigsofrods/?rev=2419&view=rev Author: rorthomas Date: 2012-02-01 10:12:59 +0000 (Wed, 01 Feb 2012) Log Message: ----------- fixes #926 fixed boolean default value
Modified Paths: -------------- trunk/source/main/utils/Settings.cpp Modified: trunk/source/main/utils/Settings.cpp =================================================================== --- trunk/source/main/utils/Settings.cpp 2012-01-31 23:17:33 UTC (rev 2418) +++ trunk/source/main/utils/Settings.cpp 2012-02-01 10:12:59 UTC (rev 2419) @@ -48,49 +48,55 @@ { } -Ogre::String Settings::getSetting(Ogre::String key, Ogre::String default) +Ogre::String Settings::getSetting(Ogre::String key, Ogre::String defaultValue) { settings_map_t::iterator it = settings.find(key); if(it == settings.end()) { - setSetting(key, default); - return default; + setSetting(key, defaultValue); + return defaultValue; } return it->second; } -Ogre::UTFString Settings::getUTFSetting(Ogre::UTFString key, Ogre::UTFString default) +Ogre::UTFString Settings::getUTFSetting(Ogre::UTFString key, Ogre::UTFString defaultValue) { - return getSetting(key, default); + return getSetting(key, defaultValue); } -int Settings::getIntegerSetting( Ogre::String key, int default ) +int Settings::getIntegerSetting( Ogre::String key, int defaultValue ) { settings_map_t::iterator it = settings.find(key); if(it == settings.end()) { - setSetting(key, TOSTRING(default)); - return default; + setSetting(key, TOSTRING(defaultValue)); + return defaultValue; } return PARSEINT(it->second); } -float Settings::getFloatSetting( Ogre::String key, float default ) +float Settings::getFloatSetting( Ogre::String key, float defaultValue ) { settings_map_t::iterator it = settings.find(key); if(it == settings.end()) { - setSetting(key, TOSTRING(default)); - return default; + setSetting(key, TOSTRING(defaultValue)); + return defaultValue; } return PARSEREAL(it->second); } -bool Settings::getBooleanSetting(Ogre::String key, bool default) +bool Settings::getBooleanSetting(Ogre::String key, bool defaultValue) { - String value = settings[key]; - StringUtil::toLowerCase(value); - return value == "yes"; + settings_map_t::iterator it = settings.find(key); + if(it == settings.end()) + { + setSetting(key, defaultValue?"Yes":"No"); + return defaultValue; + } + String strValue = it->second; + StringUtil::toLowerCase(strValue); + return (strValue == "yes"); } Ogre::String Settings::getSettingScriptSafe(const Ogre::String &key) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d _______________________________________________ Rigsofrods-devel mailing list Rigsofrods-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rigsofrods-devel