Index: branches/qt_gui/src/lib/graphics/graphics_engine.cc
===================================================================
--- branches/qt_gui/src/lib/graphics/graphics_engine.cc	(revision 7631)
+++ branches/qt_gui/src/lib/graphics/graphics_engine.cc	(revision 7632)
@@ -155,15 +155,12 @@
 {
   // looking if we are in fullscreen-mode
-  const std::string fullscreen = Preferences::getInstance()->getString(CONFIG_SECTION_VIDEO, CONFIG_NAME_FULLSCREEN, "0");
-
-  if (fullscreen[0] == '1' || fullscreen == "true")
+  MultiType fullscreen = Preferences::getInstance()->getString(CONFIG_SECTION_VIDEO, CONFIG_NAME_FULLSCREEN, "0");
+
+  if (fullscreen.getBool())
     this->fullscreenFlag = SDL_FULLSCREEN;
 
   // looking if we are in fullscreen-mode
-  const std::string textures = Preferences::getInstance()->getString(CONFIG_SECTION_VIDEO_ADVANCED, CONFIG_NAME_TEXTURES, "0");
-  if (textures[0] == '1' || textures == "true")
-    Texture::setTextureEnableState(true);
-  else
-    Texture::setTextureEnableState(false);
+  MultiType textures = Preferences::getInstance()->getString(CONFIG_SECTION_VIDEO_ADVANCED, CONFIG_NAME_TEXTURES, "1");
+    Texture::setTextureEnableState(textures.getBool());
 
   // searching for a usefull resolution
Index: branches/qt_gui/src/lib/gui/gui_saveable.cc
===================================================================
--- branches/qt_gui/src/lib/gui/gui_saveable.cc	(revision 7631)
+++ branches/qt_gui/src/lib/gui/gui_saveable.cc	(revision 7632)
@@ -26,8 +26,9 @@
    * standard constructor
   */
-  Saveable::Saveable (const std::string& optionName, SaveableGroup* group)
+  Saveable::Saveable (const std::string& optionName, SaveableGroup* group, const MultiType& defaultValue)
   : BaseObject(optionName)
   {
     this->bSaveable = false;
+    this->_defaultValue = defaultValue;
 
     assert(group != NULL);
Index: branches/qt_gui/src/lib/gui/gui_saveable.h
===================================================================
--- branches/qt_gui/src/lib/gui/gui_saveable.h	(revision 7631)
+++ branches/qt_gui/src/lib/gui/gui_saveable.h	(revision 7632)
@@ -33,5 +33,5 @@
 
   protected:
-    Saveable(const std::string& optionName, SaveableGroup* group);
+    Saveable(const std::string& optionName, SaveableGroup* group, const MultiType& defaultValue);
     virtual void makingElementSaveable() {};
 
@@ -39,4 +39,5 @@
     SaveableGroup*  group;
     MultiType       _value;
+    MultiType       _defaultValue;
     bool            bSaveable;
   };
Index: branches/qt_gui/src/lib/gui/qt_gui/gui_audio.cc
===================================================================
--- branches/qt_gui/src/lib/gui/qt_gui/gui_audio.cc	(revision 7631)
+++ branches/qt_gui/src/lib/gui/qt_gui/gui_audio.cc	(revision 7632)
@@ -51,9 +51,9 @@
       QLabel* soundCardLabel = new QLabel("Soundcard");
       layout->addWidget(soundCardLabel, 1,1);
-      QtGuiComboBox* soundCard = new QtGuiComboBox(CONFIG_NAME_SOUNDCARD, this);
+      QtGuiComboBox* soundCard = new QtGuiComboBox(CONFIG_NAME_SOUNDCARD, this, "");
       layout->addWidget(soundCard, 2, 1);
 
 
-      QtGuiSlider* channels = new QtGuiSlider(CONFIG_NAME_AUDIO_CHANNELS, this, Qt::Vertical);
+      QtGuiSlider* channels = new QtGuiSlider(CONFIG_NAME_AUDIO_CHANNELS, this, 16, Qt::Vertical);
       layout->addWidget(channels, 0, 0, 2, 1);
       QLabel* channelsLabel = new QLabel("Channels");
@@ -66,5 +66,5 @@
       QLabel* musicLabel = new QLabel("Music Volume");
       layout->addWidget(musicLabel, 0, 2);
-      QtGuiSlider* musicVolume = new QtGuiSlider(CONFIG_NAME_MUSIC_VOLUME, this);
+      QtGuiSlider* musicVolume = new QtGuiSlider(CONFIG_NAME_MUSIC_VOLUME, this, 80);
       layout->addWidget(musicVolume, 1, 2);
 
@@ -72,5 +72,5 @@
       QLabel* effectsLabel = new QLabel("Effects Volume");
       layout->addWidget(effectsLabel, 2,2);
-      QtGuiSlider* effectVolume = new QtGuiSlider(CONFIG_NAME_EFFECTS_VOLUME, this);
+      QtGuiSlider* effectVolume = new QtGuiSlider(CONFIG_NAME_EFFECTS_VOLUME, this, 80);
       layout->addWidget(effectVolume, 3, 2);
     }
Index: branches/qt_gui/src/lib/gui/qt_gui/gui_general.cc
===================================================================
--- branches/qt_gui/src/lib/gui/qt_gui/gui_general.cc	(revision 7631)
+++ branches/qt_gui/src/lib/gui/qt_gui/gui_general.cc	(revision 7632)
@@ -47,5 +47,5 @@
       QLabel* dataDirLabel = new QLabel("DataDirectory");
       layout->addWidget(dataDirLabel, 0,0);
