UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SObjectTableRow< ItemType > Class Template Reference

#include <SObjectTableRow.h>

+ Inheritance diagram for SObjectTableRow< ItemType >:

Public Member Functions

 SLATE_BEGIN_ARGS (SObjectTableRow< ItemType >)
 
void Construct (const FArguments &InArgs, const TSharedRef< STableViewBase > &InOwnerTableView, UUserWidget &InWidgetObject, UListViewBase *InOwnerListView=nullptr)
 
virtual ~SObjectTableRow ()
 
virtual UUserWidgetGetUserWidget () const
 
virtual UListViewBaseGetOwningListView () const
 
EActiveTimerReturnType DetectItemSelectionChanged (double InCurrentTime, float InDeltaTime)
 
virtual void NotifyItemExpansionChanged (bool bIsExpanded)
 
virtual void InitializeRow () override final
 
virtual void ResetRow () override final
 
virtual TSharedRef< SWidgetAsWidget () override
 
virtual void SetIndexInList (int32 InIndexInList) override
 
virtual int32 GetIndexInList () override
 
virtual TSharedPtr< SWidgetGetContent () override
 
virtual int32 GetIndentLevel () const override
 
virtual int32 DoesItemHaveChildren () const override
 
virtual void Private_OnExpanderArrowShiftClicked () override
 
virtual ESelectionMode::Type GetSelectionMode () const override
 
virtual FVector2D GetRowSizeForColumn (const FName &InColumnName) const override
 
virtual bool IsItemExpanded () const override
 
virtual void ToggleExpansion () override
 
virtual bool IsItemSelected () const override
 
virtual TBitArray GetWiresNeededByDepth () const override
 
virtual bool IsLastChild () const override
 
virtual bool SupportsKeyboardFocus () const override
 
virtual void OnMouseEnter (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent) override
 
virtual void OnMouseLeave (const FPointerEvent &MouseEvent) override
 
virtual FReply OnMouseButtonDoubleClick (const FGeometry &InMyGeometry, const FPointerEvent &InMouseEvent) override
 
virtual FReply OnTouchStarted (const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent) override
 
virtual FReply OnTouchEnded (const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent) override
 
virtual FReply OnDragDetected (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent) override
 
virtual void OnDragEnter (const FGeometry &MyGeometry, const FDragDropEvent &DragDropEvent) override
 
virtual void OnDragLeave (FDragDropEvent const &DragDropEvent) override
 
EItemDropZone ZoneFromPointerPosition (UE::Slate::FDeprecateVector2DParameter LocalPointerPos, UE::Slate::FDeprecateVector2DParameter LocalSize, EOrientation Orientation)
 
virtual FReply OnDragOver (const FGeometry &MyGeometry, const FDragDropEvent &DragDropEvent) override
 
virtual FReply OnDrop (const FGeometry &MyGeometry, const FDragDropEvent &DragDropEvent) override
 
void OnDragCancelled (const FDragDropEvent &DragDropEvent, UDragDropOperation *Operation) override
 
virtual void HandleEntryDropped (UDragDropOperation *Operation)
 
virtual void HandleEntryDragged (UDragDropOperation *Operation)
 
virtual FReply OnMouseButtonDown (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent) override
 
virtual FReply OnMouseButtonUp (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent) override
 
bool GetAllowDragDrop () const
 
- Public Member Functions inherited from SCompoundWidget
const FVector2D GetContentScale () const
 
void SetContentScale (TAttribute< FVector2D > InContentScale)
 
FLinearColor GetColorAndOpacity () const
 
void SetColorAndOpacity (TAttribute< FLinearColor > InColorAndOpacity)
 
void SetForegroundColor (TAttribute< FSlateColor > InForegroundColor)
 
virtual SLATECORE_API FChildrenGetChildren () override
 
virtual SLATECORE_API void OnArrangeChildren (const FGeometry &AllottedGeometry, FArrangedChildren &ArrangedChildren) const override
 
virtual SLATECORE_API FSlateColor GetForegroundColor () const override
 
virtual SLATECORE_API void SetVisibility (TAttribute< EVisibility > InVisibility) override final
 
- Public Member Functions inherited from SWidget
SLATECORE_API int32 Paint (const FPaintArgs &Args, const FGeometry &AllottedGeometry, const FSlateRect &MyCullingRect, FSlateWindowElementList &OutDrawElements, int32 LayerId, const FWidgetStyle &InWidgetStyle, bool bParentEnabled) const
 
virtual SLATECORE_API TOptional< TSharedRef< SWidget > > OnMapCursor (const FCursorReply &CursorReply) const
 
virtual SLATECORE_API bool OnVisualizeTooltip (const TSharedPtr< SWidget > &TooltipContent)
 
