|
HikoGUI
A low latency retained GUI
|
Public Member Functions | |
| WindowWidget (Window &window, Label title) noexcept | |
| WindowWidget (const WindowWidget &)=delete | |
| WindowWidget & | operator= (const WindowWidget &)=delete |
| WindowWidget (WindowWidget &&)=delete | |
| WindowWidget & | operator= (WindowWidget &&)=delete |
| HitBox | hitBoxTest (vec position) const noexcept override |
| Find the widget that is under the mouse cursor. | |
Public Member Functions inherited from tt::Widget | |
| Widget (Window &window, Widget *parent, vec defaultExtent) noexcept | |
| Widget (const Widget &)=delete | |
| Widget & | operator= (const Widget &)=delete |
| Widget (Widget &&)=delete | |
| Widget & | operator= (Widget &&)=delete |
| virtual Widget & | addWidget (Alignment alignment, std::unique_ptr< Widget > childWidget) noexcept |
| Add a widget directly to this widget. | |
| template<typename T , typename... Args> | |
| T & | makeWidgetDirectly (Args &&... args) |
| Add a widget directly to this widget. | |
| template<typename T , typename... Args> | |
| T & | makeWidget (Args &&... args) |
| Add a widget directly to this widget. | |
| template<typename T , typename... Args> | |
| T & | makeAlignedWidgetDirectly (Alignment alignement, Args &&... args) |
| Add a widget directly to this widget. | |
| template<typename T , typename... Args> | |
| T & | makeAlignedWidget (Alignment alignment, Args &&... args) |
| Add a widget directly to this widget. | |
| aarect | makeWindowRectangle () const noexcept |
| Create a window rectangle from left, bottom, width and height Thread-safety: locks window.widgetSolverMutex. | |
| void | setMinimumExtent (vec newMinimumExtent) noexcept |
| void | setMinimumExtent (float width, float height) noexcept |
| void | setPreferredExtent (vec newPreferredExtent) noexcept |
| void | setFixedExtent (vec newFixedExtent) noexcept |
| void | setFixedHeight (float height) noexcept |
| void | setFixedWidth (float width) noexcept |
| rhea::constraint | placeBelow (Widget const &rhs, float margin=theme->margin) const noexcept |
| rhea::constraint | placeAbove (Widget const &rhs, float margin=theme->margin) const noexcept |
| rhea::constraint | placeLeftOf (Widget const &rhs, float margin=theme->margin) const noexcept |
| rhea::constraint | placeRightOf (Widget const &rhs, float margin=theme->margin) const noexcept |
| rhea::constraint | placeAtTop (float margin=theme->margin) const noexcept |
| rhea::constraint | placeAtBottom (float margin=theme->margin) const noexcept |
| rhea::constraint | placeLeft (float margin=theme->margin) const noexcept |
| rhea::constraint | placeRight (float margin=theme->margin) const noexcept |
| vec | extent () const noexcept |
| void | setExtent (vec rhs) noexcept |
| vec | offsetFromParent () const noexcept |
| void | setOffsetFromParent (vec rhs) noexcept |
| vec | offsetFromWindow () const noexcept |
| void | setOffsetFromWindow (vec rhs) noexcept |
| aarect | rectangle () const noexcept |
| Get the rectangle in local coordinates. | |
| aarect | windowRectangle () const noexcept |
| Get the rectangle in window coordinates. | |
| aarect | clippingRectangle () const noexcept |
| Get the clipping-rectangle in window coordinates. | |
| GUIDevice * | device () const noexcept |
| virtual bool | acceptsFocus () const noexcept |
| Check if the widget will accept keyboard focus. | |
| ssize_t | nestingLevel () noexcept |
| Get nesting level used for selecting colors for the widget. | |
| float | z () noexcept |
| Get z value for compositing order. | |
| virtual int | needs (hires_utc_clock::time_point displayTimePoint) noexcept |
| Request the needs of the widget. | |
| virtual void | layout (hires_utc_clock::time_point displayTimePoint) noexcept |
| Layout the widget. | |
| int | layoutChildren (hires_utc_clock::time_point displayTimePoint, bool force) noexcept |
| Layout children of this widget. | |
| virtual void | draw (DrawContext const &drawContext, hires_utc_clock::time_point displayTimePoint) noexcept |
| Draw widget. | |
| virtual void | handleCommand (string_ltag command) noexcept |
| Handle command. | |
| virtual void | handleMouseEvent (MouseEvent const &event) noexcept |
| std::vector< Widget * > | childPointers (bool reverse) const noexcept |
| virtual Widget * | nextKeyboardWidget (Widget const *currentKeyboardWidget, bool reverse) const noexcept |
| virtual void | handleKeyboardEvent (KeyboardEvent const &event) noexcept |
Data Fields | |
| ToolbarWidget * | toolbar = nullptr |
Data Fields inherited from tt::Widget | |
| rhea::variable const | left |
| Location of the frame compared to the window. | |
| rhea::variable const | bottom |
| rhea::variable const | width |
| rhea::variable const | height |
| rhea::linear_expression const | right = left + width |
| rhea::linear_expression const | centre = left + width * 0.5 |
| rhea::linear_expression const | top = bottom + height |
| rhea::linear_expression const | middle = bottom + height * 0.5 |
| float | elevation |
| std::atomic< R32G32SFloat > | _extent |
| std::atomic< R32G32SFloat > | _offsetFromParent |
| std::atomic< R32G32SFloat > | _offsetFromWindow |
| std::atomic< bool > | forceLayout = true |
| std::atomic< bool > | forceRedraw = true |
| observable< bool > | enabled = true |
| The widget is enabled. | |
Find the widget that is under the mouse cursor.
Thread safety: locks.
Reimplemented from tt::Widget.