From 1d0d90862e06f08bea77fe06dec4a5f886c5a597 Mon Sep 17 00:00:00 2001 From: lisyarus Date: Sat, 6 Mar 2021 10:55:30 +0300 Subject: [PATCH] Support hidden ui elements --- libs/ui/include/psemek/ui/element.hpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libs/ui/include/psemek/ui/element.hpp b/libs/ui/include/psemek/ui/element.hpp index 427e70e7..d302a5be 100644 --- a/libs/ui/include/psemek/ui/element.hpp +++ b/libs/ui/include/psemek/ui/element.hpp @@ -46,6 +46,11 @@ namespace psemek::ui virtual void enable() { set_enabled(true); } virtual void disable() { set_enabled(false); } + virtual bool hidden() const { return hidden_; } + virtual void set_hidden(bool value) { hidden_ = value; } + virtual void hide() { set_hidden(true); } + virtual void show() { set_hidden(false); } + virtual std::shared_ptr style() const { return style_; } virtual std::shared_ptr set_style(std::shared_ptr st); virtual std::shared_ptr merged_style() const; @@ -66,6 +71,7 @@ namespace psemek::ui element * parent_ = nullptr; async::event_loop * loop_ = nullptr; bool enabled_ = true; + bool hidden_ = false; std::shared_ptr style_; mutable std::shared_ptr merged_style_; };