virtual SLATECORE_API TSharedPtr< FPopupLayerOnVisualizePopup (const TSharedRef< SWidget > &PopupContent)
 
virtual SLATECORE_API TOptional< boolOnQueryShowFocus (const EFocusCause InFocusCause) const
 
virtual SLATECORE_API FPopupMethodReply OnQueryPopupMethod () const
 
virtual SLATECORE_API TOptional< FVirtualPointerPositionTranslateMouseCoordinateForCustomHitTestChild (const SWidget &ChildWidget, const FGeometry &MyGeometry, const FVector2D ScreenSpaceMouseCoordinate, const FVector2D LastScreenSpaceMouseCoordinate) const
 
virtual SLATECORE_API void OnFinishedKeyInput ()
 
virtual SLATECORE_API EWindowZone::Type GetWindowZoneOverride () const
 
bool NeedsPrepass () const
 
SLATECORE_API void SlatePrepass ()
 
SLATECORE_API void SlatePrepass (float InLayoutScaleMultiplier)
 
void SetCanTick (bool bInCanTick)
 
bool GetCanTick () const
 
bool HasRegisteredSlateAttribute () const
 
bool IsAttributesUpdatesEnabled () const
 
const FSlateWidgetPersistentStateGetPersistentState () const
 
const FWidgetProxyHandle GetProxyHandle () const
 
SLATECORE_API UE::Slate::FDeprecateVector2DResult GetDesiredSize () const
 
SLATECORE_API void AssignParentWidget (TSharedPtr< SWidget > InParent)
 
SLATECORE_API bool ConditionallyDetatchParentWidget (SWidget *InExpectedParent)
 
virtual bool ValidatePathToChild (SWidget *InChild)
 
bool IsParentValid () const
 
TSharedPtr< SWidgetGetParentWidget () const
 
TSharedPtr< SWidgetAdvanced_GetPaintParentWidget () const
 
SLATECORE_API FSlateRect CalculateCullingAndClippingRules (const FGeometry &AllottedGeometry, const FSlateRect &MyCullingRect, bool &bClipToBounds, bool &bAlwaysClip, bool &bIntersectClipBounds) const
 
bool HasAnyUpdateFlags (EWidgetUpdateFlags FlagsToCheck) const
 
TStatId GetStatID (bool bForDeferredUse=false) const
 
virtual SLATECORE_API float GetRelativeLayoutScale (const int32 ChildIndex, float LayoutScaleMultiplier) const
 
SLATECORE_API void ArrangeChildren (const FGeometry &AllottedGeometry, FArrangedChildren &ArrangedChildren, bool bUpdateAttributes=false) const
 
virtual FChildrenGetAllChildren ()
 
virtual SLATECORE_API bool HasKeyboardFocus () const
 
SLATECORE_API TOptional< EFocusCauseHasUserFocus (int32 UserIndex) const
 
SLATECORE_API TOptional< EFocusCauseHasAnyUserFocus () const
 
SLATECORE_API bool HasUserFocusedDescendants (int32 UserIndex) const
 
SLATECORE_API bool HasFocusedDescendants () const
 
SLATECORE_API bool HasAnyUserFocusOrFocusedDescendants () const
 
SLATECORE_API bool HasMouseCapture () const
 
SLATECORE_API bool HasMouseCaptureByUser (int32 UserIndex, TOptional< int32 > PointerIndex=TOptional< int32 >()) const
 
void SetEnabled (TAttribute< bool > InEnabledState)
 
bool IsEnabled () const
 
virtual SLATECORE_API TSharedPtr< IToolTipGetToolTip ()
 
virtual SLATECORE_API void OnToolTipClosing ()
 
SLATECORE_API void EnableToolTipForceField (const bool bEnableForceField)
 
bool HasToolTipForceField () const
 
bool IsHovered () const
 
SLATECORE_API bool IsDirectlyHovered () const
 
EVisibility GetVisibility () const
 
bool IsVolatile () const
 
bool IsVolatileIndirectly () const
 
void ForceVolatile (bool bForce)
 
bool ShouldInvalidatePrepassDueToVolatility ()
 
SLATECORE_API void Invalidate (EInvalidateWidgetReason InvalidateReason)
 
void CacheVolatility ()
 
void MarkPrepassAsDirty ()
 
float GetRenderOpacity () const
 
void SetRenderOpacity (float InRenderOpacity)
 
void SetTag (FName InTag)
 
const TOptional< FSlateRenderTransform > & GetRenderTransform () const
 
TOptional< FSlateRenderTransformGetRenderTransformWithRespectToFlowDirection () const
 
UE::Slate::FDeprecateVector2DResult GetRenderTransformPivotWithRespectToFlowDirection () const
 
void SetRenderTransform (TAttribute< TOptional< FSlateRenderTransform > > InTransform)
 
