SCompoundWidget

A CompoundWidget is the base from which most non-primitive widgets should be built.

Windows
MacOS
Linux

Inheritance Hierarchy

FSlateControlledConstruction

TSharedFromThis

SWidget

SCompoundWidget

IAnimationSequenceBrowser

IAnimSequenceCurveEditor

IDetailsView

IDistributionCurveEditor

ILevelEditor

IObjectNameEditableTextBox

IPersonaViewport

IPinnedCommandList

ISceneOutliner

ICustomSceneOutliner

SSceneOutliner

ISinglePropertyView

ISkeletonTree

ISocketManager

IStatsViewer

ITimeSlider

ITransportControl

SAboutScreen

SAdvancedPreviewDetailsTab

SAnimationCompressionSelectionDialog

SAnimationRemapAssets

SAnimationRemapSkeleton

SAppIconWidget

SAssetPickerButton

SAssetSearchBox

SAssetTagItem

SBackgroundBlur

SBarVisualizer

SBlueprintDiff

SBlueprintRevisionMenu

SBoneMappingBase

SBoneSelectionWidget

SBoneTreeMenu

SBorder

SBuildProgressWidget

SButton

SHyperlink

SRichTextHyperlink

SCarouselNavigationButton::SPeekBorder

SDockTab

SLiveLinkCurveDebugUITab

SEditableTextBox

SSearchBox

SErrorText

SExpandableButton

SGraphEditorActionMenu

SGraphEditorActionMenuAI

SGraphPin

SGraphPinAI

SGraphPinBool

SGraphPinColor

SGraphPinExec

SGraphPinNameList

SGraphPinDataTableRowName

SGraphPinNum

SGraphPinInteger

SGraphPinObject

SGraphPinClass

SGraphPinString

SGraphPinVector

SGraphPinVector2D

SGraphPinVector4

SHeaderRow

SMultiLineEditableTextBox

SScrollBar

SSeparator

STableRow

SAssetTagItemTableRow

SComboRow

SItemSelector::SItemSelectorItemContainerTableRow

SMultiColumnTableRow

SAssetEntryRow

SBoneMappingListRow

SBonePairRow

SEventItem

SLiveLinkCurveDebugUIListItem

SOptionTableRow

SSceneOutlinerTreeRow

SSCS_RowWidget

SSCS_RowWidget_ActorRoot

SSCS_RowWidget_Separator

SMultiSelectTableRow

SBreadcrumbTrail

SCarouselNavigationBar

SCarouselNavigationButton

SCheckBox

SClassPickerDialog

SClassPropertyEntryBox

SClassViewer

SColorGradingPicker

SColorPicker

SColorThemeBar

SColorThemesViewer

SColorTrash

SCommentBubble

SComplexGradient

SConcertScrollBox

SConcertSessionActivities

SConcertSessionRecovery

SContentReference

SCreateAssetFromObject

SCreateClothingSettingsPanel

SCreditsScreen

SCSVImportOptions

SCulturePicker

SCurveEditor

SCurveEditorFilterPanel

SCurveEditorPanel

SCurveEditorTreeFilterStatusBar

SCurveEditorTreePin

SCurveEditorTreeTextFilter

SCurveEditorView

SCurveViewerPanel

SInteractiveCurveEditorView

SCurveEditorViewAbsolute

SCurveEditorViewNormalized

SCurveEditorViewStacked

SCurveKeyDetailPanel

SDatasmithOptionsWindow

SDecoratedEnumCombo

SDefaultGraphActionWidget

SDeleteAssetsDialog

SDirectoryPicker

SDMXEntityPickerButton

SDocumentationToolTip

SDropTarget

SAssetDropTarget

SDynamicLayoutBox

SEditableComboBox

SEditorViewport

SAssetEditorViewport

SBasePoseViewport

SLevelViewport

SEditorViewportToolBarButton

SEditorViewportToolbarMenu

SEditorViewportViewMenu

SErrorHint

SEventsTree

SExpandableArea

SExpanderArrow

SExtensionPanel

SExternalImageReference

SFilePathPicker

SFilterableObjectList

SFindInBlueprints

SFindInMaterial

SFrameRateEntryBox

SFrameRatePicker

SFxWidget

SGameLayerManager

SGenericDialogWidget

SGlobalPlayWorldActions

SGraphActionMenu

SGraphEditor

SGraphPalette

SGraphPaletteItem

SGraphPreviewer

SGridLineSpacingList

SHyperlinkLaunchURL

SInlineEditableTextBlock

SInputKeySelector

SInvalidationPanel

SItemSelector

SKeyEditInterface

SKeySelector

SKismetInspector

SKismetLinearExpression

SLayerHandle

SLevelOfDetailBranchNode

SListViewSelectorDropdownMenu

SDMXEntityDropdownMenu

SLiveLinkSubjectRepresentationPicker

SLogWidget

SMaterialSlotWidget

SMatineeRecorder

SMediaImage

SMediaPermutationsSelector

SMenuOwner

SMultiBoxWidget

SMiniCurveEditor

SModeWidget

SMultiBlockBaseWidget

SToolBarButtonBlock

SToolBarComboButtonBlock

SMultipleOptionTable

SNameComboBox

SNameListPicker

SNiagaraAddParameterMenu

SNiagaraAddParameterMenu2

SNiagaraGraphActionWidget

SNiagaraLibraryOnlyToggleHeader

