summaryrefslogtreecommitdiff
path: root/src/misc_gui.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/misc_gui.cpp')
-rw-r--r--src/misc_gui.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/misc_gui.cpp b/src/misc_gui.cpp
index c86f6c6a3..4f97bcbf4 100644
--- a/src/misc_gui.cpp
+++ b/src/misc_gui.cpp
@@ -332,8 +332,14 @@ public:
::ShowNewGRFInspectWindow(GetGrfSpecFeature(this->tile), this->tile);
}
- virtual void OnInvalidateData(int data)
+ /**
+ * Some data on this window has become invalid.
+ * @param data Information about the changed data.
+ * @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details.
+ */
+ virtual void OnInvalidateData(int data = 0, bool gui_scope = true)
{
+ if (!gui_scope) return;
switch (data) {
case 1:
/* ReInit, "debug" sprite might have changed */
@@ -639,8 +645,14 @@ public:
return pt;
}
- virtual void OnInvalidateData(int data)
+ /**
+ * Some data on this window has become invalid.
+ * @param data Information about the changed data.
+ * @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details.
+ */
+ virtual void OnInvalidateData(int data = 0, bool gui_scope = true)
{
+ if (!gui_scope) return;
/* If company gets shut down, while displaying an error about it, remove the error message. */
if (this->face != INVALID_COMPANY && !Company::IsValidID(this->face)) delete this;
}