5#include "CoreMinimal.h"
6#include "UObject/Object.h"
7#include "Rendering/DrawElements.h"
8#include "Styling/WidgetStyle.h"
9#include "Styling/SlateBrush.h"
10#include "Widgets/SNullWidget.h"
11#include "Types/SlateEnums.h"
12#include "ComponentDecorator.generated.h"
16class UComponentDecorator_Animation;
44 virtual void Initialize(TObjectPtr<ULayoutComponent> Component);
47 virtual void EditorInitialize() {}
48 virtual FName GetStyleSetName() {
return FName(
""); }
49 virtual TSharedRef<SWidget> GetEditorWidget();
50 virtual void PostEditChangeProperty(
struct FPropertyChangedEvent& PropertyChangedEvent)
override;
52 virtual void SynchronizeProperties();
57 bool IsInGroup()
const;
62 TSharedRef<SWidget> GetWidget(
const bool bForceReconstruct =
true);
65 virtual TSharedRef<SWidget> CreateWidgetInstance();
74 TObjectPtr<UComponentDecoratorGroup> GetGroup()
const;
77 bool EjectFromParent();
81 FVector2D
GetSize()
const {
return Size; }
83 UFUNCTION(Category=
"Decorator", BlueprintCallable, BlueprintPure)
84 FVector2D GetAbsoluteSize()
const;
86 UFUNCTION(Category=
"Decorator", BlueprintCallable, BlueprintPure)
87 virtual float GetMaxHorizontalSize(
bool bRecursive =
false)
const;
89 UFUNCTION(Category=
"Decorator", BlueprintCallable, BlueprintPure)
90 virtual float GetMaxVerticalSize(
bool bRecursive =
false)
const;
93 UFUNCTION(Category=
"Decorator", BlueprintCallable, BlueprintPure)
97 UFUNCTION(Category=
"Decorator", BlueprintCallable, BlueprintPure)
101 UFUNCTION(Category=
"Decorator", BlueprintCallable, BlueprintPure)
106 UFUNCTION(Category=
"Decorator", BlueprintCallable)
107 virtual void SetBrushResource(UObject* Resource);
110 UFUNCTION(Category=
"Decorator", BlueprintCallable)
111 virtual void SetBrush(
const FSlateBrush InBrush);
113 UFUNCTION(Category=
"Decorator", BlueprintCallable)
114 virtual void SetBrushOpacity(
const float Value);
117 UFUNCTION(Category=
"Decorator", BlueprintCallable)
118 virtual void SetSize(
const FVector2D Value);
121 UFUNCTION(Category=
"Decorator", BlueprintCallable)
122 virtual void SetOffset(FVector2D NewOffset);
125 UFUNCTION(Category=
"Decorator", BlueprintCallable)
126 virtual void SetRotation(
float Angle);
129 UFUNCTION(Category=
"Decorator", BlueprintCallable)
130 virtual void SetDrawType(
const EDrawType NewType);
133 UFUNCTION(Category=
"Decorator", BlueprintCallable)
134 virtual float AddRotationDelta(
float Delta);
138 UFUNCTION(Category=
"Decorator", BlueprintCallable)
139 virtual UMaterialInstanceDynamic* GetDynamicMaterialInstance();
142 UFUNCTION(Category=
"Decorator", BlueprintCallable)
143 virtual void ShowDecorator();
146 UFUNCTION(Category=
"Decorator", BlueprintCallable)
147 virtual void HideDecorator();
150 UFUNCTION(Category=
"Decorator", BlueprintCallable)
151 virtual bool IsVisible()
const;
154 virtual void HandleOnPressEvent(
const FGeometry& ComponentGeometry,
const FGeometry& LayoutGeometry,
const FPointerEvent& PointerEvent);
155 virtual void HandleOnReleaseEvent(
const FGeometry& ComponentGeometry,
const FGeometry& LayoutGeometry,
const FPointerEvent& PointerEvent);
159 void UpdateRenderTransform()
const;
207 TArray<TObjectPtr<UComponentDecorator_Animation>>
Animations;
EDrawType
Definition ComponentDecorator.h:20
@ Both
Definition ComponentDecorator.h:28
@ Pressed
Definition ComponentDecorator.h:22
@ Released
Definition ComponentDecorator.h:25
BlueprintType
Definition ComponentDecorator_Animation.h:40
Definition ComponentDecoratorGroup.h:14
BlueprintReadOnly TEnumAsByte< EHorizontalAlignment > HorizontalAlignment
Definition ComponentDecorator.h:200
BlueprintPure FSlateBrush GetBrush() const
Definition ComponentDecorator.h:102
virtual void BeginDestroy() override
Definition ComponentDecorator.cpp:35
TSharedPtr< SWidget > DecoratorWidget
Definition ComponentDecorator.h:218
uint8 bIsVisible
Definition ComponentDecorator.h:210
BlueprintPure FVector2D GetSize() const
Definition ComponentDecorator.h:81
BlueprintReadOnly FVector2D Offset
Definition ComponentDecorator.h:183
BlueprintReadOnly FSlateBrush Brush
Definition ComponentDecorator.h:169
const TObjectPtr< ULayoutComponent > & GetOwner() const
Definition ComponentDecorator.h:72
meta
Definition ComponentDecorator.h:178
friend class FTouchInterfaceLayoutEditor
Definition ComponentDecorator.h:221
TObjectPtr< ULayoutComponent > Owner
Definition ComponentDecorator.h:216
virtual void Initialize(TObjectPtr< ULayoutComponent > Component)
Definition ComponentDecorator.cpp:56
BlueprintPure float GetRotation() const
Definition ComponentDecorator.h:98
BlueprintPure FVector2D GetOffset() const
Definition ComponentDecorator.h:94
virtual bool CanAcceptChildren()
Definition ComponentDecorator.h:55
EditAnywhere
Definition ComponentDecorator.h:164
UComponentDecorator()
Definition ComponentDecorator.cpp:19
uint8 bGeneratedByLayoutComponentLogic
Definition ComponentDecorator.h:213
Category
Definition ComponentDecorator.h:80
BlueprintReadOnly EDrawType DrawType
Definition ComponentDecorator.h:191
BlueprintReadOnly float Rotation
Definition ComponentDecorator.h:187
friend class FTouchInterfaceDesignerEditorMenuExtender
Definition ComponentDecorator.h:222
BlueprintReadOnly uint8 bStartHidden
Definition ComponentDecorator.h:165
BlueprintCallable
Definition ComponentDecorator.h:80
Instanced TArray< TObjectPtr< UComponentDecorator_Animation > > Animations
Definition ComponentDecorator.h:207
BlueprintReadOnly
Definition ComponentDecorator.h:178
BlueprintReadOnly int32 ZOrder
Definition ComponentDecorator.h:196
BlueprintReadOnly TEnumAsByte< EVerticalAlignment > VerticalAlignment
Definition ComponentDecorator.h:203
Definition LayoutComponent.h:94