UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
STableViewBase Class Referenceabstract

#include <STableViewBase.h>

+ Inheritance diagram for STableViewBase:

Classes

struct  FReGenerateResults
 

Public Member Functions

SLATE_API void ConstructChildren (const TAttribute< float > &InItemWidth, const TAttribute< float > &InItemHeight, const TAttribute< EListItemAlignment > &InItemAlignment, const TSharedPtr< SHeaderRow > &InHeaderRow, const TSharedPtr< SScrollBar > &InScrollBar, EOrientation InScrollOrientation, const FOnTableViewScrolled &InOnTableViewScrolled, const FScrollBarStyle *InScrollBarStyle=nullptr, const bool bInPreventThrottling=false)
 
SLATE_API void SetItemHeight (TAttribute< float > Height)
 
SLATE_API void SetItemWidth (TAttribute< float > Width)
 
SLATE_API void ScrollBar_OnUserScrolled (float InScrollOffsetFraction)
 
SLATE_API int32 GetNumGeneratedChildren () const
 
SLATE_API TSharedPtr< SWidgetGetGeneratedChildAt (int32 Index) const
 
SLATE_API TSharedPtr< SHeaderRowGetHeaderRow () const
 
SLATE_API bool IsRightClickScrolling () const
 
SLATE_API bool IsUserScrolling () const
 
virtual SLATE_API void RequestListRefresh ()
 
virtual void RebuildList ()=0
 
SLATE_API bool IsPendingRefresh () const
 
SLATE_API void ScrollToTop ()
 
SLATE_API void ScrollToBottom ()
 
SLATE_API bool IsScrolling () const
 
SLATE_API float GetScrollOffset () const
 
SLATE_API void SetScrollOffset (const float InScrollOffset)
 
SLATE_API void EndInertialScrolling (const bool bInShouldStopScrollNow=false)
 
SLATE_API void AddScrollOffset (const float InScrollOffsetDelta, bool RefreshList=false)
 
SLATE_API EVisibility GetScrollbarVisibility () const
 
SLATE_API void SetScrollbarVisibility (const EVisibility InVisibility)
 
SLATE_API void SetScrollbarPadding (const FMargin &InScrollbarPadding)
 
SLATE_API bool IsScrollbarNeeded () const
 
SLATE_API void SetFixedLineScrollOffset (TOptional< double > InFixedLineScrollOffset)
 
SLATE_API void SetIsScrollAnimationEnabled (bool bInEnableScrollAnimation)
 
SLATE_API void SetScrollingAnimationInterpolationSpeed (float InScrollingAnimationInterpolationSpeed)
 
SLATE_API void SetEnableTouchAnimatedScrolling (bool bInEnableTouchAnimatedScrolling)
 
SLATE_API void SetAllowOverscroll (EAllowOverscroll InAllowOverscroll)
 
SLATE_API void SetIsRightClickScrollingEnabled (const bool bInEnableRightClickScrolling)
 
SLATE_API void SetIsTouchScrollingEnabled (const bool bInEnableTouchScrolling)
 
SLATE_API void SetSelectItemOnNavigation (const bool bInSelectItemOnNavigation)
 
SLATE_API void SetWheelScrollMultiplier (float NewWheelScrollMultiplier)
 
SLATE_API void SetIsPointerScrollingEnabled (bool bInIsPointerScrollingEnabled)
 
SLATE_API void SetIsGamepadScrollingEnabled (bool bInIsGamepadScrollingEnabled)
 
SLATE_API void SetBackgroundBrush (const TAttribute< const FSlateBrush * > &InBackgroundBrush)
 
virtual SLATE_API void OnFocusLost (const FFocusEvent &InFocusEvent) override
 
virtual SLATE_API void OnMouseCaptureLost (const FCaptureLostEvent &CaptureLostEvent) override
 
virtual SLATE_API bool SupportsKeyboardFocus () const override
 
virtual SLATE_API void Tick (const FGeometry &AllottedGeometry, const double InCurrentTime, const float InDeltaTime) override
 
virtual SLATE_API FReply OnPreviewMouseButtonDown (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent) override
 
virtual SLATE_API FReply OnMouseButtonDown (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent) override
 
virtual SLATE_API FReply OnMouseButtonDoubleClick (const FGeometry &InMyGeometry, const FPointerEvent &InMouseEvent) override
 
virtual SLATE_API FReply OnMouseButtonUp (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent) override
 
virtual SLATE_API void OnMouseEnter (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent) override
 
virtual SLATE_API void OnMouseLeave (const FPointerEvent &MouseEvent) override
 
virtual SLATE_API FReply OnMouseMove (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent) override
 
virtual SLATE_API FReply OnMouseWheel (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent) override
 
virtual SLATE_API FReply OnKeyDown (const FGeometry &MyGeometry, const FKeyEvent &InKeyEvent) override
 
virtual SLATE_API FCursorReply OnCursorQuery (const FGeometry &MyGeometry, const FPointerEvent &CursorEvent) const override
 
virtual SLATE_API int32 OnPaint (const FPaintArgs &Args, const FGeometry &AllottedGeometry, const FSlateRect &MyCullingRect, FSlateWindowElementList &OutDrawElements, int32 LayerId, const FWidgetStyle &InWidgetStyle, bool bParentEnabled) const override
 
virtual SLATE_API bool ComputeVolatility () const override
 
virtual SLATE_API FReply OnTouchStarted (const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent) override
 
virtual SLATE_API FReply OnTouchMoved (const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent) override
 
virtual SLATE_API FReply OnTouchEnded (const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent) override
 
virtual SLATE_API FVector2D GetScrollDistance () override
 
virtual SLATE_API FVector2D GetScrollDistanceRemaining () override
 
virtual SLATE_API TSharedRef< class SWidgetGetScrollWidget () override
 
