]> git.lizzy.rs Git - minetest.git/blobdiff - src/guiEngine.h
(Re)spawn players within 'mapgen_limit'
[minetest.git] / src / guiEngine.h
index 7f35949d1891e54a207acb383f23ec6385892807..e7e5ca05dc30bae22dad0de4ffd7a3df172fd0ed 100644 (file)
@@ -27,7 +27,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #include "modalMenu.h"
 #include "guiFormSpecMenu.h"
 #include "sound.h"
-#include "tile.h"
+#include "client/tile.h"
+#include "util/enriched_string.h"
 
 /******************************************************************************/
 /* Typedefs and macros                                                        */
@@ -73,13 +74,13 @@ class TextDestGuiEngine : public TextDest
         * receive fields transmitted by guiFormSpecMenu
         * @param fields map containing formspec field elements currently active
         */
-       void gotText(std::map<std::string, std::string> fields);
+       void gotText(const StringMap &fields);
 
        /**
         * receive text/events transmitted by guiFormSpecMenu
         * @param text textual representation of event
         */
-       void gotText(std::wstring text);
+       void gotText(const std::wstring &text);
 
 private:
        /** target to transmit data to */
@@ -138,6 +139,7 @@ class MenuMusicFetcher: public OnDemandSoundFetcher
 class GUIEngine {
        /** grant ModApiMainMenu access to private members */
        friend class ModApiMainMenu;
+       friend class ModApiSound;
 
 public:
        /**
@@ -148,7 +150,8 @@ class GUIEngine {
         * @param smgr scene manager to add scene elements to
         * @param data struct to transfer data to main game handling
         */
-       GUIEngine(      irr::IrrlichtDevice* dev,
+       GUIEngine(irr::IrrlichtDevice* dev,
+                       JoystickController *joystick,
                        gui::IGUIElement* parent,
                        IMenuManager *menumgr,
                        scene::ISceneManager* smgr,
@@ -175,7 +178,8 @@ class GUIEngine {
        }
 
        /** pass async callback to scriptengine **/
-       unsigned int queueAsync(std::string serialized_fct,std::string serialized_params);
+       unsigned int queueAsync(const std::string &serialized_fct,
+                       const std::string &serialized_params);
 
 private:
 
@@ -185,8 +189,8 @@ class GUIEngine {
        /** run main menu loop */
        void run();
 
-       /** handler to limit frame rate within main menu */
-       void limitFrameRate();
+       /** update size of topleftext element */
+       void updateTopLeftTextSize();
 
        /** device to draw at */
        irr::IrrlichtDevice*     m_device;
@@ -256,22 +260,21 @@ class GUIEngine {
         * @param url url to download
         * @param target file to store to
         */
-       static bool downloadFile(std::string url,std::string target);
+       static bool downloadFile(const std::string &url, const std::string &target);
 
        /** array containing pointers to current specified texture layers */
        image_definition m_textures[TEX_LAYER_MAX];
 
-       /** draw version string in topleft corner */
-       void drawVersion();
-
        /**
-        * specify text to be appended to version string
+        * specify text to appear as top left string
         * @param text to set
         */
-       void setTopleftText(std::string append);
+       void setTopleftText(const std::string &text);
 
        /** pointer to gui element shown at topleft corner */
        irr::gui::IGUIStaticText*       m_irr_toplefttext;
+       /** and text that is in it */
+       EnrichedString m_toplefttext;
 
        /** initialize cloud subsystem */
        void cloudInit();