IPropertyHandle

A handle to a property which is used to read and write the value without needing to handle Pre/PostEditChange, transactions, package modification A handle also is used to identify the property in detail customization interfaces

Windows
MacOS
Linux

Inheritance Hierarchy

TSharedFromThis

IPropertyHandle

References

Module

PropertyEditor

Header

/Engine/Source/Editor/PropertyEditor/Public/PropertyHandle.h

Include

#include "PropertyHandle.h"

Syntax

class IPropertyHandle : public TSharedFromThis< IPropertyHandle >

Remarks

A handle to a property which is used to read and write the value without needing to handle Pre/PostEditChange, transactions, package modification A handle also is used to identify the property in detail customization interfaces

Destructors

Name Description

Public function Virtual

~IPropertyHandle()

Functions

Name Description

Public function Const

void

 

AccessRawData

(
    TArray< const void* >& RawDat...
)

Public function

void

 

AccessRawData

(
    TArray< void* >& RawData
)

Accesses the raw data of this property. (Each pointer can be cast to the property data type)

Public function

TArray< TSha...

 

AddChildStructure

(
    TSharedRef< FStructOnScope > ChildS...
)

Adds a child structure

Public function

void

 

AddRestriction

(
    TSharedRef< const class FPropertyRe...
)

Adds a restriction to the possible values for this property.

Public function

TSharedPtr< ...

 

AsArray()

Returns this handle as an array if possible

Public function

TSharedPtr< ...

 

AsMap()

Public function

TSharedPtr< ...

 

AsSet()

Public function Const

bool

 

CanResetToDefault()

Returns whether or not the property can be set to default

Public function

void

 

ClearResetToDefaultCustomized()

Marks this property as not having a custom reset to default (useful when a widget customizing reset to default goes away)

Public function Const

TSharedRef< ...

 

CreateDefaultPropertyButtonWidgets()

Creates the default buttons which appear next to value widgets.

Public function Const

TSharedRef< ...

 

CreatePropertyNameWidget

(
    const FText& NameOverride,
    const FText& ToolTipOverride,
    bool bDisplayResetToDefault,
    bool bDisplayText,
    bool bDisplayThumbnail
)

Creates a name widget for this property

Public function Const

TSharedRef< ...

 

CreatePropertyValueWidget

(
    bool bDisplayDefaultPropertyButtons
)

Creates a value widget for this property

Public function Const

bool

 

DiffersFromDefault()

Public function Const

void

 

EnumerateConstRawData

(
    const EnumerateConstRawDataFuncRef ...
)

Public function

void

 

EnumerateRawData

(
    const EnumerateRawDataFuncRef& InR...
)

Return true to continue enumeration

Public function

void

 

ExecuteCustomResetToDefault

(
    const FResetToDefaultOverride& OnC...
)

Sets an override for this property's reset to default behavior

Public function Const

FString

 

GeneratePathToProperty()

Generates a path from the parent UObject class to this property

Public function

bool

 

GeneratePossibleValues

(
    TArray< TSharedPtr< FString > >& O...,
    TArray< FText >& OutToolTips,
    TArray< bool >& OutRestrictedItems
)

Generates a list of possible enum/class options for the property

Public function Const

bool

 

GenerateRestrictionToolTip

(
    const FString& Value,
    FText& OutTooltip
)

Generates a consistent tooltip describing this restriction for use in the editor.

Public function Const

bool

 

GetBoolMetaData

(
    const FName& Key
)

Find the metadata value associated with the key and return bool

Public function Const

TSharedPtr< ...

 

GetChildHandle

(
    FName ChildName,
    bool bRecurse
)

Gets a child handle of this handle.

Public function Const

TSharedPtr< ...

 

GetChildHandle

(
    uint32 Index
)

Gets a child handle of this handle. Useful for accessing properties in structs.

Public function Const

UClass *

 

GetClassMetaData

(
    const FName& Key
)

Find the metadata value associated with the key and return UClass*

Public function Const

FName

 

GetDefaultCategoryName()

Gets the category FName that a property is in at the default location defined by the class the property is in It does not handle the property being moved to another category during customization

Public function Const

FText

 

GetDefaultCategoryText()

Gets the category display name that a property is in at the default location defined by the class the property is in It does not handle the property being moved to another category during customization

Public function

FString

 

GetDocumentationExcerptName()

Public function

FString

 

GetDocumentationLink()

Public function Const

float

 

GetFloatMetaData

(
    const FName& Key
)

Find the metadata value associated with the key and return float