- 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 FReply OnFocusReceived (const FGeometry &MyGeometry, const FFocusEvent &InFocusEvent)
 
virtual SLATECORE_API void OnFocusChanging (const FWeakWidgetPath &PreviousFocusPath, const FWidgetPath &NewWidgetPath, const FFocusEvent &InFocusEvent)
 
virtual SLATECORE_API FReply OnKeyChar (const FGeometry &MyGeometry, const FCharacterEvent &InCharacterEvent)
 
virtual SLATECORE_API FReply OnPreviewKeyDown (const FGeometry &MyGeometry, const FKeyEvent &InKeyEvent)
 
virtual SLATECORE_API FReply OnKeyUp (const FGeometry &MyGeometry, const FKeyEvent &InKeyEvent)
 
virtual SLATECORE_API FReply OnAnalogValueChanged (const FGeometry &MyGeometry, const FAnalogInputEvent &InAnalogInputEvent)
 
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 FReply OnDragDetected (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent)
 
virtual SLATECORE_API void OnDragEnter (const FGeometry &MyGeometry, const FDragDropEvent &DragDropEvent)
 
virtual SLATECORE_API void OnDragLeave (const FDragDropEvent &DragDropEvent)
 
virtual SLATECORE_API FReply OnDragOver (const FGeometry &MyGeometry, const FDragDropEvent &DragDropEvent)
 
virtual SLATECORE_API FReply OnDrop (const FGeometry &MyGeometry, const FDragDropEvent &DragDropEvent)
 
virtual SLATECORE_API FReply OnTouchGesture (const FGeometry &MyGeometry, const FPointerEvent &GestureEvent)
 
virtual SLATECORE_API FReply OnTouchForceChanged (const FGeometry &MyGeometry, const FPointerEvent &TouchEvent)
 
virtual SLATECORE_API FReply OnTouchFirstMove (const FGeometry &MyGeometry, const FPointerEvent &TouchEvent)
 
virtual SLATECORE_API FReply OnMotionDetected (const FGeometry &MyGeometry, const FMotionEvent &InMotionEvent)
 
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 OnFinishedPointerInput ()
 
virtual SLATECORE_API void OnFinishedKeyInput ()
 
virtual SLATECORE_API FNavigationReply OnNavigation (const FGeometry &MyGeometry, const FNavigationEvent &InNavigationEvent)
 
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 bool IsInteractable () 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 IScrollableWidget
virtual ~IScrollableWidget ()
 

Public Attributes

const ETableViewMode::Type TableViewMode
 

Protected Types

enum class  EScrollIntoViewResult { Success , Deferred , Failure }
 

Protected Member Functions

SLATE_API STableViewBase (ETableViewMode::Type InTableViewMode)
 
virtual SLATE_API ~STableViewBase ()
 
SLATE_API double GetTargetScrollOffset () const
 
virtual SLATE_API float ScrollBy (const FGeometry &MyGeometry, float ScrollByAmount, EAllowOverscroll InAllowOverscroll)
 
virtual SLATE_API float ScrollTo (float InScrollOffset)
 
SLATE_API void InsertWidget (const TSharedRef< ITableRow > &WidgetToInset)
 
SLATE_API void AppendWidget (const TSharedRef< ITableRow > &WidgetToAppend)
 
SLATE_API const FChildrenGetConstructedTableItems () const
 
SLATE_API void ClearWidgets ()
 
SLATE_API void InsertPinnedWidget (const TSharedRef< SWidget > &WidgetToInset)
 
SLATE_API void AppendPinnedWidget (const TSharedRef< SWidget > &WidgetToAppend)
 
SLATE_API void ClearPinnedWidgets ()
 
SLATE_API float GetItemWidth () const
 
SLATE_API float GetItemHeight () const
 
SLATE_API UE::Slate::FDeprecateVector2DResult GetItemSize () const
 
virtual SLATE_API float GetNumLiveWidgets () const
 
virtual SLATE_API int32 GetNumItemsPerLine () const
 
virtual SLATE_API float GetFirstLineScrollOffset () const
 
virtual void OnRightMouseButtonDown (const FPointerEvent &MouseEvent)
 
virtual SLATE_API void OnRightMouseButtonUp (const FPointerEvent &MouseEvent)
 
SLATE_API float GetScrollRateInItems () const
 
virtual void UpdateSelectionSet ()=0
 
SLATE_API void RequestLayoutRefresh ()
 
virtual FReGenerateResults ReGenerateItems (const FGeometry &MyGeometry)=0
 
virtual int32 GetNumItemsBeingObserved () const =0
 
SLATE_API int32 GetNumPinnedItems () const
 
SLATE_API EVisibility GetPinnedItemsVisiblity () const
 
virtual EScrollIntoViewResult ScrollIntoView (const FGeometry &ListViewGeometry)=0
 
virtual void NotifyItemScrolledIntoView ()=0
 
virtual void NotifyFinishedScrolling ()=0
 
SLATE_API void NavigateToWidget (const uint32 UserIndex, const TSharedPtr< SWidget > &NavigationDestination, ENavigationSource NavigationSource=ENavigationSource::FocusedWidget, EUINavigation NavigationType=EUINavigation::Invalid) const
 
SLATE_API int32 FindChildUnderPosition (FArrangedChildren &ArrangedChildren, const FVector2D &ArrangedSpacePosition) const
 
float GetScrollComponentFromVector (FVector2f Vector) const
 
virtual SLATE_API void OnClippingChanged () override
 
FSlateColor GetStartShadowOpacity () const
 
FSlateColor GetEndShadowOpacity () const
 
SLATE_API bool CanUseInertialScroll (float ScrollAmount) const
 
SLATE_API EActiveTimerReturnType UpdateInertialScroll (double InCurrentTime, float InDeltaTime)
 