UE::Slate::FDeprecateVector2DResult GetRenderTransformPivot () const
 
void SetRenderTransformPivot (TAttribute< FVector2D > InTransformPivot)
 
SLATECORE_API void SetClipping (EWidgetClipping InClipping)
 
EWidgetClipping GetClipping () const
 
SLATECORE_API void SetPixelSnapping (EWidgetPixelSnapping InPixelSnappingMethod)
 
EWidgetPixelSnapping GetPixelSnapping () const
 
void SetCullingBoundsExtension (const FMargin &InCullingBoundsExtension)
 
FMargin GetCullingBoundsExtension () const
 
void SetFlowDirectionPreference (EFlowDirectionPreference InFlowDirectionPreference)
 
EFlowDirectionPreference GetFlowDirectionPreference () const
 
SLATECORE_API void SetToolTipText (const TAttribute< FText > &ToolTipText)
 
SLATECORE_API void SetToolTipText (const FText &InToolTipText)
 
SLATECORE_API void SetToolTip (const TAttribute< TSharedPtr< IToolTip > > &InToolTip)
 
SLATECORE_API void SetCursor (const TAttribute< TOptional< EMouseCursor::Type > > &InCursor)
 
template<typename MetaDataType >
TSharedPtr< MetaDataType > GetMetaData () const
 
template<typename MetaDataType >
TArray< TSharedRef< MetaDataType > > GetAllMetaData () const
 
template<typename MetaDataType >
void AddMetadata (const TSharedRef< MetaDataType > &AddMe)
 
template<typename MetaDataType >
int32 RemoveMetaData (const TSharedRef< MetaDataType > &RemoveMe)
 
SLATECORE_API void SetOnMouseButtonDown (FPointerEventHandler EventHandler)
 
SLATECORE_API void SetOnMouseButtonUp (FPointerEventHandler EventHandler)
 
SLATECORE_API void SetOnMouseMove (FPointerEventHandler EventHandler)
 
SLATECORE_API void SetOnMouseDoubleClick (FPointerEventHandler EventHandler)
 
SLATECORE_API void SetOnMouseEnter (FNoReplyPointerEventHandler EventHandler)
 
SLATECORE_API void SetOnMouseLeave (FSimpleNoReplyPointerEventHandler EventHandler)
 
virtual SLATECORE_API FString ToString () const
 
SLATECORE_API FString GetTypeAsString () const
 
SLATECORE_API FName GetType () const
 
virtual SLATECORE_API FString GetReadableLocation () const
 
SLATECORE_API FName GetCreatedInLocation () const
 
virtual SLATECORE_API FName GetTag () const
 
virtual SLATECORE_API FSlateColor GetDisabledForegroundColor () const
 
SLATECORE_API const FGeometryGetCachedGeometry () const
 
SLATECORE_API const FGeometryGetTickSpaceGeometry () const
 
SLATECORE_API const FGeometryGetPaintSpaceGeometry () const
 
const TOptional< FSlateClippingState > & GetCurrentClippingState () const
 
virtual bool Advanced_IsWindow () const
 
virtual bool Advanced_IsInvalidationRoot () const
 
virtual const FSlateInvalidationRootAdvanced_AsInvalidationRoot () const
 
SLATECORE_API TSharedRef< FActiveTimerHandleRegisterActiveTimer (float TickPeriod, FWidgetActiveTimerDelegate TickFunction)
 
SLATECORE_API void UnRegisterActiveTimer (const TSharedRef< FActiveTimerHandle > &ActiveTimerHandle)
 
bool HasActiveTimers () const
 
- Public Member Functions inherited from FSlateControlledConstruction
 FSlateControlledConstruction ()=default
 
virtual ~FSlateControlledConstruction ()=default
 
virtual const FSlateWidgetClassDataGetWidgetClass () const =0
 
void operator delete (void *mem)
 
- Public Member Functions inherited from TSharedFromThis< SWidget >
TSharedRef< SWidget, Mode > AsShared ()
 
TSharedRef< SWidget const, Mode > AsShared () const
 
TSharedRef< SubobjectType, Mode > AsSharedSubobject (SubobjectType *SubobjectPtr) const
 
TWeakPtr< SWidget, Mode > AsWeak ()
 
TWeakPtr< SWidget const, Mode > AsWeak () const
 
TWeakPtr< SubobjectType, Mode > AsWeakSubobject (SubobjectType *SubobjectPtr) const
 
void UpdateWeakReferenceInternal (TSharedPtr< SharedPtrType, SharedPtrMode > const *InSharedPtr, OtherType *InObject) const
 
void UpdateWeakReferenceInternal (TSharedRef< SharedRefType, SharedPtrMode > const *InSharedRef, OtherType *InObject) const
 
