Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames

Engine.UIDataStore

Extends
UIDataProvider
Modifiers
native ( inherit ) abstract

Base for classes which provide data to the UI subsystem. A data store is how the UI references data in the game. Data stores allow the UI to reference game data in a safe manner, since they encapsulate lifetime management. A data store can be either persistent, in which case it is attached directly to the UIInteraction object and is available to all widgets, or it can be temporary, in which case it is attached to the current scene and is only accessible to the widgets contained by that scene. Persistent data stores might track information such as UI data for all gametypes or characters. Temporary data stores might track stuff like the name that was entered into some UI value widget. Data stores can provide static information, such as the names of all gametypes, or dynamic information, such as the name of the current gametype. Copyright 1998-2008 Epic Games, Inc. All Rights Reserved.

Core.Object
|   
+-- Engine.UIRoot
   |   
   +-- Engine.UIDataProvider
      |   
      +-- Engine.UIDataStore

Direct Known Subclasses:

SceneDataStore, UIDataStore_Color, UIDataStore_Fonts, UIDataStore_GameResource, UIDataStore_GameState, UIDataStore_Gamma, UIDataStore_Images, UIDataStore_Registry, UIDataStore_Remote, UIDataStore_Settings, UIDataStore_StringAliasMap, UIDataStore_Strings, UISkin, UTUIDataStore_2DStringList, UTUIDataStore_Content, UTUIDataStore_CustomChar, UTUIDataStore_StringList

Constants Summary
Inherited Contants from Engine.UIRoot
ASPECTRATIO_Monitor, ASPECTRATIO_Normal, ASPECTRATIO_Widescreen, DEFAULT_SIZE_X, DEFAULT_SIZE_Y, MAX_SUPPORTED_GAMEPADS, PRIVATE_EditorNoDelete, PRIVATE_EditorNoRename, PRIVATE_EditorNoReparent, PRIVATE_KeepFocusedState, PRIVATE_ManagedStyle, PRIVATE_NotDockable, PRIVATE_NotEditorSelectable, PRIVATE_NotFocusable, PRIVATE_NotRotatable, PRIVATE_PropagateState, PRIVATE_Protected, PRIVATE_TreeHidden, PRIVATE_TreeHiddenRecursive, SCENE_DATASTORE_TAG, TEMP_SPLITSCREEN_INDEX

Variables Summary
array<delegate<OnDataStoreValueUpdated>>RefreshSubscriberNotifies
nameTag
Inherited Variables from Engine.UIDataProvider
ProviderChangedNotifies, WriteAccessType
Inherited Variables from Engine.UIRoot
CurrentMenuState, ModifierStack

Enumerations Summary
Inherited Enumerations from Engine.UIDataProvider
EProviderAccessType
Inherited Enumerations from Engine.UIRoot
EColumnHeaderState, EMaterialAdjustmentType, ENavigationLinkType, EPositionEvalType, ERotationAnchor, EScreenInputMode, ESplitscreenRenderMode, ETextAutoScaleMode, ETextClipMode, EUIAlignment, EUIAspectRatioConstraint, EUIAutoSizeConstraintType, EUIDataProviderFieldType, EUIDefaultPenColor, EUIDockPaddingEvalType, EUIExtentEvalType, EUIListElementState, EUIOrientation, EUIWidgetFace

Structures Summary
Inherited Structures from Engine.UIDataProvider
UIDataProviderField
Inherited Structures from Engine.UIRoot
AutoSizeData, AutoSizePadding, DefaultEventSpecification, InputEventSubscription, InputKeyAction, PlayerInteractionData, RenderParameters, ScreenPositionRange, StateInputKeyAction, StyleReferenceId, STYLE_ID, TextAutoScaleValue, TextureCoordinates, UIAnchorPosition, UICombinedStyleData, UIDataStoreBinding, UIDockingNode, UIDockingSet, UIFocusPropagationData, UIImageAdjustmentData, UIImageStyleOverride, UIInputAliasClassMap, UIInputAliasMap, UIInputAliasStateMap, UIMouseBounds, UINavigationData, UIProviderFieldValue, UIProviderScriptFieldValue, UIRangeData, UIRenderingSubregion, UIRotation, UIScreenValue, UIScreenValue_AutoSizeRegion, UIScreenValue_Bounds, UIScreenValue_DockPadding, UIScreenValue_Extent, UIScreenValue_Position, UIStringCaretParameters, UIStringNodeModifier, UIStyleOverride, UIStyleReference, UIStyleSubscriberReference, UITextAttributes, UITextStyleOverride, WIDGET_ID

Delegates Summary
delegate OnDataStoreValueUpdated (UIDataStore SourceDataStore, bool bValuesInvalidated, name PropertyTag, UIDataProvider SourceProvider, int ArrayIndex)
Inherited Delegates from Engine.UIDataProvider
OnDataProviderPropertyChange