SLATE_API EActiveTimerReturnType EnsureTickToRefresh (double InCurrentTime, float InDeltaTime)
 
float GetSmoothDeltaTime (float InDeltaTime)
 
void UpdateSmoothDeltaTime (float InDeltaTime)
 
- Protected Member Functions inherited from SCompoundWidget
virtual SLATECORE_API FVector2D ComputeDesiredSize (float) const override
 
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
 
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

TSharedPtr< SListPanelItemsPanel
 
TSharedPtr< SListPanelPinnedItemsPanel
 
TSharedPtr< SScrollBarScrollBar
 
FMargin ScrollBarSlotPadding
 
FOnTableViewScrolled OnTableViewScrolled
 
TOptional< doubleFixedLineScrollOffset
 
bool bEnableAnimatedScrolling = false
 
float ScrollingAnimationInterpolationSpeed = 12.f
 
bool bEnableTouchAnimatedScrolling = false
 
bool bEnableRightClickScrolling = true
 
bool bEnableTouchScrolling = true
 
bool bSelectItemOnNavigation = true
 
double CurrentScrollOffset = 0.
 
double DesiredScrollOffset = 0.
 
bool bStartedTouchInteraction
 
float AmountScrolledWhileRightMouseDown
 
FVector2f PressedScreenSpacePosition
 
float TickScrollDelta
 
FReGenerateResults LastGenerateResults
 
bool bWasAtEndOfList
 
FGeometry PanelGeometryLastTick
 
FOnContextMenuOpening OnContextMenuOpening
 
FSimpleDelegate OnItemsRebuilt
 
TAttribute< ESelectionMode::TypeSelectionMode
 
TSharedPtr< SHeaderRowHeaderRow
 
FInertialScrollManager InertialScrollManager
 
FVector2f SoftwareCursorPosition
 
bool bShowSoftwareCursor
 
float WheelScrollMultiplier
 
bool bIsPointerScrollingEnabled = true
 
bool bIsGamepadScrollingEnabled = true
 
EOrientation Orientation = Orient_Vertical
 
bool bShouldUseShadowBoxStyle = false
 
const FScrollBoxStyleShadowBoxStyle
 
FInvalidatableBrushAttribute BackgroundBrush
 
bool bIsScrollingActiveTimerRegistered
 
FOverscroll Overscroll
 
EAllowOverscroll AllowOverscroll
 
EConsumeMouseWheel ConsumeMouseWheel
 
- 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

- Static Public Member Functions inherited from FSlateControlledConstruction
static const FSlateWidgetClassDataStaticWidgetClass ()
 
- 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)
 

Detailed Description

Contains ListView functionality that does not depend on the type of data being observed by the ListView.

Member Enumeration Documentation

◆ EScrollIntoViewResult

Enumerator
Success 

The function scrolled an item (if set) into view (or the item was already in view)

Deferred 

The function did not have enough data to scroll the given item into view, so it should be deferred until the next Tick

Failure 

The function failed to scroll to the specified item.

Constructor & Destructor Documentation

◆ STableViewBase()

STableViewBase::STableViewBase ( ETableViewMode::Type  InTableViewMode)
protected

◆ ~STableViewBase()

STableViewBase::~STableViewBase ( )
protectedvirtualdefault

Member Function Documentation

◆ AddScrollOffset()

void STableViewBase::AddScrollOffset ( const float  InScrollOffsetDelta,
bool  RefreshList = false 
)

Add the scroll offset of this view (in items)

◆ AppendPinnedWidget()

void STableViewBase::AppendPinnedWidget ( const TSharedRef< SWidget > &  WidgetToAppend)
protected

Add a WidgetToAppend to the bottom of the pinned view.

◆ AppendWidget()

void STableViewBase::AppendWidget ( const TSharedRef< ITableRow > &  WidgetToAppend)
protected

Add a WidgetToAppend to the bottom of the view.

◆ CanUseInertialScroll()

bool STableViewBase::CanUseInertialScroll ( float  ScrollAmount) const
protected

Check whether the current state of the table warrants inertial scroll by the specified amount

◆ ClearPinnedWidgets()

void STableViewBase::ClearPinnedWidgets ( )
protected

Remove all the pinned widgets from the view.

◆ ClearWidgets()

void STableViewBase::ClearWidgets ( )
protected

Remove all the widgets from the view.

◆ ComputeVolatility()

bool STableViewBase::ComputeVolatility ( ) const
overridevirtual

Recomputes the volatility of the widget. If you have additional state you automatically want to make the widget volatile, you should sample that information here.

Reimplemented from SWidget.

◆ ConstructChildren()

void STableViewBase::ConstructChildren ( const TAttribute< float > &  InItemWidth,
const TAttribute< float > &  InItemHeight,
const TAttribute< EListItemAlignment > &  InItemAlignment,
const TSharedPtr< SHeaderRow > &  InHeaderRow,
const TSharedPtr< SScrollBar > &  InScrollBar,
EOrientation  InScrollOrientation,
const FOnTableViewScrolled InOnTableViewScrolled,
const FScrollBarStyle InScrollBarStyle = nullptr,
const bool  bInPreventThrottling = false 
)

Create the child widgets that comprise the list

◆ EndInertialScrolling()

void STableViewBase::EndInertialScrolling ( const bool  bInShouldStopScrollNow = false)

Reset the inertial scroll velocity accumulated in the InertialScrollManager

Parameters
bInShouldStopScrollNowtrue implies the scroll will stop instantly, else the list will scroll until any accumulated scroll offset is cleared.

◆ EnsureTickToRefresh()

EActiveTimerReturnType STableViewBase::EnsureTickToRefresh ( double  InCurrentTime,
float  InDeltaTime 
)
protected

