diff options
author | heavydemon21 <48092678+heavydemon21@users.noreply.github.com> | 2025-01-03 19:41:41 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-03 19:41:41 +0100 |
commit | cf6ca6be5a9deac4de921f50d0aedf6a6156e0f4 (patch) | |
tree | e7b18df0361af1b081168569568d408cfd4b6538 /src/crepe/api/Button.h | |
parent | 61148c757a1f742ff09e40e5347e74e638c7371c (diff) | |
parent | 4526efe1b6dd63aaa177f8f35194989d3910d571 (diff) |
Merge pull request #96 from lonkaars/niels/UI
rendering text world space fix
Diffstat (limited to 'src/crepe/api/Button.h')
-rw-r--r-- | src/crepe/api/Button.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/crepe/api/Button.h b/src/crepe/api/Button.h index d42527e..e986c04 100644 --- a/src/crepe/api/Button.h +++ b/src/crepe/api/Button.h @@ -1,8 +1,7 @@ #pragma once -#include <functional> +#include "../types.h" -#include "Event.h" #include "UIObject.h" namespace crepe { @@ -21,14 +20,24 @@ namespace crepe { */ class Button : public UIObject { public: + struct Data { + //! variable indicating if transform is relative to camera(false) or world(true) + bool world_space = false; + }; + +public: /** * \brief Constructs a Button with the specified game object ID and dimensions. * * \param id The unique ID of the game object associated with this button. * \param dimensions The width and height of the UIObject * \param offset The offset relative this GameObjects Transform + * \param data additional data the button has */ - Button(game_object_id_t id, const vec2 & dimensions, const vec2 & offset); + Button( + game_object_id_t id, const vec2 & dimensions, const Data & data, + const vec2 & offset = {0, 0} + ); /** * \brief Get the maximum number of instances for this component * @@ -38,6 +47,9 @@ public: */ virtual int get_instances_max() const { return 1; } +public: + Data data; + private: //! friend relation hover variable friend class InputSystem; |