UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SPanel.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 "Widgets/SWidget.h"
9
11class FChildren;
12class FPaintArgs;
14
15template <>
17{
18 static constexpr bool SupportsInvalidation() { return true; }
19};
20
28class SPanel
29 : public SWidget
30{
31public:
32
40 virtual void OnArrangeChildren( const FGeometry& AllottedGeometry, FArrangedChildren& ArrangedChildren ) const override = 0;
41
48 virtual FVector2D ComputeDesiredSize(float) const override = 0;
49
57 virtual FChildren* GetChildren() override = 0;
58
59public:
60
65 void Construct() { }
66
67public:
68
69 // SWidget overrides
70
71 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;
72
73protected:
74
78 SLATECORE_API int32 PaintArrangedChildren( const FPaintArgs& Args, const FArrangedChildren& ArrangedChildren, const FGeometry& AllottedGeometry, const FSlateRect& MyCullingRect, FSlateWindowElementList& OutDrawElements, int32 LayerId, const FWidgetStyle& InWidgetStyle, bool bParentEnabled ) const;
79
80protected:
81
85
86public:
88};
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
Definition ArrangedChildren.h:15
Definition ChildrenBase.h:27
Definition PaintArgs.h:23
Definition SlateRect.h:26
Definition DrawElements.h:220
Definition WidgetStyle.h:15
Definition SPanel.h:30
virtual void OnArrangeChildren(const FGeometry &AllottedGeometry, FArrangedChildren &ArrangedChildren) const override=0
virtual SLATECORE_API int32 OnPaint(const FPaintArgs &Args, const FGeometry &AllottedGeometry, const FSlateRect &MyCullingRect, FSlateWindowElementList &OutDrawElements, int32 LayerId, const FWidgetStyle &InWidgetStyle, bool bParentEnabled) const override
Definition SPanel.cpp:10
void Construct()
Definition SPanel.h:65
SLATECORE_API SPanel()
virtual SLATECORE_API void SetVisibility(TAttribute< EVisibility > InVisibility) override final
Definition SPanel.cpp:45
SLATECORE_API int32 PaintArrangedChildren(const FPaintArgs &Args, const FArrangedChildren &ArrangedChildren, const FGeometry &AllottedGeometry, const FSlateRect &MyCullingRect, FSlateWindowElementList &OutDrawElements, int32 LayerId, const FWidgetStyle &InWidgetStyle, bool bParentEnabled) const
Definition SPanel.cpp:18
virtual FVector2D ComputeDesiredSize(float) const override=0
virtual FChildren * GetChildren() override=0
virtual SLATECORE_API ~SPanel()
Definition SWidget.h:165
Definition Attribute.h:17
Definition Geometry.h:40
static constexpr bool SupportsInvalidation()
Definition SPanel.h:18
Definition SWidget.h:69