SNiagaraParameterEditor

SNiagaraParameterMapView

SNiagaraParameterName

SNiagaraParameterNameTextBlock

SNiagaraParameterNamePinLabel

SNiagaraParameterPanel

SNiagaraScriptGraph

SNiagaraSelectedObjectsDetails

SNodeTitle

SNotificationItem

SNotificationList

SNumericDropDown

SNumericEntryBox

SObjectBindingTag

SObjectBindingTags

SObjectPropertyEntryBox

SObjectWidget

SObjectTableRow

SOutputLogDialog

SPackageDetails

SPerPlatformPropertiesWidget

SPinComboBox

SPinTypeSelector

SPlatformSetupMessage

SPListEditorPanel

SPopup

SPoseAssetNameWidget

SProperty

SReferenceTree

SRemapFailures

SResetToDefaultMenu

SRetainerWidget

SRotatorInputBox

SScalabilitySettings

SScaleBox

SScrollBorder

SScrollBox

SScrubControlPanel

SScrubWidget

SSCSEditor

SSettingsEditorCheckoutNotice

SSimpleGradient

SSimplePreLoadScreenWidget

SSingleObjectDetailsPanel

SSkeletonBoneRemoval

SSkeletonSelectorWindow

SSkeletonWidget

SSkeletonCompareWidget

SSkeletonListWidget

SSkinWeightProfileImportOptions

SSpinBox

SSplineGeneratorPanel

SStructPropertyEntryBox

SSubMenuHandler

SSuggestionTextBox

STableViewBase

SListView

STileView

STreeView

SCurveEditorTree

SOutlinerTreeView

SSCSEditorDragDropTree

STextComboBox

STextComboPopup

STextEntryPopup

STextPropertyEditableStringTableReference

STextPropertyEditableTextBox

SThemeColorBlock

SThrobber

STimecodeProvider

STimeline

SToolTip

SUndoHistoryDetails

SUserWidget

SLiveLinkCurveDebugUI

SVectorInputBox

SVerticalResizeBox

SViewport

SViewportToolBar

SCommonEditorViewportToolbarBase

STransformViewportToolBar

SViewportToolBarComboMenu

SViewportToolBarIconMenu

SVolumeControl

SVPBookmarkListView

SWebBrowser

SWebBrowserView

SWidgetCarousel

SWidgetCarouselWithNavigation

SWindow

SCreateAnimationAssetDlg

SCustomDialog

SDlgPickAssetPath

SDlgPickPath

SLogWindow

SSelectFolderDlg

SVirtualWindow

SWindowTitleBar

SWizard

SWorldWidgetScreenLayer

References

Module

SlateCore

Header

/Engine/Source/Runtime/SlateCore/Public/Widgets/SCompoundWidget.h

Include

#include "Widgets/SCompoundWidget.h"

Syntax

class SCompoundWidget : public SWidget

Remarks

A CompoundWidget is the base from which most non-primitive widgets should be built. CompoundWidgets have a protected member named ChildSlot.

Variables

Name Description

Protected variable

FSimpleSlot

 

ChildSlot

The slot that contains this widget's descendants.

Protected variable

TAttribute < FLi ...

 

ColorAndOpacity

The color and opacity to apply to this widget and all its descendants.

Protected variable

TAttribute < FVe ...

 

ContentScale

The layout scale to apply to this widget's contents; useful for animation.

Protected variable

TAttribute < FSl ...

 

ForegroundColor

Optional foreground color that will be inherited by all of this widget's contents

Constructors

Name Description

Protected function

SCompoundWidget()

Disallow public construction

Functions

Name Description

Public function Const

FLinearColor

 

GetColorAndOpacity()

Gets the widget's color.

Public function Const

const FVecto ...

 

GetContentScale()

Returns the size scaling factor for this widget.

Public function

void

 

SetColorAndOpacity

(
    const TAttribute < FLinearColor >& ...
)

Sets the widget's color.

Public function

void

 

SetContentScale

(
    const TAttribute < FVector2D >& InC...
)

Sets the content scale for this widget.

Public function

void

 

SetForegroundColor

(
    const TAttribute < FSlateColor >& I...
)

Sets the widget's foreground color.

Overridden from SWidget

Name Description

Protected function Virtual Const

FVector2D

 

ComputeDesiredSize

(
    float LayoutScaleMultiplier
)

Compute the ideal size necessary to display this widget.

Public function Virtual

FChildren &#...

 

GetChildren()

Every widget that has children must implement this method.

Public function Virtual Const

FSlateColor

 

GetForegroundColor()

Public function Virtual Const

void

 

OnArrangeChildren

(
    const FGeometry & AllottedGeometry,
    FArrangedChildren & ArrangedChildre...
)

Compute the Geometry of all the children and add populate the ArrangedChildren list with their values.

Public function Virtual Const

int32

 

OnPaint

(
    const FPaintArgs & Args,
    const FGeometry & AllottedGeometry,
    const FSlateRect & MyCullingRect,
    FSlateWindowElementList & OutDrawEl...,
    int32 LayerId,
    const FWidgetStyle & InWidgetStyle,
    bool bParentEnabled
)

The widget should respond by populating the OutDrawElements array with FDrawElements that represent it and any of its children.

Public function Virtual

void

 

SetVisibility

(
    TAttribute < EVisibility > InVisibil...
)

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback