UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SUniformWrapPanel.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"
6#include "Misc/Attribute.h"
7#include "Layout/Visibility.h"
8#include "SlotBase.h"
9#include "Layout/Margin.h"
10#include "Layout/Children.h"
12#include "Widgets/SPanel.h"
13#include "Types/SlateEnums.h"
14
16
19{
21
22public:
40
43
51
64
66 SLATE_SLOT_ARGUMENT(FSlot, Slots)
67
68
69 SLATE_ATTRIBUTE(FMargin, SlotPadding)
70
71
72 SLATE_ATTRIBUTE(int32, NumColumnsOverride)
73
74
75 SLATE_ATTRIBUTE(float, MinDesiredSlotWidth)
76
77
78 SLATE_ATTRIBUTE(float, MinDesiredSlotHeight)
79
80
81 SLATE_ATTRIBUTE(float, MaxDesiredSlotWidth)
82
83
84 SLATE_ATTRIBUTE(float, MaxDesiredSlotHeight)
85
86
87 SLATE_ATTRIBUTE(bool, EvenRowDistribution)
88
89
91
93
94 SLATE_API void Construct( const FArguments& InArgs );
95
96 //~ Begin SPanel Interface
99 //~ End SPanel Interface
100
103
106
109
112
115
118
122
125 bool GetEvenRowDistribution() { return EvenRowDistribution.Get(); }
126
129
137
140
142 int32 NumSlots() const { return Children.Num(); }
143
144protected:
145 // Begin SWidget overrides.
146 SLATE_API virtual FVector2D ComputeDesiredSize(float) const override;
147 // End SWidget overrides.
148
150
151private:
152 TPanelChildren<FSlot> Children;
153 TSlateAttribute<FMargin> SlotPadding;
154
156 mutable int32 NumColumns;
157 mutable int32 NumRows;
158 mutable int32 NumVisibleChildren;
159
160 TSlateAttribute<int32> NumColumnsOverride;
161
162 TSlateAttribute<float> MinDesiredSlotWidth;
163 TSlateAttribute<float> MinDesiredSlotHeight;
164
165 TSlateAttribute<float> MaxDesiredSlotWidth;
166 TSlateAttribute<float> MaxDesiredSlotHeight;
167
169 TSlateAttribute<bool> EvenRowDistribution;
170};
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
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_SLOT_ARGUMENT(SlotType, SlotName)
Definition DeclarativeSyntaxSupport.h:348
#define SLATE_ATTRIBUTE(AttrType, AttrName)
Definition DeclarativeSyntaxSupport.h:192
#define SLATE_END_ARGS()
Definition DeclarativeSyntaxSupport.h:116
#define SLATE_SLOT_END_ARGS()
Definition DeclarativeSyntaxSupport.h:386
#define SLATE_DECLARE_WIDGET_API(WidgetType, ParentType, ModuleApiDefine)
Definition SlateControlledConstruction.h:22
EHorizontalAlignment
Definition SlateEnums.h:174
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition ArrangedChildren.h:15
Definition ChildrenBase.h:27
Definition SPanel.h:30
void Construct()
Definition SPanel.h:65
Definition SUniformWrapPanel.h:19
virtual SLATE_API FChildren * GetChildren() override
Definition SUniformWrapPanel.cpp:207
SLATE_API FScopedWidgetSlotArguments AddSlot()
Definition SUniformWrapPanel.cpp:252
SLATE_API SUniformWrapPanel()
Definition SUniformWrapPanel.cpp:19
virtual SLATE_API FVector2D ComputeDesiredSize(float) const override
Definition SUniformWrapPanel.cpp:171
int32 NumSlots() const
Definition SUniformWrapPanel.h:142
bool GetEvenRowDistribution()
Definition SUniformWrapPanel.h:125
SLATE_API void SetSlotPadding(TAttribute< FMargin > InSlotPadding)
Definition SUniformWrapPanel.cpp:212
SLATE_API void SetMaxDesiredSlotWidth(TAttribute< float > InMaxDesiredSlotWidth)
Definition SUniformWrapPanel.cpp:227
EHorizontalAlignment GetHorizontalAlignment()
Definition SUniformWrapPanel.h:121
virtual SLATE_API ~SUniformWrapPanel()
virtual SLATE_API void OnArrangeChildren(const FGeometry &AllottedGeometry, FArrangedChildren &ArrangedChildren) const override
Definition SUniformWrapPanel.cpp:51
SLATE_BEGIN_ARGS(SUniformWrapPanel)
Definition SUniformWrapPanel.h:52
SLATE_API void SetHorizontalAlignment(TAttribute< EHorizontalAlignment > InHAlignment)
Definition SUniformWrapPanel.cpp:242
SLATE_API void SetMaxDesiredSlotHeight(TAttribute< float > InMaxDesiredSlotHeight)
Definition SUniformWrapPanel.cpp:237
SLATE_API void SetMinDesiredSlotWidth(TAttribute< float > InMinDesiredSlotWidth)
Definition SUniformWrapPanel.cpp:217
SLATE_API void SetNumColumnsOverride(TAttribute< int32 > InNumColumnsOverride)
Definition SUniformWrapPanel.cpp:232
static FSlot::FSlotArguments Slot()
Definition SUniformWrapPanel.h:47
SLATE_API void SetEvenRowDistribution(TAttribute< bool > InEvenRowDistribution)
Definition SUniformWrapPanel.cpp:247
SLATE_API FVector2D ComputeUniformCellSize() const
Definition SUniformWrapPanel.cpp:130
SLATE_API void SetMinDesiredSlotHeight(TAttribute< float > InMinDesiredSlotHeight)
Definition SUniformWrapPanel.cpp:222
SLATE_API bool RemoveSlot(const TSharedRef< SWidget > &SlotWidget)
Definition SUniformWrapPanel.cpp:257
SLATE_API void ClearChildren()
Definition SUniformWrapPanel.cpp:262
Definition BasicLayoutWidgetSlot.h:19
void ConstructMixin(const FChildren &SlotOwner, FSlotArgumentsMixin &&InArgs)
Definition BasicLayoutWidgetSlot.h:56
Definition Attribute.h:17
Definition Children.h:461
virtual int32 Num() const override
Definition Children.h:485
Definition SharedPointer.h:153
Definition SlotBase.h:122
void Construct(const FChildren &SlotOwner, FSlotArguments &&InArgs)
Definition SlotBase.h:212
@ false
Definition radaudio_common.h:23
static SLATECORE_API const EVisibility SelfHitTestInvisible
Definition Visibility.h:26
Definition Geometry.h:40
Definition Margin.h:17
Definition SlotBase.h:25
Definition SUniformWrapPanel.h:25
SLATE_SLOT_BEGIN_ARGS_OneMixin(FSlot, TSlotBase< FSlot >, TAlignmentWidgetSlotMixin< FSlot >) void Construct(const FChildren &SlotOwner
FSlot()
Definition SUniformWrapPanel.h:26
FSlotArguments && InArgs
Definition SUniformWrapPanel.h:35
const ObjectType & Get() const
Definition SlateAttributeBase.inl:240