TachyonUI 0.1.0
High-performance UI for building tools.
Loading...
Searching...
No Matches
tachyon::LabelGroupSubsystem::State Struct Reference

State of one label group, kept across frames by group ID. More...

#include <gui_controls/subsystems/gui_label_group_subsystem.h>

Public Attributes

int32_t labelWidth = 120
 shared label width, CSS px
int32_t minWidth = 40
 CSS px.
int32_t maxWidth = 500
 CSS px.
bool resizable = true
 false: the width fits the widest label instead
bool edgeHovered = false
 a label's resize edge is hovered
bool edgeDragging = false
 a label's resize edge is being dragged
bool anyLabelHovered = false
 transient: set during construction if any label has hover
std::vector< tachyon::TextID > labelTextIDs
 transient: rebuilt each frame for auto-size
int32_t maxLabelWidthThisFrame = 0
 transient: widest label (pixels), for auto-width
std::vector< tachyon::ElementRef > labelRefs
 transient: this frame's labels, in order

Detailed Description

State of one label group, kept across frames by group ID.

Member Data Documentation

◆ labelWidth

int32_t tachyon::LabelGroupSubsystem::State::labelWidth = 120

shared label width, CSS px

◆ minWidth

int32_t tachyon::LabelGroupSubsystem::State::minWidth = 40

CSS px.

◆ maxWidth

int32_t tachyon::LabelGroupSubsystem::State::maxWidth = 500

CSS px.

◆ resizable

bool tachyon::LabelGroupSubsystem::State::resizable = true

false: the width fits the widest label instead

◆ edgeHovered

bool tachyon::LabelGroupSubsystem::State::edgeHovered = false

a label's resize edge is hovered

◆ edgeDragging

bool tachyon::LabelGroupSubsystem::State::edgeDragging = false

a label's resize edge is being dragged

◆ anyLabelHovered

bool tachyon::LabelGroupSubsystem::State::anyLabelHovered = false

transient: set during construction if any label has hover

◆ labelTextIDs

std::vector<tachyon::TextID> tachyon::LabelGroupSubsystem::State::labelTextIDs

transient: rebuilt each frame for auto-size

◆ maxLabelWidthThisFrame

int32_t tachyon::LabelGroupSubsystem::State::maxLabelWidthThisFrame = 0

transient: widest label (pixels), for auto-width

◆ labelRefs

std::vector<tachyon::ElementRef> tachyon::LabelGroupSubsystem::State::labelRefs

transient: this frame's labels, in order


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