DreamGUI
Reference

UDreamPanelSlot

UMG-style per-child layout data owned by the child widget.

Inherits from UDreamWidgetSubObjectBehaviour.

Declared in Public/Core/Components/DreamPanelSlot.h.

UMG-style per-child layout data owned by the child widget.

Properties

NameTypeCategoryIn the details panelFrom BlueprintDescription
PaddingFMarginSlotyesSetPadding
HorizontalAlignmentEDreamPanelHorizontalAlignmentSlotyesSetHorizontalAlignment
VerticalAlignmentEDreamPanelVerticalAlignmentSlotyesSetVerticalAlignment
SizeRuleEDreamPanelSizeRuleSlotyesSetSizeRule
FillWeightfloatSlotyesSetFillWeight
Rowint32SlotyesSetRow
Columnint32SlotyesSetColumn
RowSpanint32SlotyesSetRowSpan
ColumnSpanint32SlotyesSetColumnSpan
ZOrderint32SlotyesSetZOrderPaint order among siblings, applied as a stable reorder (equal values keep sibling order). Consumed by Overlay and GridPanel always, and by CanvasPanel when SortChildrenByZOrder is on; every other panel arranges strictly by sibling order and ignores this value.
bAutoSizeboolSlotyesSetAutoSize
MinDesiredSizeFVector2DSlotyesSetMinDesiredSizeFloor and ceiling applied to whatever this child measures, per axis, zero meaning "no opinion".
MaxDesiredSizeFVector2DSlotyesSetMaxDesiredSize
bFillEmptySpaceboolSlotyesSetFillEmptySpaceWrapBox only, matching UMG's UWrapBoxSlot: when this child is the LAST one on its line, it takes whatever room the line has left over. Asked by any other child on the line, it does nothing -- SWrapBox reads the flag for the line's last child alone. Read by no other panel.
FillSpanWhenLessThanfloatSlotyesSetFillSpanWhenLessThanWrapBox only, matching UMG's UWrapBoxSlot: when the box's wrap width drops below this, give this child a line to itself. Zero disables it. The classic use is a responsive list of cards that stops sharing rows once the panel is narrow enough that sharing would make everything unreadable.
bForceNewLineboolSlotyesSetNewLineWrapBox only, matching UMG's UWrapBoxSlot::bForceNewLine: begin a line at this child however much room is left on the current one. The unconditional twin of FillSpanWhenLessThan, which only breaks once the box is narrow; this is how a section heading stays at the head of its own row.
NudgeFVector2DSlotyesSetNudgeA fixed offset added to wherever the panel decided to put this child, in the panel's content space (x right, y down -- the same sense as Padding).

Functions

FunctionKindDescription
FVector2D GetAlignment()pureUMG's Alignment: where inside its own rect the widget's position refers to. This plugin's Pivot.
FAnchors GetAnchors()pureGet Anchors
bool GetAutoSize()pureGet Auto Size
int32 GetLayer()pureUMG's UGridSlot::Layer, which is this slot's ZOrder under its UMG name rather than a second number.
FDreamUIAnchorData GetLayout()pureUMG's UCanvasPanelSlot rect family, reading and writing the widget's own FDreamUIAnchorData.
FMargin GetOffsets()pureGet Offsets
FVector2D GetPosition()pureThe offset of the widget's alignment point from its anchor -- UMG's Position on a point anchor.
FVector2D GetSize()pureThe size a point anchor resolves to, and the size BEYOND the anchor span on a stretched one.
int32 GetZOrder()pureGet ZOrder
void NotifySlotChanged(EDreamLayoutInvalidation Reason)callableReason defaults to Measure, the safe answer. Alignment, size rule, fill weight and z-order pass Arrange instead: none of them appear in any panel's MeasureLayout - checked one by one - so they cannot move a preferred size, only where this slot's widget ends up inside its own parent. Padding, the grid coordinates and bAutoSize all do appear there, and keep the default.
void SetAlignment(FVector2D InAlignment)callableSet Alignment
void SetAnchors(FAnchors InAnchors)callableSet Anchors
void SetAutoSize(bool Value)callableSet Auto Size
void SetColumn(int32 Value)callableSet Column
void SetColumnSpan(int32 Value)callableSet Column Span
void SetFillEmptySpace(bool Value)callableSet Fill Empty Space
void SetFillSpanWhenLessThan(float Value)callableSet Fill Span when Less Than
void SetFillWeight(float Value)callableSet Fill Weight
void SetHorizontalAlignment(EDreamPanelHorizontalAlignment Value)callableSet Horizontal Alignment
void SetLayer(int32 InLayer)callableSet Layer
void SetLayout(FDreamUIAnchorData InLayout)callableSet Layout
void SetMaxDesiredSize(FVector2D Value)callableSet Max Desired Size
void SetMaximum(FVector2D InMaximumAnchors)callableSet Maximum
void SetMinDesiredSize(FVector2D Value)callableSet Min Desired Size
void SetMinimum(FVector2D InMinimumAnchors)callableSet Minimum
void SetNewLine(bool Value)callableSet New Line
void SetNudge(FVector2D Value)callableSet Nudge
void SetOffsets(FMargin InOffsets)callableSet Offsets
void SetPadding(FMargin Value)callableSet Padding
void SetPosition(FVector2D InPosition)callableSet Position
void SetRow(int32 Value)callableSet Row
void SetRowSpan(int32 Value)callableSet Row Span
void SetSize(FVector2D InSize)callableSet Size
void SetSizeRule(EDreamPanelSizeRule Value)callableSet Size Rule
void SetVerticalAlignment(EDreamPanelVerticalAlignment Value)callableSet Vertical Alignment
void SetZOrder(int32 Value)callableSet ZOrder

Compared with UMG

Every Blueprint-facing member of the UMG class, and where it went. adopt: same name, same meaning. map: here under another name or on another type. reject: deliberately absent, with the reason.

UMGMemberStatusHereNote
UBackgroundBlurSlotSetPaddingadoptSetPadding
UBackgroundBlurSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UBackgroundBlurSlotSetVerticalAlignmentadoptSetVerticalAlignment
UBackgroundBlurSlotPaddingadoptPadding
UBackgroundBlurSlotHorizontalAlignmentadoptHorizontalAlignment
UBackgroundBlurSlotVerticalAlignmentadoptVerticalAlignment
UBorderSlotSetPaddingadoptSetPadding
UBorderSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UBorderSlotSetVerticalAlignmentadoptSetVerticalAlignment
UBorderSlotPaddingadoptPadding
UBorderSlotHorizontalAlignmentadoptHorizontalAlignment
UBorderSlotVerticalAlignmentadoptVerticalAlignment
UButtonSlotPaddingadoptPadding
UButtonSlotHorizontalAlignmentadoptHorizontalAlignment
UButtonSlotVerticalAlignmentadoptVerticalAlignment
UButtonSlotSetPaddingadoptSetPadding
UButtonSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UButtonSlotSetVerticalAlignmentadoptSetVerticalAlignment
UCanvasPanelSlotLayoutDatamapUDreamWidget::AnchorDataA canvas child states its rect on the widget itself (pivot, anchor min/max, anchored position, size delta). The slot reads and writes that data instead of keeping a second copy of it.
UCanvasPanelSlotbAutoSizeadoptbAutoSize
UCanvasPanelSlotZOrderadoptZOrderHonoured by Overlay and GridPanel always, and by CanvasPanel when SortChildrenByZOrder is on.
UCanvasPanelSlotSetLayoutadoptSetLayoutTakes FDreamUIAnchorData, which is this plugin's FAnchorData.
UCanvasPanelSlotGetLayoutadoptGetLayout
UCanvasPanelSlotSetPositionadoptSetPositionThe alignment point's offset from the anchor. y points UP here, as it does in every other transform setter in the plugin, rather than down as in UMG.
UCanvasPanelSlotGetPositionadoptGetPosition
UCanvasPanelSlotSetSizeadoptSetSizeWrites SizeDelta: the resolved size on a point anchor, and the size beyond the anchor span on a stretched one. The box-slot SetSize(FSlateChildSize) could not also have this name, since there is one slot class here; it is SetSizeRule/SetFillWeight.
UCanvasPanelSlotGetSizeadoptGetSize
UCanvasPanelSlotSetOffsetsadoptSetOffsetsThe four edge insets from the anchor rect, which is UMG's meaning on a stretched axis; on a point anchor UMG reuses Right/Bottom to mean the size and this does not -- that reading is GetSize/SetSize.
UCanvasPanelSlotGetOffsetsadoptGetOffsets
UCanvasPanelSlotSetAnchorsadoptSetAnchorsTakes FAnchors. Minimum is the bottom-left corner of the anchor rect, because y points up here.
UCanvasPanelSlotGetAnchorsadoptGetAnchors
UCanvasPanelSlotSetMinimumadoptSetMinimumAdded to the skeleton: reflected on UCanvasPanelSlot as a bare UFUNCTION, so the scan missed it.
UCanvasPanelSlotSetMaximumadoptSetMaximumAdded to the skeleton, as SetMinimum.
UCanvasPanelSlotSetAlignmentadoptSetAlignmentThis plugin's Pivot: same quantity, same 0..1 range, y up.
UCanvasPanelSlotGetAlignmentadoptGetAlignment
UCanvasPanelSlotSetAutoSizeadoptSetAutoSize
UCanvasPanelSlotGetAutoSizeadoptGetAutoSize
UCanvasPanelSlotSetZOrderadoptSetZOrder
UCanvasPanelSlotGetZOrderadoptGetZOrder
UGridSlotPaddingadoptPadding
UGridSlotHorizontalAlignmentadoptHorizontalAlignment
UGridSlotVerticalAlignmentadoptVerticalAlignment
UGridSlotRowadoptRow
UGridSlotRowSpanadoptRowSpan
UGridSlotColumnadoptColumn
UGridSlotColumnSpanadoptColumnSpan
UGridSlotLayermapZOrderA grid's layer and a slot's z-order are the same fact -- which children draw over which -- and the grid panel already reorders by ZOrder, stably. GetLayer/SetLayer exist under UMG's name and forward to it rather than storing a second number.
UGridSlotNudgeadoptNudgeApplied in UDreamPanelLayoutBase::ApplyChildRect, so every panel honours it, not just the grid; invisible to measurement, as a nudge must be.
UGridSlotSetPaddingadoptSetPadding
UGridSlotSetRowadoptSetRow
UGridSlotSetRowSpanadoptSetRowSpan
UGridSlotSetColumnadoptSetColumn
UGridSlotSetColumnSpanadoptSetColumnSpan
UGridSlotSetLayeradoptSetLayer
UGridSlotSetNudgeadoptSetNudge
UGridSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UGridSlotSetVerticalAlignmentadoptSetVerticalAlignment
UHorizontalBoxSlotSizemapSizeRuleFSlateChildSize is a rule plus a value; the rule is SizeRule (Auto/Fill) and the value is FillWeight.
UHorizontalBoxSlotPaddingadoptPadding
UHorizontalBoxSlotHorizontalAlignmentadoptHorizontalAlignment
UHorizontalBoxSlotVerticalAlignmentadoptVerticalAlignment
UHorizontalBoxSlotSetPaddingadoptSetPadding
UHorizontalBoxSlotSetSizemapSetSizeRuleTwo setters, SetSizeRule and SetFillWeight. The bare name SetSize belongs to the canvas rect family, because there is one slot class here rather than UMG's one per panel.
UHorizontalBoxSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UHorizontalBoxSlotSetVerticalAlignmentadoptSetVerticalAlignment
UOverlaySlotPaddingadoptPadding
UOverlaySlotHorizontalAlignmentadoptHorizontalAlignment
UOverlaySlotVerticalAlignmentadoptVerticalAlignment
UOverlaySlotSetPaddingadoptSetPadding
UOverlaySlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UOverlaySlotSetVerticalAlignmentadoptSetVerticalAlignment
UPanelSlotGetContentmapGetWidgetA slot here belongs to the widget it lays out, so its content is that widget; the accessor is inherited from UDreamWidgetSubObjectBehaviour.
USafeZoneSlotbIsTitleSafemapUDreamLayoutContainerSafeZone::bUsePlatformSafeZoneA safe zone takes one child, so 'this slot asks for the platform's safe area' and 'this panel applies it' are the same switch; it is kept on the panel, next to the four side toggles it works with.
USafeZoneSlotSafeAreaScalemapUDreamLayoutContainerSafeZone::SafeAreaScaleSame per-side multiplier over the platform safe margin as Slate's; on the panel for the same reason as bIsTitleSafe.
USafeZoneSlotHAlignmapHorizontalAlignmentThe generic slot alignment; UMG abbreviates it only on this slot.
USafeZoneSlotVAlignmapVerticalAlignment
USafeZoneSlotPaddingadoptPadding
UScaleBoxSlotHorizontalAlignmentadoptHorizontalAlignment
UScaleBoxSlotVerticalAlignmentadoptVerticalAlignment
UScaleBoxSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UScaleBoxSlotSetVerticalAlignmentadoptSetVerticalAlignment
UScrollBoxSlotSizemapSizeRuleFSlateChildSize is a rule plus a value; the rule is SizeRule (Auto/Fill) and the value is FillWeight. Along the scroll axis a Fill slot is stacked as SScrollBox stacks one, with shrinking off: the Fill slots share the larger of what they asked for and the viewport less everything else, by weight, each clamped to its own Min/MaxDesiredSize. Short content is stretched to the viewport, content that overflows keeps the length it asked for, and the scroll range is always the desired total.
UScrollBoxSlotPaddingadoptPadding
UScrollBoxSlotHorizontalAlignmentadoptHorizontalAlignment
UScrollBoxSlotVerticalAlignmentadoptVerticalAlignment
UScrollBoxSlotSetPaddingadoptSetPadding
UScrollBoxSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UScrollBoxSlotSetVerticalAlignmentadoptSetVerticalAlignment
USizeBoxSlotPaddingadoptPadding
USizeBoxSlotHorizontalAlignmentadoptHorizontalAlignment
USizeBoxSlotVerticalAlignmentadoptVerticalAlignment
USizeBoxSlotSetPaddingadoptSetPadding
USizeBoxSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
USizeBoxSlotSetVerticalAlignmentadoptSetVerticalAlignment
UStackBoxSlotPaddingadoptPadding
UStackBoxSlotSizemapSizeRuleFSlateChildSize is a rule plus a value; the rule is SizeRule (Auto/Fill) and the value is FillWeight.
UStackBoxSlotHorizontalAlignmentadoptHorizontalAlignment
UStackBoxSlotVerticalAlignmentadoptVerticalAlignment
UUniformGridSlotHorizontalAlignmentadoptHorizontalAlignment
UUniformGridSlotVerticalAlignmentadoptVerticalAlignment
UUniformGridSlotRowadoptRow
UUniformGridSlotColumnadoptColumn
UUniformGridSlotSetRowadoptSetRow
UUniformGridSlotSetColumnadoptSetColumn
UUniformGridSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UUniformGridSlotSetVerticalAlignmentadoptSetVerticalAlignment
UVerticalBoxSlotSizemapSizeRuleFSlateChildSize is a rule plus a value; the rule is SizeRule (Auto/Fill) and the value is FillWeight.
UVerticalBoxSlotPaddingadoptPadding
UVerticalBoxSlotHorizontalAlignmentadoptHorizontalAlignment
UVerticalBoxSlotVerticalAlignmentadoptVerticalAlignment
UVerticalBoxSlotSetPaddingadoptSetPadding
UVerticalBoxSlotSetSizemapSetSizeRuleTwo setters, SetSizeRule and SetFillWeight; see HorizontalBoxSlot for why the bare name is taken.
UVerticalBoxSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UVerticalBoxSlotSetVerticalAlignmentadoptSetVerticalAlignment
UWidgetSwitcherSlotPaddingadoptPadding
UWidgetSwitcherSlotHorizontalAlignmentadoptHorizontalAlignment
UWidgetSwitcherSlotVerticalAlignmentadoptVerticalAlignment
UWidgetSwitcherSlotSetPaddingadoptSetPadding
UWidgetSwitcherSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UWidgetSwitcherSlotSetVerticalAlignmentadoptSetVerticalAlignment
UWrapBoxSlotPaddingadoptPadding
UWrapBoxSlotFillSpanWhenLessThanadoptFillSpanWhenLessThan
UWrapBoxSlotHorizontalAlignmentadoptHorizontalAlignment
UWrapBoxSlotVerticalAlignmentadoptVerticalAlignment
UWrapBoxSlotbFillEmptySpaceadoptbFillEmptySpace
UWrapBoxSlotbForceNewLineadoptbForceNewLineRead by the wrap box's measure and arrange alike, so the line count it produces is the one it measured room for.
UWrapBoxSlotSetPaddingadoptSetPadding
UWrapBoxSlotSetFillEmptySpaceadoptSetFillEmptySpace
UWrapBoxSlotSetFillSpanWhenLessThanadoptSetFillSpanWhenLessThan
UWrapBoxSlotSetHorizontalAlignmentadoptSetHorizontalAlignment
UWrapBoxSlotSetVerticalAlignmentadoptSetVerticalAlignment
UWrapBoxSlotSetNewLineadoptSetNewLine

On this page