![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include <TypedElementAttributeBinding.h>
Public Member Functions | |
| TYPEDELEMENTFRAMEWORK_API | FAttributeBinder (RowHandle InTargetRow) |
| TYPEDELEMENTFRAMEWORK_API | FAttributeBinder (RowHandle InTargetRow, ICoreProvider *InDataStorage) |
| template<typename AttributeType , TDataColumnType ColumnType> | |
| TAttribute< AttributeType > | BindData (AttributeType ColumnType::*InVariable, const AttributeType &InDefaultValue=AttributeType()) |
| template<typename AttributeType , TDynamicColumnTemplate ColumnType> | |
| TAttribute< AttributeType > | BindData (const FName &InIdentifier, AttributeType ColumnType::*InVariable, const AttributeType &InDefaultValue=AttributeType()) |
| template<typename AttributeType , typename DataType , TDataColumnType ColumnType> | |
| TAttribute< AttributeType > | BindData (DataType ColumnType::*InVariable, TFunction< AttributeType(const DataType &)> InConverter, const DataType &InDefaultValue=DataType()) |
| template<typename AttributeType , typename DataType , TDynamicColumnTemplate ColumnType> | |
| TAttribute< AttributeType > | BindData (const FName &InIdentifier, DataType ColumnType::*InVariable, TFunction< AttributeType(const DataType &)> InConverter, const DataType &InDefaultValue=DataType()) |
| template<typename DataType , TDataColumnType ColumnType, typename FunctionType > requires DataStorage::Private::AttributeBinderInvocable<FunctionType, DataType> | |
| auto | BindData (DataType ColumnType::*InVariable, FunctionType &&InConverter, const DataType &InDefaultValue=DataType()) |
| template<typename DataType , TDynamicColumnTemplate ColumnType, typename FunctionType > requires DataStorage::Private::AttributeBinderInvocable<FunctionType, DataType> | |
| auto | BindData (const FName &InIdentifier, DataType ColumnType::*InVariable, FunctionType &&InConverter, const DataType &InDefaultValue=DataType()) |
| template<typename AttributeType , TDataColumnType ColumnType> | |
| TAttribute< AttributeType > | BindColumn (TFunction< AttributeType(const ColumnType &)> InConverter) |
| template<TDataColumnType ColumnType, typename FunctionType > requires DataStorage::Private::AttributeBinderColumnInvocable<FunctionType, ColumnType> | |
| auto | BindColumn (FunctionType &&InConverter) |
| template<typename AttributeType > | |
| TAttribute< AttributeType > | BindColumnData (const TWeakObjectPtr< const UScriptStruct > &InColumnType, const TFunction< AttributeType(const TWeakObjectPtr< const UScriptStruct > &, const void *)> &InConverter) |
| template<typename FunctionType > requires DataStorage::Private::AttributeBinderColumnDataInvocable<FunctionType> | |
| auto | BindColumnData (const TWeakObjectPtr< const UScriptStruct > &InColumnType, FunctionType &&InConverter) |
| template<typename InRetValType , typename... ParamTypes, TDataColumnType ColumnType> | |
| TDelegate< InRetValType(ParamTypes...)> | BindEvent (TDelegate< InRetValType(ParamTypes...)> ColumnType::*InVariable) |
| template<typename InRetValType , typename... ParamTypes, TDynamicColumnTemplate ColumnType> | |
| TDelegate< InRetValType(ParamTypes...)> | BindEvent (const FName &InIdentifier, TDelegate< InRetValType(ParamTypes...)> ColumnType::*InVariable) |
| template<TDataColumnType ColumnType> | |
| TAttribute< FText > | BindText (FString ColumnType::*InFStringVariable) |
| template<TDynamicColumnTemplate ColumnType> | |
| TAttribute< FText > | BindText (const FName &InIdentifier, FString ColumnType::*InFStringVariable) |
| template<TDataColumnType ColumnType> | |
| TAttribute< FText > | BindText (FName ColumnType::*InFNameVariable) |
| template<TDynamicColumnTemplate ColumnType> | |
| TAttribute< FText > | BindText (const FName &InIdentifier, FName ColumnType::*InFNameVariable) |
| TYPEDELEMENTFRAMEWORK_API FTextAttributeFormatted | BindTextFormat (FTextFormat Format) const |
Builder class that can be used as a shorthand to bind data inside a TEDS row, column pair to a TAttribute so the attribute updates if the data in the column is changed.
Usage Example:
FAttributeBinder Binder(RowHandle); TAttribute<int> TestAttribute(Binder.BindData(&FTestColumnInt::TestInt))
| UE::Editor::DataStorage::FAttributeBinder::FAttributeBinder | ( | RowHandle | InTargetRow | ) |
| UE::Editor::DataStorage::FAttributeBinder::FAttributeBinder | ( | RowHandle | InTargetRow, |
| ICoreProvider * | InDataStorage | ||
| ) |
| auto UE::Editor::DataStorage::FAttributeBinder::BindColumn | ( | FunctionType && | InConverter | ) |
Overload for the BindColumn to accept lambdas instead of TFunctions
| InConverter | Conversion function to convert from DataType -> AttributeType |
| TAttribute< AttributeType > UE::Editor::DataStorage::FAttributeBinder::BindColumn | ( | TFunction< AttributeType(const ColumnType &)> | InConverter | ) |
Bind a whole TEDS column to a slate attribute (instead of a single member variable). This allows you to derive an attribute from multiple members of a TEDS column
| InConverter | Conversion function to convert from ColumnType -> AttributeType |
Example: const TAttribute TestIntAttribute(Binder.BindColumn<FTestColumnInt>([](const FTestColumnInt& Column) { return Column.TestInt1 + Column.TestInt2; }
| TAttribute< AttributeType > UE::Editor::DataStorage::FAttributeBinder::BindColumnData | ( | const TWeakObjectPtr< const UScriptStruct > & | InColumnType, |
| const TFunction< AttributeType(const TWeakObjectPtr< const UScriptStruct > &, const void *)> & | InConverter | ||
| ) |
Bind a whole TEDS column to a slate attribute (instead of a single member variable) using the column's typeinfo.
| InColumnType | The typeinfo of the column (e.g FTestIntColumn::StaticStruct) |
| InConverter | Conversion function to convert from const void* ColumnData -> AttributeType |
Example: const TAttribute TestIntAttribute(Binder.BindColumnData(FTestColumnInt::StaticStruct(), [](const TWeakObjectPtr<const UScriptStruct>& ColumnType, const void* ColumnData) { return static_cast<const FTestColumnInt*>(ColumnData)->TestInt; }
| auto UE::Editor::DataStorage::FAttributeBinder::BindColumnData | ( | const TWeakObjectPtr< const UScriptStruct > & | InColumnType, |
| FunctionType && | InConverter | ||
| ) |
Overload for the BindColumnData to accept lambdas instead of TFunctions
| InConverter | Conversion function to convert from const void* ColumnData -> AttributeType |
| TAttribute< AttributeType > UE::Editor::DataStorage::FAttributeBinder::BindData | ( | AttributeType ColumnType::* | InVariable, |
| const AttributeType & | InDefaultValue = AttributeType() |
||
| ) |
Bind a specific data member inside a TEDS column to an attribute of the same type as the data
| InVariable | The data member inside a column to be bound |
| InDefaultValue | The default value to be used when the column isn't present on a row |
Example: FAttributeBinder Binder(RowHandle); TAttribute<FString> TestAttribute(Binder.BindData(&FTypedElementLabelColumn::Label))
| TAttribute< AttributeType > UE::Editor::DataStorage::FAttributeBinder::BindData | ( | const FName & | InIdentifier, |
| AttributeType ColumnType::* | InVariable, | ||
| const AttributeType & | InDefaultValue = AttributeType() |
||
| ) |
Bind a specific data member inside a TEDS column to an attribute of the same type as the data
| InVariable | The data member inside a column to be bound |
| InDefaultValue | The default value to be used when the column isn't present on a row |
| InIdentifier | The identifier for this dynamic column |
Example: FAttributeBinder Binder(RowHandle); TAttribute<FString> TestAttribute(Binder.BindData(&FTypedElementLabelColumn::Label, FName(TEXT("Id"))))
| auto UE::Editor::DataStorage::FAttributeBinder::BindData | ( | const FName & | InIdentifier, |
| DataType ColumnType::* | InVariable, | ||
| FunctionType && | InConverter, | ||
| const DataType & | InDefaultValue = DataType() |
||
| ) |
Overload for the conversion binder to accept lambdas instead of TFunctions
| InVariable | The data member inside a column to be bound |
| InConverter | Conversion function to convert from DataType -> AttributeType |
| InDefaultValue | The default value to be used when the column isn't present on a row\ |
| InIdentifier | The identifier for this column if it is a dynamic column, NAME_None if it is not a dynamic column |
| TAttribute< AttributeType > UE::Editor::DataStorage::FAttributeBinder::BindData | ( | const FName & | InIdentifier, |
| DataType ColumnType::* | InVariable, | ||
| TFunction< AttributeType(const DataType &)> | InConverter, | ||
| const DataType & | InDefaultValue = DataType() |
||
| ) |
Bind a specific data member inside a TEDS column to an attribute of a different type than the data by providing a conversion function NOTE: the default value is not the actual attribute type but rather the data type in the column and it gets passed to the conversion function
| InVariable | The data member inside a column to be bound |
| InConverter | Conversion function to convert from DataType -> AttributeType |
| InIdentifier | The identifier for this column if it is a dynamic column |
| InDefaultValue | The default value to be used when the column isn't present on a row |
Example: UE::Editor::DataStorage::FAttributeBinder Binder(RowHandle); TAttribute<FText> TestAttribute(Binder.BindData(&FTypedElementLabelColumn::Label), [](const FString& Data) { return FText::FromString(Data); } ));
| auto UE::Editor::DataStorage::FAttributeBinder::BindData | ( | DataType ColumnType::* | InVariable, |
| FunctionType && | InConverter, | ||
| const DataType & | InDefaultValue = DataType() |
||
| ) |
Overload for the conversion binder to accept lambdas instead of TFunctions
| InVariable | The data member inside a column to be bound |
| InConverter | Conversion function to convert from DataType -> AttributeType |
| InDefaultValue | The default value to be used when the column isn't present on a row\ |
| TAttribute< AttributeType > UE::Editor::DataStorage::FAttributeBinder::BindData | ( | DataType ColumnType::* | InVariable, |
| TFunction< AttributeType(const DataType &)> | InConverter, | ||
| const DataType & | InDefaultValue = DataType() |
||
| ) |
Bind a specific data member inside a TEDS column to an attribute of a different type than the data by providing a conversion function NOTE: the default value is not the actual attribute type but rather the data type in the column and it gets passed to the conversion function
| InVariable | The data member inside a column to be bound |
| InConverter | Conversion function to convert from DataType -> AttributeType |
| InDefaultValue | The default value to be used when the column isn't present on a row |
Example: UE::Editor::DataStorage::FAttributeBinder Binder(RowHandle); TAttribute<FText> TestAttribute(Binder.BindData(&FTypedElementLabelColumn::Label), [](const FString& Data) { return FText::FromString(Data); } ));
| TDelegate< InRetValType(ParamTypes...)> UE::Editor::DataStorage::FAttributeBinder::BindEvent | ( | const FName & | InIdentifier, |
| TDelegate< InRetValType(ParamTypes...)> ColumnType::* | InVariable | ||
| ) |
| TDelegate< InRetValType(ParamTypes...)> UE::Editor::DataStorage::FAttributeBinder::BindEvent | ( | TDelegate< InRetValType(ParamTypes...)> ColumnType::* | InVariable | ) |
Bind a delegate inside a TEDS column to a SLATE_EVENT macro on a widget
| InVariable | The delegate inside the TEDS column |
| InIdentifier | The identifier for this column if it is a dynamic column, NAME_None if it is not a dynamic column |
| TAttribute< FText > UE::Editor::DataStorage::FAttributeBinder::BindText | ( | const FName & | InIdentifier, |
| FName ColumnType::* | InFNameVariable | ||
| ) |
| TAttribute< FText > UE::Editor::DataStorage::FAttributeBinder::BindText | ( | const FName & | InIdentifier, |
| FString ColumnType::* | InFStringVariable | ||
| ) |
| TAttribute< FText > UE::Editor::DataStorage::FAttributeBinder::BindText | ( | FName ColumnType::* | InFNameVariable | ) |
Directly bind an FName member in a TEDS column to an FText attribute as a shortcut
| InFNameVariable | The FName variable |
| InIdentifier | The identifier for this column if it is a dynamic column, NAME_None if it is not a dynamic column |
| TAttribute< FText > UE::Editor::DataStorage::FAttributeBinder::BindText | ( | FString ColumnType::* | InFStringVariable | ) |
Directly bind an FString member in a TEDS column to an FText attribute as a shortcut
| InFStringVariable | The FString variable |
| InIdentifier | The identifier for this column if it is a dynamic column, NAME_None if it is not a dynamic column |
| FTextAttributeFormatted UE::Editor::DataStorage::FAttributeBinder::BindTextFormat | ( | FTextFormat | Format | ) | const |
Composite a FText attribute using a format string and named arguments bound to TEDS columns. Arguments are passed in using the .Arg(...) function. Each argument starts with the name of the argument in the format string followed by one of the following options:
| Format | The format to use composite a string together. |