Index: orxonox/branches/gui/guicc/Makefile.am
===================================================================
--- orxonox/branches/gui/guicc/Makefile.am	(revision 1995)
+++ orxonox/branches/gui/guicc/Makefile.am	(revision 1996)
@@ -3,5 +3,5 @@
 
 bin_PROGRAMS=gui
-gui_SOURCES=orxonox_gui.cc orxonox_gui_video.cc orxonox_gui_audio.cc orxonox_gui_exec.cc 
+gui_SOURCES=orxonox_gui.cc orxonox_gui_video.cc orxonox_gui_audio.cc orxonox_gui_exec.cc orxonox_gui_flags.cc
 #orxonox_gui_file.cc 
 
Index: orxonox/branches/gui/guicc/Makefile.in
===================================================================
--- orxonox/branches/gui/guicc/Makefile.in	(revision 1995)
+++ orxonox/branches/gui/guicc/Makefile.in	(revision 1996)
@@ -114,5 +114,5 @@
 
 bin_PROGRAMS = gui
-gui_SOURCES = orxonox_gui.cc orxonox_gui_video.cc orxonox_gui_audio.cc orxonox_gui_exec.cc 
+gui_SOURCES = orxonox_gui.cc orxonox_gui_video.cc orxonox_gui_audio.cc orxonox_gui_exec.cc orxonox_gui_flags.cc
 subdir = guicc
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -124,5 +124,6 @@
 
 am_gui_OBJECTS = orxonox_gui.$(OBJEXT) orxonox_gui_video.$(OBJEXT) \
-	orxonox_gui_audio.$(OBJEXT) orxonox_gui_exec.$(OBJEXT)
+	orxonox_gui_audio.$(OBJEXT) orxonox_gui_exec.$(OBJEXT) \
+	orxonox_gui_flags.$(OBJEXT)
 gui_OBJECTS = $(am_gui_OBJECTS)
 gui_LDADD = $(LDADD)
@@ -136,4 +137,5 @@
 @AMDEP_TRUE@	./$(DEPDIR)/orxonox_gui_audio.Po \
 @AMDEP_TRUE@	./$(DEPDIR)/orxonox_gui_exec.Po \
+@AMDEP_TRUE@	./$(DEPDIR)/orxonox_gui_flags.Po \
 @AMDEP_TRUE@	./$(DEPDIR)/orxonox_gui_video.Po
 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
@@ -192,4 +194,5 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/orxonox_gui_audio.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/orxonox_gui_exec.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/orxonox_gui_flags.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/orxonox_gui_video.Po@am__quote@
 
Index: orxonox/branches/gui/guicc/orxonox_gui.cc
===================================================================
--- orxonox/branches/gui/guicc/orxonox_gui.cc	(revision 1995)
+++ orxonox/branches/gui/guicc/orxonox_gui.cc	(revision 1996)
@@ -5,4 +5,5 @@
 #include "orxonox_gui_audio.h"
 #include "orxonox_gui_exec.h"
+#include "orxonox_gui_flags.h"
 
 
@@ -27,20 +28,23 @@
   
   Box* windowBox = new Box ('v');
-  {
-    Box* avBox = new Box ('h');
-    {
-      OrxonoxGuiVideo* video = new OrxonoxGuiVideo ();
-      avBox->fill (video->getFrame ());
-      OrxonoxGuiAudio* audio = new OrxonoxGuiAudio ();
-      avBox->fill (audio->getFrame ());
+  
+  Box* avBox = new Box ('h');
+
+  OrxonoxGuiVideo* video = new OrxonoxGuiVideo ();
+  avBox->fill (video->getFrame ());
+  OrxonoxGuiAudio* audio = new OrxonoxGuiAudio ();
+  avBox->fill (audio->getFrame ());
       
-    }
-    windowBox->fill (avBox);
+  windowBox->fill (avBox);
     
-    OrxonoxGuiExec* exec = new OrxonoxGuiExec (orxonoxGUI);
-    windowBox->fill (exec->getFrame ());
-  }
+  OrxonoxGuiExec* exec = new OrxonoxGuiExec (orxonoxGUI);
+  windowBox->fill (exec->getFrame ());
+
+  OrxonoxGuiFlags* flags = new OrxonoxGuiFlags (orxonoxGUI);
+  windowBox->fill (flags->getFrame ());
+  
   orxonoxGUI->fill (windowBox);
   orxonoxGUI->listOptions();
+  flags->setTextFromFlags (orxonoxGUI);
 
   /* TEST ENVIRONMENT
@@ -298,5 +302,12 @@
 /* OPTION */
 
-void Option::setFlagName (char *flagname)
+void Option::setFlagName (char* flagname, int defaultvalue)
+{
+  flag_name = flagname;
+  default_value = defaultvalue;
+  cout << "Set Flagname of " << option_name << " to " << flagname << endl;
+}
+
+void Option::setFlagName (char* flagname, char* flagnameshort,  int defaultvalue)
 {
   /**
@@ -304,4 +315,6 @@
    */
   flag_name = flagname;
+  flag_name_short = flagnameshort;
+  default_value = defaultvalue;
   cout << "Set Flagname of " << option_name << " to " << flagname << endl;
 }
@@ -319,4 +332,6 @@
   option_name = buttonname;
   flag_name = "";
+  flag_name_short = "";
+  default_value = 0;
   widget = gtk_button_new_with_label (buttonname);
 }
@@ -333,8 +348,11 @@
   option_name = buttonname;
   flag_name = "";