One-off active timer to refresh the contents of the table as needed

◆ FindChildUnderPosition()

int32 STableViewBase::FindChildUnderPosition ( FArrangedChildren ArrangedChildren,
const FVector2D ArrangedSpacePosition 
) const
protected

Util function to find the child index under the given position.

◆ GetConstructedTableItems()

const FChildren * STableViewBase::GetConstructedTableItems ( ) const
protected

◆ GetEndShadowOpacity()

FSlateColor STableViewBase::GetEndShadowOpacity ( ) const
protected

Does the user need a hint that they can scroll to the end of the list?

◆ GetFirstLineScrollOffset()

float STableViewBase::GetFirstLineScrollOffset ( ) const
protectedvirtual

Get the offset of the first list item.

◆ GetGeneratedChildAt()

TSharedPtr< SWidget > STableViewBase::GetGeneratedChildAt ( int32  Index) const
Returns
The generated row widget at the specified index if it exists (NULL otherwise).

◆ GetHeaderRow()

TSharedPtr< SHeaderRow > STableViewBase::GetHeaderRow ( ) const

◆ GetItemHeight()

float STableViewBase::GetItemHeight ( ) const
protected

Get the uniform item height that is enforced by ListViews.

◆ GetItemSize()

UE::Slate::FDeprecateVector2DResult STableViewBase::GetItemSize ( ) const
protected

Get the uniform item

◆ GetItemWidth()

float STableViewBase::GetItemWidth ( ) const
protected

Get the uniform item width.

◆ GetNumGeneratedChildren()

int32 STableViewBase::GetNumGeneratedChildren ( ) const
Returns
The number of Widgets we currently have generated.

◆ GetNumItemsBeingObserved()

◆ GetNumItemsPerLine()

int32 STableViewBase::GetNumItemsPerLine ( ) const
protectedvirtual

Get the number of items that can fit in the view along the line axis (orthogonal to the scroll axis) before creating a new line. Default is 1, but may be more in subclasses (like STileView)

Reimplemented in STileView< ItemType >, STileView< TSharedPtr< FTestData > >, STileView< TSharedPtr< int32 > >, and STileView< UObject * >.

◆ GetNumLiveWidgets()

float STableViewBase::GetNumLiveWidgets ( ) const
protectedvirtual
Returns
the number of items that can fit on the screen

◆ GetNumPinnedItems()

int32 STableViewBase::GetNumPinnedItems ( ) const
protected
Returns
how many pinned items are in the table

◆ GetPinnedItemsVisiblity()

EVisibility STableViewBase::GetPinnedItemsVisiblity ( ) const
protected

◆ GetScrollbarVisibility()

EVisibility STableViewBase::GetScrollbarVisibility ( ) const

◆ GetScrollComponentFromVector()

float STableViewBase::GetScrollComponentFromVector ( FVector2f  Vector) const
inlineprotected

Gets the component of a vector in the direction of scrolling based on the Orientation property.

◆ GetScrollDistance()

FVector2D STableViewBase::GetScrollDistance ( )
overridevirtual

Gets the distance that user has scrolled into the control in normalized coordinates (0 - 1)

Implements IScrollableWidget.

◆ GetScrollDistanceRemaining()

FVector2D STableViewBase::GetScrollDistanceRemaining ( )
overridevirtual

Gets the distance that user has left to scroll in the control before reaching the end in normalized coordinates (0 - 1)

Implements IScrollableWidget.

◆ GetScrollOffset()

float STableViewBase::GetScrollOffset ( ) const

Gets the scroll offset of this view (in items)

◆ GetScrollRateInItems()

float STableViewBase::GetScrollRateInItems ( ) const
protected

Get the scroll rate in items that best approximates a constant physical scroll rate.

◆ GetScrollWidget()

TSharedRef< class SWidget > STableViewBase::GetScrollWidget ( )
overridevirtual

Returns the typed SWidget that implements this interface

Implements IScrollableWidget.

◆ GetSmoothDeltaTime()

float STableViewBase::GetSmoothDeltaTime ( float  InDeltaTime)
protected

◆ GetStartShadowOpacity()

FSlateColor STableViewBase::GetStartShadowOpacity ( ) const
protected

Does the user need a hint that they can scroll to the start of the list?

◆ GetTargetScrollOffset()

double STableViewBase::GetTargetScrollOffset ( ) const
protected

Returns the "true" scroll offset where the list will ultimately settle (and may already be).

◆ InsertPinnedWidget()

void STableViewBase::InsertPinnedWidget ( const TSharedRef< SWidget > &  WidgetToInset)
protected

Insert WidgetToInsert at the top of the pinned view.

◆ InsertWidget()

void STableViewBase::InsertWidget ( const TSharedRef< ITableRow > &  WidgetToInset)
protected

Insert WidgetToInsert at the top of the view.

◆ IsPendingRefresh()

bool STableViewBase::IsPendingRefresh ( ) const

Return true if there is currently a refresh pending, false otherwise

◆ IsRightClickScrolling()

bool STableViewBase::IsRightClickScrolling ( ) const
Returns
Returns true if the user is currently interactively scrolling the view by holding the right mouse button and dragging.

◆ IsScrollbarNeeded()

bool STableViewBase::IsScrollbarNeeded ( ) const

Returns true if scrolling is possible; false if the view is big enough to fit all the content.

◆ IsScrolling()

bool STableViewBase::IsScrolling ( ) const

Returns whether the attached scrollbar is scrolling

◆ IsUserScrolling()

bool STableViewBase::IsUserScrolling ( ) const
Returns
Returns true if the user is currently interactively scrolling the view by holding either mouse button and dragging.

◆ NavigateToWidget()

