UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SlateAttributeDefinition.inl
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "Misc/Attribute.h"
7#include "Templates/EqualTo.h"
9
10#include <type_traits>
11
12
13class SWidget;
14
17{
23
24
27 {
28 Member = 0, // Member of a SWidget (are not allowed to move).
29 Managed = 1, // External to the SWidget, global variable or member that can moved.
30 Contained = 2, // Inside a FSlot or other container that use dynamic memory (always attached to one and only one SWidget).
31 };
32
33
34 class ISlateAttributeGetter;
35 template<typename ContainerType, typename ObjectType, typename InvalidationReasonPredicate, typename FComparePredicate, ESlateAttributeType AttributeType>
36 struct TSlateAttributeBase;
37 template<typename AttributeMemberType>
38 struct TSlateMemberAttributeRef;
39
40
43 {
44 public:
45 virtual SWidget& GetContainerWidget() const = 0;
46 virtual FName GetContainerName() const = 0;
47 virtual uint32 GetContainerSortOrder() const = 0;
48
49 protected:
52 };
53
54
80
81
84 {
85 protected:
89 SLATECORE_API bool ProtectedIsBound(const SWidget& Widget, ESlateAttributeType AttributeType) const;
93
94 //~ For Member
97
98 //~ For Manage
100
101 //~ For Contain
109 };
110
111} // SlateAttributePrivate
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
return true
Definition ExternalRpcRegistry.cpp:601
EInvalidateWidgetReason
Definition InvalidateWidgetReason.h:14
uint8_t uint8
Definition binka_ue_file_header.h:8
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition IDelegateInstance.h:14
Definition NameTypes.h:617
Definition SWidget.h:165
Definition SlateAttributeDefinition.inl:43
SLATECORE_API void RemoveContainerWidget(SWidget &Widget)
Definition SlateAttribute.cpp:35
virtual SWidget & GetContainerWidget() const =0
virtual uint32 GetContainerSortOrder() const =0
SLATECORE_API void UpdateContainerSortOrder(SWidget &Widget)
Definition SlateAttribute.cpp:41
Definition SlateAttributeDefinition.inl:57
virtual void SetAttribute(FSlateAttributeBase &)=0
virtual const FSlateAttributeBase & GetAttribute() const =0
virtual FDelegateHandle GetDelegateHandle() const =0
virtual FUpdateAttributeResult UpdateAttribute(const SWidget &Widget)=0
Definition UniquePtr.h:107
Definition SlateAttribute.cpp:11
ESlateAttributeType
Definition SlateAttributeDefinition.inl:27
@ false
Definition radaudio_common.h:23
Definition SlateAttribute.h:181
Definition SlateAttributeDefinition.inl:84
SLATECORE_API FDelegateHandle ProtectedFindGetterHandle(const SWidget &Widget, ESlateAttributeType AttributeType) const
Definition SlateAttribute.cpp:134
SLATECORE_API bool ProtectedIsImplemented(const SWidget &Widget) const
Definition SlateAttribute.cpp:69
SLATECORE_API bool ProtectedIsWidgetInDestructionPath(SWidget *Widget) const
Definition SlateAttribute.cpp:50
SLATECORE_API void ProtectedRegisterAttribute(SWidget &Widget, ESlateAttributeType AttributeType, TUniquePtr< ISlateAttributeGetter > &&Wrapper)
Definition SlateAttribute.cpp:84
SLATECORE_API void ProtectedUpdateNow(SWidget &Widget, ESlateAttributeType AttributeType)
Definition SlateAttribute.cpp:148
SLATECORE_API ISlateAttributeGetter * ProtectedFindGetter(const SWidget &Widget, ESlateAttributeType AttributeType) const
Definition SlateAttribute.cpp:120
SLATECORE_API bool ProtectedIsBound(const SWidget &Widget, ESlateAttributeType AttributeType) const
Definition SlateAttribute.cpp:106
SLATECORE_API void ProtectedMoveAttribute(SWidget &Widget, ESlateAttributeType AttributeType, const FSlateAttributeBase *Other)
Definition SlateAttribute.cpp:162
SLATECORE_API void ProtectedUnregisterAttribute(SWidget &Widget, ESlateAttributeType AttributeType) const
Definition SlateAttribute.cpp:76
SLATECORE_API void ProtectedInvalidateWidget(SWidget &Widget, ESlateAttributeType AttributeType, EInvalidateWidgetReason InvalidationReason) const
Definition SlateAttribute.cpp:92
Definition SlateAttributeDefinition.inl:20
static constexpr EInvalidateWidgetReason GetInvalidationReason(const SWidget &)
Definition SlateAttributeDefinition.inl:21
EInvalidateWidgetReason InvalidationReason
Definition SlateAttributeDefinition.inl:69
FUpdateAttributeResult(EInvalidateWidgetReason InInvalidationReason)
Definition SlateAttributeDefinition.inl:61
bool bInvalidationRequested
Definition SlateAttributeDefinition.inl:70
FUpdateAttributeResult()
Definition SlateAttributeDefinition.inl:65