Index: orxonox/trunk/gui/orxonox_gui.cc
===================================================================
--- orxonox/trunk/gui/orxonox_gui.cc	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui.cc	(revision 2588)
@@ -48,9 +48,9 @@
 /* ORXONOXGUI */
 
+/**
+ * Initializes the Gui
+*/
 OrxonoxGui::OrxonoxGui (int argc, char *argv[])
 {
-  /**
-   * Initializes the Gui
-   */
   gtk_init (&argc, &argv);
   gtk_rc_parse( "rc" );
@@ -99,5 +99,8 @@
 
 /* WIDGET */
-
+/**
+ * Initializes a widget.
+ * Nothing to do here.
+ */
 void Widget::init()
 {
@@ -105,41 +108,44 @@
 }
 
+/** 
+ * Connect any signal to any given Sub-widget
+ */
 void Widget::connectSignal (char* event, gint (*signal)(GtkWidget*, GdkEvent*, void *))
 {
-  /** 
-   * Connect any signal to any given Sub-widget
-   */
   g_signal_connect (G_OBJECT (this->widget), event, G_CALLBACK (signal), NULL);
 }
 
+/**
+ * Connect a signal with additionally passing the whole Object
+ */
 void Widget::connectSignal (char* event, gint (*signal)( GtkWidget*, Widget *))
 {
-  /**
-   * Connect a signal with additionally passing the whole Object
-   */
 g_signal_connect (G_OBJECT (this->widget), event, G_CALLBACK (signal), this);
 }
 
+/**
+ * Connect a signal with additionally passing a whole external Object
+ */
 void Widget::connectSignal (char* event, void* extObj, gint (*signal)(GtkWidget*, GdkEvent*, void *))
 {
-  /**
-   * Connect a signal with additionally passing a whole external Object
-   */
   g_signal_connect (G_OBJECT (this->widget), event, G_CALLBACK (signal), extObj);
 }
+
+
+/**
+ * Function to Shows a specific widget.
+ */
 void Widget::show()
 {
-  /**
-   * Function to Show any Widget
-   */
-  gtk_widget_show (widget);
-}
-
+  gtk_widget_show (this->widget);
+}
+
+/**
+ * Moves through all the Widgets downwards from this and executes the function on them.
+ \param function must be of type void and takes a Widget* as an Input.
+
+ */
 void Widget::walkThrough (void (*function)(Widget*))
 {
-  /**
-   * Moves Through all the Widgets downwards from this and executes the function on them.
-   * function must be of type void and takes a Widget* as an Input.
-   */
   function(this);
   switch (this->is_option)
@@ -158,18 +164,20 @@
 
 
+/** 
+ * This is for listing the option of "widget"
+ \param widget specifies the widget that should be listed
+*/
 void Widget::listOptions (Widget* widget)
 {
-  /** 
-   * This is for listing the option of "widget"
-   */
   if (widget->is_option >= 1)
     cout << static_cast<Option*>(widget)->option_name <<" is : " << static_cast<Option*>(widget)->value <<endl;
 }
 
+/** 
+ * This is for setting the option of "widget"
+ \param widget specifies the widget that should be set.
+*/
 void Widget::setOptions (Widget* widget)
 {
-  /** 
-   * This is for setting the option of "widget"
-   */
   if (widget->is_option >= 1)
     static_cast<Option*>(widget)->redraw();// <<" is : " << static_cast<Option*>(this)->value <<endl;
@@ -177,13 +185,21 @@
 
 /* CONTAINERS*/
+
+/**
+ * Initializes a Container.
+ * nothing to do here
+ */
 void Container::init (void)
 {
   return;
 }
+
+/**
+ * Fills a Container with lowerWidget.
+ * It does this by filling up the down pointer only if down points to NULL.
+ \param lowerWidget the Widget that should be filled into the Container.
+*/
 void Container::fill (Widget *lowerWidget)
 {
-  /**
-   * fills any given Container with a lowerwidet
-   */
   if (this->down == NULL)
     {
@@ -199,35 +215,36 @@
 /* WINDOW */
 
+  /**
+   * Creating a new Window without a Name
+   */
 Window::Window (void)
 {
-  /**
-   * Creating a Window
-   */
-  this->init();
-}
-
+  this->init();
+}
+
+/**
+ * Creating a Window with a name
+ \param windowName the name the window should get.
+ */
 Window::Window (char* windowName)
 {
-  /**
-   * Creating a Window with passing a name
-   */
   this->init();
   this->setTitle (windowName);
 }
 
+/**
+ * Destoying a Window (very BAD implemented).
+ * For now it just hides the window.
+ */
 Window::~Window ()
 {
-  /**
-   * Destoying a Window (very BAD implemented)
-   */
   gtk_widget_hide (widget);
-  
-}
-
+}
+
+/**
+ *initializes a new Window
+ */
 void Window::init()
 {
-  /**
-  *initializes a new Window
-  */
   is_option = -1;
   next = NULL;
@@ -241,26 +258,30 @@
 }
 
+/**
+ * Shows all Widgets that are included within this->widget.
+ */
 void Window::showall ()
 {
-  /**
-   * Shows all Widgets that are included within this Widget
-   */
   gtk_widget_show_all  (widget);
 }
 
+/**
+ * Set The Window-title to title
+ \param title title the Window should get.
+*/
 void Window::setTitle (char* title)
 {
-  /**
-   * Set The Window title to title
-   */
   gtk_window_set_title (GTK_WINDOW (widget), title);
 }
 
-
+/**
+ * Quits the orxonox_GUI.
+ * This can be called as a Signal and is therefor static
+ \param widget The widget that called this function
+ \param event the event that happened to execute this function
+ \param data some data passed with the Signal
+ */
 gint Window::orxonox_gui_quit (GtkWidget *widget, GdkEvent *event, gpointer data)
 {
-  /**
-   * Quits the orxonox_GUI
-   */
   if (exec->shouldsave())
     exec->writeToFile (orxonoxGUI);
@@ -273,26 +294,31 @@
 /* FRAME */
 
+/** 
+ * Creates a new Frame without a name
+ */
 Frame::Frame (void)
 {
-  /** 
-   * Creates a new Frame without a name
-   */
-  this->init();
-}
+  this->init();
+}
+
+/**
+ * Creates a new Frame with name title
+ */
 Frame::Frame (char* title)
 {
-  /**
-   * Creates a new Frame with name title
-   */
   this->init();
   this->setTitle(title);
 }
+
+/**
+ * Destroys given Frame (not implemented yet)
+ */
 Frame::~Frame ()
 {
-  /**
-   * Destroys given Frame (not implemented yet)
-   */
-}
-
+}
+
+/** 
+ * Initializes a new Frame with default settings
+ */
 void Frame::init()
 {
@@ -304,27 +330,36 @@
 }
 
+/**
+ * Sets the Frames name to title
+ \param title The title the Frame should get.
+ */
 void Frame::setTitle (char* title)
 {
-  /**
-   * Sets the Frames name to title
-   */
   gtk_frame_set_label (GTK_FRAME (widget), title);
 }
 
 // EVENTBOX //
+
+/**
+ * Creates a new EventBox with default settings.
+ */
 EventBox::EventBox ()
 {
   this->init();
 }
-
+/**
+ * Creates a new EventBox with name title
+ \param title title the Eventbox should get (only data-structure-internal)
+*/
 EventBox::EventBox (char* title)
 {
-  /**
-   * Creates a new EventBox with name title
-   */
   this->init();
   this->setTitle(title);
 
 }
+
+/**
+ * Initializes a new EventBox
+ */
 void EventBox::init(void)
 {
@@ -337,12 +372,16 @@
 }
 
-
+/**
+ * Sets the Title of the EventBox (not implemented)
+ \param title Name the EventBox should get (only datastructure-internal).
+*/
 void EventBox::setTitle (char* title)
 {
-  /**
-   * Sets the EventBoxes name to title
-   */
-  //  gtk_frame_set_label (GTK_FRAME (widget), title);
-}
+
+}
+
+/**
+ * Destructs an EventBox (not Implemented)
+ */
 EventBox::~EventBox ()
 {
@@ -352,25 +391,32 @@
 /* BOX */
 
+/**
+ * Creates a new horizontal Box
+ */
 Box::Box (void)
 {
-  /**
-   * Creates a new horizontal Box
-   */
   this->init('h');
 }
+
+/**
+ * Creates a new Box of type boxtype
+ \param boxtype if 'v' the Box will be vertically, if 'h' the Box will be horizontally
+ */
 Box::Box (char boxtype)
 {
-  /**
-   * Creates a new Box if boxtype is 'v' it will be vertically, if 'h' it will be horizontally
-   */
   this->init(boxtype);
 }
+
+/**
+ * Destroys given Box (not implemented yet)
+ */
 Box::~Box ()
 {
-  /**
-   * Destroys given Frame (not implemented yet)
-   */
-}
-
+}
+
+/**
+ * Initializes a new Box with type boxtype
+ \param boxtype see Box(char boxtype)
+*/
 void Box::init(char boxtype)
 {
@@ -388,5 +434,9 @@
 }
 
