DesignerDoc struct

One widget asset open in the designer.

Public types

struct PreviewRead
A context field the asset reads, found as the game's are, and where its preview value is.
struct CanvasLine
struct MovedPlace
The Places a move takes: the selected ones, if it began on one of them; and where each was.

Public variables

uint32_t ID
std::string FilePath
std::string Name
the asset's name, as its file gives it
TnxName Asset
bool bHud
GGUI::GGWidgetFile File
the file, with its comments, and its elements as a tree
std::string SavedText
what a save would have written when it was last read or saved
bool bDirty
std::vector<JsonValue> Undo
std::vector<JsonValue> Redo
std::vector<uint32_t> UndoCurves
std::vector<uint32_t> RedoCurves
uint64_t LastMerge
what was typed into last: more typing there is the same step
DesignerScreen Screen
float AreaWidth
not a HUD: the area its parent gives it
float AreaHeight
std::string PreviewFile
JsonValue Preview
The values the canvas is built with: { "inputs": { "Gold": 1200 }, "contexts": { "Player": { "CHealth.Value": 64 } } }.
std::vector<PreviewRead> PreviewReads
DesignerCost Cost
std::string Clip
float Playhead
bool bAutoKey
edits to what the clip can animate are keys at the playhead
bool bScrubEvents
moving the playhead runs the events it crosses
float TimelineScale
units a second; 0: the clip fits
std::pair<int, int> ClipKey
float KeyDragFrom
float KeyDragMoved
uint64_t KeyDragMerge
bool bCurveView
int CurveTrack
int CurveKey
bool bGraphFitted
float GraphLow
float GraphHigh
float GraphScale
units a second of the curve's own time; 0: it fits
int DragHandle
1 its in handle, 2 its out
float DragX
the dragged handle's offset from its key, in units
float DragY
float DragTime
the dragged key where it started, and how far it has moved
float DragValue
float DragMovedX
float DragMovedY
uint64_t CurveMerge
std::function<void(JsonValue&keys)> PendingCurveEdit
std::string PendingCurve
int PendingTrack
uint64_t PendingMerge
GGUI::GGRevision Structure
its elements came, went, or moved
GGUI::ItemSet Selection
std::string Hovered
GGUI::GGRevision OverlayChanged
the hover moved: only the canvas's outlines are drawn again
GGUI::ItemID Renaming
the element whose name is being typed in the hierarchy
std::string RenameText
bool bRenameFocus
the name field takes focus when it is first built
float ViewZoom
float ViewX
float ViewY
bool bPanning
a middle or right drag is moving the view
int CanvasTool
uint16_t CanvasDrag
GGUI::ItemID CanvasDragged
bool bCanvasPlace
a Place: its x and y follow, by its anchor, so the far edge stays
float CanvasAnchorX
where along it the anchor holds it: 0 its left (top), 1 its right (bottom)
float CanvasAnchorY
float CanvasFromX
its x and y
float CanvasFromY
float CanvasFromW
its size
float CanvasFromH
float CanvasMovedX
float CanvasMovedY
float CanvasFromRotation
float CanvasFromSkewX
float CanvasFromSkewY
float CanvasFromPivotX
float CanvasFromPivotY
float CanvasPivotX
float CanvasPivotY
float CanvasPressX
float CanvasPressY
float CanvasLinear
float CanvasInverse
uint64_t CanvasMerge
std::vector<CanvasLine> SnapLines
std::vector<CanvasLine> Guides
GGUI::GGRect CanvasFromRect
what is dragged, where it was laid out (several: all of them)
bool bCanvasStraight
not turned, skewed, or scaled: its edges are its layout's
float CanvasPressDocX
the press, in the document's units
float CanvasPressDocY
std::vector<MovedPlace> CanvasMoving
std::vector<GGUI::ItemID> MarqueeKept
Box select: what was selected before it, kept when it adds (Shift or Ctrl).
GGUI::ItemID ReorderOnto
Moving an element among its siblings in a Row or Column: where it would go, and the line that shows it.
GGUI::GGDropPlace ReorderPlace
CanvasLine ReorderLine
GGUI::ItemID SelectOnRelease
pressed on one of several selected: only it, if nothing moves
std::vector<std::pair<std::string, uint8_t>> ForcedStates
std::vector<GGUI::NodeHandle> ForcedNodes
bool bInteract
std::vector<std::string> ActionLog
std::shared_ptr<TnxWidgetBase> Live
std::shared_ptr<TnxWidgetBase> LiveBefore
the one before, kept until the canvas is built from this one
std::string LiveKey
std::vector<GGUI::GGMemberInputs> LiveMembers
uint64_t NudgeMerge
Arrow keys: presses close together are one undo step.
uint64_t NudgedAt
milliseconds
GGUI::NodeHandle ViewNode
GGUI::UIContext* ViewContext
the document the canvas is in
GGUI::GGDocument Canvas
uint64_t PreviewSerial
the text last given to the preview library
std::vector<std::string> BuildProblems
reported while the canvas built it
std::vector<std::string> Migrated
old names the file had, written by their new ones when it is saved
bool bDiagnostics
the canvas reports to it
class WidgetDesigner* Designer

Variable documentation

std::string DesignerDoc::PreviewFile

where those are kept

int DesignerDoc::CanvasTool

What a drag on the selected element does: 0 moves and sizes it, 1 turns it, 2 skews it. Space cycles them, as in the 3D viewport.

float DesignerDoc::CanvasLinear

Its transform's linear part as the file has it, and the inverse: sizing and the pivot move along its own axes.

std::vector<std::string> DesignerDoc::ActionLog

latest last

std::shared_ptr<TnxWidgetBase> DesignerDoc::Live

An instance of its class (TnxWidget), made with its preview contexts: what the canvas is given, over which the preview values go, and what its calls run on. Made again when the class or a context changes; null with no class, or one the designer can't make.

std::vector<GGUI::GGMemberInputs> DesignerDoc::LiveMembers

what its widget members give the canvas