UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UserWidget.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_4
6#include "CoreMinimal.h"
7#endif //UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_4
12#include "Styling/SlateColor.h"
13#include "Layout/Geometry.h"
14#include "Input/CursorReply.h"
15#include "Input/Events.h"
16#include "Input/Reply.h"
17#include "Widgets/SWidget.h"
19#include "Layout/Margin.h"
21#include "Components/Widget.h"
23#include "Engine/World.h"
25#include "Engine/LocalPlayer.h"
27#include "Logging/MessageLog.h"
28#include "Stats/Stats.h"
29#include "EngineStats.h"
30#include "SlateGlobals.h"
34#include "UserWidget.generated.h"
35
36class Error;
39class UTexture2D;
44class UWidgetTree;
45class UNamedSlot;
46class UUserWidget;
48
51{
53 Play,
55 PlayTo,
57 Forward,
59 Reverse,
61 Stop,
63 Pause,
65 None,
66};
67
70{
74 Yes,
76 No
77};
78
82USTRUCT()
84{
86
87
89 TObjectPtr<UWidgetAnimation> WidgetAnimation;
90
93
95 TOptional<float> StartAtTime;
96
98 TOptional<float> EndAtTime;
99
101 TOptional<int32> NumLoopsToPlay;
102
105
107 TOptional<float> PlaybackSpeed;
108
110 TOptional<bool> bRestoreState;
111
113 : WidgetAnimation(nullptr)
114 , TransitionMode(EQueuedWidgetAnimationMode::None)
115 {}
116};
117
119UENUM()
121{
123 Never = 0,
124
130 Auto,
131};
132
134UENUM(BlueprintType)
136{
137 Started,
139};
140
142USTRUCT()
144{
146
147public:
148
150 : Animation(nullptr)
151 , Delegate()
152 , AnimationEvent(EWidgetAnimationEvent::Started)
153 , UserTag(NAME_None)
154 {
155 }
156
158 UPROPERTY()
160
162 UPROPERTY()
164
166 UPROPERTY()
167 EWidgetAnimationEvent AnimationEvent;
168
170 UPROPERTY()
171 FName UserTag;
172};
173
174
179USTRUCT(BlueprintType)
181{
183
184public:
185
188
190 : AllottedGeometry(InAllottedGeometry)
191 , MyCullingRect(InMyCullingRect)
192 , OutDrawElements(InOutDrawElements)
193 , LayerId(InLayerId)
194 , WidgetStyle(InWidgetStyle)
195 , bParentEnabled(bInParentEnabled)
196 , MaxLayer(InLayerId)
197 {
198 }
199
202 {
203 FPaintContext* Ptr = this;
204 Ptr->~FPaintContext();
205 new(Ptr) FPaintContext(Other.AllottedGeometry, Other.MyCullingRect, Other.OutDrawElements, Other.LayerId, Other.WidgetStyle, Other.bParentEnabled);
206 Ptr->MaxLayer = Other.MaxLayer;
207 }
208
209public:
210
217
219};
220
221USTRUCT()
223{
225
226public:
227
229 : Name(NAME_None)
230 , Content(nullptr)
231 { }
232
233 UPROPERTY()
235
236#if WITH_EDITORONLY_DATA
237 // GUID of the NamedSlot is used as a secondary identifier to find a binding in case the name of NamedSlot has changed.
238 UPROPERTY()
239 FGuid Guid;
240#endif
241
242 UPROPERTY(Instanced)
244};
245
246#if WITH_EDITORONLY_DATA
247
248UENUM()
250{
252 Custom,
254 Desired,
256};
257
258#endif
259
260UCLASS()
262{
264
265public:
266 UFUNCTION(BlueprintPure, Category = "UMG", meta = (BlueprintAutocast, DeprecatedFunction, DeprecatedMessage="UMGSequencePlayer is deprecated, please use FWidgetAnimationState"))
267 static UUMGSequencePlayer* Conv_UMGSequencePlayer(const FWidgetAnimationHandle& WidgetAnimationHandle);
268
269 UFUNCTION(BlueprintPure, Category = "UMG")
270 static UUserWidget* GetOuterUserWidget(const UWidget* Widget);
271};
272
274
276
278
282UCLASS(Abstract, editinlinenew, BlueprintType, Blueprintable, meta=( DontUseGenericSpawnObject="True", DisableNativeTick) , MinimalAPI)
284{
286
288public:
290
291 //~ Begin UObject interface
292 UMG_API virtual class UWorld* GetWorld() const override;
296 //~ End UObject Interface
297
298 UMG_API void DuplicateAndInitializeFromWidgetTree(UWidgetTree* InWidgetTree, const TMap<FName, UWidget*>& NamedSlotContentToMerge);
299
301
302 EWidgetTickFrequency GetDesiredTickFrequency() const { return TickFrequency; }
303
310 UMG_API UWidgetBlueprintGeneratedClass* GetWidgetTreeOwningClass() const;
311
312 UMG_API void UpdateCanTick();
313
314protected:
317
320
321 UMG_API void InitializeNamedSlots();
322
323public:
324 //~ Begin UVisual interface
325 UMG_API virtual void ReleaseSlateResources(bool bReleaseChildren) override;
326 //~ End UVisual Interface
327
328 //~ Begin UWidget Interface
329 UMG_API virtual void SynchronizeProperties() override;
330 //~ End UWidget Interface
331
332 //~ Begin UNamedSlotInterface Begin
333 UMG_API virtual void GetSlotNames(TArray<FName>& SlotNames) const override;
334 UMG_API virtual UWidget* GetContentForSlot(FName SlotName) const override;
335 UMG_API virtual void SetContentForSlot(FName SlotName, UWidget* Content) override;
336 //~ UNamedSlotInterface End
337
344 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="User Interface|Viewport", meta=( AdvancedDisplay = "ZOrder" ))
345 UMG_API void AddToViewport(int32 ZOrder = 0);
346
353 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="User Interface|Viewport", meta=( AdvancedDisplay = "ZOrder" ))
354 UMG_API bool AddToPlayerScreen(int32 ZOrder = 0);
355
359 UE_DEPRECATED(5.1, "RemoveFromViewport is deprecated. Use RemoveFromParent instead.")
360 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="User Interface|Viewport", meta=( DeprecatedFunction, DeprecationMessage="Use RemoveFromParent instead" ))
361 UMG_API void RemoveFromViewport();
362
370 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="User Interface|Viewport")
371 UMG_API void SetPositionInViewport(FVector2D Position, bool bRemoveDPIScale = true);
372
373 /* */
374 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="User Interface|Viewport")
375 UMG_API void SetDesiredSizeInViewport(FVector2D Size);
376
377 /* */
378 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="User Interface|Viewport")
379 UMG_API void SetAnchorsInViewport(FAnchors Anchors);
380
381 /* */
382 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="User Interface|Viewport")
383 UMG_API void SetAlignmentInViewport(FVector2D Alignment);
384
385 /* */
386 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Viewport")
387 UMG_API FAnchors GetAnchorsInViewport() const;
388
389 /* */
390 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Viewport")
391 UMG_API FVector2D GetAlignmentInViewport() const;
392
393 /* */
394 UE_DEPRECATED(5.1, "GetIsVisible is deprecated. Please use IsInViewport instead.")
395 UFUNCTION(BlueprintPure, BlueprintCosmetic, Category="Appearance", meta=( DeprecatedFunction, DeprecationMessage="Use IsInViewport instead" ))
396 UMG_API bool GetIsVisible() const;
397
400
402 UMG_API void SetPlayerContext(const FLocalPlayerContext& InPlayerContext);
403
405 UMG_API const FLocalPlayerContext& GetPlayerContext() const;
406
411 UMG_API virtual ULocalPlayer* GetOwningLocalPlayer() const override;
412
417 template < class T >
418 T* GetOwningLocalPlayer() const
419 {
420 return Cast<T>(GetOwningLocalPlayer());
421 }
422
427 UMG_API void SetOwningLocalPlayer(ULocalPlayer* LocalPlayer);
428
433 UMG_API virtual APlayerController* GetOwningPlayer() const override;
434
439 template < class T >
441 {
442 return Cast<T>(GetOwningPlayer());
443 }
444
449 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="Player")
450 UMG_API void SetOwningPlayer(APlayerController* LocalPlayerController);
451
456 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="Player")
457 UMG_API class APawn* GetOwningPlayerPawn() const;
458
464 template < class T >
465 T* GetOwningPlayerPawn() const
466 {
467 return Cast<T>(GetOwningPlayerPawn());
468 }
469
475 template <class TPlayerState = APlayerState>
477 {
478 if (auto Controller = GetOwningPlayer())
479 {
480 return !bChecked ? Cast<TPlayerState>(Controller->PlayerState) :
482 }
483
484 return nullptr;
485 }
486
491 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "Player")
492 UMG_API class APlayerCameraManager* GetOwningPlayerCameraManager() const;
493
499 template <class T>
500 T* GetOwningPlayerCameraManager() const
501 {
502 return Cast<T>(GetOwningPlayerCameraManager());
503 }
504
510 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="User Interface")
511 UMG_API void OnInitialized();
512
525 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="User Interface")
526 UMG_API void PreConstruct(bool IsDesignTime);
527
533 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="User Interface", meta=( Keywords="Begin Play" ))
535
540 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="User Interface", meta=( Keywords="End Play, Destroy" ))
542
549 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="User Interface")
551
555 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="User Interface | Painting")
556 UMG_API void OnPaint(UPARAM(ref) FPaintContext& Context) const;
557
561 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="User Interface | Interaction")
562 UMG_API bool IsInteractable() const;
563
571 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Input")
573
579 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Input")
581
588 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Input")
589 UMG_API void OnAddedToFocusPath(FFocusEvent InFocusEvent);
590
597 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Input")
598 UMG_API void OnRemovedFromFocusPath(FFocusEvent InFocusEvent);
599
607 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Input")
609
621 UFUNCTION(BlueprintImplementableEvent, Category="Input")
623
631 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Input")
633
641 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Input")
643
651 UFUNCTION(BlueprintImplementableEvent, Category = "Input")
653
661 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Mouse")
663
675 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Mouse")
677
685 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Mouse")
687
695 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Mouse")
697
704 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Mouse")
706
712 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Mouse")
713 UMG_API void OnMouseLeave(const FPointerEvent& MouseEvent);
714
721 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Mouse")
723
731 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Mouse")
733
734 // TODO
735 //UFUNCTION(BlueprintImplementableEvent, Category="Mouse")
736 //FCursorReply OnCursorQuery(FGeometry MyGeometry, const FPointerEvent& CursorEvent) const;
737
738 // TODO
739 //virtual bool OnVisualizeTooltip(const TSharedPtr<SWidget>& TooltipContent);
740
748 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Drag and Drop")
749 UMG_API void OnDragDetected(FGeometry MyGeometry, const FPointerEvent& PointerEvent, UDragDropOperation*& Operation);
750
758 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Drag and Drop")
759 UMG_API void OnDragCancelled(const FPointerEvent& PointerEvent, UDragDropOperation* Operation);
760
768 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Drag and Drop")
769 UMG_API void OnDragEnter(FGeometry MyGeometry, FPointerEvent PointerEvent, UDragDropOperation* Operation);
770
777 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Drag and Drop")
778 UMG_API void OnDragLeave(FPointerEvent PointerEvent, UDragDropOperation* Operation);
779
789 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Drag and Drop")
790 UMG_API bool OnDragOver(FGeometry MyGeometry, FPointerEvent PointerEvent, UDragDropOperation* Operation);
791
801 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Drag and Drop")
802 UMG_API bool OnDrop(FGeometry MyGeometry, FPointerEvent PointerEvent, UDragDropOperation* Operation);
803
811 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Touch Input")
813
820 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Touch Input")
822
829 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Touch Input")
831
838 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Touch Input")
840
848 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Touch Input")
850
854 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category="Touch Input")
855 UMG_API void OnMouseCaptureLost();
856
860 UFUNCTION(BlueprintCallable, Category = "Delay")
861 UMG_API void CancelLatentActions();
862
866 UFUNCTION(BlueprintCallable, Category = "Delay")
867 UMG_API void StopAnimationsAndLatentActions();
868
875 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category = "Touch Input")
877
884 UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic, Category = "Touch Input")
886
887public:
888
894 UFUNCTION(BlueprintCallable, Category=Animation)
895 UMG_API void BindToAnimationStarted(UWidgetAnimation* Animation, FWidgetAnimationDynamicEvent Delegate);
896
902 UFUNCTION(BlueprintCallable, Category = Animation)
903 UMG_API void UnbindFromAnimationStarted(UWidgetAnimation* Animation, FWidgetAnimationDynamicEvent Delegate);
904
905 UFUNCTION(BlueprintCallable, Category = Animation)
906 UMG_API void UnbindAllFromAnimationStarted(UWidgetAnimation* Animation);
907
913 UFUNCTION(BlueprintCallable, Category = Animation)
914 UMG_API void BindToAnimationFinished(UWidgetAnimation* Animation, FWidgetAnimationDynamicEvent Delegate);
915
921 UFUNCTION(BlueprintCallable, Category = Animation)
922 UMG_API void UnbindFromAnimationFinished(UWidgetAnimation* Animation, FWidgetAnimationDynamicEvent Delegate);
923
924 UFUNCTION(BlueprintCallable, Category = Animation)
925 UMG_API void UnbindAllFromAnimationFinished(UWidgetAnimation* Animation);
926
934 UFUNCTION(BlueprintCallable, Category = Animation)
935 UMG_API void BindToAnimationEvent(UWidgetAnimation* Animation, FWidgetAnimationDynamicEvent Delegate, EWidgetAnimationEvent AnimationEvent, FName UserTag = NAME_None);
936
938 virtual bool IsEditorUtility() const { return false; }
939
940protected:
941
947 UFUNCTION( BlueprintNativeEvent, BlueprintCosmetic, Category = "Animation" )
948 UMG_API void OnAnimationStarted( const UWidgetAnimation* Animation );
949
950 UMG_API virtual void OnAnimationStarted_Implementation(const UWidgetAnimation* Animation);
951
957 UFUNCTION( BlueprintNativeEvent, BlueprintCosmetic, Category = "Animation" )
958 UMG_API void OnAnimationFinished( const UWidgetAnimation* Animation );
959
960 UMG_API virtual void OnAnimationFinished_Implementation(const UWidgetAnimation* Animation);
961
963 UE_DEPRECATED(5.6, "UUMGSequencePlayer is deprecated")
964 UMG_API void BroadcastAnimationStateChange(const UUMGSequencePlayer& Player, EWidgetAnimationEvent AnimationEvent);
965
966private:
967
968 UMG_API void BroadcastAnimationStateChange(const FWidgetAnimationState& State, EWidgetAnimationEvent AnimationEvent);
969
970 UMG_API void BroadcastAnimationStateChange(const UWidgetAnimation* Animation, FName UserTag, EWidgetAnimationEvent AnimationEvent);
971
972 UMG_API void BroadcastAnimationStartedPlaying(FWidgetAnimationState& State);
973 UMG_API void BroadcastAnimationFinishedPlaying(FWidgetAnimationState& State);
974
976
978 FOnWidgetAnimationEvent& OnAnimationStartedPlaying() { return OnAnimationStartedPlayingEvent; }
979
981 FOnWidgetAnimationEvent& OnAnimationFinishedPlaying() { return OnAnimationFinishedPlayingEvent; }
982
983 UE_DEPRECATED(5.6, "UUMGSequencePlayer is deprecated")
984 virtual void OnAnimationStartedPlaying(UUMGSequencePlayer& Player) {}
985
986 UE_DEPRECATED(5.6, "UUMGSequencePlayer is deprecated")
987 virtual void OnAnimationFinishedPlaying(UUMGSequencePlayer& Player) {}
988
989private:
990
991 FOnWidgetAnimationEvent OnAnimationStartedPlayingEvent;
992 FOnWidgetAnimationEvent OnAnimationFinishedPlayingEvent;
993
994public:
995
996 UE_DEPRECATED(5.2, "Direct access to ColorAndOpacity is deprecated. Please use the getter or setter.")
998 UPROPERTY(EditAnywhere, BlueprintReadWrite, Getter, Setter, BlueprintSetter = "SetColorAndOpacity", Category = "Appearance")
999 FLinearColor ColorAndOpacity;
1000
1001 UPROPERTY()
1002 FGetLinearColor ColorAndOpacityDelegate;
1003
1004 UE_DEPRECATED(5.2, "Direct access to ForegroundColor is deprecated. Please use the getter or setter.")
1009 UPROPERTY(EditAnywhere, BlueprintReadWrite, Getter, Setter, BlueprintSetter = "SetForegroundColor", Category = "Appearance")
1010 FSlateColor ForegroundColor;
1011
1012 UPROPERTY()
1013 FGetSlateColor ForegroundColorDelegate;
1014
1016 UPROPERTY(BlueprintAssignable, Category = "Appearance|Event")
1017 FOnVisibilityChangedEvent OnVisibilityChanged;
1019 FNativeOnVisibilityChangedEvent OnNativeVisibilityChanged;
1020
1022 FNativeOnDestruct OnNativeDestruct;
1023
1024 UE_DEPRECATED(5.2, "Direct access to Padding is deprecated. Please use the getter or setter.")
1026 UPROPERTY(EditAnywhere, BlueprintReadWrite, Getter, Setter, BlueprintSetter = "SetPadding", Category = "Appearance")
1028
1029 UE_DEPRECATED(5.2, "Direct access to Priority is deprecated. Please use the getter or setter.")
1030 UPROPERTY(EditAnywhere, BlueprintReadWrite, Getter = "GetInputActionPriority", Setter = "SetInputActionPriority", BlueprintSetter = "SetInputActionPriority", Category = "Input")
1032
1033 UE_DEPRECATED(5.2, "Direct access to bIsFocusable is deprecated. Please use the getter. Note that this property is only set at construction and is not modifiable at runtime.")
1035 UPROPERTY(EditAnywhere, BlueprintReadWrite, Getter = "IsFocusable", Setter = "SetIsFocusable", Category = "Interaction")
1036 uint8 bIsFocusable : 1;
1037
1038 UE_DEPRECATED(5.2, "Direct access to bStopAction is deprecated. Please use the getter or setter.")
1039 UPROPERTY(EditAnywhere, BlueprintReadWrite, Getter = "IsInputActionBlocking", Setter = "SetInputActionBlocking", BlueprintSetter = "SetInputActionBlocking", Category = "Input")
1040 uint8 bStopAction : 1;
1041
1048 UPROPERTY()
1049 uint8 bAutomaticallyRegisterInputOnConstruction : 1;
1050
1051public:
1052
1058 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="Appearance")
1059 UMG_API void SetColorAndOpacity(FLinearColor InColorAndOpacity);
1060
1064 UMG_API const FLinearColor& GetColorAndOpacity() const;
1065
1072 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="Appearance")
1073 UMG_API void SetForegroundColor(FSlateColor InForegroundColor);
1074
1079 UMG_API const FSlateColor& GetForegroundColor() const;
1080
1084 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="Appearance")
1085 UMG_API void SetPadding(FMargin InPadding);
1086
1090 UMG_API FMargin GetPadding() const;
1091
1095 UMG_API int32 GetInputActionPriority() const;
1096
1100 UMG_API bool IsInputActionBlocking() const;
1101
1105 UMG_API bool IsFocusable() const;
1106
1107 UMG_API void SetIsFocusable(bool InIsFocusable);
1108
1119 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1120 UMG_API void QueuePlayAnimation(UWidgetAnimation* InAnimation, float StartAtTime = 0.0f, int32 NumLoopsToPlay = 1, EUMGSequencePlayMode::Type PlayMode = EUMGSequencePlayMode::Forward, float PlaybackSpeed = 1.0f, bool bRestoreState = false);
1121
1133 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1134 UMG_API void QueuePlayAnimationTimeRange(UWidgetAnimation* InAnimation, float StartAtTime = 0.0f, float EndAtTime = 0.0f, int32 NumLoopsToPlay = 1, EUMGSequencePlayMode::Type PlayMode = EUMGSequencePlayMode::Forward, float PlaybackSpeed = 1.0f, bool bRestoreState = false);
1135
1146 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1147 UMG_API void QueuePlayAnimationForward(UWidgetAnimation* InAnimation, float PlaybackSpeed = 1.0f, bool bRestoreState = false);
1148
1159 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1160 UMG_API void QueuePlayAnimationReverse(UWidgetAnimation* InAnimation, float PlaybackSpeed = 1.0f, bool bRestoreState = false);
1161
1167 UFUNCTION(BlueprintCallable, Category="User Interface|Animation")
1168 UMG_API void QueueStopAnimation(const UWidgetAnimation* InAnimation);
1169
1173 UFUNCTION(BlueprintCallable, Category="User Interface|Animation")
1174 UMG_API void QueueStopAllAnimations();
1175
1182 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="User Interface|Animation")
1183 UMG_API float QueuePauseAnimation(const UWidgetAnimation* InAnimation);
1184
1195 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1196 UMG_API FWidgetAnimationHandle PlayAnimation(UWidgetAnimation* InAnimation, float StartAtTime = 0.0f, int32 NumLoopsToPlay = 1, EUMGSequencePlayMode::Type PlayMode = EUMGSequencePlayMode::Forward, float PlaybackSpeed = 1.0f, bool bRestoreState = false);
1197
1209 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1210 UMG_API FWidgetAnimationHandle PlayAnimationTimeRange(UWidgetAnimation* InAnimation, float StartAtTime = 0.0f, float EndAtTime = 0.0f, int32 NumLoopsToPlay = 1, EUMGSequencePlayMode::Type PlayMode = EUMGSequencePlayMode::Forward, float PlaybackSpeed = 1.0f, bool bRestoreState = false);
1211
1222 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1223 UMG_API FWidgetAnimationHandle PlayAnimationForward(UWidgetAnimation* InAnimation, float PlaybackSpeed = 1.0f, bool bRestoreState = false);
1224
1235 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1236 UMG_API FWidgetAnimationHandle PlayAnimationReverse(UWidgetAnimation* InAnimation, float PlaybackSpeed = 1.0f, bool bRestoreState = false);
1237
1243 UFUNCTION(BlueprintCallable, Category="User Interface|Animation")
1244 UMG_API void StopAnimation(const UWidgetAnimation* InAnimation);
1245
1251 UFUNCTION(BlueprintCallable, Category="User Interface|Animation")
1252 UMG_API void StopAllAnimations();
1253
1260 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="User Interface|Animation")
1261 UMG_API float PauseAnimation(const UWidgetAnimation* InAnimation);
1262
1269 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1270 UMG_API float GetAnimationCurrentTime(const UWidgetAnimation* InAnimation) const;
1271
1278 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1279 UMG_API void SetAnimationCurrentTime(const UWidgetAnimation* InAnimation, float InTime);
1280
1287 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="User Interface|Animation")
1288 UMG_API bool IsAnimationPlaying(const UWidgetAnimation* InAnimation) const;
1289
1293 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="User Interface|Animation")
1294 UMG_API bool IsAnyAnimationPlaying() const;
1295
1302 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1303 UMG_API void SetNumLoopsToPlay(const UWidgetAnimation* InAnimation, int32 NumLoopsToPlay);
1304
1311 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1312 UMG_API void SetPlaybackSpeed(const UWidgetAnimation* InAnimation, float PlaybackSpeed = 1.0f);
1313
1319 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1320 UMG_API void ReverseAnimation(const UWidgetAnimation* InAnimation);
1321
1327 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1328 UMG_API bool IsAnimationPlayingForward(const UWidgetAnimation* InAnimation);
1329
1333 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category = "User Interface|Animation")
1334 UMG_API void FlushAnimations();
1335
1338 ExtensionType* GetExtension() const
1339 {
1340 return CastChecked<ExtensionType>(GetExtension(ExtensionType::StaticClass()), ECastCheckedType::NullAllowed);
1341 }
1342
1344 UFUNCTION(BlueprintCallable, Category = "User Interface|Extension", Meta = (DeterminesOutputType = "ExtensionType"))
1346
1348 UFUNCTION(BlueprintCallable, Category = "User Interface|Extension", Meta = (DeterminesOutputType = "ExtensionType"))
1350
1353 ExtensionType* AddExtension()
1354 {
1355 return CastChecked<ExtensionType>(AddExtension(ExtensionType::StaticClass()), ECastCheckedType::NullAllowed);
1356 }
1357
1359 UFUNCTION(BlueprintCallable, Category = "User Interface|Extension", Meta = (DeterminesOutputType = "InExtensionType"))
1361
1363 UFUNCTION(BlueprintCallable, Category = "User Interface|Extension")
1364 UMG_API void RemoveExtension(UUserWidgetExtension* InExtension);
1365
1368 void RemoveExtensions()
1369 {
1370 return RemoveExtensions(ExtensionType::StaticClass());
1371 }
1372
1374 UFUNCTION(BlueprintCallable, Category = "User Interface|Extension")
1376
1382 UFUNCTION(BlueprintCallable, BlueprintCosmetic, Category="Sound", meta=( DeprecatedFunction, DeprecationMessage="Use the UGameplayStatics::PlaySound2D instead." ))
1383 UMG_API void PlaySound(class USoundBase* SoundToPlay);
1384
1391 UMG_API bool SetDesiredFocusWidget(FName WidgetName);
1392
1399 UFUNCTION(BlueprintCallable, Category = "User Interface|Focus")
1400 UMG_API bool SetDesiredFocusWidget(UWidget* Widget);
1401
1403 UMG_API FName GetDesiredFocusWidgetName() const;
1404
1406 UMG_API UWidget* GetDesiredFocusWidget() const;
1407
1409 UMG_API UWidget* GetWidgetHandle(TSharedRef<SWidget> InWidget);
1410
1412 UMG_API UWidget* GetRootWidget() const;
1413
1415 UMG_API TSharedPtr<SWidget> GetSlateWidgetFromName(const FName& Name) const;
1416
1418 UMG_API UWidget* GetWidgetFromName(const FName& Name) const;
1419
1420 //~ Begin UObject Interface
1421 UMG_API virtual bool IsAsset() const;
1422 UMG_API virtual void PreSave(FObjectPreSaveContext ObjectSaveContext) override;
1423 //~ End UObject Interface
1424
1426 UFUNCTION(BlueprintCallable, Category="User Interface|Animation")
1427 UMG_API bool IsPlayingAnimation() const;
1428
1429#if WITH_EDITOR
1430 //~ Begin UWidget Interface
1431 UMG_API virtual const FText GetPaletteCategory() override;
1432 //~ End UWidget Interface
1433
1434 UMG_API virtual void SetDesignerFlags(EWidgetDesignFlags NewFlags) override;
1435 UMG_API virtual void OnDesignerChanged(const FDesignerChangedEventArgs& EventArgs) override;
1436 UMG_API virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
1437
1439 UMG_API void UpdateBindingForSlot(FName SlotName);
1440
1443
1450
1460#endif
1461
1462 static UMG_API UUserWidget* CreateWidgetInstance(UWidget& OwningWidget, TSubclassOf<UUserWidget> UserWidgetClass, FName WidgetName);
1464 static UMG_API UUserWidget* CreateWidgetInstance(APlayerController& OwnerPC, TSubclassOf<UUserWidget> UserWidgetClass, FName WidgetName);
1465 static UMG_API UUserWidget* CreateWidgetInstance(UGameInstance& GameInstance, TSubclassOf<UUserWidget> UserWidgetClass, FName WidgetName);
1466 static UMG_API UUserWidget* CreateWidgetInstance(UWorld& World, TSubclassOf<UUserWidget> UserWidgetClass, FName WidgetName);
1467
1468private:
1469
1470 static UMG_API UUserWidget* CreateInstanceInternal(UObject* Outer, TSubclassOf<UUserWidget> UserWidgetClass, FName WidgetName, UWorld* World, ULocalPlayer* LocalPlayer);
1471
1472 void ClearStoppedAnimationStates();
1473
1474 // If this widget's player context is invalid, this function will set it to the provided player context, otherwise it will keep its current player context and call CheckUpdatePlayerContext on its children
1475 void UpdatePlayerContextIfInvalid(const FLocalPlayerContext& ParentPlayerContext);
1476
1477public:
1478
1481 TArray<FQueuedWidgetAnimationTransition> QueuedWidgetAnimationTransitions;
1482
1483 UE_DEPRECATED(5.6, "Please use ActiveAnimations")
1485 TArray<TObjectPtr<UUMGSequencePlayer>> ActiveSequencePlayers;
1486
1490
1491 UE_DEPRECATED(5.6, "Please use ActiveAnimations")
1493 TArray<TObjectPtr<UUMGSequencePlayer>> StoppedSequencePlayers;
1494
1495private:
1496
1498 TArray<TSharedRef<FWidgetAnimationState>> ActiveAnimations;
1499
1501 bool bIsTickingAnimations = false;
1502
1503private:
1504
1506 UPROPERTY()
1507 TArray<FNamedSlotBinding> NamedSlotBindings;
1508
1510 UPROPERTY()
1512
1513public:
1515 UPROPERTY(Transient, DuplicateTransient, TextExportTransient)
1517
1518public:
1519
1520#if WITH_EDITORONLY_DATA
1521
1523 UPROPERTY()
1525
1526 UPROPERTY()
1528
1530 UPROPERTY()
1532
1537 UPROPERTY(EditDefaultsOnly, Category="Designer")
1539
1540#endif
1541
1543 UPROPERTY()
1544 uint8 bHasScriptImplementedTick : 1;
1545
1547 UPROPERTY()
1548 uint8 bHasScriptImplementedPaint : 1;
1549
1550private:
1551
1553 uint8 bInitialized : 1;
1554
1556 uint8 bAreExtensionsPreConstructed : 1;
1557
1559 uint8 bAreExtensionsConstructed : 1;
1560
1562 uint8 bStoppingAllAnimations : 1;
1563
1564protected:
1565
1567
1568 UMG_API virtual TSharedRef<SWidget> RebuildWidget() override;
1569 UMG_API virtual void OnWidgetRebuilt() override;
1570
1571 UE_DEPRECATED(5.1, "GetFullScreenOffset is deprecated. Use the GameViewportSubsystem.")
1572 UMG_API FMargin GetFullScreenOffset() const;
1573
1574 UMG_API virtual void NativeOnInitialized();
1575 UMG_API virtual void NativePreConstruct();
1576 UMG_API virtual void NativeConstruct();
1577 UMG_API virtual void NativeDestruct();
1578 UMG_API virtual void NativeTick(const FGeometry& MyGeometry, float InDeltaTime);
1579
1584 UMG_API virtual int32 NativePaint(const FPaintArgs& Args, const FGeometry& AllottedGeometry, const FSlateRect& MyCullingRect, FSlateWindowElementList& OutDrawElements, int32 LayerId, const FWidgetStyle& InWidgetStyle, bool bParentEnabled ) const;
1585
1586 inline FVector2D GetMinimumDesiredSize() const { return MinimumDesiredSize; }
1587 UMG_API void SetMinimumDesiredSize(FVector2D InMinimumDesiredSize);
1588
1589 UMG_API virtual bool NativeIsInteractable() const;
1590 UMG_API virtual bool NativeSupportsKeyboardFocus() const;
1591 virtual bool NativeSupportsCustomNavigation() const { return false; }
1592
1593 UMG_API virtual FReply NativeOnFocusReceived( const FGeometry& InGeometry, const FFocusEvent& InFocusEvent );
1594 UMG_API virtual void NativeOnFocusLost( const FFocusEvent& InFocusEvent );
1595 UMG_API virtual void NativeOnFocusChanging(const FWeakWidgetPath& PreviousFocusPath, const FWidgetPath& NewWidgetPath, const FFocusEvent& InFocusEvent);
1596 UMG_API virtual void NativeOnAddedToFocusPath(const FFocusEvent& InFocusEvent);
1597 UMG_API virtual void NativeOnRemovedFromFocusPath(const FFocusEvent& InFocusEvent);
1599 UMG_API virtual FReply NativeOnKeyChar( const FGeometry& InGeometry, const FCharacterEvent& InCharEvent );
1600 UMG_API virtual FReply NativeOnPreviewKeyDown( const FGeometry& InGeometry, const FKeyEvent& InKeyEvent );
1601 UMG_API virtual FReply NativeOnKeyDown( const FGeometry& InGeometry, const FKeyEvent& InKeyEvent );
1602 UMG_API virtual FReply NativeOnKeyUp( const FGeometry& InGeometry, const FKeyEvent& InKeyEvent );
1603 UMG_API virtual FReply NativeOnAnalogValueChanged( const FGeometry& InGeometry, const FAnalogInputEvent& InAnalogEvent );
1604 UMG_API virtual FReply NativeOnMouseButtonDown( const FGeometry& InGeometry, const FPointerEvent& InMouseEvent );
1605 UMG_API virtual FReply NativeOnPreviewMouseButtonDown( const FGeometry& InGeometry, const FPointerEvent& InMouseEvent );
1606 UMG_API virtual FReply NativeOnMouseButtonUp( const FGeometry& InGeometry, const FPointerEvent& InMouseEvent );
1607 UMG_API virtual FReply NativeOnMouseMove( const FGeometry& InGeometry, const FPointerEvent& InMouseEvent );
1608 UMG_API virtual void NativeOnMouseEnter( const FGeometry& InGeometry, const FPointerEvent& InMouseEvent );
1609 UMG_API virtual void NativeOnMouseLeave( const FPointerEvent& InMouseEvent );
1610 UMG_API virtual FReply NativeOnMouseWheel( const FGeometry& InGeometry, const FPointerEvent& InMouseEvent );
1611 UMG_API virtual FReply NativeOnMouseButtonDoubleClick( const FGeometry& InGeometry, const FPointerEvent& InMouseEvent );
1612 UMG_API virtual void NativeOnDragDetected( const FGeometry& InGeometry, const FPointerEvent& InMouseEvent, UDragDropOperation*& OutOperation );
1613 UMG_API virtual void NativeOnDragEnter( const FGeometry& InGeometry, const FDragDropEvent& InDragDropEvent, UDragDropOperation* InOperation );
1614 UMG_API virtual void NativeOnDragLeave( const FDragDropEvent& InDragDropEvent, UDragDropOperation* InOperation );
1615 UMG_API virtual bool NativeOnDragOver( const FGeometry& InGeometry, const FDragDropEvent& InDragDropEvent, UDragDropOperation* InOperation );
1616 UMG_API virtual bool NativeOnDrop( const FGeometry& InGeometry, const FDragDropEvent& InDragDropEvent, UDragDropOperation* InOperation );
1617 UMG_API virtual void NativeOnDragCancelled( const FDragDropEvent& InDragDropEvent, UDragDropOperation* InOperation );
1618 UMG_API virtual FReply NativeOnTouchGesture( const FGeometry& InGeometry, const FPointerEvent& InGestureEvent );
1619 UMG_API virtual FReply NativeOnTouchStarted( const FGeometry& InGeometry, const FPointerEvent& InGestureEvent );
1620 UMG_API virtual FReply NativeOnTouchMoved( const FGeometry& InGeometry, const FPointerEvent& InGestureEvent );
1621 UMG_API virtual FReply NativeOnTouchEnded( const FGeometry& InGeometry, const FPointerEvent& InGestureEvent );
1622 UMG_API virtual FReply NativeOnMotionDetected( const FGeometry& InGeometry, const FMotionEvent& InMotionEvent );
1623 UMG_API virtual FReply NativeOnTouchForceChanged(const FGeometry& MyGeometry, const FPointerEvent& TouchEvent);
1624 UMG_API virtual FReply NativeOnTouchFirstMove(const FGeometry& MyGeometry, const FPointerEvent& TouchEvent);
1625 UMG_API virtual FCursorReply NativeOnCursorQuery( const FGeometry& InGeometry, const FPointerEvent& InCursorEvent );
1626 UMG_API virtual FNavigationReply NativeOnNavigation(const FGeometry& InGeometry, const FNavigationEvent& InNavigationEvent);
1627 UMG_API virtual void NativeOnMouseCaptureLost(const FCaptureLostEvent& CaptureLostEvent);
1629
1630protected:
1631
1635 UMG_API void TickActionsAndAnimation(float InDeltaTime);
1636
1637 UE_DEPRECATED(5.6, "This method isn't needed anymore")
1638 void PostTickActionsAndAnimation(float InDeltaTime) {}
1639
1640 UMG_API void RemoveObsoleteBindings(const TArray<FName>& NamedSlots);
1641
1642 UMG_API TSharedPtr<const FWidgetAnimationState> GetAnimationState(const UWidgetAnimation* InAnimation) const;
1643 UMG_API TSharedPtr<FWidgetAnimationState> GetAnimationState(const UWidgetAnimation* InAnimation);
1644 UMG_API TSharedPtr<FWidgetAnimationState> GetOrAddAnimationState(UWidgetAnimation* InAnimation);
1645
1646 UMG_API void ExecuteQueuedAnimationTransitions();
1647
1648 UMG_API void ConditionalTearDownAnimations();
1649
1650 UMG_API void TearDownAnimations();
1651
1652 UMG_API void DisableAnimations();
1653
1655
1660 UFUNCTION( BlueprintCallable, Category = "Input", meta = ( BlueprintProtected = "true" ) )
1661 UMG_API void ListenForInputAction( FName ActionName, TEnumAsByte< EInputEvent > EventType, bool bConsume, FOnInputAction Callback );
1662
1666 UFUNCTION( BlueprintCallable, Category = "Input", meta = ( BlueprintProtected = "true" ) )
1667 UMG_API void StopListeningForInputAction( FName ActionName, TEnumAsByte< EInputEvent > EventType );
1668
1672 UFUNCTION( BlueprintCallable, Category = "Input", meta = ( BlueprintProtected = "true" ) )
1673 UMG_API void StopListeningForAllInputActions();
1674
1680 UFUNCTION(BlueprintCallable, Category = "Input", meta = ( BlueprintProtected = "true" ))
1681 UMG_API void RegisterInputComponent();
1682
1688 UFUNCTION(BlueprintCallable, Category = "Input", meta = ( BlueprintProtected = "true" ))
1689 UMG_API void UnregisterInputComponent();
1690
1694 UFUNCTION( BlueprintCallable, Category = "Input", meta = ( BlueprintProtected = "true" ) )
1695 UMG_API bool IsListeningForInputAction( FName ActionName ) const;
1696
1697 UFUNCTION( BlueprintCallable, Category = "Input", meta = ( BlueprintProtected = "true" ) )
1698 UMG_API void SetInputActionPriority( int32 NewPriority );
1699
1700 UFUNCTION( BlueprintCallable, Category = "Input", meta = ( BlueprintProtected = "true" ) )
1701 UMG_API void SetInputActionBlocking( bool bShouldBlock );
1702
1703 UMG_API void OnInputAction( FOnInputAction Callback );
1704
1705 UE_DEPRECATED(5.7, "InitializeInputComponent is deprecated. bAutomaticallyRegisterInputOnConstruction will be set on compilation of this widget and automatically create the input component instead.")
1706 UMG_API virtual void InitializeInputComponent() final;
1707
1708private:
1709 FVector2D MinimumDesiredSize;
1710
1711private:
1716 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Performance", meta=(AllowPrivateAccess="true"))
1717 EWidgetTickFrequency TickFrequency;
1718
1719 UPROPERTY(EditDefaultsOnly, Category = "Interaction", meta = (AllowPrivateAccess = "true"))
1720 FWidgetChild DesiredFocusWidget;
1721
1722protected:
1723
1732 UMG_API virtual void CreateInputComponent();
1733
1738 UMG_API virtual void StartProcessingInputScriptDelegates();
1739
1747 UMG_API virtual void StopProcessingInputScriptDelegates();
1748
1753 UMG_API virtual void DestroyInputComponent();
1754
1755 UPROPERTY(Transient, DuplicateTransient)
1756 TObjectPtr<class UInputComponent> InputComponent;
1757
1761 void HandleOwningLocalPlayerControllerChanged(APlayerController* NewPlayerController);
1762 void StartListeningForPlayerControllerChanges();
1763 void StopListeningForPlayerControllerChanges();
1764
1765protected:
1766 UPROPERTY(Transient, DuplicateTransient)
1767 TArray<FAnimationEventBinding> AnimationCallbacks;
1768
1769private:
1770 static UMG_API void OnLatentActionsChanged(UObject* ObjectWhichChanged, ELatentActionChangeType ChangeType);
1771
1773 FLocalPlayerContext PlayerContext;
1774
1776 mutable TWeakObjectPtr<UWorld> CachedWorld;
1777
1778 static UMG_API uint32& GetInitializingFromWidgetTree();
1779
1780protected:
1781
1784
1794
1796
1798 friend class FWidgetBlueprintCompilerContext;
1799};
1800
1801#define LOCTEXT_NAMESPACE "UMG"
1802
1807
1809
1810template <typename WidgetT = UUserWidget, typename OwnerType = UObject>
1811WidgetT* CreateWidget(OwnerType OwningObject, TSubclassOf<UUserWidget> UserWidgetClass = WidgetT::StaticClass(), FName WidgetName = NAME_None)
1812{
1813 static_assert(TIsDerivedFrom<WidgetT, UUserWidget>::IsDerived, "CreateWidget can only be used to create UserWidget instances. If creating a UWidget, use WidgetTree::ConstructWidget.");
1814
1815 static_assert(TIsDerivedFrom<TPointedToType<OwnerType>, UWidget>::IsDerived
1819 || TIsDerivedFrom<TPointedToType<OwnerType>, UWorld>::IsDerived, "The given OwningObject is not of a supported type for use with CreateWidget.");
1820
1823
1824 if (OwningObject)
1825 {
1826 return Cast<WidgetT>(UUserWidget::CreateWidgetInstance(*OwningObject, UserWidgetClass, WidgetName));
1827 }
1828 return nullptr;
1829}
1830
1831#undef LOCTEXT_NAMESPACE
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
#define TEXT(x)
Definition Platform.h:1272
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
#define GET_STATID(Stat)
Definition Stats.h:656
#define DECLARE_CYCLE_STAT(CounterName, StatId, GroupId)
Definition Stats.h:669
#define SCOPE_CYCLE_COUNTER(Stat)
Definition Stats.h:650
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define DECLARE_DYNAMIC_MULTICAST_DELEGATE(DelegateName)
Definition DelegateCombinations.h:38
#define DECLARE_EVENT_OneParam(OwningType, EventName, Param1Type)
Definition DelegateCombinations.h:51
#define DECLARE_DYNAMIC_DELEGATE(DelegateName)
Definition DelegateCombinations.h:35
#define DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(DelegateName, Param1Type, Param1Name)
Definition DelegateCombinations.h:53
EInputEvent
Definition EngineBaseTypes.h:31
return true
Definition ExternalRpcRegistry.cpp:601
EInvalidateWidgetReason
Definition InvalidateWidgetReason.h:14
ELatentActionChangeType
Definition LatentActionManager.h:56
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define UPARAM(...)
Definition ObjectMacros.h:748
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UFUNCTION(...)
Definition ObjectMacros.h:745
#define UCLASS(...)
Definition ObjectMacros.h:776
#define UENUM(...)
Definition ObjectMacros.h:749
#define USTRUCT(...)
Definition ObjectMacros.h:746
#define GENERATED_USTRUCT_BODY(...)
Definition ObjectMacros.h:767
void Construct(const FArguments &InArgs)
virtual FReply OnMouseButtonDown(const FGeometry &MyGeometry, const FPointerEvent &MouseEvent)
ESlateVisibility
Definition SlateWrapperTypes.h:22
EWidgetTickFrequency
Definition UserWidget.h:121
EQueuedWidgetAnimationMode
Definition UserWidget.h:51
EWidgetAnimationEvent
Definition UserWidget.h:136
WidgetT * CreateWidget(OwnerType OwningObject, TSubclassOf< UUserWidget > UserWidgetClass=WidgetT::StaticClass(), FName WidgetName=NAME_None)
Definition UserWidget.h:1811
ERequiresLegacyPlayer
Definition UserWidget.h:70
uint32 Size
Definition VulkanMemory.cpp:4034
EWidgetDesignFlags
Definition Widget.h:176
#define PROPERTY_BINDING_IMPLEMENTATION(Type, MemberName)
Definition Widget.h:151
uint8_t uint8
Definition binka_ue_file_header.h:8
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition PlayerCameraManager.h:189
Definition PlayerController.h:261
Definition CursorReply.h:16
Definition DragAndDrop.h:141
Definition NameTypes.h:617
Definition NavigationReply.h:43
Definition UObjectGlobals.h:1292
Definition ObjectSaveContext.h:244
Definition UnrealType.h:3087
Definition PaintArgs.h:23
Definition UObjectGlobals.h:2492
Definition Reply.h:24
Definition UObjectBaseUtility.h:1144
Definition SlateRect.h:26
Definition DrawElements.h:220
Definition Text.h:385
Definition WidgetPath.h:213
Definition WidgetPath.h:51
Definition WidgetStyle.h:15
Definition NamedSlotInterface.h:23
Definition SObjectWidget.h:31
Definition SWidget.h:165
Definition Array.h:670
Definition EnumAsByte.h:22
Definition UnrealString.h.inl:34
Definition SharedPointer.h:692
Definition SharedPointer.h:153
Definition SubclassOf.h:30
Definition BlueprintFunctionLibrary.h:16
Definition Class.h:3793
Definition DragDropOperation.h:55
Definition GameInstance.h:152
Definition GameplayStatics.h:52
Definition InputComponent.h:729
Definition LocalPlayer.h:169
Definition NamedSlot.h:19
Definition Object.h:95
virtual void PostDuplicate(bool bDuplicateForPIE)
Definition Object.h:538
virtual COREUOBJECT_API void BeginDestroy()
Definition Obj.cpp:1071
virtual COREUOBJECT_API bool IsAsset() const
Definition Obj.cpp:2704
static COREUOBJECT_API void AddReferencedObjects(UObject *InThis, FReferenceCollector &Collector)
Definition GarbageCollection.cpp:6401
Definition SoundBase.h:109
Definition Texture2D.h:26
Definition UMGSequencePlayer.h:20
Definition UMGSequenceTickManager.h:34
Definition UserWidgetExtension.h:20
virtual void PreConstruct(bool bIsDesignTime)
Definition UserWidgetExtension.h:36
virtual void Destruct()
Definition UserWidgetExtension.h:46
Definition UserWidget.h:262
Definition UserWidget.h:284
TPlayerState * GetOwningPlayerState(bool bChecked=false) const
Definition UserWidget.h:476
virtual ERequiresLegacyPlayer GetLegacyPlayerRequirement() const
Definition UserWidget.h:319
virtual void NativeOnFinishedPointerInput()
Definition UserWidget.h:1628
virtual bool NativeSupportsCustomNavigation() const
Definition UserWidget.h:1591
FOnWidgetAnimationEvent & OnAnimationFinishedPlaying()
Definition UserWidget.h:981
static UMG_API UUserWidget * CreateWidgetInstance(UWidget &OwningWidget, TSubclassOf< UUserWidget > UserWidgetClass, FName WidgetName)
Definition UserWidget.cpp:2672
virtual void InitializeNativeClassData()
Definition UserWidget.h:316
T * GetOwningPlayer() const
Definition UserWidget.h:440
Definition WidgetAnimation.h:26
Definition WidgetBlueprintGeneratedClass.h:81
Definition WidgetTree.h:20
Definition Widget.h:217
Definition World.h:918
Definition UserWidget.h:1804
UMG_API bool ValidateUserWidgetClass(const UClass *UserWidgetClass)
Definition UserWidget.cpp:2974
@ NullAllowed
Definition Object.h:62
Definition UMGSequencePlayMode.h:14
@ false
Definition radaudio_common.h:23
Definition Events.h:528
Definition Anchors.h:14
Definition UserWidget.h:144
FAnimationEventBinding()
Definition UserWidget.h:149
Definition Events.h:106
Definition Events.h:606
Definition SlateWrapperTypes.h:129
Definition Events.h:51
Definition Geometry.h:40
Definition Guid.h:109
Definition Events.h:431
Definition Color.h:48
Definition LocalPlayer.h:40
Definition Margin.h:17
Definition Events.h:1060
Definition UserWidget.h:223
FNamedSlotBinding()
Definition UserWidget.h:228
Definition Events.h:1148
Definition UserWidget.h:181
const FGeometry & AllottedGeometry
Definition UserWidget.h:211
int32 MaxLayer
Definition UserWidget.h:218
int32 LayerId
Definition UserWidget.h:214
FPaintContext(const FGeometry &InAllottedGeometry, const FSlateRect &InMyCullingRect, FSlateWindowElementList &InOutDrawElements, const int32 InLayerId, const FWidgetStyle &InWidgetStyle, const bool bInParentEnabled)
Definition UserWidget.h:189
FSlateWindowElementList & OutDrawElements
Definition UserWidget.h:213
const FSlateRect & MyCullingRect
Definition UserWidget.h:212
bool bParentEnabled
Definition UserWidget.h:216
void operator=(const FPaintContext &Other)
Definition UserWidget.h:201
const FWidgetStyle & WidgetStyle
Definition UserWidget.h:215
Definition Events.h:695
Definition UnrealType.h:6865
Definition UserWidget.h:84
Definition SlateColor.h:42
Definition WidgetAnimationHandle.h:22
Definition WidgetAnimationState.h:48
Definition WidgetChild.h:19
Definition UnrealTypeTraits.h:40
Definition ObjectPtr.h:488
Definition Optional.h:131
Definition WeakObjectPtrTemplates.h:25