UE_FORCEINLINE_HINT bool DoesSharedInstanceExist () const
 
- Public Member Functions inherited from FGCObject
 FGCObject ()
 
 FGCObject (const FGCObject &Other)
 
 FGCObject (FGCObject &&Other)
 
 FGCObject (EFlags Flags)
 
virtual ~FGCObject ()
 
FGCObjectoperator= (const FGCObject &)
 
FGCObjectoperator= (FGCObject &&)
 
COREUOBJECT_API void RegisterGCObject ()
 
COREUOBJECT_API void UnregisterGCObject ()
 
virtual bool GetReferencerPropertyName (UObject *Object, FString &OutPropertyName) const
 

Protected Member Functions

virtual void InitializeObjectRow ()
 
virtual void ResetObjectRow ()
 
virtual void DetectItemSelectionChanged ()
 
virtual void OnItemSelectionChanged (bool bIsItemSelected)
 
bool IsItemSelectable () const
 
const TObjectPtrWrapTypeOf< ItemType > * GetItemForThis (const TSharedRef< ITypedTableView< ItemType > > &OwnerTable) const
 
- Protected Member Functions inherited from SCompoundWidget
TSlateAttributeRef< FVector2DGetContentScaleAttribute () const
 
TSlateAttributeRef< FLinearColorGetColorAndOpacityAttribute () const
 
TSlateAttributeRef< FSlateColorGetForegroundColorAttribute () const
 
SLATECORE_API SCompoundWidget ()
 
virtual SLATECORE_API ~SCompoundWidget ()
 
- Protected Member Functions inherited from SWidget
void SetVolatilePrepass (bool bVolatile)
 
virtual bool CustomPrepass (float LayoutScaleMultiplier)
 
virtual SLATECORE_API void CacheDesiredSize (float InLayoutScaleMultiplier)
 
void SetHover (TAttribute< bool > InHovered)
 
bool IsChildWidgetCulled (const FSlateRect &, const FArrangedWidget &) const
 
SLATECORE_API void InvalidateChildRemovedFromTree (SWidget &Child)
 
bool Advanced_InvalidateVolatility ()
 
EFlowDirection ComputeFlowDirection () const
 
SLATECORE_API void SetDebugInfo (const ANSICHAR *InType, const ANSICHAR *InFile, int32 OnLine, size_t InAllocSize)
 
virtual SLATECORE_API TOptional< EMouseCursor::TypeGetCursor () const
 
SLATECORE_API SWidget ()
 
SLATECORE_API void SWidgetConstruct (const FSlateBaseNamedArgs &Args)
 
bool IsConstructed () const
 
SLATECORE_API bool FindChildGeometries (const FGeometry &MyGeometry, const TSet< TSharedRef< SWidget > > &WidgetsToFind, TMap< TSharedRef< SWidget >, FArrangedWidget > &OutResult) const
 
SLATECORE_API void FindChildGeometries_Helper (const FGeometry &MyGeometry, const TSet< TSharedRef< SWidget > > &WidgetsToFind, TMap< TSharedRef< SWidget >, FArrangedWidget > &OutResult) const
 
SLATECORE_API FGeometry FindChildGeometry (const FGeometry &MyGeometry, TSharedRef< SWidget > WidgetToFind) const
 
bool ShouldBeEnabled (bool InParentEnabled) const
 
virtual SLATECORE_API const FSlateBrushGetFocusBrush () const
 
virtual bool ComputeVolatility () const
 
virtual SLATECORE_API void OnClippingChanged ()
 
float GetPrepassLayoutScaleMultiplier () const
 
SLATECORE_API void Prepass_ChildLoop (float InLayoutScaleMultiplier, FChildren *MyChildren)
 
template<typename TargetValueType , typename SourceValueType >
bool SetAttribute (TAttribute< TargetValueType > &TargetValue, const TAttribute< SourceValueType > &SourceValue, EInvalidateWidgetReason BaseInvalidationReason)
 
TSlateAttributeRef< boolGetEnabledStateAttribute () const
 
TSlateAttributeRef< boolGetHoveredAttribute () const
 
TSlateAttributeRef< EVisibilityGetVisibilityAttribute () const
 
TSlateAttributeRef< TOptional< FSlateRenderTransform > > GetRenderTransformAttribute () const
 
TSlateAttributeRef< FVector2DGetRenderTransformPivotAttribute () const
 
virtual SLATECORE_API ~SWidget ()
 
- Protected Member Functions inherited from TSharedFromThis< SWidget >
 TSharedFromThis ()
 
 TSharedFromThis (TSharedFromThis const &)
 
UE_FORCEINLINE_HINT TSharedFromThisoperator= (TSharedFromThis const &)
 
 ~TSharedFromThis ()
 

