HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
Public Member Functions
tt::ColumnWidget Class Reference
Inheritance diagram for tt::ColumnWidget:
tt::Widget

Public Member Functions

 ColumnWidget (Window &window, Widget *parent) noexcept
 
WidgetaddWidget (Alignment alignment, std::unique_ptr< Widget > childWidget) noexcept override
 Add a widget directly to this widget.
 
- Public Member Functions inherited from tt::Widget
 Widget (Window &window, Widget *parent, vec defaultExtent) noexcept
 
 Widget (const Widget &)=delete
 
Widgetoperator= (const Widget &)=delete
 
 Widget (Widget &&)=delete
 
Widgetoperator= (Widget &&)=delete
 
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.
 
GUIDevicedevice () const noexcept
 
virtual HitBox hitBoxTest (vec position) const noexcept
 Find the widget that is under the mouse cursor.
 
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 WidgetnextKeyboardWidget (Widget const *currentKeyboardWidget, bool reverse) const noexcept
 
virtual void handleKeyboardEvent (KeyboardEvent const &event) noexcept
 

Additional Inherited Members

- 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.
 

Member Function Documentation

◆ addWidget()

Widget & tt::ColumnWidget::addWidget ( Alignment alignment,
std::unique_ptr< Widget > childWidget )
overridevirtualnoexcept

Add a widget directly to this widget.

Thread safety: locks.

Reimplemented from tt::Widget.


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