HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Data Fields
v1::window_widget Class Referencefinal
Inheritance diagram for v1::window_widget:
v1::widget

Public Types

using super = widget
 
using delegate_type = grid_delegate
 

Public Member Functions

template<typename Title >
 window_widget (gui_window &window, Title &&title, std::weak_ptr< delegate_type > delegate={}) noexcept
 
color background_color () noexcept
 The background color of the window.
 
grid_widgetcontent () noexcept
 Get a reference to the window's content widget.
 
toolbar_widgettoolbar () noexcept
 Get a reference to window's toolbar widget.
 
void set_resize_border_priority (bool left, bool right, bool bottom, bool top) noexcept
 Defining on which edges the resize handle has priority over widget at a higher layer.
 
- Public Member Functions inherited from v1::widget
 widget (gui_window &window, widget *parent) noexcept
 
 widget (const widget &)=delete
 
widgetoperator= (const widget &)=delete
 
 widget (widget &&)=delete
 
widgetoperator= (widget &&)=delete
 
bool is_gui_thread () const noexcept
 
hi::theme const & theme () const noexcept
 Get the theme.
 
hi::font_book & font_book () const noexcept
 Get the font book.
 
virtual hitbox hitbox_test_from_parent (point3 position) const noexcept
 Call hitbox_test from a parent widget.
 
virtual hitbox hitbox_test_from_parent (point3 position, hitbox sibling_hitbox) const noexcept
 Call hitbox_test from a parent widget.
 
virtual bool accepts_keyboard_focus (keyboard_focus_group group) const noexcept
 Check if the widget will accept keyboard focus.
 
widget_constraints const & constraints () const noexcept
 
widget_layout const & layout () const noexcept
 Get the current layout for this widget.
 
virtual void request_redraw () const noexcept
 Request the widget to be redrawn on the next frame.
 
void request_relayout () const noexcept
 Request the window to be relayout on the next frame.
 
void request_reconstrain () const noexcept
 Request the window to be reconstrain on the next frame.
 
void request_resize () const noexcept
 Request the window to be resize based on the preferred size of the widgets.
 
virtual bool handle_event_recursive (gui_event const &event, std::vector< widget const * > const &reject_list=std::vector< widget const * >{}) noexcept
 Handle command recursive.
 
virtual widget const * find_next_widget (widget const *current_keyboard_widget, keyboard_focus_group group, keyboard_focus_direction direction) const noexcept
 Find the next widget that handles keyboard focus.
 
widget const * find_first_widget (keyboard_focus_group group) const noexcept
 
widget const * find_last_widget (keyboard_focus_group group) const noexcept
 
bool is_first (keyboard_focus_group group) const noexcept
 Is this widget the first widget in the parent container.
 
bool is_last (keyboard_focus_group group) const noexcept
 Is this widget the last widget in the parent container.
 
virtual void scroll_to_show (hi::aarectangle rectangle) noexcept
 Scroll to show the given rectangle on the window.
 
void scroll_to_show () noexcept
 Scroll to show the important part of the widget.
 
std::vector< widget const * > parent_chain () const noexcept
 Get a list of parents of a given widget.
 
virtual color background_color () const noexcept
 
virtual color foreground_color () const noexcept
 
virtual color focus_color () const noexcept
 
virtual color accent_color () const noexcept
 
virtual color label_color () const noexcept
 

Data Fields

observable< labeltitle
 
- Data Fields inherited from v1::widget
gui_windowwindow
 Convenient reference to the Window.
 
widget *const parent
 Pointer to the parent widget.
 
std::string id
 A name of widget, should be unique between siblings.
 
observable< widget_mode > mode = widget_mode::enabled
 The widget mode.
 
observable< bool > hover = false
 Mouse cursor is hovering over the widget.
 
observable< bool > focus = false
 The widget has keyboard focus.
 
int semantic_layer
 The draw layer of the widget.
 
int logical_layer
 The logical layer of the widget.
 

Member Function Documentation

◆ background_color()

color v1::window_widget::background_color ( )
noexcept

The background color of the window.

This function is used during rendering to use the optimized GPU clear function.

◆ content()

grid_widget & v1::window_widget::content ( )
noexcept

Get a reference to the window's content widget.

See also
grid_widget
Returns
A reference to a grid_widget.

◆ set_resize_border_priority()

void v1::window_widget::set_resize_border_priority ( bool left,
bool right,
bool bottom,
bool top )
noexcept

Defining on which edges the resize handle has priority over widget at a higher layer.

◆ toolbar()

toolbar_widget & v1::window_widget::toolbar ( )
noexcept

Get a reference to window's toolbar widget.

See also
toolbar_widget
Returns
A reference to a toolbar_widget.

The documentation for this class was generated from the following file: