14namespace hi {
inline namespace v1 {
16class system_menu_widget;
29 observer<label> title;
31 window_widget(gui_window *window, forward_of<observer<label>>
auto&& title) noexcept :
35 constructor_implementation();
57 [[nodiscard]] generator<
widget const &> children(
bool include_invisible) const noexcept override;
59 void set_layout(
widget_layout const& context) noexcept override;
60 void draw(
draw_context const& context) noexcept override;
61 [[nodiscard]] hitbox hitbox_test(point2i position) const noexcept override;
62 bool handle_event(
gui_event const& event) noexcept override;
63 bool process_event(
gui_event const& event) const noexcept override;
64 [[nodiscard]] gui_window *window() const noexcept override;
65 [[nodiscard]]
hi::theme const& theme() const noexcept override;
66 [[nodiscard]] gfx_surface const *surface() const noexcept override;
79 mutable
bool _can_resize_width;
80 mutable
bool _can_resize_height;
82#if HI_OPERATING_SYSTEM == HI_OS_WINDOWS
86 void constructor_implementation() noexcept;
Functionality for labels, text and icons.
#define hi_assert_not_null(x,...)
Assert if an expression is not nullptr.
Definition assert.hpp:223
#define hi_forward(x)
Forward a value, based on the decltype of the value.
Definition utility.hpp:29
DOXYGEN BUG.
Definition algorithm.hpp:13
geometry/margins.hpp
Definition cache.hpp:11
This is a RGBA floating point color.
Definition color.hpp:42
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
Definition box_shape.hpp:15
A GUI widget that lays out child-widgets in a grid with variable sized cells.
Definition grid_widget.hpp:39
The system menu widget.
Definition system_menu_widget.hpp:26
A toolbar widget is located at the top of a window and lays out its children horizontally.
Definition toolbar_widget.hpp:34
An interactive graphical object as part of the user-interface.
Definition widget.hpp:46
widget(widget *parent) noexcept
The layout of a widget.
Definition widget_layout.hpp:38
The top-level window widget.
Definition window_widget.hpp:25
grid_widget & content() noexcept
Get a reference to the window's content widget.
toolbar_widget & toolbar() noexcept
Get a reference to window's toolbar widget.
color background_color() noexcept
The background color of the window.