Protected Attributes

FOnRowHovered OnHovered
 
FOnRowHovered OnUnhovered
 
FOnObjectRowCanAcceptDrop OnRowCanAcceptDrop
 
FOnObjectRowAcceptDrop OnRowAcceptDrop
 
FOnObjectRowDragDetected OnRowDragDetected
 
FOnObjectRowDragEnter OnRowDragEnter
 
FOnObjectRowDragLeave OnRowDragLeave
 
FOnObjectRowDragCancelled OnRowDragCancelled
 
TWeakObjectPtr< UListViewBaseOwnerListView
 
TWeakPtr< ITypedTableView< ItemType > > OwnerTablePtr
 
- Protected Attributes inherited from SObjectWidget
TObjectPtr< UUserWidgetWidgetObject
 
- Protected Attributes inherited from SCompoundWidget
FCompoundWidgetOneChildSlot ChildSlot
 
- Protected Attributes inherited from SWidget
uint8 bCanSupportFocus: 1
 
uint8 bCanHaveChildren: 1
 
uint8 bClippingProxy: 1
 
uint8 bHasCustomPrepass: 1
 
uint8 bHasRelativeLayoutScale: 1
 
uint8 bVolatilityAlwaysInvalidatesPrepass: 1
 
EWidgetClipping Clipping
 
EWidgetPixelSnapping PixelSnappingMethod
 
FMargin CullingBoundsExtension
 
float RenderOpacity
 

Additional Inherited Members

- Public Types inherited from FGCObject
enum class  EFlags : uint32 { None = 0 , RegisterLater = 1 << 0 , AddStableNativeReferencesOnly = 1 << 1 }
 
- Static Public Member Functions inherited from FSlateControlledConstruction
static const FSlateWidgetClassDataStaticWidgetClass ()
 
- Static Public Member Functions inherited from FGCObject
static COREUOBJECT_API void StaticInit ()
 
- Static Public Member Functions inherited from IObjectTableRow
static TSharedPtr< const IObjectTableRowObjectRowFromUserWidget (const UUserWidget *RowUserWidget)
 
- Static Public Attributes inherited from FGCObject
static COREUOBJECT_API UGCObjectReferencerGGCObjectReferencer = nullptr
 
- Static Protected Member Functions inherited from SWidget
static SLATECORE_API int32 FindChildUnderMouse (const FArrangedChildren &Children, const FPointerEvent &MouseEvent)
 
static SLATECORE_API int32 FindChildUnderPosition (const FArrangedChildren &Children, const UE::Slate::FDeprecateVector2DParameter &ArrangedSpacePosition)
 
static TAttribute< EVisibilityAccessWidgetVisibilityAttribute (const TSharedRef< SWidget > &Widget)
 
- Static Protected Member Functions inherited from TSharedFromThis< SWidget >
static UE_FORCEINLINE_HINT TSharedRef< OtherType, Mode > SharedThis (OtherType *ThisPtr)
 
static UE_FORCEINLINE_HINT TSharedRef< OtherType const, Mode > SharedThis (const OtherType *ThisPtr)
 
- Static Protected Attributes inherited from IObjectTableRow
static UMG_API TMap< TWeakObjectPtr< const UUserWidget >, TWeakPtr< const IObjectTableRow > > ObjectRowsByUserWidget
 

Detailed Description

template<typename ItemType>
class SObjectTableRow< ItemType >

It's an SObjectWidget! It's an ITableRow! It does it all!

By using UUserWidget::TakeDerivedWidget<T>(), this class allows UMG to fully leverage the robust Slate list view widgets. The major gain from this is item virtualization, which is an even bigger deal when unnecessary widgets come with a boatload of additional UObject allocations.

The owning UUserWidget is expected to implement the IUserListEntry UInterface, which allows the row widget to respond to various list-related events.

Note: Much of the implementation here matches STableRow<T> exactly, so refer there if looking for additional information.

Constructor & Destructor Documentation

◆ ~SObjectTableRow()

template<typename ItemType >
virtual SObjectTableRow< ItemType >::~SObjectTableRow ( )
inlinevirtual

Member Function Documentation

◆ AsWidget()

template<typename ItemType >
virtual TSharedRef< SWidget > SObjectTableRow< ItemType >::AsWidget ( )
inlineoverridevirtual
Returns
this table row as a widget

Implements ITableRow.

◆ Construct()

template<typename ItemType >
void SObjectTableRow< ItemType >::Construct ( const FArguments &  InArgs,
const TSharedRef< STableViewBase > &  InOwnerTableView,
UUserWidget InWidgetObject,
UListViewBase InOwnerListView = nullptr 
)
inline

◆ DetectItemSelectionChanged() [1/2]

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::DetectItemSelectionChanged ( )
inlineprotectedvirtual

