I search for solutions in this order: Past Code, Unreal Source, Wiki, BUF, groups.yahoo, google, screaming at monitor. – RegularX
UE3:UIOptionListBase (UDK)
Object >> UIRoot >> UIScreenObject >> UIObject >> UIOptionListBase |
- Package:
- Engine
- Implemented interfaces:
- UIDataStorePublisher
- Known classes within UIOptionListBase:
- UIOptionListButton
- Direct subclasses:
- UINumericOptionList, UIOptionList
- This class in other games:
- UT3
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. |
Base class for a widget that wants to display a list of strings, one at a time, and to increment and decrement that list via buttons.
Constants
UIKEY_MoveCursorLeft
Value: 'UIKEY_MoveCursorLeft'
UI Key Action Events
UIKEY_MoveCursorRight
Value: 'UIKEY_MoveCursorRight'
Properties
Property group 'Appearance'
ButtonSpacing
Type: UIRoot.UIScreenValue_Extent
Spacing between buttons and text.
bWrapOptions
Type: bool
Whether we should wrap the options or not, meaning if the user hits the beginning or the end of the list, they will wrap to the other end of the list.
Property group 'Components'
BackgroundImageComponent
Type: UIComp_DrawImage
Modifiers: editinline, const
Component for rendering the label's background image
Default value: UIComp_DrawImage'BackgroundImageTemplate'
StringRenderComponent
Type: UIComp_DrawString
Modifiers: editinline, const, noclear
Renders the text displayed by this label
Default value: UIComp_DrawString'LabelStringRenderer'
Property group 'Data'
DataSource
Type: UIRoot.UIDataStoreBinding
The data store that this list is bound to
Default value:
Member | Value |
---|---|
RequiredFieldType | DATATYPE_Collection |
Property group 'Sound'
DecrementCue
Type: name
This sound is played when the index is decremented
Default value: 'SliderDecrement'
IncrementCue
Type: name
This sound is played when the index is incremented
Default value: 'SliderIncrement'
Internal variables
DecrementButton
Type: UIOptionListButton
Modifiers: private, const
Increment and decrement buttons for this widget.
Todo: need script accessors for safely replacing the Buttons with a new type, since the var is const
Default value: UIOptionListButton'Engine.Default__UIOptionListBase:DecrementButtonTemplate'
DecrementStyle
Type: UIRoot.UIStyleReference
Modifiers: private
The styles used for the increment, decrement buttons
Default value:
Member | Value |
---|---|
DefaultStyleTag | 'DefaultIncrementButtonStyle' |
RequiredStyleClass | Class'Engine.UIStyle_Image' |
IncrementButton
Type: UIOptionListButton
Modifiers: private, const
Default value: UIOptionListButton'Engine.Default__UIOptionListBase:IncrementButtonTemplate'
IncrementStyle
Type: UIRoot.UIStyleReference
Modifiers: private
Default value:
Member | Value |
---|---|
DefaultStyleTag | 'DefaultDecrementButtonStyle' |
RequiredStyleClass | Class'Engine.UIStyle_Image' |
OptionListButtonClass
Type: class<UIOptionListButton>
Modifiers: const
The class to use for creating the buttons. If more control of the creation is necessary, or to use an existing button, subscribe to the CreateCustomComboButton delegate instead.
Default value: Class'Engine.UIOptionListButton'
Default values
Property | Value | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
OnCreate | Created | ||||||||||
bSupportsPrimaryStyle | False | ||||||||||
Children[0] | UIOptionListButton'Engine.Default__UIOptionListBase:DecrementButtonTemplate' | ||||||||||
Children[1] | UIOptionListButton'Engine.Default__UIOptionListBase:IncrementButtonTemplate' | ||||||||||
DefaultStates[2] | Class'Engine.UIState_Focused' | ||||||||||
DefaultStates[3] | Class'Engine.UIState_Active' | ||||||||||
DefaultStates[4] | Class'Engine.UIState_Pressed' | ||||||||||
Position |
|
||||||||||
PrivateFlags | 1024 |
Subobjects
BackgroundImageTemplate
Class: Engine.UIComp_DrawImage
Property | Value | ||||
---|---|---|---|---|---|
ImageStyle |
|
||||
StyleResolverTag | 'Background Image Style' |
LabelStringRenderer
Class: Engine.UIComp_DrawString
Property | Value | ||||
---|---|---|---|---|---|
StringStyle |
|
||||
StyleResolverTag | 'Caption Style' |
WidgetEventComponent
Class: Engine.UIComp_Event
Inherits from: UIObject.WidgetEventComponent
No new values.
Delegates
CreateCustomDecrementButton
Provides a convenient way to override the creation of the OptionList's components. Called when this UIOptionList is first initialized.
Returns:
- if a custom component is desired, a pointer to a fully configured instance of the desired component class. You must use UIScreenObject.CreateWidget to create the widget instances. The returned instance will be inserted into the combo box's Children array and initialized.
CreateCustomIncrementButton
Functions
Native functions
ClearBoundDataStores
Specified by: UIDataStoreSubscriber.ClearBoundDataStores
Notifies this subscriber to unbind itself from all bound data stores
GetBoundDataStores
Specified by: UIDataStoreSubscriber.GetBoundDataStores
Retrieves the list of data stores bound by this subscriber.
Parameters:
- out_BoundDataStores - receives the array of data stores that subscriber is bound to.
GetDataStoreBinding
Specified by: UIDataStoreSubscriber.GetDataStoreBinding
Retrieves the markup string corresponding to the data store that this object is bound to.
Parameters:
- BindingIndex - optional parameter for indicating which data store binding is being requested for those objects which have multiple data store bindings. How this parameter is used is up to the class which implements this interface, but typically the "primary" data store will be index 0.
Returns:
- a datastore markup string which resolves to the datastore field that this object is bound to, in the format: <DataStoreTag:DataFieldTag>
HasNextValue
Returns:
- TRUE if the user is allowed to increment the value of this widget
HasPrevValue
Returns:
- TRUE if the user is allowed to decrement the value of this widget
NotifyDataStoreValueUpdated
Specified by: UIDataStoreSubscriber.NotifyDataStoreValueUpdated
Handler for the UIDataStore.OnDataStoreValueUpdated delegate. Used by data stores to indicate that some data provided by the data has changed. Subscribers should use this function to refresh any data store values being displayed with the updated value. notify subscribers when they should refresh their values from this data store.
Parameters:
- SourceDataStore - the data store that generated the refresh notification; useful for subscribers with multiple data store bindings, to tell which data store sent the notification.
- PropertyTag - the tag associated with the data field that was updated; Subscribers can use this tag to determine whether there is any need to refresh their data values.
- SourceProvider - for data stores which contain nested providers, the provider that contains the data which changed.
- ArrayIndex - for collection fields, indicates which element was changed. value of INDEX_NONE indicates not an array or that the entire array was updated.
OnMoveSelectionLeft
Moves the current selection to the left.
OnMoveSelectionRight
Moves the current selection to the right.
RefreshSubscriberValue
Specified by: UIDataStoreSubscriber.RefreshSubscriberValue
Resolves this subscriber's data store binding and updates the subscriber with the current value from the data store.
Returns:
- TRUE if this subscriber successfully resolved and applied the updated value.
SaveSubscriberValue
Specified by: UIDataStorePublisher.SaveSubscriberValue
Resolves this subscriber's data store binding and publishes this subscriber's value to the appropriate data store.
Parameters:
- out_BoundDataStores - contains the array of data stores that widgets have saved values to. Each widget that implements this method should add its resolved data store to this array after data values have been published. Once SaveSubscriberValue has been called on all widgets in a scene, OnCommit will be called on all data stores in this array.
- BindingIndex - optional parameter for indicating which data store binding is being requested for those objects which have multiple data store bindings. How this parameter is used is up to the class which implements this interface, but typically the "primary" data store will be index 0.
Returns:
- TRUE if the value was successfully published to the data store.
SetDataStoreBinding
Specified by: UIDataStoreSubscriber.SetDataStoreBinding
Sets the data store binding for this object to the text specified.
Parameters:
- MarkupText - a markup string which resolves to data exposed by a data store. The expected format is: <DataStoreTag:DataFieldTag>
- BindingIndex - optional parameter for indicating which data store binding is being requested for those objects which have multiple data store bindings. How this parameter is used is up to the class which implements this interface, but typically the "primary" data store will be index 0.
Events
Initialized
Overrides: UIScreenObject.Initialized
Called after the widget has been initialized, but before it's resolved its style or initialized its children
Other instance functions
Created
Called when this widget is created
Parameters:
- CreatedWidget - the widget that was created
- CreatorContainer - the container that created the widget
InitializeInternalControls
Performs initialization for the increment and decrement buttons that cannot be handled in default properties.
OnButtonClicked
Handler for the Increment/Decrement button's Onclick delegate.
OnStateChanged
Handler for the NotifyActiveStateChanged delegate - ensures that if the widget loses focus, all buttons are "unpressed".
Parameters:
- Sender - the widget that changed states.
- PlayerIndex - the index [into the GamePlayers array] for the player that activated this state.
- NewlyActiveState - the state that is now active
- PreviouslyActiveState - the state that used the be the widget's currently active state.