Index: code/trunk/src/libraries/core/GUIManager.cc
===================================================================
--- code/trunk/src/libraries/core/GUIManager.cc	(revision 7427)
+++ code/trunk/src/libraries/core/GUIManager.cc	(revision 7648)
@@ -43,4 +43,6 @@
 #include <CEGUIWindow.h>
 #include <CEGUIWindowManager.h>
+#include <elements/CEGUIListbox.h>
+#include <elements/CEGUIListboxItem.h>
 #include <ogreceguirenderer/OgreCEGUIRenderer.h>
 
@@ -436,7 +438,45 @@
     }
 
+    /**
+    @brief
+        Subscribe the input function to the input event for the input window.
+        This is a helper to be used in lua, because subscribeScriptedEvent() doesn't work in lua.
+    @param window
+        The window for which the event is subscribed.
+    @param event
+        The type of event to which we subscribe.
+    @param function
+        The function that is called when the event occurs.
+    */
     void GUIManager::subscribeEventHelper(CEGUI::Window* window, const std::string& event, const std::string& function)
     {
         window->subscribeScriptedEvent(event, function);
     }
+
+    /**
+    @brief
+        Set the input tooltip text for the input ListboxItem.
+    @param item
+        The ListboxItem for which the tooltip should be set.
+    @param tooltip
+        The tooltip text that should be set.
+    */
+    void GUIManager::setTooltipTextHelper(CEGUI::ListboxItem* item, const std::string& tooltip)
+    {
+        item->setTooltipText(tooltip);
+    }
+
+    /**
+    @brief
+        Set whether the tooltips for the input Listbox are enabled.
+    @param listbox
+        The Listbox for which to enable (or disable) tooltips.
+    @param enabled
+        Whether to enable or disabel the tooltips.
+    */
+    void GUIManager::setItemTooltipsEnabledHelper(CEGUI::Listbox* listbox, bool enabled)
+    {
+        listbox->setItemTooltipsEnabled(enabled);
+    }
+
 }
Index: code/trunk/src/libraries/core/GUIManager.h
===================================================================
--- code/trunk/src/libraries/core/GUIManager.h	(revision 7427)
+++ code/trunk/src/libraries/core/GUIManager.h	(revision 7648)
@@ -106,4 +106,6 @@
         // TODO: Temporary hack because the tolua exported CEGUI method does not seem to work
         static void subscribeEventHelper(CEGUI::Window* window, const std::string& event, const std::string& function); //tolua_export
+        static void setTooltipTextHelper(CEGUI::ListboxItem* item, const std::string& toooltip); //tolua_export
+        static void setItemTooltipsEnabledHelper(CEGUI::Listbox* listbox, bool enabled); //tolua_export
 
         static GUIManager& getInstance() { return Singleton<GUIManager>::getInstance(); } // tolua_export
Index: code/trunk/src/libraries/core/Loader.cc
===================================================================
--- code/trunk/src/libraries/core/Loader.cc	(revision 7427)
+++ code/trunk/src/libraries/core/Loader.cc	(revision 7648)
@@ -88,9 +88,19 @@
     }
 
-    bool Loader::load(const ClassTreeMask& mask)
+    /**
+    @brief
+        Loads all opened files, while conforming to the restrictions given by the input ClassTreeMask.
+    @param mask
+        A ClassTreeMask, which defines which types of classes are loaded and which aren't.
+    @param verbose
+        Whether the loader is verbose (prints its progress in a low output level) or not.
+    @return
+        Returns true if successful.
+    */
+    bool Loader::load(const ClassTreeMask& mask, bool verbose)
     {
         bool success = true;
         for (std::vector<std::pair<const XMLFile*, ClassTreeMask> >::iterator it = Loader::files_s.begin(); it != Loader::files_s.end(); ++it)
-            if (!Loader::load(it->first, it->second * mask))
+            if (!Loader::load(it->first, it->second * mask, verbose))
                 success = false;
 
@@ -109,11 +119,33 @@
     }
 