-
+/** 
+ * Fills a box with a given Widget.
+ * It does this by apending the first one to its down-pointer and all its following ones to the preceding next-pointer. The last one will receive a NULL pointer as Next
+ \param lowerWidget the next Widget that should be appendet to this Box
+ */
 void Box::fill (Widget *lowerWidget)
 {
@@ -411,21 +461,40 @@
 /* IMAGE */
 
+/**
+ * Creates a new Image
+ \param imagename the location of the Image on the Hard Disc
+*/
 Image::Image (char* imagename)
 {
+  this->init();
+  widget = gtk_image_new_from_file (imagename);
+}
+
+/** 
+ * Initializes a new Image
+ */
+void Image::init()
+{
   is_option = 0;
   next = NULL;
-  widget = gtk_image_new_from_file (imagename);
-}
-void Image::init()
-{
-  
 }
 
 
 /* OPTION */
+
+/**
+ * Initializes a new Option: nothing to do here
+ */
 void Option::init()
 {
   return;
 }
+
+/**
+ * This sets The FlagName of an Option and defines its default Values
+ !! Options will be saved if flagname is different from "" !!
+\param flagname the Name that will be displayed in the output
+\param defaultvalue the default Value for this Option (see definition of defaultvalue
+*/
 void Option::setFlagName (char* flagname, int defaultvalue)
 {
@@ -435,9 +504,12 @@
 }
 
+/** 
+ * see Option::setFlagName (char* flagname, int defaultvalue)
+ \param flagname the Name that will be displayed in the output
+ \param defaultvalue the default Value for this Option (see definition of defaultvalue
+ \param flagnameshort a short flagname to be displayed in the output
+*/
 void Option::setFlagName (char* flagname, char* flagnameshort,  int defaultvalue)
 {
-  /**
-   * \brief Sets the Flagname of an Option. If it is set different then "" this Option will be saved to the Configurationfile
-   */
   flag_name = flagname;
   flag_name_short = flagnameshort;
@@ -448,13 +520,18 @@
 
 /* BUTTON */
+
+/**
+ * Creates a new Button with a buttonname
+ \param buttonname sets the Name of the Button
+*/
 Button::Button(char* buttonname)
 {
-  /**
-   * Creates a new Button with name buttonname
-   */
   this->init();
   this->setTitle(buttonname);
 }
 
+/**
+ * Initializes a new Button
+ */
 void Button::init(void)
 {
@@ -469,4 +546,8 @@
 }
 
+/**
+ * Sets a new name to the Button
+\param title The name the Button should get
+*/
 void Button::setTitle (char *title)
 {
@@ -475,4 +556,8 @@
 }
 
+/**
+ * redraws the Button
+ * not implemented yet
+ */
 void Button::redraw ()
 {
@@ -480,9 +565,11 @@
 
 /* CHECKBUTTON */
+
+/**
+ * Creates a new CheckButton with an ame 
+ \param buttonname The name the CheckButton should display.
+ */
 CheckButton::CheckButton (char* buttonname)
 {
-  /**
-   * Creates a new CheckButton with name buttonname
-   */
   this->init();
   this->setTitle(buttonname);
@@ -490,8 +577,15 @@
   this->connectSignal ("clicked", this->OptionChange);
 }
+
+/** 
+ * Destructs a CheckButton (not Implemented yet).
+ */
 CheckButton::~CheckButton()
 {
 }
 
+/**
+ * Initiali a new CheckButton with default settings
+ */
 void CheckButton::init(void)
 {
@@ -505,4 +599,9 @@
   widget = gtk_check_button_new_with_label ("");
 }
+
+/**
+ * Sets a new Title to a CheckButton
+ \param title The new Name the CheckButton should display.
+*/
 void CheckButton::setTitle(char* title)
 {
@@ -511,9 +610,12 @@
 }
 
+
+/** 
+ * Signal OptionChange writes the Value from the CheckButton to its Object-Database.
+ \param widget The widget(CheckButton) that has a changed Value
+ \param checkbutton the CheckButton-Object that should receive the change.
+ */
 gint CheckButton::OptionChange (GtkWidget *widget, Widget* checkbutton)
 {
-  /** 
-   * Writes value, if changed on the checkbutton, to the object.
-   */
   static_cast<CheckButton*>(checkbutton)->value = (int)gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON ((CheckButton*)checkbutton->widget));
   flags->setTextFromFlags(orxonoxGUI);
@@ -521,4 +623,8 @@
 }
 
+/**
+ * Redraws the CheckButton (if option has changed).
+ * Example: if new settings are loaded the Button must be redrawn for the GUI to display that Change
+ */
 void CheckButton::redraw ()
 {
@@ -527,9 +633,13 @@
 
 /* SLIDER */
+
+/**
+ * Creates a new Slider
+ \param slidername The data-structure-name of the slider.
+ \param start The minimal Value of the slider.
+ \param end The maximal Value of the slider.
+*/
 Slider::Slider (char* slidername, int start, int end)
 {
-  /**
-   * Creates a new Slider with name slidername a beginning value of start and an end value of end.
-   */
   this->init(start, end);
   this->setValue(start);
@@ -538,8 +648,15 @@
 }
 
+/**
+ * Destructs a Slider (not implemented yet)
+ */
 Slider::~Slider()
 {
 }
 
+/**
+ * Initializes a Slider with start and end Values
+ * params: see Slider::Slider (char* slidername, int start, int end)
+ */
 void Slider::init(int start, int end)
 {
@@ -553,8 +670,18 @@
   widget = gtk_hscale_new_with_range (start, end, 5);
 }
+
+/**
+ * Sets a new Title to the Slider
+ \param title The new Name of the slider
+*/
 void Slider::setTitle(char* title)
 {
   option_name = title;
 }
+
+/**
+ * Setting a new value to the Slider.
+ * Maybe you also require a Slider::redraw() for this to display
+ */
 void Slider::setValue(int value)
 {
@@ -562,9 +689,11 @@
 }
 
+/** 
+ * Signal OptionChange writes the Value from the Slider to its Object-Database.
+ \param widget The widget(Slider) that has a changed Value
+ \param slider the Slider-Object that should receive the change.
+ */
 gint Slider::OptionChange (GtkWidget *widget, Widget* slider)
 {
-  /** 
-   * Writes value, if changed on the slider, to the object.
-   */
   static_cast<Slider*>(slider)->value = (int)gtk_range_get_value (GTK_RANGE ((Slider*)slider->widget));
   flags->setTextFromFlags(orxonoxGUI);
@@ -572,4 +701,8 @@
 }
 
+/**
+ * Redraws the widget
+ * Example: see void CheckButton::redraw ()
+ */
 void Slider::redraw ()
 {
@@ -577,9 +710,14 @@
 }
 
+/* MENU */
+
+/** 
+ * Creates a Menu-Item-list out of multiple input.
+ * !! Consider, that the last input argument has to be "lastItem" for this to work!!
+ \param menuname The Database-Name of this Menu
+ \param ... items to be added to this Menu. !! Consider, that the last input argument has to be "lastItem" for this to work!!
+ */
 Menu::Menu (char* menuname, ...)
 {
-  /** 
-   * Creates an Menu-Item-list out of multiple input. Consider, that the last input argument has to be "lastItem" for this to work.
-   */
   this->init();
   this->setTitle(menuname);
@@ -598,4 +736,7 @@
 }
 
+/**
+ * Initializes a new Menu with no items
+ */
 void Menu::init(void)
 {
@@ -611,4 +752,8 @@
 }
 
+/**
+ * Sets the Database-Name of this Menu
+ \param title Database-Name to be set.
+*/
 void Menu::setTitle(char* title)
 {
@@ -616,4 +761,8 @@
 }
 
+/**
+ * appends a new Item to the Menu-List.
+ \param itemName the itemName to be appendet.
+*/
 void Menu::addItem (char* itemName)
 {
@@ -622,9 +771,10 @@
 }
 
-gint Menu::OptionChange (GtkWidget *widget, Widget* menu)
-{
-  /** 
-   * Writes value, if changed on the Menu, to the object.
-   */
+/** 
+ * Signal OptionChange writes the Value from the Menu to its Object-Database.
+ \param widget The widget(Menu) that has a changed Value
+ \param menu the Menu-Object that should receive the change.
+ */gint Menu::OptionChange (GtkWidget *widget, Widget* menu)
+{
   static_cast<Menu*>(menu)->value = (int)gtk_option_menu_get_history (GTK_OPTION_MENU (menu->widget));
   flags->setTextFromFlags(orxonoxGUI);
@@ -632,4 +782,8 @@
 }
 
+/**
+ * Redraws the widget
+ * Example: see void CheckButton::redraw ()
+ */
 void Menu::redraw ()
 {
@@ -637,4 +791,8 @@
 }
 
+/**
+ * Creates a new default Label with no Text.
+ * You migth consider adding Label::setTitle with this.
+ */
 Label:: Label ()
 {
@@ -642,4 +800,8 @@
 }
 
+/**
+ * Creates a new Label with a Text.
+ \param text The text to be displayed.
+*/
 Label:: Label (char* text)
 {
@@ -650,7 +812,13 @@
 }
 
+/** 
+ * Destructs a Label
+ */
 Label::~Label ()
 {}
 
+/**
+ * initializes a new Label
+ */
 void Label::init(void)
 {
@@ -661,5 +829,9 @@
   gtk_label_set_line_wrap (GTK_LABEL(widget), TRUE);
 }
-  
+
+/**
+ * Sets a new Text to a Label.
+ \param text The text to be inserted into the Label.
+ */
 void Label::setText (char * text)
 {
@@ -667,4 +839,8 @@
 }
 
+/**
+ * get the Text of a Label
+ \return The Text the Label holds.
+*/
 char* Label::getText ()
 {
Index: orxonox/trunk/gui/orxonox_gui.h
===================================================================
--- orxonox/trunk/gui/orxonox_gui.h	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui.h	(revision 2588)
@@ -1,2 +1,7 @@
+/*!
+ \file orxonox_gui.h
+ \brief Contains all Widgets and the Creation of the Gui
+*/
+
 #ifndef _ORXONOX_GUI_H
 #define _ORXONOX_GUI_H
@@ -19,4 +24,5 @@
 #include <gtk/gtkeventbox.h>
 
+//! Class that creates the OrxonoxGui
 class OrxonoxGui
 {
@@ -27,12 +33,14 @@
 };
 
+//! This is the topmost object that can be displayed all others are derived from it.
+
 class Widget
 {
  private:
  public:
-  Widget* next;
-  GtkWidget* widget;
+  Widget* next; //!< next always points to the next Widget in the list. Every Widget has a next one, or has NULL as next
+  GtkWidget* widget; //!< widget is the gtk_widget that the specific Object Contains.
   virtual void init(void);
-  int is_option;
+  int is_option; //!< with this Paramenter one can set the IsOption type: -2:Container, -1: Box, 0: not an Option, 1: Bool-option, 2: int-option
 
   void connectSignal (char* event, gint (*signal)(GtkWidget*, GdkEvent*, void *));
@@ -48,5 +56,10 @@
 
 
-
+//! This is a Container Class, it can contain one sub-Widget: down.
+/**
+ * A Container is a Widget that can hold a subWidget in addition to a next-Widget.
+ * The Container can by itself not be displayed created or used.
+ * The derived classes of Container can be displayed
+*/
 class Container : public Widget
 {
@@ -58,10 +71,15 @@
  public:
   void init(void);
-  Widget* down;
-  void setBorderWidth (int borderwidth);
-  virtual void setTitle (char* title) = 0;
+  Widget* down; //!< this points to the Widget below this.
+  //  void setBorderWidth (int borderwidth);
+  //  virtual void setTitle (char* title) = 0;
   void fill (Widget *lowerWidget);
 };
 
+//! Window is the class that creates new Windows, and handels them
+/**
+ * A Window is a class derived from Container that contains a window-widget.
+ * It has the ability to hold one sub-object
+ */
 class Window : public Container
 {
@@ -73,8 +91,13 @@
   
   void setTitle (char* title);
-  void showall ();
+  void showall (); 
   static gint orxonox_gui_quit (GtkWidget *widget, GdkEvent *event, gpointer data);
 };
 
+//! Frame is the class that handles frames
+/**
+ * A Frame is an object, that has a border and if you like a name on it.
+ * It can contain a Widget, which means that you can insert anything you like inside of a frame
+ */
 class Frame :public Container
 {
@@ -88,4 +111,8 @@
 };
 
+//! EventBox is a Container that can Handle all Events happening inside of it.
+/**
+ * Example: if you have a picture, and you want it to catch mouse-clicks, you have to pack it inside a EventBox
+ */
 class EventBox : public Container
 {
@@ -99,4 +126,10 @@
 };
 
+//! A Box can contain multiple Widgets
+/**
+ * A Box can Contain multiple Widgets, that are ordered either horizontally or vertically
+ * I defined the standartbox to be horizontally.
+ * A Box is always filled left->right (horizontally) or up->down (vertically)
+ */
 class Box : public Widget
 {
@@ -107,9 +140,14 @@
   void init(char boxtype);
 
-  Widget* down;
+  Widget* down; //!< the Lower Widget of a Box.
   void fill (Widget* lowerWidget);
 
 };
 
+//! Image is the keeper of one Image 
+/** 
+ * Images are mighty cool.
+ * Images can help you lighten up the Programming process, and will give everyone a better impression of the Software.
+ */
 class Image : public Widget
 {
@@ -120,4 +158,8 @@
 };
 
+//! An Option is a Widget that contains something that may change its state.
+/**
+ * Options are the essence of a GUI, they: Configure, Start, Quit, Execute, and make it worth something
+ */
 class Option : public Widget
 {
@@ -126,15 +168,19 @@
   void init(void);
 
-  int value;
-  char* option_name;
-  char* flag_name;
-  char* flag_name_short;
-  int default_value;
+  int value; //!< every option has a value either true or false (0,1) or something else like 25 for 25% of the volume
+  char* option_name; //!< options have a name, that can be displayed around them
+  char* flag_name; //!< options have a flag name that will be appendet if you start the Program from the GUI.
+  char* flag_name_short; //!< like flag_name but shorter
+  int default_value; //!< A default value is good, for hiding a option if it is not needed. (hidden if value == default_value)
 
   void setFlagName (char* flagname, int defaultvalue);
   void setFlagName (char* flagname, char* flagnameshort, int defaultvalue);
-  virtual void redraw () = 0;
-};
-
+  virtual void redraw () = 0; //!< A Option must be able to redraw itself.
+};
+
+//! Buttons can be pressed, and released.
+/**
+ * Buttons are mainly there for executing some action like Starting the Programm, or Quiting it.
+ */
 class Button : public Option 
 {
@@ -149,4 +195,7 @@
 };
 
+//! CheckButtons are a key in configuring bool Variables
+/** CheckButtons can configure bool Variables like wireframe on/off, enable_sound etc.
+ */
 class CheckButton : public Option
 {
@@ -162,4 +211,8 @@
 };
 
+//! Sliders are Options that can be modified in their value
+/**
+ * good for volume, brightness, etc.
+ */
 class Slider : public Option
 {
@@ -176,4 +229,5 @@
 };
 
+//! A Menu is an Option that has a dropdown menu, where you can chose between different Items
 class Menu : public Option
 {
@@ -195,4 +249,5 @@
 };
 
+//! A label is a Widget, that displays a text
 class Label : public Widget
 {
Index: orxonox/trunk/gui/orxonox_gui_audio.cc
===================================================================
--- orxonox/trunk/gui/orxonox_gui_audio.cc	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui_audio.cc	(revision 2588)
@@ -26,4 +26,7 @@
 #include "orxonox_gui_audio.h"
 
+/**
+   \brief Creates an Audio-Frame
+*/
 OrxonoxGuiAudio::OrxonoxGuiAudio ()
 {
@@ -48,4 +51,8 @@
 }
 
+/**
+   \brief Return the Frame
+   \return Returns the Audio-frame
+*/
 Frame* OrxonoxGuiAudio::getFrame ()
 {
Index: orxonox/trunk/gui/orxonox_gui_audio.h
===================================================================
--- orxonox/trunk/gui/orxonox_gui_audio.h	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui_audio.h	(revision 2588)
@@ -1,2 +1,7 @@
+/*!
+  \file orxonox_gui_audio.h
+  \brief File that holds the class that creates the Audio-Options.
+*/
+
 #ifndef _ORXONOX_GUI_AUDIO_H
 #define _ORXONOX_GUI_AUDIO_H
@@ -4,4 +9,5 @@
 #include "orxonox_gui.h"
 
+//! Class that creates the Audio-Options.
 class OrxonoxGuiAudio
 {
Index: orxonox/trunk/gui/orxonox_gui_banner.cc
===================================================================
--- orxonox/trunk/gui/orxonox_gui_banner.cc	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui_banner.cc	(revision 2588)
@@ -27,4 +27,7 @@
 #include <iostream.h>
 
+/**
+   \brief Creates a new BannerEventBox and its content.
+*/
 OrxonoxGuiBanner::OrxonoxGuiBanner ()
 {
@@ -36,8 +39,16 @@
 }
 
+/**
+   \brief Destructs it.
+*/
 OrxonoxGuiBanner::~OrxonoxGuiBanner ()
 {
 }
 
+/** 
+    \brief Opens up our LOGO-Window.\n
+    it creates a new one if it has not yet been opened.\n
+    it shows it if it has been created
+*/
 void OrxonoxGuiBanner::logoWindowNew()
 {
@@ -65,4 +76,8 @@
     }
 }
+
+/**
+   \brief Hides Window through ~Window();
+*/
 void OrxonoxGuiBanner::logoWindowClose()
 {
@@ -71,6 +86,8 @@
 }
 
-
-
+/**
+   \brief Returns an EventBox
+   \return The EventBox, that holds the Banner.
+*/
 EventBox* OrxonoxGuiBanner::getEventBox ()
 {
@@ -78,10 +95,23 @@
 }
 
+/**
+   \brief opens up the banner-window.\n
+   this is the Signal that does it. !!SIGNALS ARE STATIC!!
+   \param widget the widget that did it!
+   \param event the event that did it!
+   \param banner the Object that holds the banner-logo-window
+*/
 gint LogoWindowOpen (GtkWidget* widget, GdkEvent* event, void* banner)
 {
-  //cout << data->is_option<<"\n";
   static_cast<OrxonoxGuiBanner*>(banner)->logoWindowNew();
 }
 
+/**
+   \brief closes the banner-window.\n
+   this is the Signal that does it. !!SIGNALS ARE STATIC!!
+   \param widget the widget that did it!
+   \param event the event that did it!
+   \param banner the Object that holds the banner-logo-window
+*/
 gint LogoWindowClose (GtkWidget *widget, GdkEvent* event, void* banner)
 {
Index: orxonox/trunk/gui/orxonox_gui_banner.h
===================================================================
--- orxonox/trunk/gui/orxonox_gui_banner.h	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui_banner.h	(revision 2588)
@@ -1,2 +1,8 @@
+/*!
+  \file orxonox_gui_banner.h
+  \brief  File that holds the class that creates the Banner-Image.\n
+  This is Commercial :-)
+*/
+
 #ifndef _ORXONOX_GUI_BANNER_H
 #define _ORXONOX_GUI_BANNER_H
@@ -4,4 +10,5 @@
 #include "orxonox_gui.h"
 
+//! Class that creates the Banner-Image
 class OrxonoxGuiBanner
 {
@@ -9,5 +16,5 @@
   Frame* bannerFrame;
   Box* bannerBox;
-  EventBox* bannerEventBox;
+  EventBox* bannerEventBox; //!< an Image needs an EventBox to catch klicks
   Image* bannerImage;
   Label* bannerLabel;
@@ -25,4 +32,5 @@
   EventBox* getEventBox ();
 };
+
 gint LogoWindowOpen (GtkWidget *widget, GdkEvent* event, void* banner);
 gint LogoWindowClose (GtkWidget *widget, GdkEvent* event, void* banner);
Index: orxonox/trunk/gui/orxonox_gui_exec.cc
===================================================================
--- orxonox/trunk/gui/orxonox_gui_exec.cc	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui_exec.cc	(revision 2588)
@@ -28,4 +28,8 @@
 #include <string>
 
+/** 
+    \brief Creates the Exec-Frame
+    \param orxonoxGUI ExecFrame needs to know where to get the Options from
+*/
 OrxonoxGuiExec::OrxonoxGuiExec (Window* orxonoxGUI)
 {
@@ -54,4 +58,8 @@
 }
 
+/**
+   \brief Return the Frame
+   \return Returns the Exec-frame
+*/
 Frame* OrxonoxGuiExec::getFrame ()
 {
@@ -61,4 +69,9 @@
 /* FILE HANDLING */
 
+/**
+   \brief Sets the location of the configuration File.\n
+   * The name will be parsed from ~/ to /home/[username] on unix and c:/Documents and Settings/username/Settings/ on Windows
+   \param filename the location of the configFile
+*/
 void OrxonoxGuiExec::setFilename (char* filename)
 {
@@ -78,4 +91,8 @@
 }
 
+/**
+   \brief checks if a option should be saved.
+   \return 1 if it should 0 if not/
+*/
 int OrxonoxGuiExec::shouldsave ()
 {
@@ -83,4 +100,9 @@
 }
 
+/** 
+    \brief Saves the configuration-file to the Disk.\n
+    this Function only opens and closes the file, in between OrxonoxGuiExec::writeFileText (Widget* widget) will execute the real writing process.
+    \param widget from which Widget on should be saved.
+*/
 void OrxonoxGuiExec::writeToFile (Widget* widget)
 {
@@ -91,4 +113,8 @@
 }
 
+/**
+   \brief Actually writes into the configuration file to the disk.
+   \param widget from which Widget on should be saved.
+*/
 void OrxonoxGuiExec::writeFileText (Widget* widget)
 {
@@ -121,4 +147,8 @@
 }
 
+/**
+   \brief Reads in Configuration Data.
+   \param widget from which Widget on should be saved.
+*/
 void OrxonoxGuiExec::readFromFile (Widget* widget)
 {
@@ -150,4 +180,10 @@
 }
 
+/**
+   \brief Maps Confugurations to the Options.
+   \param widget which widget downwards
+   \param variableName the name of the Variable that should be set up.
+   \param variableValue the Value of the Variable that should be set up
+*/
 void OrxonoxGuiExec::readFileText (Widget* widget, char* variableName, int variableValue)
 {
@@ -170,10 +206,12 @@
 }
 
-
+/**
+   \brief Starts ORXONOX. (not really implemented yet, but the function is there.\n
+   This is a Signal and can be executed through Widget::signal_connect
+   \param widget the widget that executed the start command
+   \param data additional data
+*/
 gint startOrxonox (GtkWidget *widget, Widget* data)
 {
-  /** 
-   * Starts Orxonox.
-   */
   cout << "Starting Orxonox" <<endl;
 }
Index: orxonox/trunk/gui/orxonox_gui_exec.h
===================================================================
--- orxonox/trunk/gui/orxonox_gui_exec.h	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui_exec.h	(revision 2588)
@@ -1,2 +1,7 @@
+/*!
+  \file orxonox_gui_exec.h
+  \brief File that holds the class that creates the execute-Options.
+*/
+
 #ifndef _ORXONOX_GUI_EXEC_H
 #define _ORXONOX_GUI_EXEC_H
@@ -6,4 +11,5 @@
 using namespace std;
 
+//! Class that creates the execute-Options.
 class OrxonoxGuiExec
 {
Index: orxonox/trunk/gui/orxonox_gui_flags.cc
===================================================================
--- orxonox/trunk/gui/orxonox_gui_flags.cc	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui_flags.cc	(revision 2588)
@@ -27,5 +27,8 @@
 #include <iostream.h>
 
-
+/**
+   \brief Creates the Flags-Frame
+   \param widget The Widget from which the data will be parsed
+*/
 OrxonoxGuiFlags::OrxonoxGuiFlags (Widget* widget)
 {
@@ -43,4 +46,8 @@
 }
 
+/**
+   \brief Function to return the Frame that holds the Flagtext.
+   \returns Frame that holds the Flagtext.
+*/
 Frame* OrxonoxGuiFlags::getFrame ()
 {
@@ -48,4 +55,8 @@
 }
 
+/**
+   \brief Sets the Flags from widget downwards.
+   \param widget the Widget from which on to scan for deeper Options and their settings.
+*/
 void OrxonoxGuiFlags::setTextFromFlags (Widget* widget)
 {
@@ -56,4 +67,8 @@
 }
 
+/** 
+    \brief this actually sets the flagtext, and appends it to flagText
+    \param widget like OrxonoxGuiFlags::setTextFromFlags(widget)
+*/
 void OrxonoxGuiFlags::FlagsText(Widget* widget)
 {
@@ -89,4 +104,2 @@
     FlagsText (widget->next);
 }
-
-
Index: orxonox/trunk/gui/orxonox_gui_flags.h
===================================================================
--- orxonox/trunk/gui/orxonox_gui_flags.h	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui_flags.h	(revision 2588)
@@ -1,2 +1,7 @@
+/*!
+  \file orxonox_gui_flags.h
+  \brief File that holds the class that creates the flags-Text.
+*/
+
 #ifndef _ORXONOX_GUI_FLAGS_H
 #define _ORXONOX_GUI_FLAGS_H
@@ -4,4 +9,5 @@
 #include "orxonox_gui.h"
 
+//! Class that creates the flags-Text.
 class OrxonoxGuiFlags
 {
Index: orxonox/trunk/gui/orxonox_gui_video.cc
===================================================================
--- orxonox/trunk/gui/orxonox_gui_video.cc	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui_video.cc	(revision 2588)
@@ -28,5 +28,4 @@
 
 
-
 OrxonoxGuiVideo::OrxonoxGuiVideo ()
 {
@@ -44,4 +43,8 @@
 }
 
+/**
+   \brief Return the Frame
+   \return Returns the Video-frame
+*/
 Frame* OrxonoxGuiVideo::getFrame ()
 {
Index: orxonox/trunk/gui/orxonox_gui_video.h
===================================================================
--- orxonox/trunk/gui/orxonox_gui_video.h	(revision 2587)
+++ orxonox/trunk/gui/orxonox_gui_video.h	(revision 2588)
@@ -1,2 +1,6 @@
+/*!
+  \file orxonox_gui_video.h
+  \brief File that holds the class that creates the Video-Options.
+*/
 #ifndef _ORXONOX_GUI_VIDEO_H
 #define _ORXONOX_GUI_VIDEO_H
@@ -4,4 +8,5 @@
 #include "orxonox_gui.h"
 
+//! Class that creates the Video-Options.
 class OrxonoxGuiVideo
 {