Public function Const

int32

 

GetIndexInArray()

Public function Const

const FStrin...

 

GetInstanceMetaData

(
    const FName& Key
)

Get metadata value for 'Key' for this property instance (as opposed to the class)

Public function Const

const TMap< ...

 

GetInstanceMetaDataMap()

Get metadata map for this property instance (as opposed to the class)

Public function Const

int32

 

GetIntMetaData

(
    const FName& Key
)

Find the metadata value associated with the key and return int32

Public function Const

TSharedPtr< ...

 

GetKeyHandle()

Public function Const

const FStrin...

 

GetMetaData

(
    const FName& Key
)

Find the metadata value associated with the key

Public function Const

FProperty &#...

 

GetMetaDataProperty()

Gets the property we should use to read meta-data

Public function Const

FPropertyAcc...

 

GetNumChildren

(
    uint32& OutNumChildren
)

Public function Const

uint32

 

GetNumOuterObjects()

Public function Const

int32

 

GetNumPerObjectValues()

Gets the number of objects that this handle is editing

Public function Const

void

 

GetOuterObjects

(
    TArray< UObject* >& OuterObje...
)

Get the objects that contain this property

Public function Const

void

 

GetOuterPackages

(
    TArray< UPackage* >& OuterPac...
)

Get the packages that contain this property

Public function Const

TSharedPtr< ...

 

GetParentHandle()

Public function Const

FPropertyAcc...

 

GetPerObjectValue

(
    const int32 ObjectIndex,
    FString& OutObjectValue
)

Gets a value for the specified object that this handle is editing

Public function Const

FPropertyAcc...

 

GetPerObjectValues

(
    TArray< FString >& OutPerObjectVal...
)

Gets a unique value for each object this handle is editing

Public function Const

FProperty &#...

 

GetProperty()

Gets the property being edited

Public function Const

const FField...

 

GetPropertyClass()

Gets the class of the property being edited

Public function Const

FText

 

GetPropertyDisplayName()

Public function Const

FText

 

GetResetToDefaultLabel()

Public function Const

FText

 

GetToolTipText()

Gets the property tool tip text.

Public function Const

FPropertyAcc...

 

GetValue

(
    FAssetData& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    const UObject*& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    FProperty*& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    float& OutValue
)

Gets the typed value of a property.

Public function Const

FPropertyAcc...

 

GetValue

(
    double& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    bool& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    int8& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    int16& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    uint8& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    int64& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    uint16& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    uint32& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    uint64& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    FString& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    FText& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    FName& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    FVector& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    FVector2D& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    FVector4& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    FQuat& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    int32& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    const FProperty*& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    UObject*& OutValue
)

Public function Const

FPropertyAcc...

 

GetValue

(
    FRotator& OutValue
)

Public function Const

FPropertyAcc...

 

GetValueAsDisplayString

(
    FString& OutValue,
    EPropertyPortFlags PortFlags
)

Gets the value formatted as a string, possibly using an alternate form more suitable for display in the UI

Public function Const

FPropertyAcc...

 

GetValueAsDisplayText

(
    FText& OutValue
)

Gets the value formatted as a string, as Text, possibly using an alternate form more suitable for display in the UI

Public function Const

FPropertyAcc...

 

GetValueAsFormattedString

(
    FString& OutValue,
    EPropertyPortFlags PortFlags
)

Gets the value formatted as a string.

Public function Const

FPropertyAcc...

 

GetValueAsFormattedText

(
    FText& OutValue
)

Gets the value formatted as a string, as Text.

Public function Const

uint8 *

 

GetValueBaseAddress

(
    uint8* Base
)

Calculates the memory address for the data associated with this item's value.

Public function Const

FPropertyAcc...

 

GetValueData

(
    void*& OutAddress
)

Public function

bool

 

HasDocumentation()

Public function Const

bool

 

HasMetaData

(
    const FName& Key
)

Determines if the property has any metadata associated with the key

Public function Const

bool

 

IsCustomized()

Public function Const

bool

 

IsDisabled

(
    const FString& Value,
    TArray< FText >& OutReasons
)

Tests if a value is disabled for this property.

Public function Const

bool

 

IsDisabled

(
    const FString& Value
)

Tests if a value is disabled for this property

Public function Const

bool

 

IsEditable()

Public function Const

bool

 

IsEditConst()

Public function Const

bool

 

IsHidden

(
    const FString& Value
)

Tests if a value is hidden for this property

Public function Const

bool

 

IsHidden