+  flag_name_short = "";
+  default_value = 0;
   widget = gtk_check_button_new_with_label (buttonname);
 
   this->connectSignal ("clicked", this->OptionChange);
 }
+
 gint CheckButton::OptionChange (GtkWidget *widget, Widget* checkbutton)
 {
@@ -352,9 +370,11 @@
    * Creates a new Slider with name slidername a beginning value of start and an end value of end.
    */
-  is_option = 1;
+  is_option = 2;
   value = 0;
   next = NULL;
   option_name = slidername;
   flag_name = "";
+  flag_name_short = "";
+  default_value = 0;
   widget = gtk_hscale_new_with_range (start, end, 5);
   value = start;
@@ -372,5 +392,4 @@
 }
 
-
 Menu::Menu (char* menuname, ...)
 {
@@ -378,9 +397,11 @@
    * Creates an Menu-Item-list out of multiple input. Consider, that the last input argument has to be "lastItem" for this to work.
    */
-  is_option = 1;
+  is_option = 2;
   value = 0;
   next = NULL;
   option_name = menuname;
   flag_name = "";
+  flag_name_short = "";
+  default_value = 0;
   char *tmp;
   va_list itemlist;
@@ -409,2 +430,21 @@
   cout << static_cast<Menu*>(menu)->option_name << " changed to : " << static_cast<Menu*>(menu)->value << endl;
 }
+
+Label:: Label ()
+{
+  is_option = 0;
+  next = NULL;
+  widget = gtk_label_new ("");
+}
+Label::~Label ()
+{}
+  
+void Label::setText (char * text)
+{
+  gtk_label_set_text (GTK_LABEL (this->widget), text);
+}
+
+char* Label::getText ()
+{
+  return ((char*)gtk_label_get_text (GTK_LABEL (this->widget)));
+}
Index: orxonox/branches/gui/guicc/orxonox_gui.h
===================================================================
--- orxonox/branches/gui/guicc/orxonox_gui.h	(revision 1995)
+++ orxonox/branches/gui/guicc/orxonox_gui.h	(revision 1996)
@@ -15,4 +15,5 @@
 #include <gtk/gtkmenu.h>
 #include <gtk/gtkmenuitem.h>
+#include <gtk/gtklabel.h>
 
 
@@ -101,5 +102,6 @@
   int default_value;
 
-  void setFlagName (char* flagname);
+  void setFlagName (char* flagname, int defaultvalue);
+  void setFlagName (char* flagname, char* flagnameshort, int defaultvalue);
 };
 
@@ -136,5 +138,15 @@
   static gint OptionChange (GtkWidget* widget, Widget* menu);
 };
-    
+
+class Label : public Widget
+{
+ public:
+  Label ();
+  ~Label ();
+  
+  void setText (char * text);
+  char* getText ();
+};
+
 //gint orxonox_gui_quit (GtkWidget *widget, GdkEvent *event, gpointer data);
 
Index: orxonox/branches/gui/guicc/orxonox_gui_audio.cc
===================================================================
--- orxonox/branches/gui/guicc/orxonox_gui_audio.cc	(revision 1995)
+++ orxonox/branches/gui/guicc/orxonox_gui_audio.cc	(revision 1996)
@@ -6,12 +6,12 @@
   audioBox = new Box ('v');
   
-  enableSound = new CheckButton ("Enable Sound");
-  enableSound->setFlagName ("enablesound");
+  enableSound = new CheckButton ("Disable Sound");
+  enableSound->setFlagName ("no-sound", 0);
   audioBox->fill (enableSound);
   musicVolume = new Slider ("Music Volume", 0, 100);
-  musicVolume->setFlagName ("music-volume");
+  musicVolume->setFlagName ("music-volume", "m", 80);
   audioBox->fill (musicVolume);
   effectsVolume = new Slider ("Effects Volume", 0, 100);
-  effectsVolume->setFlagName ("effects-volume");
+  effectsVolume->setFlagName ("effects-volume", "e", 80);
   audioBox->fill (effectsVolume);
 
Index: orxonox/branches/gui/guicc/orxonox_gui_exec.cc
===================================================================
--- orxonox/branches/gui/guicc/orxonox_gui_exec.cc	(revision 1995)
+++ orxonox/branches/gui/guicc/orxonox_gui_exec.cc	(revision 1996)
@@ -11,8 +11,8 @@
   execBox->fill (saveSettings);
   verboseMode = new Menu ("verbose mode", "no output", "verbose", "debug", "lastItem");
-  verboseMode->setFlagName ("verbose");
+  verboseMode->setFlagName ("verbose", "v", 0);
   execBox->fill (verboseMode);
   alwaysShow = new CheckButton ("Always Show this Menu");
-  alwaysShow->setFlagName ("verbose");
+  alwaysShow->setFlagName ("gui", "g", 0);
   execBox->fill (alwaysShow);
   quit = new Button ("Quit");
Index: orxonox/branches/gui/guicc/orxonox_gui_video.cc
===================================================================
--- orxonox/branches/gui/guicc/orxonox_gui_video.cc	(revision 1995)
+++ orxonox/branches/gui/guicc/orxonox_gui_video.cc	(revision 1996)
@@ -9,8 +9,8 @@
   
   fullscreen = new CheckButton ("Fullscreen-mode");
-  fullscreen->setFlagName ("fullscreen");
+  fullscreen->setFlagName ("fullscreen", "f", 1);
   videoBox->fill (fullscreen);
   wireframe = new CheckButton ("WireFrame-mode");
-  wireframe->setFlagName ("wireframe");
+  wireframe->setFlagName ("wireframe", "w", 0);
   videoBox->fill (wireframe);
 
