diff --git a/libs/ui/include/psemek/ui/element.hpp b/libs/ui/include/psemek/ui/element.hpp index 99370f41..a9828104 100644 --- a/libs/ui/include/psemek/ui/element.hpp +++ b/libs/ui/include/psemek/ui/element.hpp @@ -13,6 +13,7 @@ #include #include #include +#include namespace psemek::ui { @@ -76,6 +77,9 @@ namespace psemek::ui virtual std::optional const & hint() const { return hint_; } virtual std::optional set_hint(std::optional hint); + virtual std::any const & data() const { return data_; } + virtual std::any & data() { return data_; } + virtual void update(float /* dt */) {} virtual void draw(painter & p) const = 0; @@ -111,6 +115,8 @@ namespace psemek::ui std::optional hint_; + std::any data_; + void post_delayed_callbacks() const; };