(
    const FString& Value,
    TArray< FText >& OutReasons
)

Tests if a value is hidden for this property.

Public function Const

bool

 

IsResetToDefaultCustomized()

Public function Const

bool

 

IsRestricted

(
    const FString& Value
)

Tests if a value is restricted for this property

Public function Const

bool

 

IsRestricted

(
    const FString& Value,
    TArray< FText >& OutReasons
)

Tests if a value is restricted for this property.

Public function Const

bool

 

IsValidHandle()

Public function

void

 

MarkHiddenByCustomization()

Marks this property has hidden by customizaton (will not show up in the default place)

Public function

void

 

MarkResetToDefaultCustomized

(
    bool bCustomized
)

Marks this property has having a custom reset to default (reset to default will not show up in the default place)

Public function

void

 

NotifyFinishedChangingProperties()

Called to manually notify root objects that this property has finished changing This does not need to be called when SetValue functions are used since it will be called automatically

Public function

void

 

NotifyPostChange

(
    EPropertyChangeType::Type ChangeTyp...
)

Called to manually notify root objects that this property has changed This does not need to be called when SetValue functions are used since it will be called automatically

Public function

void

 

NotifyPreChange()

Called to manually notify root objects that this property is about to change This does not need to be called when SetValue functions are used since it will be called automatically

Public function

void

 

ResetToDefault()

Resets the value to its default

Public function

void

 

SetIgnoreValidation

(
    bool bInIgnore
)

Sets whether or not data validation should occur for this property and all of its children.

Public function

void

 

SetInstanceMetaData

(
    const FName& Key,
    const FString& Value
)

Set metadata value for 'Key' to 'Value' on this property instance (as opposed to the class)

Public function

FPropertyAcc...

 

SetObjectValueFromSelection()

Sets the object value from the current editor selection Will fail if this handle isn't an object property

Public function

void

 

SetOnChildPropertyValueChanged

(
    const FSimpleDelegate& InOnChildPr...
)

Sets a delegate to call when the value of the property of a child is changed

Public function

void

 

SetOnChildPropertyValuePreChange

(
    const FSimpleDelegate& InOnChildPr...
)

Sets a delegate to call when the value of the property of a child is about to be changed

Public function

void

 

SetOnPropertyResetToDefault

(
    const FSimpleDelegate& InOnPropert...
)

Sets a delegate to call when the property is reset to default

Public function

void

 

SetOnPropertyValueChanged

(
    const FSimpleDelegate& InOnPropert...
)

Sets a delegate to call when the value of the property is changed

Public function

void

 

SetOnPropertyValuePreChange

(
    const FSimpleDelegate& InOnPropert...
)

Sets a delegate to call when the value of the property is about to be changed

Public function

FPropertyAcc...

 

SetPerObjectValue

(
    const int32 ObjectIndex,
    const FString& ObjectValue,
    EPropertyValueSetFlags::Type Flags
)

Sets a value on the specified object that this handle is editing

Public function

FPropertyAcc...

 

SetPerObjectValues

(
    const TArray< FString >& PerObject...,
    EPropertyValueSetFlags::Type Flags
)

Sets a unique value for each object this handle is editing

Public function

void

 

SetPropertyDisplayName

(
    FText InDisplayName
)

Allows the handle to override the node's display name

Public function

void

 

SetToolTipText

(
    const FText& ToolTip
)

Sets the tooltip shown for this property

Public function

FPropertyAcc...

 

SetValue

(
    const FName& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const FVector& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const FVector2D& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const FVector4& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const FQuat& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const FAssetData& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    UObject*const& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const UObject*const& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const FText& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const TCHAR* InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const FRotator& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const FString& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const uint8& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const uint32& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const uint16& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const int64& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const int32& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const int16& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const int8& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const bool& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const double& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const float& InValue,
    EPropertyValueSetFlags::Type Flags
)

Sets the typed value of a property.

Public function

FPropertyAcc...

 

SetValue

(
    FProperty*const& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const uint64& InValue,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValue

(
    const FProperty*const& InValu...,
    EPropertyValueSetFlags::Type Flags
)

Public function

FPropertyAcc...

 

SetValueFromFormattedString

(
    const FString& InValue,
    EPropertyValueSetFlags::Type Flags
)

Sets the value formatted as a string.

Typedefs

Name

Description

EnumerateConstRawDataFuncRef

Return true to continue enumeration

EnumerateRawDataFuncRef

Enumerate the raw data of this property. (Each pointer can be cast to the property data type)

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss