X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fui%2FCreaturePanel.hpp;h=7a96bf8f4cf09125a47bd4e9b98ed5b2a62c56ba;hb=c49dd02dfabb123e0c6c4b49f761ce6578dfc464;hp=55c24086f80b615236a5d856eb8675f43b5a160d;hpb=42db7d9d2286e50896ad172e2e4a8fbe65c8a4a9;p=blobs.git diff --git a/src/ui/CreaturePanel.hpp b/src/ui/CreaturePanel.hpp index 55c2408..7a96bf8 100644 --- a/src/ui/CreaturePanel.hpp +++ b/src/ui/CreaturePanel.hpp @@ -3,6 +3,8 @@ #include "Panel.hpp" +#include + namespace blobs { namespace app { @@ -22,7 +24,7 @@ class Meter; class CreaturePanel { public: - explicit CreaturePanel(const app::Assets &); + explicit CreaturePanel(app::Assets &); ~CreaturePanel(); CreaturePanel(const CreaturePanel &) = delete; @@ -35,25 +37,33 @@ public: void Show(creature::Creature &); void Hide() noexcept; - void Draw(app::Assets &, graphics::Viewport &) noexcept; + bool Shown() const noexcept { return c; } + const creature::Creature &GetCreature() const noexcept { return *c; } -private: - void CreateNeeds(); + void ZIndex(float z) noexcept { panel.ZIndex(z); } + + void Draw(graphics::Viewport &) noexcept; private: - const app::Assets &assets; + app::Assets &assets; creature::Creature *c; Label *name; + Label *parents; + Label *born; Label *age; Label *mass; + Label *size; Label *goal; - Panel *needs; + Label *pos; + Label *tile; + Label *head; + Panel *composition; + std::vector