Index: trunk/src/lib/gui/gl_gui/Makefile.am
===================================================================
--- trunk/src/lib/gui/gl_gui/Makefile.am	(revision 5373)
+++ trunk/src/lib/gui/gl_gui/Makefile.am	(revision 5384)
@@ -11,4 +11,5 @@
 libORXglgui_a_SOURCES = glmenu/glmenu_imagescreen.cc \
 			glgui_handler.cc \
+			glgui_mainwidget.cc \
                         glgui_widget.cc \
                         glgui_button.cc \
@@ -22,4 +23,6 @@
 noinst_HEADERS= glmenu/glmenu_imagescreen.h \
 		glgui.h \
+		glgui_handler.h \
+		glgui_mainwidget.h \
 		glgui_widget.h \
 		glgui_button.h \
Index: trunk/src/lib/gui/gl_gui/Makefile.in
===================================================================
--- trunk/src/lib/gui/gl_gui/Makefile.in	(revision 5373)
+++ trunk/src/lib/gui/gl_gui/Makefile.in	(revision 5384)
@@ -56,4 +56,5 @@
 am_libORXglgui_a_OBJECTS = libORXglgui_a-glmenu_imagescreen.$(OBJEXT) \
 	libORXglgui_a-glgui_handler.$(OBJEXT) \
+	libORXglgui_a-glgui_mainwidget.$(OBJEXT) \
 	libORXglgui_a-glgui_widget.$(OBJEXT) \
 	libORXglgui_a-glgui_button.$(OBJEXT) \
@@ -72,4 +73,5 @@
 @AMDEP_TRUE@	./$(DEPDIR)/libORXglgui_a-glgui_frame.Po \
 @AMDEP_TRUE@	./$(DEPDIR)/libORXglgui_a-glgui_handler.Po \
+@AMDEP_TRUE@	./$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Po \
 @AMDEP_TRUE@	./$(DEPDIR)/libORXglgui_a-glgui_pushbutton.Po \
 @AMDEP_TRUE@	./$(DEPDIR)/libORXglgui_a-glgui_widget.Po \
@@ -201,4 +203,5 @@
 libORXglgui_a_SOURCES = glmenu/glmenu_imagescreen.cc \
 			glgui_handler.cc \
+			glgui_mainwidget.cc \
                         glgui_widget.cc \
                         glgui_button.cc \
@@ -211,4 +214,6 @@
 noinst_HEADERS = glmenu/glmenu_imagescreen.h \
 		glgui.h \
+		glgui_handler.h \
+		glgui_mainwidget.h \
 		glgui_widget.h \
 		glgui_button.h \
@@ -272,4 +277,5 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libORXglgui_a-glgui_frame.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libORXglgui_a-glgui_handler.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libORXglgui_a-glgui_pushbutton.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libORXglgui_a-glgui_widget.Po@am__quote@
@@ -324,4 +330,20 @@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libORXglgui_a_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libORXglgui_a-glgui_handler.obj `if test -f 'glgui_handler.cc'; then $(CYGPATH_W) 'glgui_handler.cc'; else $(CYGPATH_W) '$(srcdir)/glgui_handler.cc'; fi`
+
+libORXglgui_a-glgui_mainwidget.o: glgui_mainwidget.cc
+@am__fastdepCXX_TRUE@	if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libORXglgui_a_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libORXglgui_a-glgui_mainwidget.o -MD -MP -MF "$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Tpo" -c -o libORXglgui_a-glgui_mainwidget.o `test -f 'glgui_mainwidget.cc' || echo '$(srcdir)/'`glgui_mainwidget.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Tpo" "$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Po"; else rm -f "$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='glgui_mainwidget.cc' object='libORXglgui_a-glgui_mainwidget.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	depfile='$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Po' tmpdepfile='$(DEPDIR)/libORXglgui_a-glgui_mainwidget.TPo' @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libORXglgui_a_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libORXglgui_a-glgui_mainwidget.o `test -f 'glgui_mainwidget.cc' || echo '$(srcdir)/'`glgui_mainwidget.cc
+
+libORXglgui_a-glgui_mainwidget.obj: glgui_mainwidget.cc
+@am__fastdepCXX_TRUE@	if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libORXglgui_a_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libORXglgui_a-glgui_mainwidget.obj -MD -MP -MF "$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Tpo" -c -o libORXglgui_a-glgui_mainwidget.obj `if test -f 'glgui_mainwidget.cc'; then $(CYGPATH_W) 'glgui_mainwidget.cc'; else $(CYGPATH_W) '$(srcdir)/glgui_mainwidget.cc'; fi`; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Tpo" "$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Po"; else rm -f "$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='glgui_mainwidget.cc' object='libORXglgui_a-glgui_mainwidget.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	depfile='$(DEPDIR)/libORXglgui_a-glgui_mainwidget.Po' tmpdepfile='$(DEPDIR)/libORXglgui_a-glgui_mainwidget.TPo' @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libORXglgui_a_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libORXglgui_a-glgui_mainwidget.obj `if test -f 'glgui_mainwidget.cc'; then $(CYGPATH_W) 'glgui_mainwidget.cc'; else $(CYGPATH_W) '$(srcdir)/glgui_mainwidget.cc'; fi`
 
 libORXglgui_a-glgui_widget.o: glgui_widget.cc
