Index: /orxonox/trunk/src/lib/gui/gui/gui_gtk.h
===================================================================
--- /orxonox/trunk/src/lib/gui/gui/gui_gtk.h	(revision 4063)
+++ /orxonox/trunk/src/lib/gui/gui/gui_gtk.h	(revision 4064)
@@ -358,4 +358,19 @@
 };
 
+//! A EntryField is a TextEntry field, for putting some text into.
+class EntryField : public Option
+{
+ public:
+  EntryField(const char* name = NULL);
+  virtual ~EntryField(void);
+  
+  void setValue(const char* newValue);
+  virtual char* save(void);
+  virtual void load(char* loadString);
+  
+  virtual void redraw(void);
+  virtual void changeOption(void);
+};
+
 //! A label is a Widget, that displays a text
 class Label : public Widget
Index: /orxonox/trunk/src/lib/gui/gui/gui_update.cc
===================================================================
--- /orxonox/trunk/src/lib/gui/gui/gui_update.cc	(revision 4063)
+++ /orxonox/trunk/src/lib/gui/gui/gui_update.cc	(revision 4064)
@@ -284,9 +284,9 @@
 CURL* GuiUpdate::curlHandle = NULL;
 
-/**
-   \brief A bool parameter that shows if we are downloading.
-*/
+//! A bool parameter that shows if we are downloading.
 bool GuiUpdate::isDownloading = false;
 
+//! A parameter to see, if downloading has been canceled
+bool GuiUpdate::downloadCanceled = false;
 
 /**
Index: /orxonox/trunk/src/lib/gui/gui/gui_video.cc
===================================================================
--- /orxonox/trunk/src/lib/gui/gui/gui_video.cc	(revision 4063)
+++ /orxonox/trunk/src/lib/gui/gui/gui_video.cc	(revision 4064)
@@ -27,4 +27,5 @@
 #include "gui_video.h"
 
+#include "gui_gtk.h"
 #include "glincl.h"
 #include <stdlib.h>
@@ -35,27 +36,36 @@
 GuiVideo::GuiVideo(void)
 {
-  this->videoFrame = new Frame("Video-Options:");
-  this->videoBox = new Box('v');
-  this->videoFrame->setGroupName("video");
-  
-  this->fullscreen = new CheckButton("Fullscreen-mode");
-  this->fullscreen->setFlagName("windowed", "q", 1);
-  this->fullscreen->saveability();
-  this->videoBox->fill(this->fullscreen);
-  this->resolution = new Menu("Resolution");
-  this->getResolutions(this->resolution);
-  this->resolution->saveability();
-  this->resolution->setFlagName("resolution", "r", 0);
-  this->videoBox->fill(this->resolution);
-  this->wireframe = new CheckButton("WireFrame-mode");
-  this->wireframe->setFlagName("wireframe", "w", 0);
-  this->wireframe->saveability();
-  this->videoBox->fill(this->wireframe);
-
-  this->advancedWindowCreate();
-  this->videoBox->fill(this->advancedWindowGetButton());
-
-  this->videoFrame->fill(videoBox);
-  this->setMainWidget(this->videoFrame);
+  Frame* videoFrame;        //!< The Frame that holds the video options.
+
+  videoFrame = new Frame("Video-Options:");
+  videoFrame->setGroupName("video");
+  {
+    Box* videoBox;            //!< The Box that holds the video options.
+
+    videoBox = new Box('v');
+    {
+      CheckButton* fullscreen;  //!< CheckButton for fullscreen-mode
+      Menu* resolution;         //!< Menu for the resolution
+      CheckButton* wireframe;   //!< CheckButton for wireframe Mode.
+
+      fullscreen = new CheckButton("Fullscreen-mode");
+      fullscreen->setFlagName("windowed", "q", 1);
+      fullscreen->saveability();
+      videoBox->fill(fullscreen);
+      resolution = new Menu("Resolution");
+      getResolutions(resolution);
+      resolution->saveability();
+      resolution->setFlagName("resolution", "r", 0);
+      videoBox->fill(resolution);
+      wireframe = new CheckButton("WireFrame-mode");
+      wireframe->setFlagName("wireframe", "w", 0);
+      wireframe->saveability();
+      videoBox->fill(wireframe);
+
+      videoBox->fill(advancedWindowCreate());
+    }
+    videoFrame->fill(videoBox);
+  }
+  setMainWidget(videoFrame);
 }
 
@@ -71,80 +81,97 @@
    \brief Creates a window, and all it contains for the Source-update.
 */
