diff options
Diffstat (limited to 'scene/gui/popup.h')
-rw-r--r-- | scene/gui/popup.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/scene/gui/popup.h b/scene/gui/popup.h index 97c08095d3..48e7ea9452 100644 --- a/scene/gui/popup.h +++ b/scene/gui/popup.h @@ -33,12 +33,20 @@ #include "scene/main/window.h" +#include "core/templates/local_vector.h" + class Popup : public Window { GDCLASS(Popup, Window); - Window *parent_visible; + LocalVector<Window *> visible_parents; + bool popped_up = false; + bool close_on_parent_focus = true; void _input_from_window(const Ref<InputEvent> &p_event); + + void _initialize_visible_parents(); + void _deinitialize_visible_parents(); + void _parent_focused(); protected: @@ -50,6 +58,10 @@ protected: public: void set_as_minsize(); + + void set_close_on_parent_focus(bool p_close); + bool get_close_on_parent_focus(); + Popup(); ~Popup(); }; |