◆ DetectItemSelectionChanged() [2/2]

template<typename ItemType >
EActiveTimerReturnType SObjectTableRow< ItemType >::DetectItemSelectionChanged ( double  InCurrentTime,
float  InDeltaTime 
)
inline

◆ DoesItemHaveChildren()

template<typename ItemType >
virtual int32 SObjectTableRow< ItemType >::DoesItemHaveChildren ( ) const
inlineoverridevirtual
Returns
Does this item have children?

Implements ITableRow.

◆ GetAllowDragDrop()

template<typename ItemType >
bool SObjectTableRow< ItemType >::GetAllowDragDrop ( ) const
inline

◆ GetContent()

template<typename ItemType >
virtual TSharedPtr< SWidget > SObjectTableRow< ItemType >::GetContent ( )
inlineoverridevirtual
Returns
the content of this table row

Implements ITableRow.

◆ GetIndentLevel()

template<typename ItemType >
virtual int32 SObjectTableRow< ItemType >::GetIndentLevel ( ) const
inlineoverridevirtual
Returns
how nested the item associated with this row when it is in a TreeView

Implements ITableRow.

◆ GetIndexInList()

template<typename ItemType >
virtual int32 SObjectTableRow< ItemType >::GetIndexInList ( )
inlineoverridevirtual
Returns
The index of the item for which this widget was generated

Implements ITableRow.

◆ GetItemForThis()

template<typename ItemType >
const TObjectPtrWrapTypeOf< ItemType > * SObjectTableRow< ItemType >::GetItemForThis ( const TSharedRef< ITypedTableView< ItemType > > &  OwnerTable) const
inlineprotected

◆ GetOwningListView()

template<typename ItemType >
virtual UListViewBase * SObjectTableRow< ItemType >::GetOwningListView ( ) const
inlinevirtual

Implements IObjectTableRow.

◆ GetRowSizeForColumn()

template<typename ItemType >
virtual FVector2D SObjectTableRow< ItemType >::GetRowSizeForColumn ( const FName InColumnName) const
inlineoverridevirtual
Returns
the size for the specified column name

Implements ITableRow.

◆ GetSelectionMode()

template<typename ItemType >
virtual ESelectionMode::Type SObjectTableRow< ItemType >::GetSelectionMode ( ) const
inlineoverridevirtual

Called to query the selection mode for the row

Implements ITableRow.

◆ GetUserWidget()

template<typename ItemType >
virtual UUserWidget * SObjectTableRow< ItemType >::GetUserWidget ( ) const
inlinevirtual

Implements IObjectTableRow.

◆ GetWiresNeededByDepth()

template<typename ItemType >
virtual TBitArray SObjectTableRow< ItemType >::GetWiresNeededByDepth ( ) const
inlineoverridevirtual
Returns
BitArray where each entry corresponds to whether this item needs a vertical wire draw for that depth.

Implements ITableRow.

◆ HandleEntryDragged()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::HandleEntryDragged ( UDragDropOperation Operation)
inlinevirtual

◆ HandleEntryDropped()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::HandleEntryDropped ( UDragDropOperation Operation)
inlinevirtual

◆ InitializeObjectRow()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::InitializeObjectRow ( )
inlineprotectedvirtual

◆ InitializeRow()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::InitializeRow ( )
inlinefinaloverridevirtual

Called when the row has been generated and associated with an item in the owning table. Any attempts to access the item associated with the row prior to this (i.e. in Construct()) will fail, as the association is not yet established in the owning table.

Implements ITableRow.

◆ IsItemExpanded()

template<typename ItemType >
virtual bool SObjectTableRow< ItemType >::IsItemExpanded ( ) const
inlineoverridevirtual
Returns
true if the corresponding item is expanded; false otherwise

Implements ITableRow.

◆ IsItemSelectable()

template<typename ItemType >
bool SObjectTableRow< ItemType >::IsItemSelectable ( ) const
inlineprotected

◆ IsItemSelected()

template<typename ItemType >
virtual bool SObjectTableRow< ItemType >::IsItemSelected ( ) const
inlineoverridevirtual
Returns
True if the corresponding item is selected; false otherwise

Implements ITableRow.

◆ IsLastChild()

template<typename ItemType >
virtual bool SObjectTableRow< ItemType >::IsLastChild ( ) const
inlineoverridevirtual
Returns
true if this item is the last direct descendant of its parent.

Implements ITableRow.

◆ NotifyItemExpansionChanged()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::NotifyItemExpansionChanged ( bool  bIsExpanded)
inlinevirtual

◆ OnDragCancelled()

template<typename ItemType >
void SObjectTableRow< ItemType >::OnDragCancelled ( const FDragDropEvent DragDropEvent,
UDragDropOperation Operation 
)
inlineoverridevirtual

