summaryrefslogtreecommitdiff
path: root/src/client/gameui.h
diff options
context:
space:
mode:
authorSmallJoker <SmallJoker@users.noreply.github.com>2019-06-10 13:01:07 +0200
committerGitHub <noreply@github.com>2019-06-10 13:01:07 +0200
commite2f8f4da83206d551f9acebd14d574ea37ca214a (patch)
tree0a2a4f63b59db1a511c781c617b5e80f608723e5 /src/client/gameui.h
parente40be619f2a30c7a4d5042d922f0fe57539411d5 (diff)
downloadminetest-e2f8f4da83206d551f9acebd14d574ea37ca214a.tar.gz
minetest-e2f8f4da83206d551f9acebd14d574ea37ca214a.tar.bz2
minetest-e2f8f4da83206d551f9acebd14d574ea37ca214a.zip
Formspecs: Close on metadata removal (#8348)
Formspecs will now close as soon the formspec string in the node metadata turns invalid.
Diffstat (limited to 'src/client/gameui.h')
-rw-r--r--src/client/gameui.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/client/gameui.h b/src/client/gameui.h
index b6b54562a..8d20870d7 100644
--- a/src/client/gameui.h
+++ b/src/client/gameui.h
@@ -21,6 +21,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#pragma once
#include <IGUIEnvironment.h>
+#include "gui/guiFormSpecMenu.h"
#include "util/enriched_string.h"
#include "util/pointedthing.h"
#include "game.h"
@@ -88,6 +89,16 @@ public:
void toggleHud();
void toggleProfiler();
+ GUIFormSpecMenu *&updateFormspec(const std::string &formname)
+ {
+ m_formname = formname;
+ return m_formspec;
+ }
+
+ const std::string &getFormspecName() { return m_formname; }
+ GUIFormSpecMenu *&getFormspecGUI() { return m_formspec; }
+ void deleteFormspec();
+
private:
Flags m_flags;
@@ -107,4 +118,9 @@ private:
gui::IGUIStaticText *m_guitext_profiler = nullptr; // Profiler text
u8 m_profiler_current_page = 0;
const u8 m_profiler_max_page = 3;
+
+ // Default: "". If other than "": Empty show_formspec packets will only
+ // close the formspec when the formname matches
+ std::string m_formname;
+ GUIFormSpecMenu *m_formspec = nullptr;
};