|
| bool | tachyon::IsActivationKey (const ElementEvent &event) |
| | True for a KeyDown of Return, keypad Enter or Space.
|
| bool | tachyon::TextEditorUsesKey (const InputState &state, bool readOnly) |
| | Whether a focused text editor acts on this key (KeyDown/KeyUp), so its handler takes it; the rest reach the app's shortcuts.
|
| EventHandler | tachyon::MakeTextBoxHandler (GUIStateManager &guiStateManager) |
| | Text box handler: a left click focuses it for editing; while focused it takes text input and the keys its editor uses.
|
| EventHandler | tachyon::MakeHorizontalSizerHandler (GUIStateManager &guiStateManager, const ElementStorage &elementStorage, int &sizeValue, int minSize, int maxSize, std::function< void(int)> onChanged=nullptr, std::function< int()> onAutoSize=nullptr, bool invertMouseDelta=false, float pixelsPerUnit=1.0f) |
| | Sizer handler that drags sizeValue within [minSize, maxSize], calling onChanged with each new size.
|
| EventHandler | tachyon::MakeVerticalSizerHandler (GUIStateManager &guiStateManager, const ElementStorage &elementStorage, int &sizeValue, int minSize, int maxSize, std::function< void(int)> onChanged=nullptr, std::function< int()> onAutoSize=nullptr, bool invertMouseDelta=false, float pixelsPerUnit=1.0f) |
| | Y-axis counterpart of MakeHorizontalSizerHandler; invertMouseDelta grows the size when dragging up.
|
| EventHandler | tachyon::MakeSliderHandler (GUIStateManager &guiStateManager, const ElementStorage &elementStorage, float *value, int elementWidth, std::function< void()> onChanged=nullptr, float minVal=0.0f, float maxVal=1.0f, SliderPress press=SliderPress::Edit) |
| | Slider handler for *value in [minVal, maxVal]; elementWidth (pixels, <= 0 is treated as 1) maps drag distance onto that range.
|
| EventHandler | tachyon::MakeDraggableLabelHandler (GUIStateManager &guiStateManager, const ElementStorage &elementStorage) |
| | Turns mouse drags on a label into LabelDrag* events sent to the next sibling element.
|
| EventHandler | tachyon::MakeLabelHandler (GUIStateManager &guiStateManager, const ElementStorage &elementStorage) |
| | Label handler: a left click focuses the control bound to the label (else the label).
|
| EventHandler | tachyon::MakeGroupLabelHandler (GUIStateManager &guiStateManager, const ElementStorage &elementStorage, LabelGroupVisualState groupVisual) |
| | Label group variants: the right edge resizes the shared label width.
|
| EventHandler | tachyon::MakeGroupDraggableLabelHandler (GUIStateManager &guiStateManager, const ElementStorage &elementStorage, LabelGroupVisualState groupVisual) |
| EventHandler | tachyon::MakeButtonHandler (GUIStateManager &guiStateManager, std::function< void()> onClick) |
| | Button handler: a left click, or an activation key while focused, calls onClick.
|
| EventHandler | tachyon::MakeMouseWheelScrollHandler (ScrollManagement &scrollManagement, float wheelStep) |
| | Wheel handler that scrolls the element's own scroll offset by wheelStep pixels per notch (StyleManager::Px(kWheelScrollStep)).
|
| EventHandler | tachyon::MakeScrollbarHandler (GUIStateManager &guiStateManager, ElementStorage &elementStorage, ID containerID, bool vertical, int32_t trackLength=0) |
| | Scrollbar track/thumb handler; writes the scroll offset of containerID (the scrollable parent).
|
| EventHandler | tachyon::MakeDragSourceHandler (GUIStateManager &guiStateManager, uint32_t payloadType, std::function< uintptr_t()> getPayloadValue=nullptr, std::function< std::any()> getPayload=nullptr, DragVisualizer sourceVisualizer={}) |
| | Drag source handler: a left press starts a drag of payloadType, with the value from getPayloadValue (else 0) and the payload from getPayload (else that value).
|
| EventHandler | tachyon::MakeDropTargetHandler (uint32_t acceptedPayloadType, std::function< void(uintptr_t payloadValue, ID sourceID)> onDrop, std::function< bool(uintptr_t payloadValue)> canDrop=nullptr) |
| | Drop target handler for acceptedPayloadType; onDrop gets the payload value and the source ID.
|
| double | tachyon::LabelDragSpeedScale (const InputState &state) |
| | Label-drag speed multiplier: 0.1 with Ctrl, 10 with Shift (which wins), else 1.
|
| template<typename T> |
| EventHandler | tachyon::ReportingChanges (GUIStateManager &guiStateManager, T *value, EventHandler inner) |
| | Wraps a handler that writes *value: it runs during input, after the control's call returned, so a change marks the element clicked and the next call reports it (Interaction().HasBeenClicked(id)).
|
| template<typename T> |
| EventHandler | tachyon::MakeNumericalBoxHandler (GUIStateManager &guiStateManager, T &value, NumericFieldConfig< T > config={}) |
| | Numeric field handler: a left click focuses it for typing, and LabelDrag* events from its label drag value (a cancelled drag restores the start value).
|
| template<typename T> |
| EventHandler | tachyon::MakeMultiDimDragHandler (GUIStateManager &guiStateManager, T &value, NumericFieldConfig< typename TypeDimensions< T >::ComponentType > config={}) |
| | Applies LabelDrag* events to all components (multi-dimensional Field groups).
|