UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SWindow.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
7#include "Misc/Attribute.h"
8#include "Layout/Margin.h"
10#include "Layout/SlateRect.h"
11#include "Layout/Visibility.h"
13#include "Layout/Geometry.h"
14#include "Input/CursorReply.h"
18#include "Input/Reply.h"
20#include "Types/SlateStructs.h"
24#include "SlotBase.h"
25#include "Widgets/SWidget.h"
27#include "Widgets/SBoxPanel.h"
28#include "Widgets/SOverlay.h"
29#include "Styling/SlateTypes.h"
30#include "Styling/CoreStyle.h"
32
34class FHittestGrid;
35class FPaintArgs;
37class FWidgetPath;
38class IWindowTitleBar;
39class SPopupLayer;
40class SWindow;
41class SImage;
42
43enum class EUpdateFastPathReason : uint8;
44
48
52
56
59
62
65
66
68enum class EAutoCenter : uint8
69{
71 None,
72
75
78};
79
80
82enum class ESizingRule : uint8
83{
84 /* The windows size fixed and cannot be resized **/
86
89
92};
93
94namespace SWindowDefs
95{
97 inline constexpr float DefaultTitleBarSize = 34.0f;
98}
99
107
112{
113public:
115
116 virtual void Remove() override;
117 virtual FSlateRect GetAbsoluteClientRect() override;
118
119private:
120 TSharedPtr<SWindow> HostWindow;
121 TSharedPtr<SOverlay> Overlay;
122};
123
124
129struct FPopupLayerSlot : public TSlotBase<FPopupLayerSlot>
130{
131public:
134 , DesktopPosition_Attribute(FVector2D::ZeroVector)
135 , WidthOverride_Attribute()
136 , HeightOverride_Attribute()
137 , Scale_Attribute(1.0f)
138 , Clamp_Attribute(false)
139 , ClampBuffer_Attribute(FVector2D::ZeroVector)
140 {}
141
146 SLATE_ATTRIBUTE(float, WidthOverride)
148 SLATE_ATTRIBUTE(float, HeightOverride)
150 SLATE_ATTRIBUTE(float, Scale)
156
158 {
159 if (InArgs._DesktopPosition.IsSet())
160 {
161 SetDesktopPosition(MoveTemp(InArgs._DesktopPosition));
162 }
163 if (InArgs._WidthOverride.IsSet())
164 {
165 SetWidthOverride(MoveTemp(InArgs._WidthOverride));
166 }
167 if (InArgs._HeightOverride.IsSet())
168 {
169 SetHeightOverride(MoveTemp(InArgs._HeightOverride));
170 }
171 if (InArgs._Scale.IsSet())
172 {
173 SetScale(MoveTemp(InArgs._Scale));
174 }
175 if (InArgs._ClampToWindow.IsSet())
176 {
177 SetClampToWindow(MoveTemp(InArgs._ClampToWindow));
178 }
179 if (InArgs._ClampBuffer.IsSet())
180 {
181 SetClampBuffer(MoveTemp(InArgs._ClampBuffer));
182 }
184 }
185
188 {
189 DesktopPosition_Attribute = MoveTemp(InDesktopPosition);
190 }
191
194 {
195 WidthOverride_Attribute = MoveTemp(InWidthOverride);
196 }
197
200 {
201 HeightOverride_Attribute = MoveTemp(InHeightOverride);
202 }
203
206 {
207 Scale_Attribute = MoveTemp(InScale);
208 }
209
215
221
222private:
224 friend class SPopupLayer;
226 friend class TPanelChildren<FPopupLayerSlot>;
227
228 TAttribute<FVector2D> DesktopPosition_Attribute;
229 TAttribute<float> WidthOverride_Attribute;
230 TAttribute<float> HeightOverride_Attribute;
231 TAttribute<float> Scale_Attribute;
232 TAttribute<bool> Clamp_Attribute;
233 TAttribute<FVector2D> ClampBuffer_Attribute;
234};
235
236
241 : public SCompoundWidget
243{
244
245public:
246
279
282
283
285
286
288
289
291
292
295
296
298
299
301
302
304
305
307
308
310
311
313
314
316
317
319
320
322
323
325
326
327 SLATE_ARGUMENT( bool, FocusWhenFirstShown )
328
329
331
332
334
335
337
338
339 SLATE_ARGUMENT( bool, HasCloseButton )
340
341
342 SLATE_ARGUMENT( bool, SupportsMaximize )
343
344
345 SLATE_ARGUMENT( bool, SupportsMinimize )
346
347
349
350
352
353
354 SLATE_ARGUMENT( TOptional<float>, MinHeight )
355
356
358
359
361
362
366
367
370
371
373
374
376
377
379
380 SLATE_DEFAULT_SLOT( FArguments, Content )
381
382
384
386
387
392
393public:
394
395 SLATECORE_API void Construct(const FArguments& InArgs);
396
403
410
418
425
430 static SLATECORE_API UE::Slate::FDeprecateVector2DResult ComputeWindowSizeForContent( UE::Slate::FDeprecateVector2DParameter ContentSize );
431
438 {
439 return Type;
440 }
441
448 {
449 return Title.Get();
450 }
451
457 void SetTitle( const FText& InTitle )
458 {
459 Title = InTitle;
460 if (NativeWindow.IsValid())
461 {
462 NativeWindow->SetText( *InTitle.ToString() );
463 }
464 }
465
467 SLATECORE_API int32 PaintWindow( double CurrentTime, float DeltaTime, FSlateWindowElementList& OutDrawElements, const FWidgetStyle& InWidgetStyle, bool bParentEnabled );
468
475
478
481
484
487
490
493
496
499
502
505
508
511
514
517
520
523
535
538
540 SLATECORE_API bool IsMorphing() const;
542 SLATECORE_API bool IsMorphingSize() const;
544 SLATECORE_API void MorphToPosition( const FCurveSequence& Sequence, const float TargetOpacity, const UE::Slate::FDeprecateVector2DParameter& TargetPosition );
546 SLATECORE_API void MorphToShape( const FCurveSequence& Sequence, const float TargetOpacity, const FSlateRect& TargetShape );
555
558
567
575 SLATECORE_API void BringToFront( bool bForce = false );
576
579
582
585
588
590 SLATECORE_API float GetDPIScaleFactor() const;
591
593 SLATECORE_API void SetDPIScaleFactor(const float Factor);
594
596 SLATECORE_API void SetManualManageDPIChanges(const bool bManualDPI);
597
599 {
600 return bManualManageDPI;
601 }
602
609 SLATECORE_API bool IsDescendantOf( const TSharedPtr<SWindow>& ParentWindow ) const;
610
617
624
631
637 SLATECORE_API bool HasOverlay() const;
638
646
654
665
669
672
679
685
691
698
701
703 SLATECORE_API bool AppearsInTaskbar() const;
704
707
710
713
716
719
722
725
728
731
734
737
743 SLATECORE_API void EnableWindow( bool bEnable );
744
747
750
752 SLATECORE_API bool IsVisible() const;
753
755 SLATECORE_API bool IsWindowMaximized() const;
756
758 SLATECORE_API bool IsWindowMinimized() const;
759
762
765
771 SLATECORE_API void SetOpacity( const float InOpacity );
772
774 SLATECORE_API float GetOpacity() const;
775
778
780 SLATECORE_API virtual FString ToString() const override;
781
791
799
802
804 SLATECORE_API bool AcceptsInput() const;
805
807 void SetAcceptsInput(bool bEnabled) { bAcceptsInput = bEnabled; }
808
810 SLATECORE_API bool IsUserSized() const;
811
813 SLATECORE_API bool IsAutosized() const;
814
817
819 SLATECORE_API bool IsRegularWindow() const;
820
822 SLATECORE_API bool IsTopmostWindow() const;
823
826 {
828 }
829
831 {
833 }
834
837 {
838 return ExpectedMaxWidth;
839 }
840
843 {
844 return ExpectedMaxHeight;
845 }
846
848 bool HasOSWindowBorder() const { return bHasOSWindowBorder; }
849
852
854 SLATECORE_API bool HasSizingFrame() const;
855
857 SLATECORE_API bool HasCloseBox() const;
858
860 SLATECORE_API bool HasMaximizeBox() const;
861
863 SLATECORE_API bool HasMinimizeBox() const;
864
867 {
868 bIsModalWindow = true;
869 bHasMaximizeButton = false;
870 bHasMinimizeButton = false;
871 }
872
874 {
875 return bIsModalWindow;
876 }
877
883
884 void SetIsHDR(bool bHDR)
885 {
886 bIsHDR = bHDR;
887 }
888
889 bool GetIsHDR() const { return bIsHDR; }
890
895
900
902
903 bool IsVirtualWindow() const { return bVirtualWindow; }
904
906 {
907 return bIsMirrorWindow;
908 }
909
914
916 {
917 return TitleBar;
918 }
919
920 // Events
922
925
927 SLATECORE_API void Maximize();
928 SLATECORE_API void Restore();
929 SLATECORE_API void Minimize();
930
933
938
941
942 SLATECORE_API virtual bool SupportsKeyboardFocus() const override;
943
944 bool IsDrawingEnabled() const { return bIsDrawingEnabled; }
945
946 virtual bool Advanced_IsWindow() const override { return true; }
947 SLATECORE_API virtual bool Advanced_IsInvalidationRoot() const override;
949
950#if WITH_ACCESSIBILITY
953#endif
954private:
955 SLATECORE_API virtual FReply OnFocusReceived( const FGeometry& MyGeometry, const FFocusEvent& InFocusEvent ) override;
956 SLATECORE_API virtual FReply OnMouseButtonDown( const FGeometry& MyGeometry, const FPointerEvent& MouseEvent ) override;
957 SLATECORE_API virtual FReply OnMouseButtonUp( const FGeometry& MyGeometry, const FPointerEvent& MouseEvent ) override;
958 SLATECORE_API virtual FReply OnMouseMove( const FGeometry& MyGeometry, const FPointerEvent& MouseEvent ) override;
959
960 SLATECORE_API virtual int32 OnPaint(const FPaintArgs& Args, const FGeometry& AllottedGeometry, const FSlateRect& MyCullingRect, FSlateWindowElementList& OutDrawElements, int32 LayerId, const FWidgetStyle& InWidgetStyle, bool bParentEnabled) const override;
961
963 SLATECORE_API virtual FVector2D ComputeDesiredSize(float) const override;
964 SLATECORE_API virtual bool ComputeVolatility() const override;
965
967 SLATECORE_API void ResizeWindowSize( FVector2f NewWindowSize );
968
969 SLATECORE_API void OnGlobalInvalidationToggled(bool bGlobalInvalidationEnabled);
970public:
978
980 inline bool IsFocusedInitially() const
981 {
983 }
984
987
990
993
996
999
1002
1005
1012 SLATECORE_API int32 SwitchWorlds( int32 WorldId ) const;
1013
1015 SLATECORE_API bool IsActive() const;
1016
1018 SLATECORE_API bool HasActiveChildren() const;
1019
1021 SLATECORE_API bool HasActiveParent() const;
1022
1027 {
1028 if (bDrivenByWindow)
1029 {
1031 }
1032 else
1033 {
1035 }
1036 }
1037
1042 {
1043 return (ViewportSize.X == 0);
1044 }
1045
1050 {
1051 return (ViewportSize.X != 0) ? ViewportSize : Size;
1052 }
1053
1061
1066
1068 {
1069 if (ensure(Viewport == ViewportRef))
1070 {
1071 Viewport.Reset();
1072 }
1073 }
1074
1076 {
1077 return Viewport.Pin();
1078 }
1079
1087
1090
1093
1095public:
1096
1097 //~ SWidget overrides
1098 SLATECORE_API virtual void Tick( const FGeometry& AllottedGeometry, const double InCurrentTime, const float InDeltaTime ) override;
1099
1102
1105protected:
1110
1113
1114 SLATECORE_API virtual bool CustomPrepass(float LayoutScaleMultiplier) override;
1115protected:
1116
1119
1122
1125
1128
1130 float Opacity;
1131
1134
1137
1140
1143
1146
1149
1154
1157
1160
1163
1166
1169
1172
1175
1178
1181
1184
1187
1190
1193
1195 bool bIsHDR : 1;
1196
1198
1201
1204
1207
1210
1213
1216
1219
1222
1225
1228
1235
1238
1269
1272
1273
1276
1280
1284
1285private:
1287 const FWindowStyle* Style;
1288
1289 const FSlateBrush* WindowBackground;
1290
1291 TSharedPtr<SImage> WindowBackgroundImage;
1292 TSharedPtr<SImage> WindowBorder;
1293 TSharedPtr<SImage> WindowOutline;
1294 TSharedPtr<SWidget> ContentAreaVBox;
1295 EVisibility WindowContentVisibility;
1296protected:
1297
1300
1303
1306
1310
1314
1318
1321
1324
1327
1333
1336
1339
1342
1345
1351
1354
1357
1360
1361 // The window title bar.
1363
1364 // The padding for between the edges of the window and it's content
1366
1367 // The margin around the edges of the window that will be detected as places the user can grab to resize the window.
1369
1370 // Whether or not drawing is enabled for this window
1372
1373protected:
1374
1376
1379
1381
1383
1384 //~ FSlateInvalidationRoot overrides
1387
1388public:
1389
1392
1393private:
1394
1396 TWeakPtr<FActiveTimerHandle> ActiveTimerHandle;
1397};
1398
1399#if WITH_EDITOR
1400
1405{
1407
1409 : Window( InWindow )
1410 , WorldId( -1 )
1411 {
1412 if( Window.IsValid() )
1413 {
1414 WorldId = Window->SwitchWorlds( WorldId );
1415 }
1416 }
1417
1419 {
1420 if( Window.IsValid() )
1421 {
1422 Window->SwitchWorlds( WorldId );
1423 }
1424 }
1425
1426private:
1427
1428 // The window to switch worlds for.
1430
1431 // The worldID serves as identification to the user about the world. It can be anything although -1 is assumed to be always invalid.
1432 int32 WorldId;
1433};
1434
1435#else
1436
1443
1444#endif
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
@ Normal
Definition AndroidInputInterface.h:116
#define ensure( InExpression)
Definition AssertionMacros.h:464
@ INDEX_NONE
Definition CoreMiscDefines.h:150
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define SLATE_STYLE_ARGUMENT(ArgType, ArgName)
Definition DeclarativeSyntaxSupport.h:280
#define SLATE_ATTRIBUTE(AttrType, AttrName)
Definition DeclarativeSyntaxSupport.h:192
#define SLATE_SLOT_BEGIN_ARGS(SlotType, SlotParentType)
Definition DeclarativeSyntaxSupport.h:361
#define SLATE_END_ARGS()
Definition DeclarativeSyntaxSupport.h:116
#define SLATE_SLOT_END_ARGS()
Definition DeclarativeSyntaxSupport.h:386
#define SLATE_DEFAULT_SLOT(DeclarationType, SlotName)
Definition DeclarativeSyntaxSupport.h:444
#define SLATE_ARGUMENT(ArgType, ArgName)
Definition DeclarativeSyntaxSupport.h:208
#define DECLARE_DELEGATE_RetVal_OneParam(ReturnValueType, DelegateName, Param1Type)
Definition DelegateCombinations.h:54
#define DECLARE_DELEGATE(DelegateName)
Definition DelegateCombinations.h:20
#define DECLARE_DELEGATE_OneParam(DelegateName, Param1Type)
Definition DelegateCombinations.h:48
#define DECLARE_MULTICAST_DELEGATE(DelegateName)
Definition DelegateCombinations.h:23
#define DECLARE_MULTICAST_DELEGATE_OneParam(DelegateName, Param1Type)
Definition DelegateCombinations.h:49
return true
Definition ExternalRpcRegistry.cpp:601
const uint32 MaxHeight
Definition GameplayMediaEncoder.cpp:50
const uint32 MaxWidth
Definition GameplayMediaEncoder.cpp:49
EWindowTransparency
Definition GenericWindowDefinition.h:35
EWindowType
Definition GenericWindowDefinition.h:17
EWindowActivationPolicy
Definition GenericWindowDefinition.h:51
#define NSLOCTEXT(InNamespace, InKey, InTextLiteral)
Definition Internationalization.h:300
EAccessibleType
Definition SWidget.h:76
EAutoCenter
Definition SWindow.h:69
ESizingRule
Definition SWindow.h:83
EActiveTimerReturnType
Definition SlateEnums.h:329
EHorizontalAlignment
Definition SlateEnums.h:174
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
uint8_t uint8
Definition binka_ue_file_header.h:8
Definition ActiveTimerHandle.h:12
Definition ChildrenBase.h:27
Definition CoreStyle.h:15
Definition CursorReply.h:16
virtual APPLICATIONCORE_API void SetText(const TCHAR *const Text)
Definition GenericWindow.cpp:168
virtual APPLICATIONCORE_API EWindowMode::Type GetWindowMode() const
Definition GenericWindow.cpp:84
Definition HittestGrid.h:30
Definition SWindow.h:112
virtual FSlateRect GetAbsoluteClientRect() override
Definition SWindow.cpp:36
virtual void Remove() override
Definition SWindow.cpp:31
Definition PaintArgs.h:23
Definition SWidget.h:87
Definition Reply.h:24
Definition SlateInvalidationRoot.h:77
Definition SlateLayoutTransform.h:20
Definition SlateRect.h:26
Definition DrawElements.h:220
Definition Text.h:385
Definition WidgetPath.h:51
Definition WidgetStyle.h:15
Definition Events.h:1206
Definition SlateApplicationBase.h:57
Definition SCompoundWidget.h:22
Definition SImage.h:29
Definition SWindow.cpp:48
Definition SBoxPanel.h:326
Definition SWindow.h:243
bool bInitiallyMinimized
Definition SWindow.h:1159
SLATECORE_API FScopedWidgetSlotArguments AddPopupLayerSlot()
Definition SWindow.cpp:1342
SLATECORE_API bool HasActiveChildren() const
Definition SWindow.cpp:677
SLATECORE_API bool HasMaximizeBox() const
Definition SWindow.cpp:1627
TWeakPtr< SWidget > WidgetToFocusOnActivate
Definition SWindow.h:1279
void SetAcceptsInput(bool bEnabled)
Definition SWindow.h:807
SLATECORE_API bool HasMinimizeBox() const
Definition SWindow.cpp:1633
SLATECORE_API int32 PaintWindow(double CurrentTime, float DeltaTime, FSlateWindowElementList &OutDrawElements, const FWidgetStyle &InWidgetStyle, bool bParentEnabled)
Definition SWindow.cpp:2117
bool bIsModalWindow
Definition SWindow.h:1186
SVerticalBox::FSlot * ContentSlot
Definition SWindow.h:1275
bool bCreateTitleBar
Definition SWindow.h:1142
virtual SLATECORE_API bool CustomPrepass(float LayoutScaleMultiplier) override
Definition SWindow.cpp:1132
EWindowType GetType() const
Definition SWindow.h:437
SLATECORE_API void SetFullWindowOverlayContent(TSharedPtr< SWidget > InContent)
Definition SWindow.cpp:2206
bool bHasCloseButton
Definition SWindow.h:1174
SLATECORE_API void BeginFullWindowOverlayTransition()
Definition SWindow.cpp:2275
SLATECORE_API void RemovePopupLayerSlot(const TSharedRef< SWidget > &WidgetToRemove)
Definition SWindow.cpp:1349
EWindowMode::Type GetWindowMode() const
Definition SWindow.h:749
SLATECORE_API void NotifyWindowBeingDestroyed()
Definition SWindow.cpp:1402
SLATECORE_API bool IsMorphingSize() const
Definition SWindow.cpp:1076
bool bHasMinimizeButton
Definition SWindow.h:1177
SLATECORE_API void InitialMaximize()
Definition SWindow.cpp:1516
void UnsetViewport(TSharedRef< ISlateViewport > ViewportRef)
Definition SWindow.h:1067
SLATECORE_API EVisibility GetWindowVisibility() const
Definition SWindow.cpp:1144
EWindowZone::Type WindowZone
Definition SWindow.h:1271
static SLATECORE_API TSharedRef< SWindow > MakeNotificationWindow()
Definition SWindow.cpp:420
int32 ExpectedMaxWidth
Definition SWindow.h:1353
TSharedPtr< ISlateViewport > GetViewport()
Definition SWindow.h:1075
SLATECORE_API float GetOpacity() const
Definition SWindow.cpp:1549
SLATECORE_API void HACK_ForceToFront()
Definition SWindow.cpp:1202
SLATECORE_API void SetNativeWindow(TSharedRef< FGenericWindow > InNativeWindow)
Definition SWindow.cpp:1268
UE::Slate::FDeprecateVector2DResult Size
Definition SWindow.h:1221
SLATECORE_API FGeometry GetWindowGeometryInScreen() const
Definition SWindow.cpp:802
UE::Slate::FDeprecateVector2DResult InitialDesiredScreenPosition
Definition SWindow.h:1209
SLATECORE_API void EnableWindow(bool bEnable)
Definition SWindow.cpp:1474
SLATECORE_API void UpdateMorphTargetPosition(const UE::Slate::FDeprecateVector2DParameter &TargetPosition)
Definition SWindow.cpp:1161
bool bVirtualWindow
Definition SWindow.h:1171
SLATECORE_API bool IsMorphing() const
Definition SWindow.cpp:1071
SLATECORE_API FSlateRect GetClientRectInScreen() const
Definition SWindow.cpp:869
SLATECORE_API bool RemoveDescendantWindow(const TSharedRef< SWindow > &DescendantToRemove)
Definition SWindow.cpp:1889
virtual SLATECORE_API FString ToString() const override
Definition SWindow.cpp:1561
SLATECORE_API UE::Slate::FDeprecateVector2DResult GetWindowSizeFromClientSize(UE::Slate::FDeprecateVector2DParameter InClientSize, TOptional< float > DPIScale=TOptional< float >())
Definition SWindow.cpp:193
FOnWindowActivated OnWindowActivated
Definition SWindow.h:1308
bool bHasMaximizeButton
Definition SWindow.h:1180
SLATECORE_API void SetSizeLimits(const FWindowSizeLimits &InSizeLimits)
Definition SWindow.cpp:716
FOnSwitchWorldHack OnWorldSwitchHack
Definition SWindow.h:1344
SLATECORE_API bool HasOverlay() const
Definition SWindow.cpp:1305
SLATECORE_API FSlateLayoutTransform GetLocalToWindowTransform() const
Definition SWindow.cpp:826
SLATECORE_API void SetContent(TSharedRef< SWidget > InContent)
Definition SWindow.cpp:1274
UE::Slate::FDeprecateVector2DResult ScreenPosition
Definition SWindow.h:1215
virtual SLATECORE_API bool Advanced_IsInvalidationRoot() const override
Definition SWindow.cpp:1114
SLATECORE_API FOptionalSize GetTitleBarSize() const
Definition SWindow.cpp:2192
void SetWidgetToFocusOnActivate(TSharedPtr< SWidget > InWidget)
Definition SWindow.h:787
SLATECORE_API void SetOnWindowClosed(const FOnWindowClosed &InDelegate)
Definition SWindow.cpp:1361
SLATECORE_API TSharedPtr< SWindow > GetParentWindow() const
Definition SWindow.cpp:1872
bool bIsMirrorWindow
Definition SWindow.h:1189
SLATECORE_API bool RemoveOverlaySlot(const TSharedRef< SWidget > &InContent)
Definition SWindow.cpp:1321
SLATECORE_API UE::Slate::FDeprecateVector2DResult GetClientSizeInScreen() const
Definition SWindow.cpp:886
TSharedPtr< IWindowTitleBar > TitleBar
Definition SWindow.h:1362
virtual SLATECORE_API FCursorReply OnCursorQuery(const FGeometry &MyGeometry, const FPointerEvent &CursorEvent) const override
Definition SWindow.cpp:1638
SLATECORE_API int32 GetCornerRadius()
Definition SWindow.cpp:1771
SLATECORE_API void AddChildWindow(const TSharedRef< SWindow > &ChildWindow)
Definition SWindow.cpp:1856
SLATECORE_API bool AppearsInTaskbar() const
Definition SWindow.cpp:1355
static SLATECORE_API TSharedRef< SWindow > MakeStyledCursorDecorator(const FWindowStyle &InStyle)
Definition SWindow.cpp:482
EWindowType Type
Definition SWindow.h:1118
bool IsMirrorWindow()
Definition SWindow.h:905
SLATECORE_API void InitialMinimize()
Definition SWindow.cpp:1524
bool IsModalWindow()
Definition SWindow.h:873
virtual SLATECORE_API bool SupportsKeyboardFocus() const override
Definition SWindow.cpp:1776
SLATECORE_API void ReshapeWindow(UE::Slate::FDeprecateVector2DParameter NewPosition, UE::Slate::FDeprecateVector2DParameter NewSize)
Definition SWindow.cpp:953
FOnWindowDeactivated OnWindowDeactivated
Definition SWindow.h:1312
SLATECORE_API void EndFullWindowOverlayTransition()
Definition SWindow.cpp:2281
SLATECORE_API FSlateLayoutTransform GetLocalToScreenTransform() const
Definition SWindow.cpp:821
TSharedPtr< FGenericWindow > NativeWindow
Definition SWindow.h:1302
ESizingRule SizingRule
Definition SWindow.h:1133
FOnWindowDeactivatedEvent WindowDeactivatedEvent
Definition SWindow.h:1313
SLATECORE_API bool AcceptsInput() const
Definition SWindow.cpp:1573
SLATECORE_API void SetWindowBackground(const FSlateBrush *InWindowBackground)
Definition SWindow.cpp:2301
SLATECORE_API void DrawAttention(const FWindowDrawAttentionParameters &Parameters)
Definition SWindow.cpp:1186
void SetViewport(TSharedRef< ISlateViewport > ViewportRef)
Definition SWindow.h:1062
SLATECORE_API FSlateRect GetNonMaximizedRectInScreen() const
Definition SWindow.cpp:842
bool GetIsHDR() const
Definition SWindow.h:889
SLATECORE_API TSharedRef< SWidget > GetContent()
Definition SWindow.cpp:1293
FMargin LayoutBorder
Definition SWindow.h:1365
void SetIsHDR(bool bHDR)
Definition SWindow.h:884
bool bShouldShowWindowContentDuringOverlay
Definition SWindow.h:1350
bool bSizeWillChangeOften
Definition SWindow.h:1153
void SetViewportScaleUIOverride(float InViewportScaleUIOverride)
Definition SWindow.h:891
SLATECORE_API void UpdateWindowContentVisibility()
Definition SWindow.cpp:2310
TAttribute< FText > CloseButtonToolTipText
Definition SWindow.h:1124
SLATECORE_API void SetNativeWindowButtonsVisibility(bool bVisible)
Definition SWindow.cpp:2287
TSharedPtr< class SPopupLayer > PopupLayer
Definition SWindow.h:1332
SLATECORE_API EActiveTimerReturnType TriggerPlayMorphSequence(double InCurrentTime, float InDeltaTime)
Definition SWindow.cpp:2295
UE::Slate::FDeprecateVector2DResult PreFullscreenPosition
Definition SWindow.h:1218
SLATECORE_API FSlateRect GetRectInScreen() const
Definition SWindow.cpp:859
int32 FocusUserIndex
Definition SWindow.h:1359
TWeakPtr< ISlateViewport > Viewport
Definition SWindow.h:1227
SLATECORE_API void Restore()
Definition SWindow.cpp:1755
bool ShouldPreserveAspectRatio() const
Definition SWindow.h:830
SLATECORE_API bool HasCloseBox() const
Definition SWindow.cpp:1621
virtual SLATECORE_API int32 PaintSlowPath(const FSlateInvalidationContext &InvalidationContext) override
Definition SWindow.cpp:2094
bool IsViewportSizeDrivenByWindow() const
Definition SWindow.h:1041
SLATECORE_API bool IsWindowMinimized() const
Definition SWindow.cpp:1504
SLATECORE_API EWindowTransparency GetTransparencySupport() const
Definition SWindow.cpp:1554
float TitleBarSize
Definition SWindow.h:1237
SLATECORE_API bool IsRegularWindow() const
Definition SWindow.cpp:1596
UE::Slate::FDeprecateVector2DResult MoveResizeStart
Definition SWindow.h:936
TSharedPtr< IWindowTitleBar > GetTitleBar() const
Definition SWindow.h:915
FRequestDestroyWindowOverride RequestDestroyWindowOverride
Definition SWindow.h:1323
TWeakPtr< SWindow > ParentWindowPtr
Definition SWindow.h:1338
bool bDragAnywhere
Definition SWindow.h:1127
bool bManualManageDPI
Definition SWindow.h:1197
SLATECORE_API int32 SwitchWorlds(int32 WorldId) const
Definition SWindow.cpp:1912
SLATECORE_API void SetCachedSize(UE::Slate::FDeprecateVector2DParameter NewSize)
Definition SWindow.cpp:1055
void SetTitleBar(const TSharedPtr< IWindowTitleBar > InTitleBar)
Definition SWindow.h:910
TAttribute< FText > Title
Definition SWindow.h:1121
bool bIsDrawingEnabled
Definition SWindow.h:1371
FSlateRect MoveResizeRect
Definition SWindow.h:937
SLATE_BEGIN_ARGS(SWindow)
Definition SWindow.h:247
SLATECORE_API void Construct(const FArguments &InArgs)
Definition SWindow.cpp:235
virtual SLATECORE_API const FSlateInvalidationRoot * Advanced_AsInvalidationRoot() const override
Definition SWindow.cpp:1119
SLATECORE_API FGeometry GetWindowGeometryInWindow() const
Definition SWindow.cpp:811
UE::Slate::FDeprecateVector2DResult ViewportSize
Definition SWindow.h:1224
SLATECORE_API void MoveWindowTo(UE::Slate::FDeprecateVector2DParameter NewPosition)
Definition SWindow.cpp:932
void SetAsModalWindow()
Definition SWindow.h:866
SLATECORE_API TSharedPtr< FGenericWindow > GetNativeWindow()
Definition SWindow.cpp:1210
SLATECORE_API FSlateRect GetClippingRectangleInWindow() const
Definition SWindow.cpp:891
FOnWindowActivatedEvent & GetOnWindowActivatedEvent()
Definition SWindow.h:706
SLATECORE_API bool IsTopmostWindow() const
Definition SWindow.cpp:1602
int32 GetExpectedMaxWidth() const
Definition SWindow.h:836
virtual SLATECORE_API bool OnIsActiveChanged(const FWindowActivateEvent &ActivateEvent)
Definition SWindow.cpp:1668
float GetViewportScaleUIOverride() const
Definition SWindow.h:901
SLATECORE_API TSharedPtr< SWindow > GetTopmostAncestor()
Definition SWindow.cpp:1878
SLATECORE_API bool IsScreenspaceMouseWithin(UE::Slate::FDeprecateVector2DParameter ScreenspaceMouseCoordinate) const
Definition SWindow.cpp:1608
SLATECORE_API void Resize(UE::Slate::FDeprecateVector2DParameter NewClientSize)
Definition SWindow.cpp:995
SLATECORE_API void StartMorph()
Definition SWindow.cpp:1101
EAutoCenter AutoCenterRule
Definition SWindow.h:1136
TSharedPtr< SWidget > FullWindowOverlayWidget
Definition SWindow.h:1335
float ViewportScaleUIOverride
Definition SWindow.h:1234
bool bAcceptsInput
Definition SWindow.h:1203
FOnWindowClosed OnWindowClosed
Definition SWindow.h:1316
TSharedPtr< SWidget > TitleArea
Definition SWindow.h:1274
SLATECORE_API SOverlay::FScopedWidgetSlotArguments AddOverlaySlot(const int32 ZOrder=INDEX_NONE)
Definition SWindow.cpp:1310
bool bIsTopmostWindow
Definition SWindow.h:1148
EWindowActivationPolicy WindowActivationPolicy
Definition SWindow.h:1206
SLATECORE_API UE::Slate::FDeprecateVector2DResult GetDesiredSizeDesktopPixels() const
Definition SWindow.cpp:2198
SLATECORE_API void SetRequestDestroyWindowOverride(const FRequestDestroyWindowOverride &InDelegate)
Definition SWindow.cpp:1373
SLATECORE_API bool IsVisible() const
Definition SWindow.cpp:1489
UE::Slate::FDeprecateVector2DResult GetViewportSize() const
Definition SWindow.h:1049
SLATECORE_API void RequestDestroyWindow()
Definition SWindow.cpp:1379
SLATECORE_API bool IsActive() const
Definition SWindow.cpp:672
SLATECORE_API void SetSizingRule(ESizingRule InSizingRule)
Definition SWindow.cpp:1590
SLATECORE_API void SetDPIScaleFactor(const float Factor)
Definition SWindow.cpp:1230
bool IsDrawingEnabled() const
Definition SWindow.h:944
SLATECORE_API bool IsAutosized() const
Definition SWindow.cpp:1585
FOnWindowDeactivatedEvent & GetOnWindowDeactivatedEvent()
Definition SWindow.h:709
TArray< TSharedRef< SWindow > > ChildWindows
Definition SWindow.h:1341
bool bIsPopupWindow
Definition SWindow.h:1145
FText GetTitle() const
Definition SWindow.h:447
FOnWindowMoved OnWindowMoved
Definition SWindow.h:1320
TUniquePtr< FHittestGrid > HittestGrid
Definition SWindow.h:1305
SLATECORE_API void MorphToPosition(const FCurveSequence &Sequence, const float TargetOpacity, const UE::Slate::FDeprecateVector2DParameter &TargetPosition)
Definition SWindow.cpp:1082
SLATECORE_API void SetWindowMode(EWindowMode::Type WindowMode)
Definition SWindow.cpp:2230
SLATECORE_API UE::Slate::FDeprecateVector2DResult GetPositionInScreen() const
Definition SWindow.cpp:832
SLATECORE_API float GetDPIScaleFactor() const
Definition SWindow.cpp:1220
FWindowSizeLimits SizeLimits
Definition SWindow.h:1299
SLATECORE_API FWindowSizeLimits GetSizeLimits() const
Definition SWindow.cpp:711
SLATECORE_API void SetOnWorldSwitchHack(FOnSwitchWorldHack &InOnWorldSwitchHack)
Definition SWindow.cpp:1907
bool HasOSWindowBorder() const
Definition SWindow.h:848
SLATECORE_API FHittestGrid & GetHittestGrid()
Definition SWindow.cpp:706
SLATECORE_API bool IsUserSized() const
Definition SWindow.cpp:1580
SLATECORE_API void Minimize()
Definition SWindow.cpp:1763
SLATECORE_API FMargin GetNonMaximizedWindowBorderSize() const
Definition SWindow.cpp:922
SLATECORE_API void HideWindow()
Definition SWindow.cpp:1466
SLATECORE_API void UpdateMorphTargetShape(const FSlateRect &TargetShape)
Definition SWindow.cpp:1156
int32 ExpectedMaxHeight
Definition SWindow.h:1356
bool bShouldPreserveAspectRatio
Definition SWindow.h:1192
bool IsVirtualWindow() const
Definition SWindow.h:903
void SetIndependentViewportSize(const UE::Slate::FDeprecateVector2DParameter &VP)
Definition SWindow.h:1057
bool bHasSizingFrame
Definition SWindow.h:1183
void SetViewportSizeDrivenByWindow(bool bDrivenByWindow)
Definition SWindow.h:1026
SLATECORE_API bool IsWindowMaximized() const
Definition SWindow.cpp:1494
SLATECORE_API void ConstructWindowInternals()
Definition SWindow.cpp:537
SLATECORE_API FSlateRect GetMorphTargetShape() const
Definition SWindow.cpp:1173
SLATECORE_API TAttribute< FText > GetWindowCloseButtonToolTipText() const
Definition SWindow.cpp:1151
UE::Slate::FDeprecateVector2DResult InitialDesiredSize
Definition SWindow.h:1212
virtual SLATECORE_API TSharedRef< SWidget > MakeWindowTitleBar(const TSharedRef< SWindow > &Window, const TSharedPtr< SWidget > &CenterContent, EHorizontalAlignment CenterContentAlignment)
Definition SWindow.cpp:506
SLATECORE_API void SetOpacity(const float InOpacity)
Definition SWindow.cpp:1537
FOnWindowClosedEvent & GetOnWindowClosedEvent()
Definition SWindow.h:715
TWeakPtr< SWidget > WidgetFocusedOnDeactivate
Definition SWindow.h:1283
int32 GetExpectedMaxHeight() const
Definition SWindow.h:842
static SLATECORE_API TSharedRef< SWindow > MakeToolTipWindow()
Definition SWindow.cpp:445
bool bFocusWhenFirstShown
Definition SWindow.h:1165
SLATECORE_API bool HasFullWindowOverlayContent() const
Definition SWindow.cpp:2270
void SetMirrorWindow(bool bSetMirrorWindow)
Definition SWindow.h:879
bool IsManualManageDPIChanges() const
Definition SWindow.h:598
void ResetViewportScaleUIOverride()
Definition SWindow.h:896
SLATECORE_API FMargin GetWindowBorderSize(bool bIncTitleBar=false) const
Definition SWindow.cpp:898
SLATECORE_API const TArray< TSharedRef< SWindow > > & GetChildWindows() const
Definition SWindow.cpp:1846
SLATECORE_API void ProcessWindowInvalidation()
Definition SWindow.cpp:1124
SLATECORE_API EWindowZone::Type GetCurrentWindowZone(UE::Slate::FDeprecateVector2DParameter LocalMousePosition)
Definition SWindow.cpp:1923
SLATECORE_API UE::Slate::FDeprecateVector2DResult GetInitialDesiredPositionInScreen() const
Definition SWindow.cpp:797
static SLATECORE_API UE::Slate::FDeprecateVector2DResult ComputeWindowSizeForContent(UE::Slate::FDeprecateVector2DParameter ContentSize)
Definition SWindow.cpp:498
bool bAllowFastUpdate
Definition SWindow.h:1200
SLATECORE_API void Maximize()
Definition SWindow.cpp:1747
float Opacity
Definition SWindow.h:1130
bool bHasOSWindowBorder
Definition SWindow.h:1168
SLATECORE_API EWindowActivationPolicy ActivationPolicy() const
Definition SWindow.cpp:1567
bool SizeWillChangeOften() const
Definition SWindow.h:825
FOnWindowActivatedEvent WindowActivatedEvent
Definition SWindow.h:1309
SLATECORE_API void SetCachedScreenPosition(UE::Slate::FDeprecateVector2DParameter NewPosition)
Definition SWindow.cpp:1046
SLATECORE_API void SetManualManageDPIChanges(const bool bManualDPI)
Definition SWindow.cpp:1238
static SLATECORE_API TSharedRef< SWindow > MakeCursorDecorator()
Definition SWindow.cpp:467
virtual SLATECORE_API TSharedRef< SWidget > GetRootWidget() override
Definition SWindow.cpp:2089
SLATECORE_API FSlateRect GetFullScreenInfo() const
Definition SWindow.cpp:1028
SLATECORE_API bool IsDescendantOf(const TSharedPtr< SWindow > &ParentWindow) const
Definition SWindow.cpp:1248
SLATECORE_API UE::Slate::FDeprecateVector2DResult GetMorphTargetPosition() const
Definition SWindow.cpp:1167
EWindowTransparency TransparencySupport
Definition SWindow.h:1139
SLATECORE_API void MorphToShape(const FCurveSequence &Sequence, const float TargetOpacity, const FSlateRect &TargetShape)
Definition SWindow.cpp:1092
SLATECORE_API UE::Slate::FDeprecateVector2DResult GetInitialDesiredSizeInScreen() const
Definition SWindow.cpp:792
TSharedPtr< SOverlay > WindowOverlay
Definition SWindow.h:1326
SLATECORE_API void FlashWindow()
Definition SWindow.cpp:1178
virtual SLATECORE_API TSharedPtr< FPopupLayer > OnVisualizePopup(const TSharedRef< SWidget > &PopupContent) override
Definition SWindow.cpp:1331
SLATECORE_API void SetAllowFastUpdate(bool bInAllowFastUpdate)
Definition SWindow.cpp:721
virtual SLATECORE_API EHorizontalAlignment GetTitleAlignment()
Definition SWindow.cpp:517
SLATECORE_API void ShowWindow()
Definition SWindow.cpp:1422
SLATECORE_API UE::Slate::FDeprecateVector2DResult GetSizeInScreen() const
Definition SWindow.cpp:837
struct SWindow::FMorpher Morpher
SLATECORE_API bool HasSizingFrame() const
Definition SWindow.cpp:1615
bool bHasEverBeenShown
Definition SWindow.h:1162
virtual bool Advanced_IsWindow() const override
Definition SWindow.h:946
SLATECORE_API void SetOnWindowMoved(const FOnWindowMoved &InDelegate)
Definition SWindow.cpp:1367
SLATECORE_API bool HasActiveParent() const
Definition SWindow.cpp:690
SLATECORE_API void DestroyWindowImmediately()
Definition SWindow.cpp:1392
bool bInitiallyMaximized
Definition SWindow.h:1156
FOnWindowClosedEvent WindowClosedEvent
Definition SWindow.h:1317
bool bIsHDR
Definition SWindow.h:1195
bool IsFocusedInitially() const
Definition SWindow.h:980
TWeakPtr< SWidget > GetWidgetFocusedOnDeactivate()
Definition SWindow.h:795
FMargin UserResizeBorder
Definition SWindow.h:1368
void SetTitle(const FText &InTitle)
Definition SWindow.h:457
EWindowZone::Type MoveResizeZone
Definition SWindow.h:935
SLATECORE_API void BringToFront(bool bForce=false)
Definition SWindow.cpp:1194
Definition Array.h:670
Definition Attribute.h:17
const ObjectType & Get() const
Definition Attribute.h:241
Definition Children.h:461
Definition SharedPointer.h:692
UE_FORCEINLINE_HINT const bool IsValid() const
Definition SharedPointer.h:1085
Definition SharedPointer.h:153
Definition SlotBase.h:122
void Construct(const FChildren &SlotOwner, FSlotArguments &&InArgs)
Definition SlotBase.h:212
Definition UniquePtr.h:107
Definition SharedPointer.h:1295
UE_FORCEINLINE_HINT TSharedPtr< ObjectType, Mode > Pin() const &
Definition SharedPointer.h:1512
UE_FORCEINLINE_HINT void Reset()
Definition SharedPointer.h:1544
Type
Definition GenericWindow.h:17
Type
Definition GenericApplicationMessageHandler.h:87
Definition SWindow.h:95
constexpr float DefaultTitleBarSize
Definition SWindow.h:97
Definition SScissorRectBox.cpp:10
FDeprecateSlateVector2D FDeprecateVector2DResult
Definition SlateVector2.h:469
Definition AdvancedWidgetsModule.cpp:13
@ false
Definition radaudio_common.h:23
Definition Visibility.h:12
Definition CurveSequence.h:26
Definition Events.h:51
Definition Geometry.h:40
Definition Margin.h:17
Definition SlateStructs.h:13
Definition Events.h:695
Definition SWindow.h:130
void SetDesktopPosition(TAttribute< FVector2D > InDesktopPosition)
Definition SWindow.h:187
void SetWidthOverride(TAttribute< float > InWidthOverride)
Definition SWindow.h:193
void SetClampToWindow(TAttribute< bool > InClamp_Attribute)
Definition SWindow.h:211
void Construct(const FChildren &SlotOwner, FSlotArguments &&InArgs)
Definition SWindow.h:157
FPopupLayerSlot()
Definition SWindow.h:132
void SetClampBuffer(TAttribute< FVector2D > InClampBuffer_Attribute)
Definition SWindow.h:217
void SetScale(TAttribute< float > InScale)
Definition SWindow.h:205
void SetHeightOverride(TAttribute< float > InHeightOverride)
Definition SWindow.h:199
Definition SWindow.h:1438
FScopedSwitchWorldHack(const FWidgetPath &WidgetPath)
Definition SWindow.h:1439
~FScopedSwitchWorldHack()
Definition SWindow.h:1441
FScopedSwitchWorldHack(TSharedPtr< SWindow > InWindow)
Definition SWindow.h:1440
Definition SlateBrush.h:239
Definition SlateInvalidationRoot.h:29
Definition SlotBase.h:25
Definition GenericWindow.h:80
Definition GenericApplicationMessageHandler.h:151
Definition SlateTypes.h:2137
Definition SWindow.h:102
EWindowTransparency Value
Definition SWindow.h:105
FWindowTransparency(EWindowTransparency In)
Definition SWindow.h:103
Definition SWindow.h:1241
bool bIsAnimatingWindowSize
Definition SWindow.h:1266
FSlateRect TargetMorphShape
Definition SWindow.h:1257
float StartingOpacity
Definition SWindow.h:1250
bool bIsActive
Definition SWindow.h:1263
FCurveSequence Sequence
Definition SWindow.h:1260
FMorpher()
Definition SWindow.h:1242
float TargetOpacity
Definition SWindow.h:1252
FSlateRect StartingMorphShape
Definition SWindow.h:1255
Definition Optional.h:131
static CORE_API const TVector2< float > ZeroVector
Definition Vector2D.h:63
Definition SlateVector2.h:485