void STableViewBase::NavigateToWidget ( const uint32  UserIndex,
const TSharedPtr< SWidget > &  NavigationDestination,
ENavigationSource  NavigationSource = ENavigationSource::FocusedWidget,
EUINavigation  NavigationType = EUINavigation::Invalid 
) const
protected

Util Function so templates classes don't need to include SlateApplication

◆ NotifyFinishedScrolling()

virtual void STableViewBase::NotifyFinishedScrolling ( )
protectedpure virtual

Called at the end of a Tick when

  • CurrentScrollOffset == TargetScrollOffset
  • the user is not scrolling
  • the table view is not scrolling from an overscroll position

Implemented in SListView< ItemType >, SListView< OptionType >, SListView< TSharedPtr< FString > >, SListView< TSharedPtr< FTestData > >, SListView< TSharedPtr< int32 > >, SListView< TSharedPtr< UE::PropertyViewer::Private::FTreeNode > >, and SListView< UObject * >.

◆ NotifyItemScrolledIntoView()

virtual void STableViewBase::NotifyItemScrolledIntoView ( )
protectedpure virtual

Called when an item has entered the visible geometry to check to see if the ItemScrolledIntoView delegate should be fired.

Implemented in SListView< ItemType >, SListView< OptionType >, SListView< TSharedPtr< FString > >, SListView< TSharedPtr< FTestData > >, SListView< TSharedPtr< int32 > >, SListView< TSharedPtr< UE::PropertyViewer::Private::FTreeNode > >, and SListView< UObject * >.

◆ OnClippingChanged()

void STableViewBase::OnClippingChanged ( )
overrideprotectedvirtual

Passing over the clipping to SListPanel

Reimplemented from SWidget.

◆ OnCursorQuery()

FCursorReply STableViewBase::OnCursorQuery ( const FGeometry MyGeometry,
const FPointerEvent CursorEvent 
) const
overridevirtual

The system asks each widget under the mouse to provide a cursor. This event is bubbled.

Returns
FCursorReply::Unhandled() if the event is not handled; return FCursorReply::Cursor() otherwise.

Reimplemented from SWidget.

◆ OnFocusLost()

void STableViewBase::OnFocusLost ( const FFocusEvent InFocusEvent)
overridevirtual

Called when this widget loses focus. This event does not bubble.

Parameters
InFocusEventThe FocusEvent

Reimplemented from SWidget.

◆ OnKeyDown()

FReply STableViewBase::OnKeyDown ( const FGeometry MyGeometry,
const FKeyEvent InKeyEvent 
)
overridevirtual

Called after a key is pressed when this widget has focus (this event bubbles if not handled)

Parameters
MyGeometryThe Geometry of the widget receiving the event
InKeyEventKey event
Returns
Returns whether the event was handled, along with other possible actions

Reimplemented from SWidget.

Reimplemented in SListView< ItemType >, SListView< OptionType >, SListView< TSharedPtr< FString > >, SListView< TSharedPtr< FTestData > >, SListView< TSharedPtr< int32 > >, SListView< TSharedPtr< UE::PropertyViewer::Private::FTreeNode > >, SListView< UObject * >, STreeView< ItemType >, STreeView< TSharedPtr< FTestData > >, STreeView< TSharedPtr< int32 > >, STreeView< TSharedPtr< UE::PropertyViewer::Private::FTreeNode > >, and STreeView< UObject * >.

◆ OnMouseButtonDoubleClick()

FReply STableViewBase::OnMouseButtonDoubleClick ( const FGeometry InMyGeometry,
const FPointerEvent InMouseEvent 
)
overridevirtual

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 SWidget.

◆ OnMouseButtonDown()

FReply STableViewBase::OnMouseButtonDown ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
overridevirtual

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 SWidget.

Reimplemented in SListView< ItemType >, SListView< OptionType >, SListView< TSharedPtr< FString > >, SListView< TSharedPtr< FTestData > >, SListView< TSharedPtr< int32 > >, SListView< TSharedPtr< UE::PropertyViewer::Private::FTreeNode > >, and SListView< UObject * >.

◆ OnMouseButtonUp()

FReply STableViewBase::OnMouseButtonUp ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
overridevirtual

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 SWidget.

Reimplemented in SListView< ItemType >, SListView< OptionType >, SListView< TSharedPtr< FString > >, SListView< TSharedPtr< FTestData > >, SListView< TSharedPtr< int32 > >, SListView< TSharedPtr< UE::PropertyViewer::Private::FTreeNode > >, and SListView< UObject * >.

◆ OnMouseCaptureLost()

void STableViewBase::OnMouseCaptureLost ( const FCaptureLostEvent CaptureLostEvent)
overridevirtual

Called when this widget had captured the mouse, but that capture has been revoked for some reason.

Reimplemented from SWidget.

◆ OnMouseEnter()

void STableViewBase::OnMouseEnter ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
overridevirtual

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 SWidget.

◆ OnMouseLeave()

void STableViewBase::OnMouseLeave ( const FPointerEvent MouseEvent)
overridevirtual

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 SWidget.

◆ OnMouseMove()

FReply STableViewBase::OnMouseMove ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
overridevirtual

The system calls this method to notify the widget that a mouse moved 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 SWidget.

◆ OnMouseWheel()

FReply STableViewBase::OnMouseWheel ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
overridevirtual

Called when the mouse wheel is spun. This event is bubbled.

Parameters
MouseEventMouse event
Returns
Returns whether the event was handled, along with other possible actions

Reimplemented from SWidget.

◆ OnPaint()

int32 STableViewBase::OnPaint ( const FPaintArgs Args,
const FGeometry AllottedGeometry,
const FSlateRect MyCullingRect,
FSlateWindowElementList OutDrawElements,
int32  LayerId,
const FWidgetStyle InWidgetStyle,
bool  bParentEnabled 
) const
overridevirtual

