diff options
-rw-r--r-- | src/gui/widgets/widget.h | 2 | ||||
-rw-r--r-- | src/gui/widgets/window.cpp | 13 | ||||
-rw-r--r-- | src/gui/widgets/window.h | 3 |
3 files changed, 14 insertions, 4 deletions
diff --git a/src/gui/widgets/widget.h b/src/gui/widgets/widget.h index bbb1bc103..bb41054d2 100644 --- a/src/gui/widgets/widget.h +++ b/src/gui/widgets/widget.h @@ -730,7 +730,7 @@ class Widget notfinal : public Widget2 * @throws Exception if another widget already has modal focus. * @see releaseModalFocus, isModalFocused */ - virtual void requestModalFocus(); + void requestModalFocus(); /** * Requests modal mouse input focus. When a widget has modal input focus diff --git a/src/gui/widgets/window.cpp b/src/gui/widgets/window.cpp index 874a0ae14..5d48cfad3 100644 --- a/src/gui/widgets/window.cpp +++ b/src/gui/widgets/window.cpp @@ -230,7 +230,7 @@ Window::Window(const std::string &caption, } // Windows are invisible by default - setVisible(Visible_false); + setVisible(Visible_false, false); addWidgetListener(this); mForegroundColor = getThemeColor(ThemeColorId::WINDOW); @@ -238,6 +238,17 @@ Window::Window(const std::string &caption, setPalette(childPalette); } +void Window::postInit() +{ + if (mInit) + { + reportAlways("error: Window created with calling postInit() " + "more than once: %s", + mWindowName.c_str()); + } + mInit = true; +} + Window::~Window() { logger->log("Window::~Window(\"%s\")", getCaption().c_str()); diff --git a/src/gui/widgets/window.h b/src/gui/widgets/window.h index e371de36f..d089680af 100644 --- a/src/gui/widgets/window.h +++ b/src/gui/widgets/window.h @@ -298,8 +298,7 @@ class Window notfinal : public BasicContainer2, void setSaveVisible(const bool save) { mSaveVisible = save; } - void postInit() override - { mInit = true; } + void postInit() override; /** * Returns the parent window. |