12#include "../font/module.hpp"
17namespace hi {
inline namespace v1 {
34 void set_layout(
widget_layout const& context)
noexcept override;
35 void draw(
draw_context const& context)
noexcept override;
36 bool handle_event(
gui_event const& event)
noexcept override;
37 [[nodiscard]] hitbox hitbox_test(point2i position)
const noexcept override;
40 static constexpr int GLYPH_SIZE = 5;
41 static constexpr int RADIUS = 5;
42 static constexpr int DIAMETER = RADIUS * 2;
43 static constexpr int MARGIN = 10;
44 static constexpr int SPACING = 8;
50 glyph_ids closeWindowGlyph;
51 glyph_ids minimizeWindowGlyph;
52 glyph_ids maximizeWindowGlyph;
53 glyph_ids restoreWindowGlyph;
60 bool hoverClose =
false;
61 bool hoverMinimize =
false;
62 bool hoverMaximize =
false;
64 bool pressedClose =
false;
65 bool pressedMinimize =
false;
66 bool pressedMaximize =
false;
DOXYGEN BUG.
Definition algorithm.hpp:13
geometry/margins.hpp
Definition cache.hpp:11
Draw context for drawing using the HikoGUI shaders.
Definition draw_context.hpp:211
A user interface event.
Definition gui_event.hpp:74
2D constraints.
Definition box_constraints.hpp:22
An interactive graphical object as part of the user-interface.
Definition widget.hpp:46
widget(widget *parent) noexcept
widget * parent
Pointer to the parent widget.
Definition widget.hpp:51
The layout of a widget.
Definition widget_layout.hpp:38
Window control button widget.
Definition window_traffic_lights_widget.hpp:26