diff options
Diffstat (limited to 'include/gui')
-rw-r--r-- | include/gui/CheckBox.hpp | 7 | ||||
-rw-r--r-- | include/gui/ScrollablePage.hpp | 4 |
2 files changed, 10 insertions, 1 deletions
diff --git a/include/gui/CheckBox.hpp b/include/gui/CheckBox.hpp index 19ffaf6..8703794 100644 --- a/include/gui/CheckBox.hpp +++ b/include/gui/CheckBox.hpp @@ -4,6 +4,7 @@ #include <mglpp/graphics/Color.hpp> #include <mglpp/graphics/Text.hpp> +#include <mglpp/graphics/Sprite.hpp> namespace gsr { class CheckBox : public Widget { @@ -17,12 +18,16 @@ namespace gsr { mgl::vec2f get_size() override; - void set_checked(bool checked); + void set_checked(bool checked, bool animated = false); bool is_checked() const; private: + void apply_animation(); mgl::vec2f get_checkbox_size(); private: mgl::Text text; + mgl::Sprite background_sprite; + mgl::Sprite circle_sprite; bool checked = false; + float toggle_animation_value = 0.0f; }; }
\ No newline at end of file diff --git a/include/gui/ScrollablePage.hpp b/include/gui/ScrollablePage.hpp index ade7c67..452d0e9 100644 --- a/include/gui/ScrollablePage.hpp +++ b/include/gui/ScrollablePage.hpp @@ -24,6 +24,10 @@ namespace gsr { void reset_scroll(); private: + void apply_animation(); + void limit_scroll(double child_height); + void limit_scroll_cursor(mgl::Window &window, double child_height, double scrollbar_empty_space); + void draw_scrollbar(); float get_scrollbar_width() const; private: mgl::vec2f size; |