Gah - a solution with more questions. – EntropicLqd
UE3:UIRoot structs (UDK)
Contents
- 1 Structs
- 1.1 AutoSizeData
- 1.2 AutoSizePadding
- 1.3 DefaultEventSpecification
- 1.4 InputEventParameters
- 1.5 InputEventSubscription
- 1.6 InputKeyAction
- 1.7 ModifierData
- 1.8 PlayerInteractionData
- 1.9 RawInputKeyEventData
- 1.10 RenderParameters
- 1.11 ScreenPositionRange
- 1.12 StateInputKeyAction
- 1.13 STYLE_ID
- 1.14 StyleReferenceId
- 1.15 SubscribedInputEventParameters
- 1.16 TextAutoScaleValue
- 1.17 TextureCoordinates
- 1.18 UIAnchorPosition
- 1.19 UIAxisEmulationDefinition
- 1.20 UICombinedStyleData
- 1.21 UIDataStoreBinding
- 1.22 UIDockingNode
- 1.23 UIDockingSet
- 1.24 UIFocusPropagationData
- 1.25 UIImageAdjustmentData
- 1.26 UIImageStyleOverride
- 1.27 UIInputActionAlias
- 1.28 UIInputAliasClassMap
- 1.29 UIInputAliasMap
- 1.30 UIInputAliasStateMap
- 1.31 UIInputAliasValue
- 1.32 UIMouseCursor
- 1.33 UINavigationData
- 1.34 UIProviderFieldValue
- 1.35 UIProviderScriptFieldValue
- 1.36 UIRangeData
- 1.37 UIRenderingSubregion
- 1.38 UIRotation
- 1.39 UIScreenValue
- 1.40 UIScreenValue_AutoSizeRegion
- 1.41 UIScreenValue_Bounds
- 1.42 UIScreenValue_DockPadding
- 1.43 UIScreenValue_Extent
- 1.44 UIScreenValue_Position
- 1.45 UIStringCaretParameters
- 1.46 UIStringNode
- 1.47 UIStringNode_FormattedNodeParent
- 1.48 UIStringNode_Image
- 1.49 UIStringNode_NestedMarkupParent
- 1.50 UIStringNode_Text
- 1.51 UIStringNodeModifier
- 1.52 UIStyleOverride
- 1.53 UIStyleReference
- 1.54 UIStyleSubscriberReference
- 1.55 UITextAttributes
- 1.56 UITextStyleOverride
- 1.57 WIDGET_ID
- 1.58 WrappedStringElement
This is an auto-generated page and may need human attention. Please remove the {{autogenerated}} tag if the page seems reasonably complete or replace it with the {{expand}} tag if the page is not yet complete. |
Structs
AutoSizeData
Modifiers: native
Defines parameters for auto-sizing a widget
- UIScreenValue_AutoSizeRegion Extent
- specifies the minimum and maximum values that the region can be auto-sized to
- AutoSizePadding Padding
- the internal padding to apply to the region
- bool bAutoSizeEnabled
- whether auto-sizing is enabled for this dimension
AutoSizePadding
Extends: UIScreenValue_AutoSizeRegion
Modifiers: native
Data structure for representing the padding to apply to an auto-size region
(No new member variables.)
DefaultEventSpecification
Modifiers: native
Represents a UIEvent that should be automatically added to all instances of a particular widget.
- UIEvent EventTemplate
- the UIEvent template to use when adding the event instance to a widget's EventProvider
- class<UIState> EventState
- Optionally specify the state in which this event should be active. The event will be added to
the corresponding UIState instance's list of events, rather than the widget's list of events
InputEventParameters
Modifiers: native, transient
This struct contains all data used by the various UI input processing methods.
- int PlayerIndex
- Index [into the Engine.GamePlayers array] for the player that generated this input event. If PlayerIndex is not
a valid index for the GamePlayers array, it indicates that this input event was generated by a gamepad that is not currently associated with an active player
- int ControllerId
- The ControllerId that generated this event. Not guaranteed to be a ControllerId associated with a valid player.
- name InputKeyName
- Name of the input key that was generated, such as KEY_Left, KEY_Enter, etc.
- Object.EInputEvent EventType
- The type of input event generated (i.e. IE_Released, IE_Pressed, IE_Axis, etc.)
- float InputDelta
- For input key events generated by analog buttons, represents the amount the button was depressed.
For input axis events (i.e. joystick, mouse), represents the distance the axis has traveled since the last update.
- float DeltaTime
- For input axis events, represents the amount of time that has passed since the last update.
- bool bAltPressed
- For PC input events, tracks whether the corresponding modifier keys are pressed.
- bool bCtrlPressed
- For PC input events, tracks whether the corresponding modifier keys are pressed.
- bool bShiftPressed
- For PC input events, tracks whether the corresponding modifier keys are pressed.
InputEventSubscription
Modifiers: native, transient
Represents a mapping of input key to widgets which contain EventComponents that respond to the associated input key.
- name KeyName
- The name of the key represented by this InputEventSubscription (i.e. KEY_XboxTypeS_LeftTrigger, etc.)
- array<UIScreenObject> Subscribers
- a list of widgets which are eligible to process this input key event
InputKeyAction
Modifiers: native
Associates a UIAction with input key name.
- name InputKeyName
- the input key name that will activate the action
- Object.EInputEvent InputKeyState
- the state (pressed, released, etc.) that will activate the action
- array<SequenceOp.SeqOpOutputInputLink> TriggeredOps
- The sequence operations to activate when the input key is received
- array<SequenceOp> ActionsToExecute
Default values:
Property | Value |
---|---|
InputKeyState | IE_Released |
ModifierData
Modifiers: native, transient
Contains data about a custom inline style, along with the inline fonts that have been activated while this style was the current style. Handles proper interaction between nested font and style inline markup.
- UIStyle_Data Style
- the style for this data block. Refers to either the UIString's DefaultStringStyle, or a style resolved from
an inline style markup reference (i.e. Styles:SomeStyle)
- array<Font> InlineFontStack
- The fonts that have been resolved from inline font markup while this style was the current style.
PlayerInteractionData
Modifiers: native, transient
Tracks widgets which are currently in special states.
- UIObject FocusedControl
- The widget/scene that currently has focus
- UIObject LastFocusedControl
- The widget/scene that last had focus
RawInputKeyEventData
Modifiers: native, export
- name InputKeyName
- the name of the key (i.e. 'Left' [KEY_Left], 'LeftMouseButton' [KEY_LeftMouseButton], etc.)
- byte ModifierKeyFlags
- a bitmask of values indicating which modifier keys are associated with this input key event, or which modifier
keys are excluded. Bit values are: 0: Alt active (or required) 1: Ctrl active (or required) 2: Shift active (or required) 3: Alt excluded 4: Ctrl excluded 5: Shift excluded
(key states) 6: Pressed 7: Released
Default values:
Property | Value |
---|---|
ModifierKeyFlags | 56 |
RenderParameters
Modifiers: native, transient
General purpose data structure for grouping all parameters needed when rendering or sizing a string/image
- float DrawX
- a pixel value representing the horizontal screen location to begin rendering the string
- float DrawY
- a pixel value representing the vertical screen location to begin rendering the string
- float DrawXL
- a pixel value representing the width of the area available for rendering the string
- float DrawYL
- a pixel value representing the height of the area available for rendering the string
- Object.Vector2D Scaling
- A value between 0.0 and 1.0, which represents how much the width/height should be scaled,
where 1.0 represents 100% scaling.
- Font DrawFont
- the font to use for rendering/sizing the string
- EUIAlignment TextAlignment[2] (EUIOrientation.UIORIENT_MAX)
- The alignment for the string we are drawing.
- Object.Vector2D ImageExtent
- Only used when rendering string nodes that contain images.
Represents the size to use for rendering the image
- TextureCoordinates DrawCoords
- the coordinates to use to render images
- Object.Vector2D SpacingAdjust
- Horizontal spacing adjustment between characters and vertical spacing adjustment between wrapped lines
- float ViewportHeight
- the current height of the viewport; needed to support multifont
- bool bUseOverrideColor
- Whether to use the override color (will typically get turned on for a short time then turned back off)
- Object.LinearColor OverideDrawColor
- The color to use when overriding the currently rendering color
ScreenPositionRange
Extends: UIScreenValue_Position
Modifiers: native
Data structure for mapping a region on the screen. Rather than representing an X,Y coordinate, this struct represents the beginning and end of a dimension (X1, X2)
(No new member variables.)
StateInputKeyAction
Extends: InputKeyAction
Modifiers: native
Specialized version of InputKeyAction used for constraining the input action to a particular UIState.
- class<UIState> Scope
- Allows an input action to be tied to a specific UIState. If NULL, the action will be active
in all states that support UIEvent_ProcessInput. If non-NULL, the input key will only be accepted when the widget is in the specified state.
Default values:
Property | Value |
---|---|
Scope | Class'Engine.UIState_Enabled' |
STYLE_ID
Extends: Object.Guid
Modifiers: native
A unique ID number for a resource located in a UI skin package. Used to lookup materials in skin files.
(No new member variables.)
StyleReferenceId
Modifiers: transient, native
Container used for identifying UIStyleReference properties from multiple UIStyleResolvers of the same class
- name StyleReferenceTag
- The tag to use for this UIStyleResolver's properties
- Property StyleProperty
- the actual UIStyleReference property
SubscribedInputEventParameters
Extends: InputEventParameters
Modifiers: native, transient
Contains additional data for an input event which a widget has registered for (via UUIComp_Event::RegisterInputEvents).is in the correct state capable of processing is registered to handle.the data for a Stores the UIInputAlias name translated from a combination of input key, input event type, and modifier keys.
- name InputAliasName
- Name of the UI input alias determined from the current input key, event type, and active modifiers.
TextAutoScaleValue
Modifiers: native
Container for text autoscaling values.
- float MinScale
- (Min Scale Value in UnrealEd) the minimum amount of scaling that can be applied to the text; this value must be set in order for
auto-scaling to be used in conjunction with any type of string formatting (i.e. wrapping, clipping, etc.). Negative values will be ignored and a value of 0 indicates that MinScale is not enabled.
- ETextAutoScaleMode AutoScaleMode
- (Auto Scaling in UnrealEd) Allows text to be scaled to fit within the bounding region
Default values:
Property | Value |
---|---|
AutoScaleMode | UIAUTOSCALE_None |
MinScale | 0.6 |
TextureCoordinates
Modifiers: native
Coordinates for mapping an individual texture of a texture atlas
UIAnchorPosition
Extends: UIScreenValue_Position
Modifiers: native
Data structure for describing the location of a widget's rotation pivot. Defines a 2D point within a widget's bounds, either in pixels or percentage, along with a z-depth value (in pixels)
- float ZDepth
UIAxisEmulationDefinition
Modifiers: native
Contains information for simulating a button press input event in response to axis input.
- name AxisInputKey
- The axis input key name that this definition represents.
- name AdjacentAxisInputKey
- The axis input key name that represents the other axis of the joystick associated with this axis input.
e.g. if AxisInputKey is MouseX, AdjacentAxisInputKey would be MouseY.
- bool bEmulateButtonPress
- Indicates whether button press/release events should be generated for this axis key
- name InputKeyToEmulate[2]
- The button input key that this axis input should emulate. The first element corresponds to the input key
that should be emulated when the axis value is positive; the second element corresponds to the input key that should be emulated when the axis value is negative.
UICombinedStyleData
Modifiers: native, transient
Container for all data contained by UI styles. Used for applying inline modifications to UIString nodes, such as changing the font, draw color, or attributes
Todo: support for embedded markup, such as blah blahblah blah
- Object.LinearColor TextColor
- color to use for rendering text
- Object.LinearColor ImageColor
- color to use for rendering images
- float TextPadding[2] (EUIOrientation.UIORIENT_MAX)
- padding to use for rendering text
- float ImagePadding[2] (EUIOrientation.UIORIENT_MAX)
- padding to use for rendering images
- Font DrawFont
- the font to use when rendering text
- Surface FallbackImage
- the material to use when rendering images if the image material cannot be loaded or isn't set
- TextureCoordinates AtlasCoords
- the coordinates to use if FallbackImage is a texture atlas
- UITextAttributes TextAttributes
- attributes to apply to this style's font
- EUIAlignment TextAlignment[2] (EUIOrientation.UIORIENT_MAX)
- text alignment within the bounding region
- ETextClipMode TextClipMode
- determines how strings that overrun the bounding region are handled
- EUIAlignment TextClipAlignment
- Determines how the nodes of this string are ordered when the string is being clipped
- UIImageAdjustmentData AdjustmentType[2] (EUIOrientation.UIORIENT_MAX)
- Information about how to modify the way the image is rendered.
- TextAutoScaleValue TextAutoScaling
- Allows text to be scaled to fit within the bounding region
- Object.Vector2D TextScale
- text scale to use when rendering text
- Object.Vector2D TextSpacingAdjust
- Horizontal spacing adjustment between characters and vertical spacing between wrapped lines of text
- bool bInitialized
- indicates whether this style data container has been initialized
Default values:
Property | Value | ||||||
---|---|---|---|---|---|---|---|
TextClipMode | CLIP_MAX | ||||||
TextScale |
|
UIDataStoreBinding
Modifiers: native
Contains information about a UI data store binding, including the markup text used to reference the data store and the resolved value of the markup text.
NOTE: if you move this struct declaration to another class, make sure to update UUIObject::GetDataBindingProperties()
- UIDataStoreSubscriber Subscriber
- The UIDataStoreSubscriber that contains this UIDataStoreBinding
- EUIDataProviderFieldType RequiredFieldType
- Indicates which type of data fields can be used in this data store binding
- string MarkupString
- A datastore markup string which resolves to a property/data type exposed by a UI data store.
Note: cannot be editconst until we have full editor support for manipulating markup strings (e.g. inserting embedded markup, etc.)
- int BindingIndex
- Used to differentiate multiple data store properties in a single class.
- name DataStoreName
- the name of the data store resolved from MarkupString
- name DataStoreField
- the name of the field resolved from MarkupString; must be a field supported by ResolvedDataStore
- UIDataStore ResolvedDataStore
- a pointer to the data store resolved from MarkupString
Default values:
Property | Value |
---|---|
BindingIndex | 0 |
RequiredFieldType | DATATYPE_MAX |
UIDockingNode
Modifiers: native
A widget/face pair. Used by the docking system to track the order in which widget face positions should be evaluated
- UIObject Widget
- the widget that this docking node is associated with
- EUIWidgetFace Face
- the face on the Widget that should be updated when this docking node is processed
UIDockingSet
Modifiers: native
Defines the desired docking behavior for all faces of a single widget
- UIObject OwnerWidget
- The widget that is associated with this docking set. Set by InitializeDockingSet().
- UIObject TargetWidget[4] (EUIWidgetFace.UIFACE_MAX)
- The widget that will be docked against.
If this value is NULL, it means that docking isn't enabled for this face If this value points to OwnerWidget, it means that the face is docked to the owner scene.
- UIScreenValue_DockPadding DockPadding
- The amount of padding to use for docking each face. Positive values are considered "inside" padding,
while negative values are considered "outside" padding.
- bool bLockWidthWhenDocked
- Controls whether the width of this widget should remain constant when adjusting the position of the left or right
face as a result of docking. Only relevant when either the left or right faces are docked.
- bool bLockHeightWhenDocked
- Controls whether the height of this widget should remain constant when adjusting the position of the top or bottom
face as a result of docking. Only relevant when either the top or bottom faces are docked.
- EUIWidgetFace TargetFace[4] (EUIWidgetFace.UIFACE_MAX)
- The face on the TargetWidget that this docking set applies to.
- byte bResolved[4] (EUIWidgetFace.UIFACE_MAX)
- tracks whether each face has been resolved (via UpdateDockingSet). Reset whenever ResolveScenePositions is called
- byte bLinking[4] (EUIWidgetFace.UIFACE_MAX)
- set to 1 when this node is in the process of being added to the scene's docking stack; used to easily
track down circular relationships between docking sets
Default values:
Property | Value |
---|---|
TargetFace[3] (UIFACE_Bottom) | UIFACE_MAX |
TargetFace[0] (UIFACE_Left) | UIFACE_MAX |
TargetFace[2] (UIFACE_Right) | UIFACE_MAX |
TargetFace[1] (UIFACE_Top) | UIFACE_MAX |
UIFocusPropagationData
Modifiers: native
Contains information about how to propagate focus between parent and child widgets.
- UIObject FirstFocusTarget
- Specifies the child widget that should automatically receive focus when this widget receives focus.
Set automatically when RebuildNavigationLinks() is called on the owning widget.
- UIObject LastFocusTarget
- Specifies the child widget which will automatically receive focus when this widget receives focus and the user
is navigating backwards through the scene (i.e. Shift+Tab). Set automatically when RebuildNavigationLinks() is called on the owning widget.
- UIObject NextFocusTarget
- Specifies the sibling widget that is next in the tab navigation system for this widget's parent.
Set automatically when RebuildNavigationLinks() is called on the owning widget.
- UIObject PrevFocusTarget
- Specifies the sibling widget that is previous in the tab navigation system for this widget's parent.
Set automatically when RebuildNavigationLinks() is called on the owning widget.
- bool bPendingReceiveFocus
- Indicates that this widget is currently becoming the focused control. Used for preventing KillFocus from clobbering this
pending focus change if one of this widget's children is the currently focused control (since killing focus on a child of this widget would normally cause this widget to lose focus as well
UIImageAdjustmentData
Modifiers: native
Describes the parameters for adjusting a material to match the dimensions of a target region.
- UIScreenValue_Extent ProtectedRegion[2] (EUIOrientation.UIORIENT_MAX)
- (Gutter in UnrealEd) size of buffer zone for constraining the image adjustment
- EMaterialAdjustmentType AdjustmentType
- (Scale Type in UnrealEd) the type of adjustment to perform to the image for each orientation
- EUIAlignment Alignment
- (Image Alignment in UnrealEd) alignment within the region
Default values:
Property | Value |
---|---|
AdjustmentType | ADJUST_Normal |
UIImageStyleOverride
Extends: UIStyleOverride
Modifiers: native
Contains data for overriding the corresponding data in an image style.
- TextureCoordinates Coordinates
- (UV Coordinates in UnrealEd) if DefaultImage points to a texture atlas, represents the coordinates to use for rendering this image
- UIImageAdjustmentData Formatting[2] (EUIOrientation.UIORIENT_MAX)
- Information about how to modify the way the image is rendered.
- bool bOverrideCoordinates
- indicates whether the coordinates have been customized
- bool bOverrideFormatting
- indicates whether the formatting has been customized
Default values:
Property | Value | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Formatting[0] (UIORIENT_Horizontal) |
|
||||||||||||||
Formatting[1] (UIORIENT_Vertical) |
|
UIInputActionAlias
Modifiers: native, export
Stores a list of input key names that should be linked to an input action alias key (i.e. NAV_Left, NAV_Right) Used by the UI system to handle input events in a platform & game agnostic way.
- name InputAliasName
- the name of an input action alias that the UI responds to
- array<RawInputKeyEventData> LinkedInputKeys
- the input key names (e.g. KEY_Left, KEY_Right) and modifier which will trigger this input alias
UIInputAliasClassMap
Modifiers: native
Defines the UIInputActionAliases that are supported by a particular widget class for each state.
Todo: ronp - add support for specifying "input alias => raw input key" mappings for widget archetypes
- string WidgetClassName
- the name of the widget class to load
- class<UIScreenObject> WidgetClass
- the widget class that this UIInputAliasMap contains input aliases for
- array<UIInputAliasStateMap> WidgetStates
- the states that this widget class supports
- Map{UClass*, FUIInputAliasMap} StateLookupTable
- Runtime lookup map to find a input alias map. Maps a UIState class <=> (map of input key name (KEY_Left) + modifier keys <=> input key alias (UIKEY_Clicked)).
Used for quickly unregistering input keys when a state goes out of scope.
- Map{UClass*, TArray<const FUIInputAliasStateMap*>} StateReverseLookupTable
- Runtime lookup map to find a state input struct. Maps a UIState class => (map of input key alias (UIKEY_Clicked) => input key name (KEY_Left))
Used for quickly registering input keys when a state enters scope - since multiple input keys can be mapped to a single input key alias, and each input key alias name must be checked against the list of disabled input aliases, storing this reverse lookup table allows us to check only once for each input alias.
UIInputAliasMap
Modifiers: native, export
A TMultiMap wrapper which maps input key names (i.e. KEY_Left) to a list of input action alias data.
- Object.MultiMap_Mirror{TMultiMap< FName, FUIInputAliasValue >} InputAliasLookupTable
- A mapping from input key data (name + modifier key) <==> input alias triggered by that input key event
Used to retrieve the input action alias for a given input key when input events are received.
UIInputAliasStateMap
Modifiers: native, export
Defines the list of key mappings supported in a paticular widget state.
- string StateClassName
- the path name for the state class to load
- class<UIState> State
- The widget state that this map contains input aliases for.
- array<UIInputActionAlias> StateInputAliases
- the input action aliases that this widget state supports
UIInputAliasValue
Modifiers: native, transient, export
Combines an input alias name with the modifier flag bitmask required to activate it.
- byte ModifierFlagMask
- a bitmask representing the modifier key state required to activate this input alias
- name InputAliasName
- the name of the input alias
UIMouseCursor
Modifiers: native, export
Contains information about a mouse cursor resource that can be used ingame.
- name CursorStyle
- the tag of the style to use for displaying this cursor
- UITexture Cursor
- The actual cursor resource
Modifiers: native
Defines the navigation links for a widget.
- UIObject NavigationTarget[4] (EUIWidgetFace.UIFACE_MAX)
- The widgets that will receive focus when the user presses the corresonding direction. For keyboard navigation, pressing
"tab" will set focus to the widget in the UIFACE_Right slot, pressing "shift+tab" will set focus to the widget in the UIFACE_Left slot.
Filled in at runtime when RebuildNavigationLinks is called.
- UIObject ForcedNavigationTarget[4] (EUIWidgetFace.UIFACE_MAX)
- Allows the designer to override the auto-generated focus target for each face. If a value is set for NavigationTarget,
that widget will always be set as the value for CurrentNavTarget for that face.
- byte bNullOverride[4] (EUIWidgetFace.UIFACE_MAX)
- By default, a NULL value for the forced nav taget indicates that the nav target for that face should be automatically
calculated. bNullOverride indicates that a value of NULL *is* the designer specified nav target.
UIProviderFieldValue
Extends: UIProviderScriptFieldValue
Modifiers: native
This extension of UIProviderScriptFieldValue is used when resolving values for markup text found in UIStrings. This struct allows data stores to provide the UIStringNode that should be used when rendering the value for the data field represented this struct.
- pointer{struct FUIStringNode} CustomStringNode
- Only used by native code; allows the data store to create and initialize string nodes manually, rather than allowing
the calling code to create a UIStringNode based on the value of StringValue or ImageValue
UIProviderScriptFieldValue
Modifiers: native
Contains the value for a property, as either text or an image. Used for allowing script-only data provider classes to resolve data fields parsed from UIStrings.
- name PropertyTag
- the name of this resource; set natively after the list of available tags are retrieved from script
- EUIDataProviderFieldType PropertyType
- the type of field this tag corresponds to
- string StringValue
- If PropertyTag corresponds to data that should be represented as text, contains the value for this resource
- Surface ImageValue
- If PropertyTag correspondsd to data that should be represented as an image, contains the value for this resource
- array<int> ArrayValue
- If PropertyTag corresponds to data that should be represented as a list of untyped data, contains the value of the selected elements
- UIRangeData RangeValue
- If PropertyTag corresponds to data that should be represented as value within a specific range, contains the value for this resource
- OnlineSubsystem.UniqueNetId NetIdValue
- If PropertyTag corresponds to data that should be represented as a UniqueNetId, contains the value.
- TextureCoordinates AtlasCoordinates
- Specifies the coordinates for ImageValue if it corresponds to a texture atlas
UIRangeData
Modifiers: native
Contains information about a data value that must be within a specific range.
- float CurrentValue
- the current value of this UIRange
- float MinValue
- The minimum value for this UIRange. The value of this UIRange must be greater than or equal to this value.
- float MaxValue
- The maximum value for this UIRange. The value of this UIRange must be less than or equal to this value.
- float NudgeValue
- Controls the amount to increment or decrement this UIRange's value when used by widgets that support "nudging".
If NudgeValue is zero, reported NudgeValue will be 1% of MaxValue - MinValue.
- bool bIntRange
- Indicates whether the values in this UIRange should be treated as ints.
UIRenderingSubregion
Modifiers: native
Represents a sub-region within another render bounding region.
- UIScreenValue_Extent ClampRegionSize
- (Subregion Size in UnrealEd) the size of the subregion; will be clamped to the size of the bounding region
- UIScreenValue_Extent ClampRegionOffset
- (Subregion Position in UnrealEd) Only relevant if ClampRegionAlignment is "Inherit/Other". The offset for the sub-region, relative to the
beginning of the bounding region.
- EUIAlignment ClampRegionAlignment
- (Subregion Alignment in UnrealEd) the alignment for the sub-region; to enable "Subregion Position", this must be set to "Inherit/Other"
- bool bSubregionEnabled
- Must be true to specify a subregion
Default values:
Property | Value | ||||||
---|---|---|---|---|---|---|---|
ClampRegionAlignment | UIALIGN_Default | ||||||
ClampRegionOffset |
|
||||||
ClampRegionSize |
|
UIRotation
Modifiers: native
Data structure for representation the rotation of a UI Widget.
- Object.Rotator Rotation
- the UE representation of the rotation of the widget
- Object.Matrix TransformMatrix
- Transform matrix to use for rendering the widget.
- UIAnchorPosition AnchorPosition
- point used for the origin in rotation animations
- ERotationAnchor AnchorType
- defines whether the AnchorPosition is used or one of the presets
Default values:
Property | Value | ||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AnchorPosition |
|
||||||||||||||||||||||||||||||||||||||||||||||||||
AnchorType | RA_Center | ||||||||||||||||||||||||||||||||||||||||||||||||||
TransformMatrix |
|
UIScreenValue
Modifiers: native
Represents a screen position, either as number of pixels or percentage. Used for single dimension (point) values.
- float Value
- the value, in either pixels or percentage
- EPositionEvalType ScaleType
- how this UIScreenValue should be evaluated
- EUIOrientation Orientation
- the orientation associated with this UIScreenValue. Used for evaluating relative or percentage scaling types
Default values:
Property | Value |
---|---|
Orientation | UIORIENT_Horizontal |
ScaleType | EVALPOS_PixelViewport |
UIScreenValue_AutoSizeRegion
Modifiers: native
Represents the constraint region for auto-sizing text.
- float Value[2] (EUIAutoSizeConstraintType.UIAUTOSIZEREGION_MAX)
- EUIExtentEvalType EvalType[2] (EUIAutoSizeConstraintType.UIAUTOSIZEREGION_MAX)
Default values:
Property | Value |
---|---|
EvalType[1] (UIAUTOSIZEREGION_Maximum) | UIEXTENTEVAL_Pixels |
EvalType[0] (UIAUTOSIZEREGION_Minimum) | UIEXTENTEVAL_Pixels |
UIScreenValue_Bounds
Modifiers: native
Represents a widget's position onscreen, either as number of pixels or percentage. Used for four dimension (bounds) values.
- float Value[4] (EUIWidgetFace.UIFACE_MAX)
- The value for each face. Can be a pixel or percentage value.
- EPositionEvalType ScaleType[4] (EUIWidgetFace.UIFACE_MAX)
- Specifies how the value for each face should be intepreted.
- byte bInvalidated[4] (EUIWidgetFace.UIFACE_MAX)
- Indicates whether the position for each face has been modified since it was last resolved into screen pixels
and applied to the owning widget's RenderBounds. If this value is FALSE, it indicates that the RenderBounds for the corresponding face in the owning widget matches the position Value. A value of TRUE indicates that the position Value for that face has been changed since it was last converted into RenderBounds.
- EUIAspectRatioConstraint AspectRatioMode
- Specifies whether this position's values should be adjusted to constrain to the current aspect ratio.
Fixme: ronp - can't make editconst until we've exposed this to the position panel, context menu, and/or widget drag tools
Default values:
Property | Value |
---|---|
AspectRatioMode | UIASPECTRATIO_AdjustNone |
bInvalidated[3] (UIFACE_Bottom) | 1 |
bInvalidated[0] (UIFACE_Left) | 1 |
bInvalidated[2] (UIFACE_Right) | 1 |
bInvalidated[1] (UIFACE_Top) | 1 |
ScaleType[3] (UIFACE_Bottom) | EVALPOS_PercentageOwner |
ScaleType[0] (UIFACE_Left) | EVALPOS_PercentageOwner |
ScaleType[2] (UIFACE_Right) | EVALPOS_PercentageOwner |
ScaleType[1] (UIFACE_Top) | EVALPOS_PercentageOwner |
Value[3] (UIFACE_Bottom) | 1.0 |
Value[0] (UIFACE_Left) | 0.0 |
Value[2] (UIFACE_Right) | 1.0 |
Value[1] (UIFACE_Top) | 0.0 |
UIScreenValue_DockPadding
Modifiers: native
- float PaddingValue[4] (EUIWidgetFace.UIFACE_MAX)
- The value for each face. Can be in pixels or a percentage of the owning widget's bounding region, depending on the
ScaleType for each face.
- EUIDockPaddingEvalType PaddingScaleType[4] (EUIWidgetFace.UIFACE_MAX)
- Specifies how the Value for each face should be intepreted.
Default values:
Property | Value |
---|---|
PaddingScaleType[3] (UIFACE_Bottom) | UIPADDINGEVAL_Pixels |
PaddingScaleType[0] (UIFACE_Left) | UIPADDINGEVAL_Pixels |
PaddingScaleType[2] (UIFACE_Right) | UIPADDINGEVAL_Pixels |
PaddingScaleType[1] (UIFACE_Top) | UIPADDINGEVAL_Pixels |
PaddingValue[3] (UIFACE_Bottom) | 0.0 |
PaddingValue[0] (UIFACE_Left) | 0.0 |
PaddingValue[2] (UIFACE_Right) | 0.0 |
PaddingValue[1] (UIFACE_Top) | 0.0 |
UIScreenValue_Extent
Modifiers: native
Very similar to UIScreenValue (which represents a point within a widget), this data structure is used for representing a sub-region of the screen, in a single dimension
- float Value
- the value, in either pixels or percentage
- EUIExtentEvalType ScaleType
- how this extent value should be evaluated
- EUIOrientation Orientation
- the orientation associated with this extent. Used for evaluating percentage scaling types
Default values:
Property | Value |
---|---|
Orientation | UIORIENT_Horizontal |
ScaleType | UIEXTENTEVAL_Pixels |
Value | 0.0 |
UIScreenValue_Position
Modifiers: native
Represents a screen position, either as number of pixels or percentage. Used for double dimension (orientation) values.
- float Value[2] (EUIOrientation.UIORIENT_MAX)
- EPositionEvalType ScaleType[2] (EUIOrientation.UIORIENT_MAX)
Default values:
Property | Value |
---|---|
ScaleType[0] (UIORIENT_Horizontal) | EVALPOS_PixelOwner |
ScaleType[1] (UIORIENT_Vertical) | EVALPOS_PixelOwner |
UIStringCaretParameters
Modifiers: native
- bool bDisplayCaret
- Controls whether a caret is displayed at all
- EUIDefaultPenColor CaretType
- Determines which color pen (from GameUISceneClient's DefaultUITextures) is used to render the caret
- float CaretWidth
- Specifies the width of the caret, in pixels
- name CaretStyle
- the tag of the style to use for displaying this caret
- int CaretPosition
- The current position of the caret in the string
- MaterialInterface CaretMaterial
- For carets that use parametized materials, the MaterialInterface that was created for this caret
Default values:
Property | Value |
---|---|
CaretStyle | 'DefaultCaretStyle' |
CaretType | UIPEN_White |
CaretWidth | 1.0 |
UIStringNode
Modifiers: native, transient
Represents a single text block (or inline image), where all of the text is the same style/font,etc. Able to calculate its extend at any time
- pointer VfTable
- The vtable for this struct.
- UIDataStore NodeDataStore
- The data store that was resolved from this string nodes markup. NULL if this string node doesn't
contain data store markup text.
- pointer{FUIStringNode} ParentNode
- For slave nodes (such as nodes that were created as a result of wrapping or nested markup resolution), the original
node which contains the markup source text for this entire group of nodes.
- string SourceText
- The original text that is represented by this string node. For example, for a UITextNode that represents
some bold text, the original text would look like: some text For an image node, the original text might look like: <img={SOME_ID}>
Fixme: hmmm, should this be changed to be a UIDataStoreBinding instead?
- Object.Vector2D Extent
- Represents the width and height of this string node in pixels. Can be calculated dynamically based on
the content of the node, or set by the parent UIString to some preconfigured value.
- Object.Vector2D Scaling
- A value between 0.0 and 1.0, which represents the amount of scaling the apply to the node's Extent,
where 1.0 represents 100% scaling. Typically only specified per-node for image nodes.
- bool bForceWrap
- if TRUE, this node should be the last node on the current line
Default values:
Property | Value | ||||||
---|---|---|---|---|---|---|---|
Scaling |
|
UIStringNode_FormattedNodeParent
Extends: UIStringNode_Text
Modifiers: native, transient
This node is created when when a string node's resolved value is wrapped into multiple lines (or otherwise formatted). This node stores the source and render text from the pre-formatted node, but is never rendered.
(No new member variables.)
UIStringNode_Image
Extends: UIStringNode
Modifiers: native, transient
Specialized text node for rendering images in a UIString.
- Object.Vector2D ForcedExtent
- The extent to use for this image node. If this value is zero, the image node uses the size of the image
to calculate its extent
- TextureCoordinates TexCoords
- Texture coordinates to use when rendering the image node's texture. If the TextureCoordinates struct is all zero, the entire texture will be drawn.
- UITexture RenderedImage
- A pointer to the image being displayed by this text node. The RenderedImage's ImageStyle will be
initialized from the parent UIString's default image style, then customized by any attribute markup found in the source text for this node.
UIStringNode_NestedMarkupParent
Extends: UIStringNode
Modifiers: native, transient
This node type is created when a string node's resolved value contains embedded markup text. This node stores the original markup text and the data store that was resolved from the original markup.
(No new member variables.)
UIStringNode_Text
Extends: UIStringNode
Modifiers: native, transient
Specialized text node for rendering text in a UIString.
- string RenderedText
- This is the string that will actually be drawn. It doesn't contain any markup (that's stored in OriginalText),
and is the string that is used to determine the extent of this string.
- UICombinedStyleData NodeStyleParameters
- The style property values to use for rendering this node. Initialized based on the default text style of the parent
UIString, then customized by any attribute markup in the source text for this node.
UIStringNodeModifier
Modifiers: native, transient
This struct contains data about the current modifications that are being applied to a string as it is being parsed, such as any inline styles, fonts, or attributes.
- UICombinedStyleData CustomStyleData
- The current style data to apply to each new string node that is created
Note: when data stores need to access additional fields of this member, add accessors to this struct rather than removing the private access specifier
- UICombinedStyleData BaseStyleData
- Optional style data that this UIStringNodeModifier was initialized from. If BaseStyleData is not valid, there must be at least one
UIStyle in the ModifierStack.
- array<ModifierData> ModifierStack
- UIState CurrentMenuState
- The current menu state of the widget that owns the source UIString.
UIStyleOverride
Modifiers: native
This struct contains properties which override values in a style.
- Object.LinearColor DrawColor
- (Draw Color in UnrealEd) Color to use for rendering the string or image. Values for each color range from 0.0 to 1.0, where
0.0 means "none of this color" and 1.0 means "full-color". Use values higher than 1.0 to create a "bloom" effect behind the text. Give DrawColor.A a value higher than 1.0 in order to bloom all colors uniformly. (requires UI post processing to be enabled - UISceneClient.bEnablePostProcess and the owning scene's bEnableScenePostProcessing properties must both be set to TRUE).
- float Opacity
- (Opacity in UnrealEd) Provides a simple way for overriding the opacity of the text regardless of the DrawColor's Alpha value
A value of 0.0 means "completely transparent"; a value of 1.0 means "completely opaque". Use values greater than 1.0 to bloom the DrawColor uniformly. (requires UI post processing to be enabled - UISceneClient.bEnablePostProcess and the owning scene's bEnableScenePostProcessing properties must both be set to TRUE).
- float Padding[2] (EUIOrientation.UIORIENT_MAX)
- (Padding in UnrealEd) The amount of padding to apply for each orientation, in pixels. Padding will be scaled against the value of the
DEFAULT_SIZE_Y const (currently 1024).
- bool bOverrideDrawColor
- indicates whether the draw color has been customized
- bool bOverrideOpacity
- Allow us to override the final alpha
- bool bOverridePadding
- Indicates whether the padding has been customized
Default values:
Property | Value | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
DrawColor |
|
||||||||||
Opacity | 1.0 |
UIStyleReference
Modifiers: native
Encapsulates a reference to a UIStyle. UIStyleReference supports the following features:
- when a UIStyleReference does not have a valid STYLE_ID, the default style for this style reference (as determined by DefaultStyleTag + RequiredStyleClass) is assigned as the value for ResolvedStyle, but the value of AssignedStyleID is not modified. - when a UIStyleReference has a valid STYLE_ID for the value of AssignedStyleID, but there is no style with that STYLE_ID in the current skin, ResolvedStyle falls back to using the default style for this style reference, but the value of AssignedStyleID is not modified. - once a UIStyleReference has successfully resolved a style and assigned it to ResolvedStyle, it will not re-resolve the style until the style reference has been invalidated (by calling Invalidate); attempting to change the ResolvedStyle of this style reference to a style not contained in the currently active skin invalidates the ResolvedStyle.
- name DefaultStyleTag
- Specifies the name of the style to use if this style reference doesn't have a valid STYLE_ID (which indicates that the designer
hasn't specified a style for this style reference
- class<UIStyle_Data> RequiredStyleClass
- if non-null, limits the type of style that can be assigned to this style reference
- STYLE_ID AssignedStyleID
- The STYLE_ID for the style assigned to this style reference in the game's default skin. This value is assigned when the designer
changes the style for a style reference in the UI editor. This value can be overridden by UICustomSkins.
- UIStyle ResolvedStyle
- the style data object that was associated with AssignedStyleID in the currently active skin
UIStyleSubscriberReference
Modifiers: transient, native
Pairs a unique name with a UIStyleResolver reference.
not currently used.
- name SubscriberId
- A unique name for identifying this StyleResolver - usually the name of the property referencing this style resolver
Used for differentiating styles from multiple UIStyleResolvers of the same class.
- UIStyleResolver Subscriber
- the reference to the UIStyleResolver object
UITextAttributes
Modifiers: native
Defines a group of attributes that can be applied to text, such as bold, italic, underline, shadow, etc.
- bool Bold
- Not yet implemented
- bool Italic
- Not yet implemented
- bool Underline
- Not yet implemented
- bool Shadow
- Not yet implemented
- bool Strikethrough
- Not yet implemented
UITextStyleOverride
Extends: UIStyleOverride
Modifiers: native
This struct is used to override values from a text style.
- Font DrawFont
- (Draw Font in UnrealEd) The font to use for rendering text
- UITextAttributes TextAttributes
- (Attributes in UnrealEd) Attributes to apply to the text, such as bold, italic, etc.
- EUIAlignment TextAlignment[2] (EUIOrientation.UIORIENT_MAX)
- (Text Alignment in UnrealEd) Text alignment within the bounding region
- ETextClipMode ClipMode
- (Clip Mode in UnrealEd) Determines what happens when the text doesn't fit into the bounding region.
- EUIAlignment ClipAlignment
- (Clip Alignment in UnrealEd) Determines how the nodes of this string are ordered when the string is being clipped
- TextAutoScaleValue AutoScaling
- (Auto Scaling in UnrealEd) Allows text to be scaled to fit within the bounding region
- float DrawScale[2] (EUIOrientation.UIORIENT_MAX)
- (Text Scale in UnrealEd) Scale for rendering text
- float SpacingAdjust[2] (EUIOrientation.UIORIENT_MAX)
- (Spacing Adjust in UnrealEd) Sets the horizontal spacing adjustment between characters (in pixels), as well as the vertical spacing adjustment between lines of wrapped text (in pixels).
- bool bOverrideDrawFont
- indicates whether the draw font has been customized
- bool bOverrideAttributes
- indicates whether the coordinates have been customized
- bool bOverrideAlignment
- indicates whether the formatting has been customized
- bool bOverrideClipMode
- indicates whether the clipping mode has been customized
- bool bOverrideClipAlignment
- indicates whether the clip alignment has been customized
- bool bOverrideAutoScale
- indicates whether the autoscale mode has been customized
- bool bOverrideScale
- indicates whether the scale factor has been customized
- bool bOverrideSpacingAdjust
- indicates whether the spacing adjust has been customized
Default values:
Property | Value |
---|---|
DrawScale[0] (UIORIENT_Horizontal) | 1.0 |
DrawScale[1] (UIORIENT_Vertical) | 1.0 |
WIDGET_ID
Extends: Object.Guid
Modifiers: native
A unique identifier assigned to a widget.
(No new member variables.)
WrappedStringElement
Modifiers: native, transient
Used by UUIString::WrapString to track information about each line that is generated as the result of wrapping.
- string Value
- the string associated with this line
- Object.Vector2D LineExtent
- the size (in pixels) that it will take to render this string