UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SRadialBox.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"
9#include "SlotBase.h"
10#include "Widgets/SWidget.h"
11#include "Layout/Children.h"
12#include "Widgets/SPanel.h"
13
15
19class SRadialBox : public SPanel
20{
21
22public:
23
25 class FSlot : public TSlotBase<FSlot>
26 {
27 public:
29
33 };
34
35
47
49 SLATE_SLOT_ARGUMENT( FSlot, Slots )
50
51
52 SLATE_ATTRIBUTE( float, PreferredWidth )
53
54
56
57
58 SLATE_ARGUMENT( float, StartingAngle)
59
60
61 SLATE_ARGUMENT(bool, bDistributeItemsEvenly)
62
63
64 SLATE_ARGUMENT(float, AngleBetweenItems)
65
66
67 SLATE_ARGUMENT(float, SectorCentralAngle)
68
69
70 SLATE_ARGUMENT(bool, bClockwiseOrder)
71
73
75
76 static SLATE_API FSlot::FSlotArguments Slot();
77
80
87
88 SLATE_API void Construct( const FArguments& InArgs );
89
90 SLATE_API virtual void Tick( const FGeometry& AllottedGeometry, const double InCurrentTime, const float InDeltaTime ) override;
91
93
95
97
99
100 void SetStartingAngle(float InStartingAngle) { StartingAngle = InStartingAngle; }
104
106
107private:
108
110 float InternalNormalizeAngle(float Angle) const;
111
114
118 float StartingAngle;
119
121 float SectorCentralAngle;
122
124 float AngleBetweenItems;
125
127 bool bDistributeItemsEvenly;
128
130 bool bUseAllottedWidth;
131
133 bool bClockwiseOrder;
134
135 class FChildArranger;
137};
138
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_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_ARGUMENT(ArgType, ArgName)
Definition DeclarativeSyntaxSupport.h:208
return true
Definition ExternalRpcRegistry.cpp:601
Definition ArrangedChildren.h:15
Definition ChildrenBase.h:27
Definition SPanel.h:30
void Construct()
Definition SPanel.h:65
Definition SRadialBox.cpp:52
Definition SRadialBox.h:26
Definition SRadialBox.h:20
void SetAngleBetweenItems(float InAngleBetweenItems)
Definition SRadialBox.h:101
SLATE_API void SetSectorCentralAngle(float InSectorCentralAngle)
Definition SRadialBox.cpp:159
void SetStartingAngle(float InStartingAngle)
Definition SRadialBox.h:100
SLATE_BEGIN_ARGS(SRadialBox)
Definition SRadialBox.h:36
virtual SLATE_API void OnArrangeChildren(const FGeometry &AllottedGeometry, FArrangedChildren &ArrangedChildren) const override
Definition SRadialBox.cpp:127
SLATE_API void ClearChildren()
Definition SRadialBox.cpp:135
SLATE_API void SetUseAllottedWidth(bool bInUseAllottedWidth)
Definition SRadialBox.cpp:164
void SetDistributeItemsEvenly(bool bInDistributeItemsEvenly)
Definition SRadialBox.h:102
virtual SLATE_API FVector2D ComputeDesiredSize(float) const override
Definition SRadialBox.cpp:140
SLATE_API FScopedWidgetSlotArguments AddSlot()
Definition SRadialBox.cpp:17
static SLATE_API FSlot::FSlotArguments Slot()
Definition SRadialBox.cpp:12
SLATE_API int32 RemoveSlot(const TSharedRef< SWidget > &SlotWidget)
Definition SRadialBox.cpp:22
virtual SLATE_API FChildren * GetChildren() override
Definition SRadialBox.cpp:154
Definition SWidget.h:165
Definition Children.h:461
Definition SharedPointer.h:153
Definition SlotBase.h:122
@ false
Definition radaudio_common.h:23
static SLATECORE_API const EVisibility SelfHitTestInvisible
Definition Visibility.h:26
Definition Geometry.h:40