-      this->dataDir = new QtGuiInputLine(CONFIG_NAME_DATADIR, this);
+      this->dataDir = new QtGuiInputLine(CONFIG_NAME_DATADIR, this, DEFAULT_DATA_DIR);
       layout->addWidget(dataDir, 0, 1, 1, 2);
       QPushButton* dataFileDialogButton = new QPushButton("browse");
@@ -56,5 +56,5 @@
       QLabel* debugLabel = new QLabel("debug-mode");
       layout->addWidget(debugLabel, 1,0);
-      QtGuiComboBox* debug = new QtGuiComboBox(CONFIG_NAME_DEBUG_LEVEL, this);
+      QtGuiComboBox* debug = new QtGuiComboBox(CONFIG_NAME_DEBUG_LEVEL, this, "3 - information");
       layout->addWidget(debug, 1, 1, 1, 2);
 
Index: branches/qt_gui/src/lib/gui/qt_gui/gui_video.cc
===================================================================
--- branches/qt_gui/src/lib/gui/qt_gui/gui_video.cc	(revision 7631)
+++ branches/qt_gui/src/lib/gui/qt_gui/gui_video.cc	(revision 7632)
@@ -44,13 +44,13 @@
 
     {
-      QtGuiCheckBox* fullscreen = new QtGuiCheckBox(CONFIG_NAME_FULLSCREEN, this);
+      QtGuiCheckBox* fullscreen = new QtGuiCheckBox(CONFIG_NAME_FULLSCREEN, this, false);
       //fullscreen->setName();
       layout->addWidget(fullscreen, 0, 0);
 
-      QtGuiCheckBox* wireframe = new QtGuiCheckBox(CONFIG_NAME_WIREFRAME, this);
+      QtGuiCheckBox* wireframe = new QtGuiCheckBox(CONFIG_NAME_WIREFRAME, this, false);
       layout->addWidget(wireframe, 1, 0);
 
       {
-        QComboBox* resolution = new QtGuiComboBox(CONFIG_NAME_RESOLUTION, this);
+        QComboBox* resolution = new QtGuiComboBox(CONFIG_NAME_RESOLUTION, this, "640x480");
         layout->addWidget(resolution, 2, 0);
         std::vector<QString> resolutions;
Index: branches/qt_gui/src/lib/gui/qt_gui/qt_gui.cc
===================================================================
--- branches/qt_gui/src/lib/gui/qt_gui/qt_gui.cc	(revision 7631)
+++ branches/qt_gui/src/lib/gui/qt_gui/qt_gui.cc	(revision 7632)
@@ -81,6 +81,4 @@
   QtGui::~QtGui()
   {
-    this->saveAll();
-
     delete this->mainWindow;
   }
Index: branches/qt_gui/src/lib/gui/qt_gui/qt_gui_elements.cc
===================================================================
--- branches/qt_gui/src/lib/gui/qt_gui/qt_gui_elements.cc	(revision 7631)
+++ branches/qt_gui/src/lib/gui/qt_gui/qt_gui_elements.cc	(revision 7632)
@@ -24,5 +24,5 @@
 
   QtGuiCheckBox::QtGuiCheckBox(const std::string& name, SaveableGroup* group, bool defaultValue)
-  : QCheckBox(QString().fromStdString(name)), Saveable(name, group)
+  : QCheckBox(QString().fromStdString(name)), Saveable(name, group, defaultValue)
   {
     //this->load(this->value());
@@ -50,6 +50,6 @@
 
 
-  QtGuiSlider::QtGuiSlider(const std::string& name, SaveableGroup* group, Qt::Orientation orientation)
-  : QSlider(orientation), Saveable(name, group)
+  QtGuiSlider::QtGuiSlider(const std::string& name, SaveableGroup* group, int defaultValue, Qt::Orientation orientation)
+  : QSlider(orientation), Saveable(name, group, defaultValue)
   {
 
@@ -77,6 +77,6 @@
 
 
-  QtGuiComboBox::QtGuiComboBox(const std::string& name, SaveableGroup* group)
-  : QComboBox(), Saveable(name, group)
+  QtGuiComboBox::QtGuiComboBox(const std::string& name, SaveableGroup* group, const std::string& defaultValue)
+  : QComboBox(), Saveable(name, group, defaultValue)
   {
 
@@ -97,6 +97,6 @@
 
 
-  QtGuiInputLine::QtGuiInputLine(const std::string& name, SaveableGroup* group)
-  : QLineEdit(), Saveable(name, group)
+  QtGuiInputLine::QtGuiInputLine(const std::string& name, SaveableGroup* group, const std::string& defaultValue)
+  : QLineEdit(), Saveable(name, group, defaultValue)
   {
 
Index: branches/qt_gui/src/lib/gui/qt_gui/qt_gui_elements.h
===================================================================
--- branches/qt_gui/src/lib/gui/qt_gui/qt_gui_elements.h	(revision 7631)
+++ branches/qt_gui/src/lib/gui/qt_gui/qt_gui_elements.h	(revision 7632)
@@ -48,5 +48,5 @@
 
   public:
-    QtGuiSlider(const std::string& name, SaveableGroup* group, Qt::Orientation orientation = Qt::Horizontal);
+    QtGuiSlider(const std::string& name, SaveableGroup* group, int defaultValue = 0, Qt::Orientation orientation = Qt::Horizontal);
     virtual ~QtGuiSlider();
 
@@ -67,5 +67,5 @@
 
   public:
-    QtGuiComboBox(const std::string& name, SaveableGroup* group);
+    QtGuiComboBox(const std::string& name, SaveableGroup* group, const std::string& defaultValue);
 
     virtual void load();
@@ -78,5 +78,5 @@
 
   public:
-    QtGuiInputLine(const std::string& name, SaveableGroup* group);
+    QtGuiInputLine(const std::string& name, SaveableGroup* group, const std::string& defaultValue);
 
     virtual void load();