Reimplemented from SObjectWidget.

◆ OnDragDetected()

template<typename ItemType >
virtual FReply SObjectTableRow< ItemType >::OnDragDetected ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
inlineoverridevirtual

Called when Slate detects that a widget started to be dragged. Usage: A widget can ask Slate to detect a drag. OnMouseDown() reply with FReply::Handled().DetectDrag( SharedThis(this) ). Slate will either send an OnDragDetected() event or do nothing. If the user releases a mouse button or leaves the widget before a drag is triggered (maybe user started at the very edge) then no event will be sent.

Parameters
InMyGeometryWidget geometry
InMouseEventMouseMove that triggered the drag

Reimplemented from SObjectWidget.

◆ OnDragEnter()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::OnDragEnter ( const FGeometry MyGeometry,
const FDragDropEvent DragDropEvent 
)
inlineoverridevirtual

Called during drag and drop when the drag enters a widget.

Enter/Leave events in slate are meant as lightweight notifications. So we do not want to capture mouse or set focus in response to these. However, OnDragEnter must also support external APIs (e.g. OLE Drag/Drop) Those require that we let them know whether we can handle the content being dragged OnDragEnter.

The concession is to return a can_handled/cannot_handle boolean rather than a full FReply.

Parameters
MyGeometryThe geometry of the widget receiving the event.
DragDropEventThe drag and drop event.
Returns
A reply that indicated whether the contents of the DragDropEvent can potentially be processed by this widget.

Reimplemented from SObjectWidget.

◆ OnDragLeave()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::OnDragLeave ( FDragDropEvent const &  DragDropEvent)
inlineoverridevirtual

Called during drag and drop when the drag leaves a widget.

Parameters
DragDropEventThe drag and drop event.

Reimplemented from SObjectWidget.

◆ OnDragOver()

template<typename ItemType >
virtual FReply SObjectTableRow< ItemType >::OnDragOver ( const FGeometry MyGeometry,
const FDragDropEvent DragDropEvent 
)
inlineoverridevirtual

Called during drag and drop when the the mouse is being dragged over a widget.

Parameters
MyGeometryThe geometry of the widget receiving the event.
DragDropEventThe drag and drop event.
Returns
A reply that indicated whether this event was handled.

Reimplemented from SObjectWidget.

◆ OnDrop()

template<typename ItemType >
virtual FReply SObjectTableRow< ItemType >::OnDrop ( const FGeometry MyGeometry,
const FDragDropEvent DragDropEvent 
)
inlineoverridevirtual

Called when the user is dropping something onto a widget; terminates drag and drop.

Parameters
MyGeometryThe geometry of the widget receiving the event.
DragDropEventThe drag and drop event.
Returns
A reply that indicated whether this event was handled.

Reimplemented from SObjectWidget.

◆ OnItemSelectionChanged()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::OnItemSelectionChanged ( bool  bIsItemSelected)
inlineprotectedvirtual

◆ OnMouseButtonDoubleClick()

template<typename ItemType >
virtual FReply SObjectTableRow< ItemType >::OnMouseButtonDoubleClick ( const FGeometry InMyGeometry,
const FPointerEvent InMouseEvent 
)
inlineoverridevirtual

Called when a mouse button is double clicked. Override this in derived classes.

Parameters
InMyGeometryWidget geometry
InMouseEventMouse button event
Returns
Returns whether the event was handled, along with other possible actions

Reimplemented from SObjectWidget.

◆ OnMouseButtonDown()

template<typename ItemType >
virtual FReply SObjectTableRow< ItemType >::OnMouseButtonDown ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
inlineoverridevirtual

The system calls this method to notify the widget that a mouse button was pressed within it. This event is bubbled.

Parameters
MyGeometryThe Geometry of the widget receiving the event
MouseEventInformation about the input event
Returns
Whether the event was handled along with possible requests for the system to take action.

Reimplemented from SObjectWidget.

◆ OnMouseButtonUp()

template<typename ItemType >
virtual FReply SObjectTableRow< ItemType >::OnMouseButtonUp ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
inlineoverridevirtual

The system calls this method to notify the widget that a mouse button was release within it. This event is bubbled.

Parameters
MyGeometryThe Geometry of the widget receiving the event
MouseEventInformation about the input event
Returns
Whether the event was handled along with possible requests for the system to take action.

Reimplemented from SObjectWidget.

◆ OnMouseEnter()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::OnMouseEnter ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
inlineoverridevirtual

The system will use this event to notify a widget that the cursor has entered it. This event is uses a custom bubble strategy.

Parameters
MyGeometryThe Geometry of the widget receiving the event
MouseEventInformation about the input event

Reimplemented from SObjectWidget.