The widget should respond by populating the OutDrawElements array with FDrawElements that represent it and any of its children. Called by the non-virtual OnPaint to enforce pre/post conditions during OnPaint.

Parameters
ArgsAll the arguments necessary to paint this widget (
AllottedGeometryThe FGeometry that describes an area in which the widget should appear.
MyCullingRectThe rectangle representing the bounds currently being used to completely cull widgets. Unless IsChildWidgetCulled(...) returns true, you should paint the widget.
OutDrawElementsA list of FDrawElements to populate with the output.
LayerIdThe Layer onto which this widget should be rendered.
InColorAndOpacityColor and Opacity to be applied to all the descendants of the widget being painted
bParentEnabledTrue if the parent of this widget is enabled.
Returns
The maximum layer ID attained by this widget or any of its children.

Reimplemented from SCompoundWidget.

◆ OnPreviewMouseButtonDown()

FReply STableViewBase::OnPreviewMouseButtonDown ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
overridevirtual

Just like OnMouseButtonDown, but tunnels instead of bubbling. If this event is handled, OnMouseButtonDown will not be sent.

Use this event sparingly as preview events generally make UIs more difficult to reason about.

Reimplemented from SWidget.

◆ OnRightMouseButtonDown()

virtual void STableViewBase::OnRightMouseButtonDown ( const FPointerEvent MouseEvent)
inlineprotectedvirtual

◆ OnRightMouseButtonUp()

void STableViewBase::OnRightMouseButtonUp ( const FPointerEvent MouseEvent)
protectedvirtual

Opens a context menu as the result of a right click if OnContextMenuOpening is bound and we are not right click scrolling.

◆ OnTouchEnded()

FReply STableViewBase::OnTouchEnded ( const FGeometry MyGeometry,
const FPointerEvent InTouchEvent 
)
overridevirtual

Called when a touchpad touch is ended (finger lifted)

Parameters
InTouchEventThe touch event generated

Reimplemented from SWidget.

◆ OnTouchMoved()

FReply STableViewBase::OnTouchMoved ( const FGeometry MyGeometry,
const FPointerEvent InTouchEvent 
)
overridevirtual

Called when a touchpad touch is moved (finger moved)

Parameters
InTouchEventThe touch event generated

Reimplemented from SWidget.

◆ OnTouchStarted()

FReply STableViewBase::OnTouchStarted ( const FGeometry MyGeometry,
const FPointerEvent InTouchEvent 
)
overridevirtual

Called when a touchpad touch is started (finger down)

Parameters
InTouchEventThe touch event generated

Reimplemented from SWidget.

◆ RebuildList()

◆ ReGenerateItems()

◆ RequestLayoutRefresh()

void STableViewBase::RequestLayoutRefresh ( )
protected

Internal request for a layout update on the next tick (i.e. a refresh without implication that the source items have changed)

◆ RequestListRefresh()

void STableViewBase::RequestListRefresh ( )
virtual

Mark the list as dirty so that it will refresh its widgets on next tick. Note that refreshing will only generate/release widgets as needed from any deltas in the list items source.

Reimplemented in STreeView< ItemType >, STreeView< TSharedPtr< FTestData > >, STreeView< TSharedPtr< int32 > >, STreeView< TSharedPtr< UE::PropertyViewer::Private::FTreeNode > >, and STreeView< UObject * >.

◆ ScrollBar_OnUserScrolled()

void STableViewBase::ScrollBar_OnUserScrolled ( float  InScrollOffsetFraction)

Invoked by the scrollbar when the user scrolls.

Parameters
InScrollOffsetFractionThe location to which the user scrolled as a fraction (between 0 and 1) of total height of the content.

◆ ScrollBy()

float STableViewBase::ScrollBy ( const FGeometry MyGeometry,
float  ScrollByAmount,
EAllowOverscroll  InAllowOverscroll 
)
protectedvirtual

Scroll the list view by some number of screen units.

Parameters
MyGeometryThe geometry of the ListView at the time
ScrollByAmountThe amount to scroll by in Slate Screen Units.
AllowOverscrollShould we allow scrolling past the beginning/end of the list?
Returns
The amount actually scrolled in items

Reimplemented in SListView< ItemType >, SListView< OptionType >, SListView< TSharedPtr< FString > >, SListView< TSharedPtr< FTestData > >, SListView< TSharedPtr< int32 > >, SListView< TSharedPtr< UE::PropertyViewer::Private::FTreeNode > >, SListView< UObject * >, STileView< ItemType >, STileView< TSharedPtr< FTestData > >, STileView< TSharedPtr< int32 > >, and STileView< UObject * >.

◆ ScrollIntoView()

virtual EScrollIntoViewResult STableViewBase::ScrollIntoView ( const FGeometry ListViewGeometry)
protectedpure virtual

◆ ScrollTo()

float STableViewBase::ScrollTo ( float  InScrollOffset)
protectedvirtual

Scroll the view to an offset and resets the inertial scroll velocity

Parameters
InScrollOffsetOffset into the total list length to scroll down.
Returns
The amount actually scrolled

◆ ScrollToBottom()

void STableViewBase::ScrollToBottom ( )

Scrolls the view to the bottom

◆ ScrollToTop()

void STableViewBase::ScrollToTop ( )

Scrolls the view to the top

◆ SetAllowOverscroll()

void STableViewBase::SetAllowOverscroll ( EAllowOverscroll  InAllowOverscroll)

Sets whether to permit overscroll on this list view

◆ SetBackgroundBrush()

void STableViewBase::SetBackgroundBrush ( const TAttribute< const FSlateBrush * > &  InBackgroundBrush)

Sets the Background Brush

◆ SetEnableTouchAnimatedScrolling()

void STableViewBase::SetEnableTouchAnimatedScrolling ( bool  bInEnableTouchAnimatedScrolling)

Sets whether the list should lerp between scroll offsets or jump instantly between them with touch.

◆ SetFixedLineScrollOffset()

void STableViewBase::SetFixedLineScrollOffset ( TOptional< double InFixedLineScrollOffset)

Sets the fixed offset in items to always apply to the top/left (depending on orientation) of the list.

◆ SetIsGamepadScrollingEnabled()

void STableViewBase::SetIsGamepadScrollingEnabled ( bool  bInIsGamepadScrollingEnabled)

Enables/disables being able to scroll via gamepad.

◆ SetIsPointerScrollingEnabled()

void STableViewBase::SetIsPointerScrollingEnabled ( bool  bInIsPointerScrollingEnabled)

Enables/disables being able to scroll via pointer. This should be use as a temporary mean to disable scrolling.

◆ SetIsRightClickScrollingEnabled()

void STableViewBase::SetIsRightClickScrollingEnabled ( const bool  bInEnableRightClickScrolling)

Enables/disables being able to scroll with the right mouse button.

◆ SetIsScrollAnimationEnabled()

void STableViewBase::SetIsScrollAnimationEnabled ( bool  bInEnableScrollAnimation)

Sets whether the list should lerp between scroll offsets or jump instantly between them.

◆ SetIsTouchScrollingEnabled()

void STableViewBase::SetIsTouchScrollingEnabled ( const bool  bInEnableTouchScrolling)

Enables/disables being able to scroll using touch input.

◆ SetItemHeight()

void STableViewBase::SetItemHeight ( TAttribute< float Height)

Sets the item height

◆ SetItemWidth()

void STableViewBase::SetItemWidth ( TAttribute< float Width)

Sets the item width

◆ SetScrollbarPadding()

void STableViewBase::SetScrollbarPadding ( const FMargin InScrollbarPadding)

◆ SetScrollbarVisibility()

void STableViewBase::SetScrollbarVisibility ( const EVisibility  InVisibility)

◆ SetScrollingAnimationInterpolationSpeed()

void STableViewBase::SetScrollingAnimationInterpolationSpeed ( float  InScrollingAnimationInterpolationSpeed)

Sets the speed of lerp between scroll offsets.

◆ SetScrollOffset()

void STableViewBase::SetScrollOffset ( const float  InScrollOffset)

Set the scroll offset of this view (in items)

◆ SetSelectItemOnNavigation()

void STableViewBase::SetSelectItemOnNavigation ( const bool  bInSelectItemOnNavigation)

Sets whether items will be selected and focused or only focused when navigating to them.

◆ SetWheelScrollMultiplier()

void STableViewBase::SetWheelScrollMultiplier ( float  NewWheelScrollMultiplier)

Sets the multiplier applied when wheel scrolling. Higher numbers will cover more distance per click of the wheel.

◆ SupportsKeyboardFocus()

bool STableViewBase::SupportsKeyboardFocus ( ) const
overridevirtual

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 SWidget.

Reimplemented in SListView< ItemType >, SListView< OptionType >, SListView< TSharedPtr< FString > >, SListView< TSharedPtr< FTestData > >, SListView< TSharedPtr< int32 > >, SListView< TSharedPtr< UE::PropertyViewer::Private::FTreeNode > >, and SListView< UObject * >.

◆ Tick()

void STableViewBase::Tick ( const FGeometry AllottedGeometry,
const double  InCurrentTime,
const float  InDeltaTime 
)
overridevirtual

Ticks this widget with Geometry. Override in derived classes, but always call the parent implementation.

Parameters
AllottedGeometryThe space allotted for this widget
InCurrentTimeCurrent absolute real time
InDeltaTimeReal time passed since last tick

Reimplemented from SWidget.

Reimplemented in STreeView< ItemType >, STreeView< TSharedPtr< FTestData > >, STreeView< TSharedPtr< int32 > >, STreeView< TSharedPtr< UE::PropertyViewer::Private::FTreeNode > >, and STreeView< UObject * >.

◆ UpdateInertialScroll()

EActiveTimerReturnType STableViewBase::UpdateInertialScroll ( double  InCurrentTime,
float  InDeltaTime 
)
protected

Active timer to update the inertial scroll

◆ UpdateSelectionSet()

virtual void STableViewBase::UpdateSelectionSet ( )
protectedpure virtual

◆ UpdateSmoothDeltaTime()

void STableViewBase::UpdateSmoothDeltaTime ( float  InDeltaTime)
protected

Member Data Documentation

◆ AllowOverscroll

EAllowOverscroll STableViewBase::AllowOverscroll
protected

Whether to permit overscroll on this list view

◆ AmountScrolledWhileRightMouseDown

float STableViewBase::AmountScrolledWhileRightMouseDown
protected

How much we scrolled while the rmb has been held

◆ BackgroundBrush

FInvalidatableBrushAttribute STableViewBase::BackgroundBrush
protected

Brush resource representing the background area of the view

◆ bEnableAnimatedScrolling

bool STableViewBase::bEnableAnimatedScrolling = false
protected

True to lerp smoothly between offsets when the desired scroll offset changes.

◆ bEnableRightClickScrolling

bool STableViewBase::bEnableRightClickScrolling = true
protected

True to allow right click drag scrolling.

◆ bEnableTouchAnimatedScrolling

bool STableViewBase::bEnableTouchAnimatedScrolling = false
protected

True to lerp smoothly between offsets when the desired scroll offset changes with touch.

◆ bEnableTouchScrolling

bool STableViewBase::bEnableTouchScrolling = true
protected

True to allow scrolling by using touch input.

◆ bIsGamepadScrollingEnabled

bool STableViewBase::bIsGamepadScrollingEnabled = true
protected

Whether the list is allowed to scroll via gamepad.

◆ bIsPointerScrollingEnabled

bool STableViewBase::bIsPointerScrollingEnabled = true
protected

Whether the list is allowed to scroll via cursor.

◆ bIsScrollingActiveTimerRegistered

bool STableViewBase::bIsScrollingActiveTimerRegistered
protected

Whether the active timer to update the inertial scrolling is currently registered

◆ bSelectItemOnNavigation

bool STableViewBase::bSelectItemOnNavigation = true
protected

If true, items will be "selected" (in addition to focused) when navigating to them. If false, they will only be focused.

◆ bShouldUseShadowBoxStyle

bool STableViewBase::bShouldUseShadowBoxStyle = false
protected

Should Use ShdadowBox Styling

◆ bShowSoftwareCursor

bool STableViewBase::bShowSoftwareCursor
protected

Whether the software cursor should be drawn in the viewport

◆ bStartedTouchInteraction

bool STableViewBase::bStartedTouchInteraction
protected

Did the user start an interaction in this list?

◆ bWasAtEndOfList

bool STableViewBase::bWasAtEndOfList
protected

Last time we scrolled, did we end up at the end of the list.

◆ ConsumeMouseWheel

EConsumeMouseWheel STableViewBase::ConsumeMouseWheel
protected

How we should handle scrolling with the mouse wheel

◆ CurrentScrollOffset

double STableViewBase::CurrentScrollOffset = 0.
protected

The currently displayed scroll offset from the beginning of the list in items.

◆ DesiredScrollOffset

double STableViewBase::DesiredScrollOffset = 0.
protected

The raw desired scroll offset from the beginning of the list in items. Does not incorporate the FixedLineScrollOffset. Use GetTargetScrollOffset() to know the final target offset to display. Note: If scroll animation is disabled and there is no FixedLineScrollOffset, this is identical to both the CurrentScrollOffset and the target offset.

◆ FixedLineScrollOffset

TOptional<double> STableViewBase::FixedLineScrollOffset
protected

The fixed offset in lines to always apply to the top/left (depending on orientation) of the list.

If provided:

  • all non-inertial means of scrolling will settle with exactly this offset of the topmost entry. Ex: A value of 0.25 would cause the topmost full entry to be offset down by a quarter length of the preceding entry.
  • all inertial means of scrolling will, at the end of the scroll, settle with exactly this offset of the entry most in view. Ex: if at the end of the scroll we see 0.25% of a line and 0.75% of next line at the top/left, the list will scroll to show the second line minus the offset.

◆ HeaderRow

TSharedPtr< SHeaderRow > STableViewBase::HeaderRow
protected

Column headers that describe which columns this list shows

◆ HorizontalScrollBarSlot

SVerticalBox::FSlot* STableViewBase::HorizontalScrollBarSlot

◆ InertialScrollManager

FInertialScrollManager STableViewBase::InertialScrollManager
protected

Helper object to manage inertial scrolling

◆ ItemsPanel

TSharedPtr< SListPanel > STableViewBase::ItemsPanel
protected

The panel which holds the visible widgets in this list

◆ LastGenerateResults

FReGenerateResults STableViewBase::LastGenerateResults
protected

Information about the widgets we generated during the last regenerate pass

◆ OnContextMenuOpening

FOnContextMenuOpening STableViewBase::OnContextMenuOpening
protected

Delegate to invoke when the context menu should be opening. If it is nullptr, a context menu will not be summoned.

◆ OnItemsRebuilt

FSimpleDelegate STableViewBase::OnItemsRebuilt
protected

Delegate to invoke after the children have been regenerated.

◆ OnTableViewScrolled

FOnTableViewScrolled STableViewBase::OnTableViewScrolled
protected

Delegate to call when the table view is scrolled

◆ Orientation

EOrientation STableViewBase::Orientation = Orient_Vertical
protected

The layout and scroll orientation of the list

◆ Overscroll

FOverscroll STableViewBase::Overscroll
protected

◆ PanelGeometryLastTick

FGeometry STableViewBase::PanelGeometryLastTick
protected

What the list's geometry was the last time a refresh occurred.

◆ PinnedItemsPanel

TSharedPtr< SListPanel > STableViewBase::PinnedItemsPanel
protected

The panel which holds the pinned widgets in this list

◆ PressedScreenSpacePosition

FVector2f STableViewBase::PressedScreenSpacePosition
protected

The location in screenspace the view was pressed

◆ ScrollBar

TSharedPtr< SScrollBar > STableViewBase::ScrollBar
protected

The scroll bar widget

◆ ScrollBarSlotPadding

FMargin STableViewBase::ScrollBarSlotPadding
protected

Padding to the scrollbox

◆ ScrollingAnimationInterpolationSpeed

float STableViewBase::ScrollingAnimationInterpolationSpeed = 12.f
protected

The speed of interpolation for the scrolling animation

◆ SelectionMode

TAttribute<ESelectionMode::Type> STableViewBase::SelectionMode
protected

The selection mode that this tree/list is in. Note that it is up to the generated ITableRows to respect this setting.

◆ ShadowBoxStyle

const FScrollBoxStyle* STableViewBase::ShadowBoxStyle
protected

Style resource for the Shadow Box when scrolling

◆ SoftwareCursorPosition

FVector2f STableViewBase::SoftwareCursorPosition
protected

The current position of the software cursor

◆ TableViewMode

const ETableViewMode::Type STableViewBase::TableViewMode

Is this list backing a tree or just a standalone list

◆ TickScrollDelta

float STableViewBase::TickScrollDelta
protected

The amount we have scrolled this tick cycle

◆ VerticalScrollBarSlot

SHorizontalBox::FSlot* STableViewBase::VerticalScrollBarSlot

◆ WheelScrollMultiplier

float STableViewBase::WheelScrollMultiplier
protected

How much to scroll when using mouse wheel


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