Index: trunk/src/lib/gui/gl_gui/glgui_mainwidget.cc
===================================================================
--- trunk/src/lib/gui/gl_gui/glgui_mainwidget.cc	(revision 5384)
+++ trunk/src/lib/gui/gl_gui/glgui_mainwidget.cc	(revision 5384)
@@ -0,0 +1,43 @@
+/*
+   orxonox - the future of 3D-vertical-scrollers
+
+   Copyright (C) 2004 orx
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+   ### File Specific:
+   main-programmer: Benjamin Grauer
+   co-programmer: ...
+*/
+
+#define DEBUG_SPECIAL_MODULE DEBUG_MODULE_GUI
+
+#include "glgui_mainwidget.h"
+
+using namespace std;
+
+
+/**
+ * standard constructor
+ */
+GLGuiMainWidget::GLGuiMainWidget()
+{
+  this->setClassID(CL_GLGUI_MAIN_WIDGET, "GLGuiMainWidget");
+  this->setName("GLGuiMainWidget");
+}
+
+/**
+ *  the singleton reference to this class
+ */
+GLGuiMainWidget* GLGuiMainWidget::singletonRef = NULL;
+
+/**
+ * standard deconstructor
+ */
+GLGuiMainWidget::~GLGuiMainWidget ()
+{
+  GLGuiMainWidget::singletonRef = NULL;
+}
Index: trunk/src/lib/gui/gl_gui/glgui_mainwidget.h
===================================================================
--- trunk/src/lib/gui/gl_gui/glgui_mainwidget.h	(revision 5384)
+++ trunk/src/lib/gui/gl_gui/glgui_mainwidget.h	(revision 5384)
@@ -0,0 +1,29 @@
+/*!
+ * @file glgui_mainwidget.h
+ * @brief Definition of the glGui singleton Class
+ */
+
+#ifndef _GLGUI_MAINWIDGET_H
+#define _GLGUI_MAINWIDGET_H
+
+#include "glgui_widget.h"
+
+// FORWARD DEFINITION
+
+//! A default singleton class.
+class GLGuiMainWidget : public GLGuiWidget {
+
+ public:
+  virtual ~GLGuiMainWidget(void);
+  /** @returns a Pointer to the only object of this Class */
+  inline static GLGuiMainWidget* getInstance(void) { if (!GLGuiMainWidget::singletonRef) GLGuiMainWidget::singletonRef = new GLGuiMainWidget();  return GLGuiMainWidget::singletonRef; };
+
+  virtual void update() {};
+  virtual void draw() const {};
+
+ private:
+  GLGuiMainWidget(void);
+  static GLGuiMainWidget*       singletonRef;
+};
+
+#endif /* _GLGUI_MAINWIDGET_H */
Index: trunk/src/lib/gui/gl_gui/glgui_widget.cc
===================================================================
--- trunk/src/lib/gui/gl_gui/glgui_widget.cc	(revision 5373)
+++ trunk/src/lib/gui/gl_gui/glgui_widget.cc	(revision 5384)
@@ -23,5 +23,5 @@
  * standard constructor
 */
-GLGuiWidget::GLGuiWidget ()
+GLGuiWidget::GLGuiWidget ( ) : Element2D(NULL)
 {
   this->init();
Index: trunk/src/lib/gui/gl_gui/glgui_widget.h
===================================================================
--- trunk/src/lib/gui/gl_gui/glgui_widget.h	(revision 5373)
+++ trunk/src/lib/gui/gl_gui/glgui_widget.h	(revision 5384)
@@ -13,5 +13,5 @@
 class Material;
 
-//! This is part of the openglGUI class
+//! This is widget part of the openglGUI class
 /**
 * A widget is the main class of all the elements of th GUI.
@@ -28,5 +28,4 @@
 
 
-    virtual void draw() = 0;
     virtual void update() = 0;
 
