lxgui
input_signals.hpp
1 #ifndef LXGUI_INPUT_SIGNALS_HPP
2 #define LXGUI_INPUT_SIGNALS_HPP
3 
4 #include "lxgui/gui_vector2.hpp"
5 #include "lxgui/lxgui.hpp"
6 #include "lxgui/utils_signal.hpp"
7 
8 namespace lxgui::input {
9 
14 };
15 
18  float motion;
20 };
21 
26 };
27 
32  bool was_dragged;
33 };
34 
39 };
40 
46 };
47 
53 };
54 
58 };
59 
63 };
64 
68 };
69 
72  std::uint32_t character;
73 };
74 
76 class signals {
77 public:
79  signals() = default;
80 
81  // Non-movable, non-copiable
82  signals(const signals&) = delete;
83  signals(signals&&) = delete;
84  signals& operator=(const signals&) = delete;
85  signals& operator=(signals&&) = delete;
86 
91 
96 
101 
106 
111 
116 
121 
126 
131 
136 
142 };
143 
144 } // namespace lxgui::input
145 
146 #endif
Stores signals for input events.
signals & operator=(signals &&)=delete
utils::signal< void(const text_entered_data &)> on_text_entered
Signal triggered when text is entered.
utils::signal< void(const mouse_double_clicked_data &)> on_mouse_double_clicked
Signal triggered when a mouse button is double clicked.
signals(const signals &)=delete
utils::signal< void(const mouse_drag_start_data &)> on_mouse_drag_start
Signal triggered when the mouse starts a drag operation.
utils::signal< void(const key_pressed_data &)> on_key_pressed
Signal triggered when a keyboard key is pressed.
signals(signals &&)=delete
utils::signal< void(const mouse_wheel_data &)> on_mouse_wheel
Signal triggered when the mouse wheel is moved.
utils::signal< void(const mouse_released_data &)> on_mouse_released
Signal triggered when a mouse button is released.
signals & operator=(const signals &)=delete
utils::signal< void(const mouse_pressed_data &)> on_mouse_pressed
Signal triggered when a mouse button is pressed.
utils::signal< void(const mouse_drag_stop_data &)> on_mouse_drag_stop
Signal triggered when the mouse ends a drag operation.
utils::signal< void(const key_released_data &)> on_key_released
Signal triggered when a keyboard key is released.
utils::signal< void(const key_pressed_repeat_data &)> on_key_pressed_repeat
Signal triggered when a keyboard key is long-pressed and repeats.
utils::signal< void(const mouse_moved_data &)> on_mouse_moved
Signal triggered when the mouse moves.
signals()=default
Default constructor.
Generic class for observing and triggering events.
Data for on_key_pressed signal.
Data for on_key_pressed_repeat signal.
Data for on_key_released signal.
Data for on_mouse_double_clicked signal.
gui::vector2f position
Mouse button that generated this event.
Data for on_mouse_drag_start signal.
Data for on_mouse_drag_stop signal.
Data for on_mouse_moved signal.
gui::vector2f position
Mouse motion that generated this event, in points.
Data for on_mouse_pressed signal.
gui::vector2f position
Mouse button that generated this event.
Data for on_mouse_released signal.
gui::vector2f position
Mouse button that generated this event.
bool was_dragged
Mouse position, in points.
Data for on_mouse_wheel signal.
gui::vector2f position
Mouse wheel motion that generated this event.
Data for on_text_entered signal.