GGUI/Public/ directory

Files

file Binding.h
Bindings: an element property driven by data.
file DataSource.h
GGDataSource: a set of items, how they relate, and what each one shows.
file Fields.h
Fields: UI generated from a runtime description of a type.
file GGUI.h
GG-UI's version.
file Layout.h
Layout: a flex-style box model.
file MutationQueue.h
MutationQueue: how threads other than the UI update change a UI tree.
file NodeRows.h
Storage beside NodeStorage, by node: a value for every node (NodeRows), for the few nodes that have one (NodeSparse), or several per node (NodeChain).
file NodeStorage.h
NodeStorage: the UI tree.
file Paint.h
Paint: turning a published document into draw data.
file ReferenceRaster.h
CPU reference rasterizer.
file Snapshot.h
GGSnapshot: a UI document as other threads see it.
file TextBuffer.h
TextBuffer: editable UTF-8 text stored as a piece table.
file TextEdit.h
TextEditState: a caret and selection over a TextBuffer, plus the editing operations.
file UI.h
UI: the builder a widget function is handed.
file UIActions.h
Input actions: what a key does, separate from which key does it.
file UIAnimation.h
Animation: clips that move what an element shows over time, by the document's clock.
file UICanvas.h
Canvas: custom drawing in an element, for gizmos, graphs, curves, node wires.
file UIConsoleWidgets.h
Console widgets: a log view and a command line.
file UIContext.h
UIContext: one UI document. The tree plus everything stored per node.
file UIDock.h
Docking: panels the user arranges into splits and tab groups by dragging tabs.
file UIDocument.h
A document inside another (ui.Document): laid out on a screen of its own, drawn scaled to fit its box in the parent, where it sits in the parent's draw order.
file UIDragDrop.h
Drag and drop.
file UIEvents.h
UI events: input, and how elements react to it.
file UIGraph.h
Graph: nodes joined by wires, panned and zoomed. Node scripts, material and animation graphs.
file UIHints.h
Field hints: per-field tweaks to how an editor behaves.
file UINotices.h
Notices and file dialogs: things triggered from handlers rather than declared in the build.
file UIPanels.h
Tool-window building blocks: splits, tabs, menu bar, toolbar.
file UIPopups.h
Popups: content drawn above everything else, outside its parent's clip.
file UIReflect.h
Reflection of props structs: which of their fields an asset can set.
file UIStrings.h
Localisation: text passed to a widget is a lookup key.
file UIStyle.h
Styles: how a class of element looks.
file UIStyleKeywords.h
Short names for prop values.
file UIText.h
Text widgets: editable and selectable text.
file UITypes.h
Types used by the authoring API: element kinds, layout and element properties, and the small callable wrappers that carry content.
file UIValues.h
Value widgets: widgets that show a value and let the user change it.
file UIValueService.h
Value service: typed arithmetic for value widgets (toggle, slider, number).
file UIWidget.h
Widgets: node kinds with their own state and behaviour.
file UIWidgetAsset.h
Widget assets: UI made as data (docs/ui/Widgets.md).
file UIWidgetFile.h
A widget asset's file as a tree of its elements, for tools that edit it (the widget designer).
file UIWidgetRegistry.h
The widget registry: every element type a widget asset can be made of, the built-in ones and the code widgets a game adds, with the properties each takes.
file UIWidgetTraits.h
How each type a property can have is read from a widget file and written to one, and the registration of widget types (UIWidgetRegistry.h). Included where widgets are registered.