Index: /orxonox/branches/textEngine/src/lib/graphics/font/text_engine.cc
===================================================================
--- /orxonox/branches/textEngine/src/lib/graphics/font/text_engine.cc	(revision 3766)
+++ /orxonox/branches/textEngine/src/lib/graphics/font/text_engine.cc	(revision 3767)
@@ -17,5 +17,5 @@
    !! IMPORTANT !! When using ttf fonts clear the license issues prior to
    adding them to orxonox. This is really important, because we do not 
-   want to defend anyone.
+   want to offend anyone.
 */
 
@@ -43,36 +43,12 @@
    \brief constructs a Font
    \param fontFile the File to load the font from
-*/
-Font::Font(const char* fontFile)
-{
-  this->init(fontFile);
-}
-
-/**
-   \brief destructs a font
-*/
-Font::~Font(void)
-{
-  delete this->currentText;
-
-  if (this->glyphArray)
-    {
-      for (int i = 0; i < FONT_HIGHEST_KNOWN_CHAR; i++)
-	delete this->glyphArray[i];
-      delete []this->glyphArray;
-    }
-
-  if (this->font)
-    TTF_CloseFont(this->font);
-}
-
-/**
-   \brief initializes a new Font
-   \param fontFile The file to load a Font from
-   \param fontSize the Size in pixels of the Font
-*/
-bool Font::init(const char* fontFile, unsigned int fontSize)
-{
-  if (!TTF_WasInit())
+   \param fontSize the Size of the Font in Pixels
+   \param r Red value of the Font.
+   \param g Green value of the Font.
+   \param b Blue value of the Font.
+*/
+Font::Font(const char* fontFile, unsigned int fontSize, Uint8 r, Uint8 g, Uint8 b)
+{
+   if (!TTF_WasInit())
     TextEngine::enableFonts();
 
@@ -96,14 +72,31 @@
   this->setFont(fontFile);
 
-  this->setColor(0, 255, 0);
   this->setPosition(0, 0);
 
   this->setText(FONT_DEFAULT_TEXT);
   
-  this->setColor(0,255,0);
+  this->setColor(r, g, b);
 
   this->createTexture();
 
   this->fastTextureID = this->createFastTexture();
+}
+
+/**
+   \brief destructs a font
+*/
+Font::~Font(void)
+{
+  delete this->currentText;
+
+  if (this->glyphArray)
+    {
+      for (int i = 0; i < FONT_HIGHEST_KNOWN_CHAR; i++)
+	delete this->glyphArray[i];
+      delete []this->glyphArray;
+    }
+
+  if (this->font)
+    TTF_CloseFont(this->font);
 }
 
Index: /orxonox/branches/textEngine/src/lib/graphics/font/text_engine.h
===================================================================
--- /orxonox/branches/textEngine/src/lib/graphics/font/text_engine.h	(revision 3766)
+++ /orxonox/branches/textEngine/src/lib/graphics/font/text_engine.h	(revision 3767)
@@ -8,4 +8,8 @@
 
     for more information see the specific classes.
+
+    !! IMPORTANT !! When using ttf fonts clear the license issues prior to
+   adding them to orxonox. This is really important, because we do not want
+   to offend anyone.
 */
 
@@ -28,7 +32,7 @@
 #define FONT_DEFAULT_SIZE       50                   //!< default size of the Text
 #define FONT_DEFAULT_TEXT	"orxonox 1234567890" //!< some default text to display
-#define FONT_DEFAULT_COLOR_R    256                  //!< the default red part (color) of the text
-#define FONT_DEFAULT_COLOR_G    256                  //!< the default red green (color) of the text
-#define FONT_DEFAULT_COLOR_B    256                  //!< the default red blue (color) of the text
+#define FONT_DEFAULT_COLOR_R    255                  //!< the default red part (color) of the text
+#define FONT_DEFAULT_COLOR_G    255                  //!< the default red green (color) of the text
+#define FONT_DEFAULT_COLOR_B    255                  //!< the default red blue (color) of the text
 #define FONT_NUM_COLORS         256                  //!< The number of colors.
 
@@ -77,13 +81,31 @@
   
   // OpenGL-specific
-  //  TexCoord texCoord;             //!< A Texture Coordinate for this glyph.
+  //  TexCoord texCoord;         //!< A Texture Coordinate for this glyph.
   GLuint displayList;            //!< DiplayList to render this Glyph.
 };
 
-//! A class to handle a Font
+//! Represents one textElement.
+class Text
+{
+ public:
+  int type;                      //!< The type of this Font.
+  char* text;                    //!< The text to display
+  SDL_Color color;               //!< The color of the font.
+  // placement in openGL
+  GLuint texture;                //!< A GL-texture to hold the text
+  TexCoord texCoord;             //!< Texture-coordinates \todo fix this to have a struct
+  SDL_Rect textPosSize;          //!< An SDL-Rectangle representing the position and size of the Text on the screen.
+  int renderStyle;               //!< The Renderstyle
+  
+  PNode* bindNode;               //!< A node the Text is bind to. (if NULL thr node will not be bound to anything.)
+};
+
+
+//! A class to handle a Font of a certain ttf-File, Size and Color.
 class Font
 {
  public:
-  Font(const char* fontFile);
+  Font(const char* fontFile, unsigned int fontSize = FONT_DEFAULT_SIZE,
+       Uint8 r = FONT_DEFAULT_COLOR_R, Uint8 g = FONT_DEFAULT_COLOR_G, Uint8 b = FONT_DEFAULT_COLOR_B);
   virtual ~Font();
 
@@ -115,22 +137,7 @@
   GLuint fastTextureID;             //!< The fast textureID.
 
-  //! Represents one textElement.
-  struct Text
-  {
-    int type;                   //!< The type of this Font.
-    char* text;                      //!< The text to display
-    SDL_Color color;                 //!< The color of the font.
-    // placement in openGL
-    GLuint texture;                  //!< A GL-texture to hold the text
-    TexCoord texCoord;               //!< Texture-coordinates \todo fix this to have a struct
-    SDL_Rect textPosSize;            //!< An SDL-Rectangle representing the position and size of the Text on the screen.
-    int renderStyle;                 //!< The Renderstyle
-
-    PNode* bindNode;                 //!< A node the Text is bind to. (if NULL thr node will not be bound to anything.)
-  };
   tList<Text>* textList;
   Text* currentText;
 
-  bool init(const char* fontFile, unsigned int fontSize = FONT_DEFAULT_SIZE);
   int getMaxHeight(void);
   int getMaxAscent(void);
