aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/crepe/api')
-rw-r--r--src/crepe/api/Button.cpp0
-rw-r--r--src/crepe/api/Button.h17
-rw-r--r--src/crepe/api/UiObject.h14
3 files changed, 31 insertions, 0 deletions
diff --git a/src/crepe/api/Button.cpp b/src/crepe/api/Button.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/src/crepe/api/Button.cpp
diff --git a/src/crepe/api/Button.h b/src/crepe/api/Button.h
new file mode 100644
index 0000000..5035729
--- /dev/null
+++ b/src/crepe/api/Button.h
@@ -0,0 +1,17 @@
+#include <functional>
+
+#include "Component.h"
+#include "api/EventHandler.h"
+#include "api/UiObject.h"
+namespace crepe {
+class Button : public UiObject{
+public:
+ ~Button(){};
+ bool interactable = true;
+ bool is_toggle = false;
+ bool is_pressed = false;
+ std::function<void()> on_click;
+public:
+virtual int get_instances_max() const { return 1; }
+};
+}
diff --git a/src/crepe/api/UiObject.h b/src/crepe/api/UiObject.h
new file mode 100644
index 0000000..f57f7ef
--- /dev/null
+++ b/src/crepe/api/UiObject.h
@@ -0,0 +1,14 @@
+#include <functional>
+
+#include "Component.h"
+#include "api/EventHandler.h"
+namespace crepe {
+class UiObject : public Component{
+public:
+ ~UiObject(){};
+ int width = 0;
+ int height = 0;
+public:
+virtual int get_instances_max() const { return 1; }
+};
+}