◆ OnMouseLeave()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::OnMouseLeave ( const FPointerEvent MouseEvent)
inlineoverridevirtual

The system will use this event to notify a widget that the cursor has left it. This event is uses a custom bubble strategy.

Parameters
MouseEventInformation about the input event

Reimplemented from SObjectWidget.

◆ OnTouchEnded()

template<typename ItemType >
virtual FReply SObjectTableRow< ItemType >::OnTouchEnded ( const FGeometry MyGeometry,
const FPointerEvent InTouchEvent 
)
inlineoverridevirtual

Called when a touchpad touch is ended (finger lifted)

Parameters
InTouchEventThe touch event generated

Reimplemented from SObjectWidget.

◆ OnTouchStarted()

template<typename ItemType >
virtual FReply SObjectTableRow< ItemType >::OnTouchStarted ( const FGeometry MyGeometry,
const FPointerEvent InTouchEvent 
)
inlineoverridevirtual

Called when a touchpad touch is started (finger down)

Parameters
InTouchEventThe touch event generated

Reimplemented from SObjectWidget.

◆ Private_OnExpanderArrowShiftClicked()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::Private_OnExpanderArrowShiftClicked ( )
inlineoverridevirtual

Called when the expander arrow for this row is shift+clicked

Implements ITableRow.

◆ ResetObjectRow()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::ResetObjectRow ( )
inlineprotectedvirtual

◆ ResetRow()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::ResetRow ( )
inlinefinaloverridevirtual

Called when the row has been released from the owning table and is no longer associated with any items therein. Only relevant if the row widgets are pooled or otherwise referenced/kept alive outside the owning table. Otherwise, the row is destroyed.

Implements ITableRow.

◆ SetIndexInList()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::SetIndexInList ( int32  InIndexInList)
inlineoverridevirtual
Parameters
InIndexInListThe index of the item for which this widget was generated

Implements ITableRow.

◆ SLATE_BEGIN_ARGS()

template<typename ItemType >
SObjectTableRow< ItemType >::SLATE_BEGIN_ARGS ( SObjectTableRow< ItemType >  )
inline

◆ SupportsKeyboardFocus()

template<typename ItemType >
virtual bool SObjectTableRow< ItemType >::SupportsKeyboardFocus ( ) const
inlineoverridevirtual

Checks to see if this widget supports keyboard focus. Override this in derived classes.

Returns
True if this widget can take keyboard focus

Reimplemented from SObjectWidget.

◆ ToggleExpansion()

template<typename ItemType >
virtual void SObjectTableRow< ItemType >::ToggleExpansion ( )
inlineoverridevirtual

Toggle the expansion of the item associated with this row

Implements ITableRow.

◆ ZoneFromPointerPosition()

template<typename ItemType >
EItemDropZone SObjectTableRow< ItemType >::ZoneFromPointerPosition ( UE::Slate::FDeprecateVector2DParameter  LocalPointerPos,
UE::Slate::FDeprecateVector2DParameter  LocalSize,
EOrientation  Orientation 
)
inline
Returns
the zone (above, onto, below) based on where the user is hovering over within the row

Member Data Documentation

◆ OnHovered

template<typename ItemType >
FOnRowHovered SObjectTableRow< ItemType >::OnHovered
protected

◆ OnRowAcceptDrop

template<typename ItemType >
FOnObjectRowAcceptDrop SObjectTableRow< ItemType >::OnRowAcceptDrop
protected

◆ OnRowCanAcceptDrop

template<typename ItemType >
FOnObjectRowCanAcceptDrop SObjectTableRow< ItemType >::OnRowCanAcceptDrop
protected

◆ OnRowDragCancelled

template<typename ItemType >
FOnObjectRowDragCancelled SObjectTableRow< ItemType >::OnRowDragCancelled
protected

◆ OnRowDragDetected

template<typename ItemType >
FOnObjectRowDragDetected SObjectTableRow< ItemType >::OnRowDragDetected
protected

◆ OnRowDragEnter

template<typename ItemType >
FOnObjectRowDragEnter SObjectTableRow< ItemType >::OnRowDragEnter
protected

◆ OnRowDragLeave

template<typename ItemType >
FOnObjectRowDragLeave SObjectTableRow< ItemType >::OnRowDragLeave
protected

◆ OnUnhovered

template<typename ItemType >
FOnRowHovered SObjectTableRow< ItemType >::OnUnhovered
protected

◆ OwnerListView

template<typename ItemType >
TWeakObjectPtr<UListViewBase> SObjectTableRow< ItemType >::OwnerListView
protected

◆ OwnerTablePtr

template<typename ItemType >
TWeakPtr<ITypedTableView<ItemType> > SObjectTableRow< ItemType >::OwnerTablePtr
protected

The documentation for this class was generated from the following file: