I love the smell of UnrealEd crashing in the morning. – tarquin
UE3:UIDynamicFieldProvider (UDK)
Object >> UIRoot >> UIDataProvider >> UIDynamicFieldProvider |
Contents
- 1 Properties
- 2 Native functions
- 2.1 AddField
- 2.2 ClearCollectionValueArray
- 2.3 ClearFields
- 2.4 FindCollectionValueIndex
- 2.5 FindFieldIndex
- 2.6 GetCollectionValue
- 2.7 GetCollectionValueArray
- 2.8 GetCollectionValueSchema
- 2.9 GetField
- 2.10 InitializeRuntimeFields
- 2.11 InsertCollectionValue
- 2.12 RemoveCollectionValue
- 2.13 RemoveCollectionValueByIndex
- 2.14 RemoveField
- 2.15 ReplaceCollectionValue
- 2.16 ReplaceCollectionValueByIndex
- 2.17 SavePersistentProviderData
- 2.18 SetCollectionValueArray
- 2.19 SetField
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. |
This data provider class allows adding and removing data fields at runtime.
Properties[edit]
Property group 'UIDynamicFieldProvider'[edit]
PersistentDataFields[edit]
Type: array<UIRoot.UIProviderScriptFieldValue>
Modifiers: protected, config
The list of data fields and values which were added to this data provider in the UI editor. These fields are copied into the RuntimeDataFields array when the provider is initialized.
RuntimeDataFields[edit]
Type: array<UIRoot.UIProviderScriptFieldValue>
Modifiers: protected, transient
The list of data fields currently supported by this data provider. When fields are added and removed during the game, those operations always occur using this array. Is never modified in the editor.
Internal variables[edit]
PersistentCollectionData[edit]
Type: Object.Map_Mirror{TMap< FName, TMap<FName,TArray<FString> > >}
Modifiers: protected, native, const
Contains the source data for all DATATYPE_Collection data fields which have their values stored in the PersistentDataFields array.
RuntimeCollectionData[edit]
Type: Object.Map_Mirror{TMap< FName, TMap<FName,TArray<FString> > >}
Modifiers: protected, native, const, transient
Contains the source data for all DATATYPE_Collection data fields which have their values stored in the PersistentDataFields array.
Default values[edit]
Property | Value |
---|---|
WriteAccessType | ACCESS_WriteAll |
Native functions[edit]
AddField[edit]
Adds a new data field to the list of supported fields.
Parameters:
- FieldName - the name to give the new field
- FieldType - the type of data field being added
- bPersistent - specify TRUE to add the field to the PersistentDataFields array as well.
- out_InsertPosition - allows the caller to find out where the element was inserted
Returns:
- TRUE if the field was successfully added to the list; FALSE if the a field with that name already existed or the specified name was invalid.
ClearCollectionValueArray[edit]
Removes all data values for a single collection data field.
Parameters:
- FieldName - the name of the data field associated with the data source collection being manipulated.
- bPersistent - specify TRUE to ensure that the PersistentCollectionData is used, even if it otherwise wouldn't be.
- CellTag - optional name of a subfield within the list of values for FieldName. if not specified, FieldName is used.
Returns:
- TRUE if the data values were successfully cleared or didn't exist in the first place; FALSE if they couldn't be removed.
ClearFields[edit]
Removes all data fields from this data provider.
Parameters:
- bReinitializeRuntimeFields - specify TRUE to reset the elements of the RuntimeDataFields array to match the elements in the PersistentDataFields array. Ignored in the editor.
Returns:
- TRUE indicates that all fields were removed successfully; FALSE otherwise.
FindCollectionValueIndex[edit]
Finds the index [into the array of values for FieldName] for a specific value.
Parameters:
- FieldName - the name of the data field associated with the data source collection being manipulated.
- ValueToFind - the value that should be found.
- bPersistent - specify TRUE to ensure that the PersistentCollectionData is used, even if it otherwise wouldn't be.
- CellTag - optional name of a subfield within the list of values for FieldName. if not specified, FieldName is used.
Returns:
- the index for the specified value, or INDEX_NONE if it couldn't be found.
FindFieldIndex[edit]
Finds the index into the DataFields array for the data field specified.
Parameters:
- FieldName - the name of the data field to search for
- bSearchPersistentFields - if TRUE, searches the PersistentDataFields array for the specified field; otherwise, searches the RuntimeDataFields array
- the - index into the DataFields array for the data field specified, or INDEX_NONE if it isn't in the array.
GetCollectionValue[edit]
Retrieves the value of an element in a collection data source array.
Parameters:
- FieldName - the name of the data field associated with the data source collection being manipulated.
- ValueIndex - the index [into the array of values for FieldName] of the value that should be retrieved.
- out_Value - receives the value of the collection data source element
- bPersistent - specify TRUE to ensure that the PersistentCollectionData is used, even if it otherwise wouldn't be.
- CellTag - optional name of a subfield within the list of values for FieldName. if not specified, FieldName is used.
Returns:
- TRUE if the value was successfully retrieved and copied to out_Value.
GetCollectionValueArray[edit]
Gets the data value source array for the specified data field.
Parameters:
- FieldName - the name of the data field the source data should be associated with.
- out_DataValueArray - receives the array of data values available for FieldName.
- bPersistent - specify TRUE to ensure that the PersistentCollectionData is used, even if it otherwise wouldn't be.
- CellTag - optional name of a subfield within the list of values for FieldName. if not specified, FieldName is used.
Returns:
- TRUE if the array containing possible values for the FieldName data field was successfully located and copied into the out_DataValueArray variable.
GetCollectionValueSchema[edit]
Gets the list of schema tags set for the data value source array stored for FieldName
Parameters:
- FieldName - the name of the data field the source data should be associated with.
- out_CellTagArray - the list of unique tags stored in the source array data for the specified data field name.
- bPersistent - specify TRUE to ensure that the PersistentCollectionData is used, even if it otherwise wouldn't be.
Returns:
- TRUE if the array containing possible values for the FieldName data field was successfully located and copied into the out_CellTagArray variable.
GetField[edit]
Gets the value of the data field specified.
Parameters:
- FieldName - the name of the data field to retrieve the value for
- out_Field - receives the value of the data field specified
Returns:
- TRUE if out_Field was successfully filled in with the value of the specified data field; FALSE if the data field doesn't exist in this data provider.
InitializeRuntimeFields[edit]
Copies the elements from the PersistentDataFields array into the RuntimeDataFields array. Should only be called once when the provider is initialized.
InsertCollectionValue[edit]
Inserts a new string into the list of values for the specified collection data field.
Parameters:
- FieldName - the name of the data field associated with the data source collection being manipulated.
- NewValue - the value to insert
- InsertIndex - the index [into the array of values for FieldName] to insert the new value, or INDEX_NONE to append the value to the end of the list.
- bPersistent - specify TRUE to ensure that the PersistentCollectionData is used, even if it otherwise wouldn't be.
- bAllowDuplicateValues - controls whether multiple elements containing the same value should be allowed in the data source collection. If FALSE is specified, and NewValue already exists in the collection source array, method return TRUE but it does not modify the array. If TRUE is specified, NewValue will be added anyway, resulting in multiple copies of NewValue existing in the array.
- CellTag - optional name of a subfield within the list of values for FieldName. if not specified, FieldName is used.
Returns:
- TRUE if the new value was successfully inserted into the collection data source for the specified field.
RemoveCollectionValue[edit]
Removes a value from the collection data source specified by FieldName.
Parameters:
- FieldName - the name of the data field associated with the data source collection being manipulated.
- ValueToRemove - the value that should be removed
- bPersistent - specify TRUE to ensure that the PersistentCollectionData is used, even if it otherwise wouldn't be.
- CellTag - optional name of a subfield within the list of values for FieldName. if not specified, FieldName is used.
Returns:
- TRUE if the value was successfully removed or didn't exist in the first place.
RemoveCollectionValueByIndex[edit]
Removes the value from the collection data source specified by FieldName located at ValueIndex.
Parameters:
- FieldName - the name of the data field associated with the data source collection being manipulated.
- ValueIndex - the index [into the array of values for FieldName] of the value that should be removed.
- bPersistent - specify TRUE to ensure that the PersistentCollectionData is used, even if it otherwise wouldn't be.
- CellTag - optional name of a subfield within the list of values for FieldName. if not specified, FieldName is used.
Returns:
- TRUE if the value was successfully removed; FALSE if ValueIndex wasn't valid or the value couldn't be removed.
RemoveField[edit]
Removes the data field that has the specified tag.
Parameters:
- FieldName - the name of the data field to remove from this data provider.
Returns:
- TRUE if the field was successfully removed from the list of supported fields or the field name wasn't in the list to begin with; FALSE if the name specified was invalid or the field couldn't be removed for some reason
ReplaceCollectionValue[edit]
Replaces the value in a collection data source with a different value.
Parameters:
- FieldName - the name of the data field associated with the data source collection being manipulated.
- CurrentValue - the value that will be replaced.
- NewValue - the value that will replace CurrentValue
- bPersistent - specify TRUE to ensure that the PersistentCollectionData is used, even if it otherwise wouldn't be.
- CellTag - optional name of a subfield within the list of values for FieldName. if not specified, FieldName is used.
Returns:
- TRUE if the old value was successfully replaced with the new value.
ReplaceCollectionValueByIndex[edit]
Replaces the value located at ValueIndex in a collection data source with a different value
Parameters:
- FieldName - the name of the data field associated with the data source collection being manipulated.
- ValueIndex - the index [into the array of values for FieldName] of the value that should be replaced.
- NewValue - the value that should replace the old value.
- bPersistent - specify TRUE to ensure that the PersistentCollectionData is used, even if it otherwise wouldn't be.
- CellTag - optional name of a subfield within the list of values for FieldName. if not specified, FieldName is used.
Returns:
- TRUE if the value was successfully replaced; FALSE if ValueIndex wasn't valid or the value couldn't be removed.
SavePersistentProviderData[edit]
Copies the values of all fields which exist in the PersistentDataFields array from the RuntimeDataFields array into the PersistentDataFields array and saves everything to the .ini.
SetCollectionValueArray[edit]
Sets the source data for a collection data field to the values specified. It is not necessary to add the field first (via AddField) in order to set the collection values.
Parameters:
- FieldName - the name of the data field the source data should be associated with.
- CollectionValues - the actual values that will be associated with FieldName.
- bClearExisting - specify TRUE to clear the existing collection data before adding the new values
- InsertIndex - the position to insert the new values (only relevant if bClearExisting is FALSE)
- bPersistent - specify TRUE to ensure that the values will be added to PersistentCollectionData, even if they otherwise wouldn't be.
- CellTag - optional name of a subfield within the list of values for FieldName. if not specified, FieldName is used.
Returns:
- TRUE if the collection data was applied successfully; FALSE if there was also already data for this collection data field [and bOverwriteExisting was FALSE] or the data couldn't otherwise
SetField[edit]
Sets the value for the data field specified.
Parameters:
- FieldName - the name of the data field to retrieve the value for
- FieldValue - the value to assign to the specified data field
- bChangeExistingOnly - controls what happens if there is no data field with the specified name in this data provider's list of fields; TRUE indicates that we should only set the value if the field already exists in the list; FALSE indicates that we should add a new element to the list if there are no existing fields with this name.
Returns:
- TRUE if the value was successfully applied to the field specified; FALSE otherwise.