-void GuiVideo::advancedWindowCreate(void)
-{
+Widget* GuiVideo::advancedWindowCreate(void)
+{
+  // advanced-Performance-Options
+  Window* advancedWindow;   //!< A Window to display advanced options.
+  Button* advancedButton;   //!< A Button to open the Advanced Video Performance Window.
   // the button, that opens this Window.
-  this->advancedButton = new Button("advanced");
+  advancedButton = new Button("advanced");
 
   // the Window itself
-  this->advancedWindow = new Window("Advanced Video Options");
-  this->advancedWindow->setGroupName("advancedVideoOptions");
-
-  this->advancedBox = new Box('v');
-
-  // Advanced Performance Options
-  this->shadows = new CheckButton("Shadows");
-  this->shadows->saveability();
-  this->advancedBox->fill(this->shadows);
-
-  this->fog = new CheckButton("Fog");
-  this->fog->saveability();
-  this->advancedBox->fill(this->fog);
-
-  this->reflections = new CheckButton("Reflections");
-  this->reflections->saveability();
-  this->advancedBox->fill(this->reflections);
-
-  this->textures = new CheckButton("Textures");
-  this->textures->saveability();
-  this->advancedBox->fill(this->textures);
-
-  this->textureDetail = new Menu("Texture Detail", "low", "medium", "high", "lastItem");
-  this->textureDetail->setDefaultValue(1);
-  this->textureDetail->saveability();
-  this->advancedBox->fill(this->textureDetail);
-
-  this->modelDetailLabel = new Label("Model Detail");
-  this->advancedBox->fill(this->modelDetailLabel);
-  this->modelDetail = new Menu("Model Detail", "low", "high", "lastItem");
-  this->modelDetail->setDefaultValue(1);
-  this->modelDetail->saveability();
-  this->advancedBox->fill(this->modelDetail);
-
-  this->antiAliasingLabel = new Label("Anti-Aliasing-depth:");
-  this->advancedBox->fill(this->antiAliasingLabel);
-  this->antiAliasing = new Menu("Anti Aliasing", "0", "1", "2", "4", "8",  "lastItem");
-  this->antiAliasing->setDefaultValue(2);
-  this->antiAliasing->saveability();
-  this->advancedBox->fill(this->antiAliasing);
-
-  this->filterMethodLabel = new Label("Filtering Method:");
-  this->advancedBox->fill(this->filterMethodLabel);
-  this->filterMethod = new Menu("Filtering Method", "none", "linear", "bilinear", "trilinear", "anisortopic", "lastItem");
-  this->filterMethod->setDefaultValue(1);
-  this->filterMethod->saveability();
-  this->advancedBox->fill(this->filterMethod);
-  
-  this->closeButton = new Button("close");
-  this->advancedBox->fill(this->closeButton);
-
-  this->advancedWindow->fill(advancedBox);
-#ifdef HAVE_GTK2 
-  this->advancedButton->connectSignal("button_press_event", this->advancedWindow, Window::windowOpen);
-  this->closeButton->connectSignal("button_press_event", this->advancedWindow, Window::windowClose);
-  this->advancedWindow->connectSignal("destroy", this->advancedWindow, Window::windowClose);
-  this->advancedWindow->connectSignal("delete_event", this->advancedWindow, Window::windowClose);
+  advancedWindow = new Window("Advanced Video Options");
+  advancedWindow->setGroupName("advancedVideoOptions");
+  {
+    Box* advancedBox;         //!< A Box to pack the options into.
+
+    advancedBox = new Box('v');
+    {
+      CheckButton* shadows;     //!< CheckButton for shadows
+      CheckButton* fog;         //!< CheckButton for fog.
+      CheckButton* reflections; //!< CheckButton for reflections
+      CheckButton* textures;    //!< CheckButton for textures
+      Menu* textureDetail;      //!< Menu for the Texture-Detail.
+      Label* modelDetailLabel;  //!< Label for model-detail.
+      Menu* modelDetail;        //!< model-detail.
+      Label* antiAliasingLabel; //!< Label for the anti-aliasing mode.
+      Menu* antiAliasing;       //!< Menu for the Antialiasing-mode.
+      Label* filterMethodLabel; //!< Label for filtering-Method.
+      Menu* filterMethod;       //!< Menu for filtering Method.
+      Button* closeButton;      //!< A Button to close the Advanced-settingsWindow.
+
+      // Advanced Performance Options
+      shadows = new CheckButton("Shadows");
+      shadows->saveability();
+      advancedBox->fill(shadows);
+      
+      fog = new CheckButton("Fog");
+      fog->saveability();
+      advancedBox->fill(fog);
+      
+      reflections = new CheckButton("Reflections");
+      reflections->saveability();
+      advancedBox->fill(reflections);
+      
+      textures = new CheckButton("Textures");
+      textures->saveability();
+      advancedBox->fill(textures);
+      
+      textureDetail = new Menu("Texture Detail", "low", "medium", "high", "lastItem");
+      textureDetail->setDefaultValue(1);
+      textureDetail->saveability();
+      advancedBox->fill(textureDetail);
+      
+      modelDetailLabel = new Label("Model Detail");
+      advancedBox->fill(modelDetailLabel);
+      modelDetail = new Menu("Model Detail", "low", "high", "lastItem");
+      modelDetail->setDefaultValue(1);
+      modelDetail->saveability();
+      advancedBox->fill(modelDetail);
+      
+      antiAliasingLabel = new Label("Anti-Aliasing-depth:");
+      advancedBox->fill(antiAliasingLabel);
+      antiAliasing = new Menu("Anti Aliasing", "0", "1", "2", "4", "8",  "lastItem");
+      antiAliasing->setDefaultValue(2);
+      antiAliasing->saveability();
+      advancedBox->fill(antiAliasing);
+      
+      filterMethodLabel = new Label("Filtering Method:");
+      advancedBox->fill(filterMethodLabel);
+      filterMethod = new Menu("Filtering Method", "none", "linear", "bilinear", "trilinear", "anisortopic", "lastItem");
+      filterMethod->setDefaultValue(1);
+      filterMethod->saveability();
+      advancedBox->fill(filterMethod);
+  
+      closeButton = new Button("close");
+      closeButton->connectSignal("button_press_event", advancedWindow, Window::windowClose);
+
+      advancedBox->fill(closeButton);
+    }
+    advancedWindow->fill(advancedBox);
+  }
+#ifdef HAVE_GTK2
+  advancedButton->connectSignal("button_press_event", advancedWindow, Window::windowOpen);
+  advancedWindow->connectSignal("destroy", advancedWindow, Window::windowClose);
+  advancedWindow->connectSignal("delete_event", advancedWindow, Window::windowClose);
 #endif /* HAVE_GTK2 */
-   Window::addWindow(this->advancedWindow);
-
-}
-
-/**
-   \returns A Pointer to the Button of the UpdaterSourceWindow
-*/
-Button* GuiVideo::advancedWindowGetButton(void)
-{
-  return this->advancedButton;
-}
-
+  Window::addWindow(advancedWindow);
+
+  return advancedButton;
+}
+
+/**
+   \brief sets all resolutions to the menu
+   \param menu the Menu to set The resolutions to.
+*/
 void GuiVideo::getResolutions(Menu* menu)
 {
Index: /orxonox/trunk/src/lib/gui/gui/gui_video.h
===================================================================
--- /orxonox/trunk/src/lib/gui/gui/gui_video.h	(revision 4063)
+++ /orxonox/trunk/src/lib/gui/gui/gui_video.h	(revision 4064)
@@ -8,5 +8,8 @@
 #include "gui.h"
 #include "gui_element.h"
-#include "gui_gtk.h"
+
+// FORWARD DECLARATIONS
+class Widget;
+class Menu;
 
 //! Class that creates the Video-Options.
@@ -14,33 +17,5 @@
 {
  private:
-  Frame* videoFrame;        //!< The Frame that holds the video options.
-  Box* videoBox;            //!< The Box that holds the video options.
-  CheckButton* fullscreen;  //!< CheckButton for fullscreen-mode
-  Menu* resolution;         //!< Menu for the resolution
-  CheckButton* wireframe;   //!< CheckButton for wireframe Mode.
-
-  // advanced-Performance-Options
-  Window* advancedWindow;   //!< A Window to display advanced options.
-  Button* advancedButton;   //!< A Button to open the Advanced Video Performance Window.
-  Box* advancedBox;         //!< A Box to pack the options into.
-  CheckButton* shadows;     //!< CheckButton for shadows
-  CheckButton* fog;         //!< CheckButton for fog.
-  CheckButton* reflections; //!< CheckButton for reflections
-  CheckButton* textures;    //!< CheckButton for textures
-  Menu* textureDetail;      //!< Menu for the Texture-Detail.
-  
-  Label* modelDetailLabel;  //!< Label for model-detail.
-  Menu* modelDetail;        //!< model-detail.
-  
-  Label* antiAliasingLabel; //!< Label for the anti-aliasing mode.
-  Menu* antiAliasing;       //!< Menu for the Antialiasing-mode.
-
-  Label* filterMethodLabel; //!< Label for filtering-Method.
-  Menu* filterMethod;       //!< Menu for filtering Method.
-
-  Button* closeButton;      //!< A Button to close the Advanced-settingsWindow.
-
-  Button* advancedWindowGetButton(void);
-  void advancedWindowCreate(void);
+  //  Button* advancedWindowGetButton(void);
   
  public:
@@ -48,7 +23,7 @@
   ~GuiVideo(void);
 
+ private:
   void getResolutions(Menu* menu);
-  
-
+  Widget* advancedWindowCreate(void);
 };
 #endif /* _GUI_VIDEO_H */
