1 #ifndef TERMOX_WIDGET_WIDGETS_BUTTON_HPP
2 #define TERMOX_WIDGET_WIDGETS_BUTTON_HPP
5 #include <signals_light/signal.hpp>
7 #include <termox/painter/color.hpp>
8 #include <termox/painter/glyph_string.hpp>
9 #include <termox/system/mouse.hpp>
10 #include <termox/widget/layouts/horizontal.hpp>
11 #include <termox/widget/layouts/vertical.hpp>
12 #include <termox/widget/widget.hpp>
67 Color pressed_color = Color::Foreground;
68 Color released_color = Color::Background;
74 Color pressed_color = Color::Foreground,
75 Color released_color = Color::Background);
82 void set_pressed_color(
Color c);
85 [[nodiscard]]
auto get_pressed_color() const ->
Color;
88 void set_released_color(
Color c);
91 [[nodiscard]] auto get_released_color() const ->
Color;
95 Color released_color_;
109 template <template <typename> typename Layout_t>
121 template <
template <
typename>
typename Layout_t>
123 -> std::unique_ptr<Thin_button<Layout_t>>;
126 template <
template <
typename>
typename Layout_t>
128 -> std::unique_ptr<Thin_button<Layout_t>>;
134 -> std::unique_ptr<HThin_button>;
138 -> std::unique_ptr<HThin_button>;
144 -> std::unique_ptr<VThin_button>;
148 -> std::unique_ptr<VThin_button>;
Color numbers [0 - 180] are valid.
Definition: color.hpp:16
Holds a collection of Glyphs with a similar interface to std::string.
Definition: glyph_string.hpp:19
Contains functions to paint Glyphs to a Widget's screen area.
Definition: painter.hpp:21