Support hidden ui elements

This commit is contained in:
Nikita Lisitsa 2021-03-06 10:55:30 +03:00
parent 27bd390381
commit 1d0d90862e

View file

@ -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<struct style const> style() const { return style_; }
virtual std::shared_ptr<struct style const> set_style(std::shared_ptr<struct style const> st);
virtual std::shared_ptr<struct style const> 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<struct style const> style_;
mutable std::shared_ptr<struct style const> merged_style_;
};