diff options
Diffstat (limited to 'include/gui/Button.hpp')
-rw-r--r-- | include/gui/Button.hpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/include/gui/Button.hpp b/include/gui/Button.hpp index 972e5c9..88399ae 100644 --- a/include/gui/Button.hpp +++ b/include/gui/Button.hpp @@ -1,25 +1,28 @@ #pragma once #include "Widget.hpp" -#include <string> #include <functional> +#include <mglpp/graphics/Color.hpp> +#include <mglpp/graphics/Text.hpp> + namespace gsr { class Button : public Widget { public: - Button(mgl::vec2f size); + Button(mgl::Font *font, const char *text, mgl::vec2f size, mgl::Color bg_color); Button(const Button&) = delete; Button& operator=(const Button&) = delete; - bool on_event(mgl::Event &event, mgl::Window &window) override; - void draw(mgl::Window &window) override; + bool on_event(mgl::Event &event, mgl::Window &window, mgl::vec2f offset) override; + void draw(mgl::Window &window, mgl::vec2f offset) override; mgl::vec2f get_size() const { return size; } std::function<void()> on_click; private: mgl::vec2f size; + mgl::Color bg_color; bool mouse_inside = false; - bool pressed_inside = false; + mgl::Text text; }; }
\ No newline at end of file |