UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SCompoundWidget.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"
9#include "Layout/Visibility.h"
10#include "Widgets/SWidget.h"
11#include "Layout/Children.h"
12
14class FPaintArgs;
16
22{
24
25public:
26
33 {
34 return ContentScaleAttribute.Get();
35 }
36
43 {
44 ContentScaleAttribute.Assign(*this, MoveTemp(InContentScale));
45 }
46
51 {
52 return ColorAndOpacityAttribute.Get();
53 }
54
61 {
62 ColorAndOpacityAttribute.Assign(*this, MoveTemp(InColorAndOpacity));
63 }
64
71 {
72 ForegroundColorAttribute.Assign(*this, MoveTemp(InForegroundColor));
73 }
74
75public:
76
77 // SWidgetOverrides
78 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;
79 SLATECORE_API virtual FChildren* GetChildren() override;
80 SLATECORE_API virtual void OnArrangeChildren( const FGeometry& AllottedGeometry, FArrangedChildren& ArrangedChildren ) const override;
81 SLATECORE_API virtual FSlateColor GetForegroundColor() const override;
82
83public:
85
86protected:
87 // Begin SWidget overrides.
88 SLATECORE_API virtual FVector2D ComputeDesiredSize(float) const override;
89 // End SWidget overrides.
90
93
96
99
100protected:
101
105
107 {
109 using ::TSingleWidgetChildrenWithBasicLayoutSlot<EInvalidateWidgetReason::None>::TSingleWidgetChildrenWithBasicLayoutSlot;
110 };
111
114
115private:
117 TSlateAttribute<FVector2D> ContentScaleAttribute;
118
120 TSlateAttribute<FLinearColor> ColorAndOpacityAttribute;
121
123 TSlateAttribute<FSlateColor> ForegroundColorAttribute;
124};
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_DECLARE_WIDGET_API(WidgetType, ParentType, ModuleApiDefine)
Definition SlateControlledConstruction.h:22
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 PaintArgs.h:23
Definition SlateRect.h:26
Definition DrawElements.h:220
Definition WidgetStyle.h:15
Definition SCompoundWidget.h:22
const FVector2D GetContentScale() const
Definition SCompoundWidget.h:32
virtual SLATECORE_API void SetVisibility(TAttribute< EVisibility > InVisibility) override final
Definition SCompoundWidget.cpp:91
TSlateAttributeRef< FSlateColor > GetForegroundColorAttribute() const
Definition SCompoundWidget.h:98
virtual SLATECORE_API FVector2D ComputeDesiredSize(float) const override
Definition SCompoundWidget.cpp:59
FCompoundWidgetOneChildSlot ChildSlot
Definition SCompoundWidget.h:113
TSlateAttributeRef< FVector2D > GetContentScaleAttribute() const
Definition SCompoundWidget.h:92
virtual SLATECORE_API FSlateColor GetForegroundColor() const override
Definition SCompoundWidget.cpp:76
FLinearColor GetColorAndOpacity() const
Definition SCompoundWidget.h:50
SLATECORE_API SCompoundWidget()
Definition SCompoundWidget.cpp:81
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 SCompoundWidget.cpp:20
TSlateAttributeRef< FLinearColor > GetColorAndOpacityAttribute() const
Definition SCompoundWidget.h:95
void SetForegroundColor(TAttribute< FSlateColor > InForegroundColor)
Definition SCompoundWidget.h:70
virtual SLATECORE_API void OnArrangeChildren(const FGeometry &AllottedGeometry, FArrangedChildren &ArrangedChildren) const override
Definition SCompoundWidget.cpp:71
virtual SLATECORE_API ~SCompoundWidget()
void SetContentScale(TAttribute< FVector2D > InContentScale)
Definition SCompoundWidget.h:42
virtual SLATECORE_API FChildren * GetChildren() override
Definition SCompoundWidget.cpp:53
void SetColorAndOpacity(TAttribute< FLinearColor > InColorAndOpacity)
Definition SCompoundWidget.h:60
Definition SWidget.h:165
Definition Attribute.h:17
static UE_FORCEINLINE_HINT TSharedRef< OtherType, Mode > SharedThis(OtherType *ThisPtr)
Definition SharedPointer.h:1780
Definition Geometry.h:40
Definition Color.h:48
Definition SlateColor.h:42
Definition SCompoundWidget.h:107
friend SCompoundWidget
Definition SCompoundWidget.h:108
Definition SWidget.h:255
Definition SWidget.h:189