Functions Summary
functionDataStoreClient GetDataStoreClient ()))
functionbool NotifyGameSessionEnded ()
function OnCommit ()
event RefreshSubscribers (optional name PropertyTag, optional bool bInvalidateValues=true, optional UIDataProvider SourceProvider, optional int ArrayIndex=INDEX_NONE ))
event Registered (LocalPlayer PlayerOwner)
event SubscriberAttached (UIDataStoreSubscriber Subscriber ))
event SubscriberDetached (UIDataStoreSubscriber Subscriber ))
event Unregistered (LocalPlayer PlayerOwner)
Inherited Functions from Engine.UIDataProvider
AddPropertyNotificationChangeRequest, GenerateFillerData, GenerateScriptMarkupString, GetFieldValue, GetSupportedScriptFields, NotifyPropertyChanged, RemovePropertyNotificationChangeRequest, SetFieldValue
Inherited Functions from Engine.UIRoot
<, =, ConvertWidgetIDToString, GetCurrentUIController, GetCursorPosition, GetCursorSize, GetDataStoreFieldValue, GetDataStoreStringValue, GetFaceOrientation, GetPrimitiveTransform, GetSceneClient, IsConsole, SetDataStoreFieldValue, SetDataStoreStringValue, SetMouseCaptureOverride


Variables Detail

RefreshSubscriberNotifies Source code

var array<delegate<OnDataStoreValueUpdated>> RefreshSubscriberNotifies;
the list of delegates to call when data exposed by this data store has been updated

Tag Source code

var name Tag;
The name used to access this datastore


Delegates Detail

OnDataStoreValueUpdated Source code

delegate OnDataStoreValueUpdated ( UIDataStore SourceDataStore, bool bValuesInvalidated, name PropertyTag, UIDataProvider SourceProvider, int ArrayIndex )
This delegate is called whenever the values exposed by this data store have been updated. Provides data stores with a way to notify subscribers when they should refresh their values from this data store.
@param SourceDataStore the data store that generated the refresh notification
@param bValuesInvalidated TRUE if the data values were completely invalidated; suggest a full refresh rather than an update (i.e. in lists)
@param PropertyTag the tag associated with the data field that was updated.
@param SourceProvider for data stores which contain nested providers, the provider that contains the data which changed.
@param ArrayIndex for collection fields, indicates which element was changed. value of INDEX_NONE indicates not an array or that the entire array was updated.


Functions Detail

GetDataStoreClient Source code

final function DataStoreClient GetDataStoreClient ( ) )
Returns a reference to the global data store client, if it exists.
@return the global data store client for the game.

NotifyGameSessionEnded Source code

function bool NotifyGameSessionEnded ( )
Called when the current map is being unloaded. Cleans up any references which would prevent garbage collection.
@return TRUE indicates that this data store should be automatically unregistered when this game session ends.

OnCommit Source code

native function OnCommit ( )
Notifies the data store that all values bound to this data store in the current scene have been saved. Provides data stores which perform buffered or batched data transactions with a way to determine when the UI system has finished writing data to the data store. @note: for now, this lives in UIDataStore, but it might make sense to move it up to UIDataProvider later on.

RefreshSubscribers Source code

event RefreshSubscribers ( optional name PropertyTag, optional bool bInvalidateValues=true, optional UIDataProvider SourceProvider, optional int ArrayIndex=INDEX_NONE ) )
Loops through the subscriber notify list and calls the delegate letting the subscriber know to refresh their value.
@param PropertyTag the tag associated with the data field that was updated.
@param SourceProvider for data stores which contain nested providers, the provider that contains the data which changed.
@param ArrayIndex for collection fields, indicates which element was changed. value of INDEX_NONE indicates not an array or that the entire array was updated.

Registered Source code

event Registered ( LocalPlayer PlayerOwner )
Called when this data store is added to the data store manager's list of active data stores.
@param PlayerOwner the player that will be associated with this DataStore. Only relevant if this data store is associated with a particular player; NULL if this is a global data store.

SubscriberAttached Source code

event SubscriberAttached ( UIDataStoreSubscriber Subscriber ) )
Notification that a subscriber is using a value from this data store. Adds the subscriber's RefreshSubscriberValue method to this data store's list of refresh notifies so that the subscriber can refresh its value when the data store's value changes.
@param Subscriber the subscriber that attached to the data store.

SubscriberDetached Source code

event SubscriberDetached ( UIDataStoreSubscriber Subscriber ) )
Notification that a subscriber is no longer using any values from this data store. Removes the subscriber's RefreshSubscriberValue method from this data store's list of refresh notifies so that the subscriber no longer refreshes its value when the data store's value changes.
@param Subscriber the subscriber that detached from the data store.

Unregistered Source code

event Unregistered ( LocalPlayer PlayerOwner )
Called when this data store is removed from the data store manager's list of active data stores.
@param PlayerOwner the player that will be associated with this DataStore. Only relevant if this data store is associated with a particular player; NULL if this is a global data store.


Defaultproperties

defaultproperties
{
   Name="Default__UIDataStore"
   ObjectArchetype=UIDataProvider'Engine.Default__UIDataProvider'
}

Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames
Creation time: sk 18-3-2018 10:00:46.700 - Created with UnCodeX