-    bool Loader::reload(const ClassTreeMask& mask)
+    /**
+    @brief
+        Reloads all opened files, while conforming to the restrictions given by the input ClassTreeMask.
+    @param mask
+        A ClassTreeMask, which defines which types of classes are reloaded and which aren't.
+    @param verbose
+        Whether the loader is verbose (prints its progress in a low output level) or not.
+    @return
+        Returns true if successful.
+    */
+    bool Loader::reload(const ClassTreeMask& mask, bool verbose)
     {
         Loader::unload(mask);
-        return Loader::load(mask);
-    }
-
-    bool Loader::load(const XMLFile* file, const ClassTreeMask& mask)
+        return Loader::load(mask, verbose);
+    }
+
+    /**
+    @brief
+        Loads the input file, while conforming to the restrictions given by the input ClassTreeMask.
+    @param file
+        The file to be loaded.
+    @param mask
+        A ClassTreeMask, which defines which types of classes are loaded and which aren't.
+    @param verbose
+        Whether the loader is verbose (prints its progress in a low output level) or not.
+    @return
+        Returns true if successful.
+    */
+    bool Loader::load(const XMLFile* file, const ClassTreeMask& mask, bool verbose)
     {
         if (!file)
@@ -144,6 +176,14 @@
         try
         {
-            COUT(0) << "Start loading " << file->getFilename() << "..." << std::endl;
-            COUT(3) << "Mask: " << Loader::currentMask_s << std::endl;
+            if(verbose)
+            {
+                COUT(0) << "Start loading " << file->getFilename() << "..." << std::endl;
+                COUT(3) << "Mask: " << Loader::currentMask_s << std::endl;
+            }
+            else
+            {
+                COUT(4) << "Start loading " << file->getFilename() << "..." << std::endl;
+                COUT(4) << "Mask: " << Loader::currentMask_s << std::endl;
+            }
 
             ticpp::Document xmlfile(file->getFilename());
@@ -165,5 +205,8 @@
             rootNamespace->XMLPort(rootElement, XMLPort::LoadObject);
 
-            COUT(0) << "Finished loading " << file->getFilename() << '.' << std::endl;
+            if(verbose)
+                COUT(0) << "Finished loading " << file->getFilename() << '.' << std::endl;
+            else
+                COUT(4) << "Finished loading " << file->getFilename() << '.' << std::endl;
 
             COUT(4) << "Namespace-tree:" << std::endl << rootNamespace->toString("  ") << std::endl;
@@ -210,8 +253,20 @@
     }
 
-    bool Loader::reload(const XMLFile* file, const ClassTreeMask& mask)
+    /**
+    @brief
+        Reloads the input file, while conforming to the restrictions given by the input ClassTreeMask.
+    @param file
+        The file to be reloaded.
+    @param mask
+        A ClassTreeMask, which defines which types of classes are reloaded and which aren't.
+    @param verbose
+        Whether the loader is verbose (prints its progress in a low output level) or not.
+    @return
+        Returns true if successful.
+    */
+    bool Loader::reload(const XMLFile* file, const ClassTreeMask& mask, bool verbose)
     {
         Loader::unload(file, mask);
-        return Loader::load(file, mask);
+        return Loader::load(file, mask, verbose);
     }
 
Index: code/trunk/src/libraries/core/Loader.h
===================================================================
--- code/trunk/src/libraries/core/Loader.h	(revision 7427)
+++ code/trunk/src/libraries/core/Loader.h	(revision 7648)
@@ -57,11 +57,11 @@
             static void remove(const XMLFile* file);
 
-            static bool load(const ClassTreeMask& mask = ClassTreeMask());
+            static bool load(const ClassTreeMask& mask = ClassTreeMask(), bool verbose = true);
             static void unload(const ClassTreeMask& mask = ClassTreeMask());
-            static bool reload(const ClassTreeMask& mask = ClassTreeMask());
+            static bool reload(const ClassTreeMask& mask = ClassTreeMask(), bool verbose = true);
 
-            static bool load(const XMLFile* file, const ClassTreeMask& mask = ClassTreeMask());
+            static bool load(const XMLFile* file, const ClassTreeMask& mask = ClassTreeMask(), bool verbose = true);
             static void unload(const XMLFile* file, const ClassTreeMask& mask = ClassTreeMask());
-            static bool reload(const XMLFile* file, const ClassTreeMask& mask = ClassTreeMask());
+            static bool reload(const XMLFile* file, const ClassTreeMask& mask = ClassTreeMask(), bool verbose = true);
 
             static std::string replaceLuaTags(const std::string& text);
