UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FSlateApplication Class Reference

#include <SlateApplication.h>

+ Inheritance diagram for FSlateApplication:

Public Member Functions

virtual SLATE_API ~FSlateApplication ()
 
const float GetAverageDeltaTime () const
 
const float GetDeltaTime () const
 
float GetAverageDeltaTimeForResponsiveness () const
 
SLATE_API const class FStyleNodeGetRootStyle () const
 
virtual SLATE_API bool InitializeRenderer (TSharedRef< FSlateRenderer > InRenderer, bool bQuietMode=false)
 
virtual SLATE_API void InitializeSound (const TSharedRef< ISlateSoundDevice > &InSlateSoundDevice)
 
SLATE_API void PlaySound (const FSlateSound &SoundToPlay, int32 UserIndex=0) const
 
SLATE_API float GetSoundDuration (const FSlateSound &Sound) const
 
IInputInterfaceGetInputInterface () const
 
bool SupportsSystemHelp () const
 
void ShowSystemHelp ()
 
ITextInputMethodSystemGetTextInputMethodSystem () const
 
SLATE_API void SetCursorPos (const FVector2D &MouseCoordinate) override
 
SLATE_API void OverridePlatformTextField (TUniquePtr< IPlatformTextField > PlatformTextField)
 
SLATE_API void UsePlatformCursorForCursorUser (bool bUsePlatformCursor)
 
SLATE_API void SetPlatformCursorVisibility (bool bNewVisibility)
 
SLATE_API void PollGameDeviceState ()
 
SLATE_API void FinishedInputThisFrame ()
 
SLATE_API void Tick (ESlateTickType TickType=ESlateTickType::All)
 
SLATE_API bool IsTicking () const
 
SLATE_API void PumpMessages ()
 
SLATE_API bool CanAddModalWindow () const
 
SLATE_API bool CanDisplayWindows () const
 
virtual SLATE_API EUINavigation GetNavigationDirectionFromKey (const FKeyEvent &InKeyEvent) const override
 
virtual SLATE_API EUINavigation GetNavigationDirectionFromAnalog (const FAnalogInputEvent &InAnalogEvent) override
 
virtual SLATE_API EUINavigationAction GetNavigationActionFromKey (const FKeyEvent &InKeyEvent) const override
 
virtual SLATE_API EUINavigationAction GetNavigationActionForKey (const FKey &InKey) const override
 
SLATE_API void AddModalWindow (TSharedRef< SWindow > InSlateWindow, const TSharedPtr< const SWidget > InParentWidget, bool bSlowTaskWindow=false)
 
SLATE_API void SetModalWindowStackStartedDelegate (FModalWindowStackStarted StackStartedDelegate)
 
SLATE_API void SetModalWindowStackEndedDelegate (FModalWindowStackEnded StackEndedDelegate)
 
SLATE_API TSharedRef< SWindowAddWindowAsNativeChild (TSharedRef< SWindow > InSlateWindow, TSharedRef< SWindow > InParentWindow, const bool bShowImmediately=true)
 
SLATE_API TSharedPtr< IMenuPushMenu (const TSharedRef< SWidget > &InParentWidget, const FWidgetPath &InOwnerPath, const TSharedRef< SWidget > &InContent, const UE::Slate::FDeprecateVector2DParameter &SummonLocation, const FPopupTransitionEffect &TransitionEffect, const bool bFocusImmediately=true, const UE::Slate::FDeprecateVector2DParameter &SummonLocationSize=FVector2f::ZeroVector, TOptional< EPopupMethod > Method=TOptional< EPopupMethod >(), const bool bIsCollapsedByParent=true, const int32 FocusUserIndex=INDEX_NONE)
 
SLATE_API TSharedPtr< IMenuPushMenu (const TSharedPtr< IMenu > &InParentMenu, const TSharedRef< SWidget > &InContent, const UE::Slate::FDeprecateVector2DParameter &SummonLocation, const FPopupTransitionEffect &TransitionEffect, const bool bFocusImmediately=true, const UE::Slate::FDeprecateVector2DParameter &SummonLocationSize=FVector2f::ZeroVector, const bool bIsCollapsedByParent=true, const int32 FocusUserIndex=INDEX_NONE)
 
SLATE_API TSharedPtr< IMenuPushHostedMenu (const TSharedRef< SWidget > &InParentWidget, const FWidgetPath &InOwnerPath, const TSharedRef< IMenuHost > &InMenuHost, const TSharedRef< SWidget > &InContent, TSharedPtr< SWidget > &OutWrappedContent, const FPopupTransitionEffect &TransitionEffect, EShouldThrottle ShouldThrottle, const bool bIsCollapsedByParent=true)
 
SLATE_API TSharedPtr< IMenuPushHostedMenu (const TSharedPtr< IMenu > &InParentMenu, const TSharedRef< IMenuHost > &InMenuHost, const TSharedRef< SWidget > &InContent, TSharedPtr< SWidget > &OutWrappedContent, const FPopupTransitionEffect &TransitionEffect, EShouldThrottle ShouldThrottle, const bool bIsCollapsedByParent=true)
 
SLATE_API bool HasOpenSubMenus (TSharedPtr< IMenu > InMenu) const
 
virtual SLATE_API bool AnyMenusVisible () const override
 
SLATE_API TSharedPtr< IMenuFindMenuInWidgetPath (const FWidgetPath &InWidgetPath) const
 
SLATE_API TSharedPtr< SWindowGetVisibleMenuWindow () const
 
SLATE_API TSharedPtr< SWidgetGetMenuHostWidget () const
 
SLATE_API void DismissAllMenus ()
 
SLATE_API void DismissMenu (const TSharedPtr< IMenu > &InFromMenu)
 
SLATE_API void DismissMenuByWidget (const TSharedRef< SWidget > &InWidgetInMenu)
 
SLATE_API void DestroyWindowImmediately (TSharedRef< SWindow > WindowToDestroy)
 
SLATE_API void ExternalModalStart ()
 
SLATE_API void ExternalModalStop ()
 
 DECLARE_EVENT_OneParam (FSlateApplication, FSlateTickEvent, float)
 
FSlateTickEventOnPreTick ()
 
FSlateTickEventOnPostTick ()
 
FSimpleMulticastDelegateOnPreShutdown ()
 
 DECLARE_EVENT_OneParam (FSlateApplication, FUserRegisteredEvent, int32)
 
FUserRegisteredEventOnUserRegistered ()
 
 DECLARE_EVENT_OneParam (FSlateApplication, FOnWindowBeingDestroyed, const SWindow &)
 
FOnWindowBeingDestroyedOnWindowBeingDestroyed ()
 
FOnMenuDestroyedOnMenuBeingDestroyed ()
 
 DECLARE_MULTICAST_DELEGATE_FiveParams (FOnFocusChanging, const FFocusEvent &, const FWeakWidgetPath &, const TSharedPtr< SWidget > &, const FWidgetPath &, const TSharedPtr< SWidget > &)
 
FOnFocusChangingOnFocusChanging ()
 
SLATE_API void InvalidateAllViewports ()
 
SLATE_API void RegisterGameViewport (TSharedRef< SViewport > InViewport)
 
SLATE_API void RegisterViewport (TSharedRef< SViewport > InViewport)
 
SLATE_API TSharedPtr< SViewportGetGameViewport () const
 
SLATE_API void UnregisterGameViewport ()
 
SLATE_API void RegisterVirtualWindow (TSharedRef< SWindow > InWindow)
 
SLATE_API void UnregisterVirtualWindow (TSharedRef< SWindow > InWindow)
 
SLATE_API void FlushRenderState ()
 
SLATE_API void SetUserFocusToGameViewport (uint32 UserIndex, EFocusCause ReasonFocusIsChanging=EFocusCause::SetDirectly)
 
SLATE_API void SetAllUserFocusToGameViewport (EFocusCause ReasonFocusIsChanging=EFocusCause::SetDirectly)
 
SLATE_API void ActivateGameViewport ()
 
SLATE_API bool GetTransformFullscreenMouseInput () const
 
SLATE_API bool SetUserFocus (uint32 UserIndex, const TSharedPtr< SWidget > &WidgetToFocus, EFocusCause ReasonFocusIsChanging=EFocusCause::SetDirectly)
 
SLATE_API void SetAllUserFocus (const TSharedPtr< SWidget > &WidgetToFocus, EFocusCause ReasonFocusIsChanging=EFocusCause::SetDirectly)
 
SLATE_API void ClearUserFocus (uint32 UserIndex, EFocusCause ReasonFocusIsChanging=EFocusCause::SetDirectly)
 
SLATE_API void ClearAllUserFocus (EFocusCause ReasonFocusIsChanging=EFocusCause::SetDirectly)
 
SLATE_API bool SetKeyboardFocus (const TSharedPtr< SWidget > &OptionalWidgetToFocus, EFocusCause ReasonFocusIsChanging=EFocusCause::SetDirectly)
 
SLATE_API void ClearKeyboardFocus (const EFocusCause ReasonFocusIsChanging=EFocusCause::SetDirectly)
 
SLATE_API FModifierKeysState GetModifierKeys () const
 
SLATE_API void ResetToDefaultInputSettings ()
 
SLATE_API void ResetToDefaultPointerInputSettings ()
 
void SetHandleDeviceInputWhenApplicationNotActive (bool bAllow)
 
bool GetHandleDeviceInputWhenApplicationNotActive () const
 
virtual SLATE_API voidGetMouseCaptureWindow () const
 
SLATE_API void ReleaseAllPointerCapture ()
 
SLATE_API void ReleaseMouseCapture ()
 
SLATE_API void ReleaseAllPointerCapture (int32 UserIndex)
 
SLATE_API void ReleaseMouseCaptureForUser (int32 UserIndex)
 
SLATE_API TSharedPtr< SWindowGetActiveModalWindow () const
 
SLATE_API void SetExitRequestedHandler (const FSimpleDelegate &OnExitRequestedHandler)
 
SLATE_API bool GeneratePathToWidgetUnchecked (TSharedRef< const SWidget > InWidget, FWidgetPath &OutWidgetPath, EVisibility VisibilityFilter=EVisibility::Visible) const
 
SLATE_API void GeneratePathToWidgetChecked (TSharedRef< const SWidget > InWidget, FWidgetPath &OutWidgetPath, EVisibility VisibilityFilter=EVisibility::Visible) const
 
virtual SLATE_API TSharedPtr< SWindowFindWidgetWindow (TSharedRef< const SWidget > InWidget) const override
 
SLATE_API TSharedPtr< SWindowFindWidgetWindow (TSharedRef< const SWidget > InWidget, FWidgetPath &OutWidgetPath) const
 
bool IsUsingHighPrecisionMouseMovment () const
 
bool IsUsingTrackpad () const
 
bool IsMouseAttached () const
 
bool IsGamepadAttached () const
 
SLATE_API void SetWidgetReflector (const TSharedRef< IWidgetReflector > &WidgetReflector)
 
void SetWidgetReflectorSourceAccessDelegate (FAccessSourceCode AccessDelegate)
 
void SetWidgetReflectorQuerySourceAccessDelegate (FQueryAccessSourceCode QueryAccessDelegate)
 
void SetWidgetReflectorAssetAccessDelegate (FAccessAsset AccessDelegate)
 
void SetApplicationScale (float InScale)
 
virtual void GetInitialDisplayMetrics (FDisplayMetrics &OutDisplayMetrics) const
 
SLATE_API bool IsDragDropping () const
 
SLATE_API bool IsDragDroppingAffected (const FPointerEvent &InPointerEvent) const
 
SLATE_API TSharedPtr< class FDragDropOperationGetDragDroppingContent () const
 
SLATE_API void CancelDragDrop ()
 
const TAttribute< bool > & GetNormalExecutionAttribute () const
 
bool IsNormalExecution () const
 
bool InKismetDebuggingMode () const
 
SLATE_API void EnterDebuggingMode ()
 
SLATE_API void LeaveDebuggingMode (bool bLeavingDebugForSingleStep=false)
 
virtual SLATE_API UE::Slate::FDeprecateVector2DResult CalculatePopupWindowPosition (const FSlateRect &InAnchor, const UE::Slate::FDeprecateVector2DParameter &InSize, bool bAutoAdjustForDPIScale=true, const UE::Slate::FDeprecateVector2DParameter &InProposedPlacement=FVector2f::ZeroVector, const EOrientation Orientation=Orient_Vertical, const EPopupLayoutMode=EPopupLayoutMode::Menu) const
 
virtual SLATE_API UE::Slate::FDeprecateVector2DResult CalculateTooltipWindowPosition (const FSlateRect &InAnchorRect, const UE::Slate::FDeprecateVector2DParameter &InSize, bool bAutoAdjustForDPIScale, EPopupCursorOverlapMode CursorOverlapMode=EPopupCursorOverlapMode::PreventOverlap) const
 
SLATE_API bool IsWindowInDestroyQueue (TSharedRef< SWindow > Window) const
 
SLATE_API bool IsRunningAtTargetFrameRate () const
 
SLATE_API bool AreMenuAnimationsEnabled () const
 
SLATE_API void EnableMenuAnimations (const bool bEnableAnimations)
 
SLATE_API void SetPlatformApplication (const TSharedRef< class GenericApplication > &InPlatformApplication)
 
SLATE_API void OverridePlatformApplication (TSharedPtr< class GenericApplication > InPlatformApplication)
 
SLATE_API void SetAppIcon (const FSlateBrush *const InAppIcon)
 
void ExternalUIChange (bool bIsOpening)
 
SLATE_API void ShowVirtualKeyboard (bool bShow, int32 UserIndex, TSharedPtr< IVirtualKeyboardEntry > TextEntryWidget=nullptr)
 
SLATE_API bool AllowMoveCursor ()
 
SLATE_API FSlateRect GetWorkArea (const FSlateRect &InRect) const
 
virtual void NativeApp_ShowKeyboard (bool bShow, FString InitialString="", int32 SelectionStart=-1, int32 SelectionEnd=-1)
 
SLATE_API bool SupportsSourceAccess () const
 
SLATE_API void GotoLineInSource (const FString &FileName, int32 LineNumber) const
 
FPopupSupportGetPopupSupport ()
 
SLATE_API void ForceRedrawWindow (const TSharedRef< SWindow > &InWindowToDraw)
 
SLATE_API bool TakeScreenshot (const TSharedRef< SWidget > &Widget, TArray< FColor > &OutColorData, FIntVector &OutSize)
 
SLATE_API bool TakeHDRScreenshot (const TSharedRef< SWidget > &Widget, TArray< FLinearColor > &OutColorData, FIntVector &OutSize)
 
SLATE_API bool TakeScreenshot (const TSharedRef< SWidget > &Widget, const FIntRect &InnerWidgetArea, TArray< FColor > &OutColorData, FIntVector &OutSize)
 
SLATE_API bool TakeHDRScreenshot (const TSharedRef< SWidget > &Widget, const FIntRect &InnerWidgetArea, TArray< FLinearColor > &OutColorData, FIntVector &OutSize)
 
TSharedPtr< const FSlateUserGetUser (int32 UserIndex) const
 
TSharedPtr< FSlateUserGetUser (int32 UserIndex)
 
SLATE_API TSharedPtr< FSlateUserGetUser (FPlatformUserId PlatformUser)
 
TSharedPtr< const FSlateUserGetUser (const FInputEvent &InputEvent) const
 
TSharedPtr< FSlateUserGetUser (const FInputEvent &InputEvent)
 
TSharedPtr< FSlateUserGetUserFromControllerId (int32 ControllerId)
 
TSharedPtr< const FSlateUserGetUserFromControllerId (int32 ControllerId) const
 
SLATE_API TSharedPtr< FSlateUserGetUserFromPlatformUser (FPlatformUserId PlatformUser)
 
SLATE_API TSharedPtr< const FSlateUserGetUserFromPlatformUser (FPlatformUserId PlatformUser) const
 
TSharedPtr< const FSlateUserGetCursorUser () const
 
TSharedPtr< FSlateUserGetCursorUser ()
 
SLATE_API TSharedRef< FSlateVirtualUserHandleFindOrCreateVirtualUser (int32 VirtualUserIndex)
 
SLATE_API void UnregisterUser (int32 UserIndex)
 
SLATE_API void ForEachUser (TFunctionRef< void(FSlateUser &)> InPredicate, bool bIncludeVirtualUsers=false)
 
SLATE_API void ForEachUser (TFunctionRef< void(FSlateUser *)> InPredicate, bool bIncludeVirtualUsers=false)
 
SLATE_API bool ProcessMouseMoveEvent (const FPointerEvent &MouseEvent, bool bIsSynthetic=false)
 
SLATE_API bool ProcessMouseButtonDownEvent (const TSharedPtr< FGenericWindow > &PlatformWindow, const FPointerEvent &InMouseEvent)
 
SLATE_API bool ProcessMouseButtonUpEvent (const FPointerEvent &MouseEvent)
 
SLATE_API bool ProcessMouseButtonDoubleClickEvent (const TSharedPtr< FGenericWindow > &PlatformWindow, const FPointerEvent &InMouseEvent)
 
SLATE_API bool ProcessMouseWheelOrGestureEvent (const FPointerEvent &InWheelEvent, const FPointerEvent *InGestureEvent)
 
SLATE_API bool ProcessKeyCharEvent (const FCharacterEvent &InCharacterEvent)
 
SLATE_API bool ProcessKeyDownEvent (const FKeyEvent &InKeyEvent)
 
SLATE_API bool ProcessKeyUpEvent (const FKeyEvent &InKeyEvent)
 
SLATE_API bool ProcessAnalogInputEvent (const FAnalogInputEvent &InAnalogInputEvent)
 
SLATE_API bool ProcessDragEnterEvent (TSharedRef< SWindow > WindowEntered, const FDragDropEvent &DragDropEvent)
 
SLATE_API void ProcessTouchStartedEvent (const TSharedPtr< FGenericWindow > &PlatformWindow, const FPointerEvent &InTouchEvent)
 
SLATE_API void ProcessTouchMovedEvent (const FPointerEvent &InTouchEvent)
 
SLATE_API void ProcessTouchEndedEvent (const FPointerEvent &InTouchEvent)
 
SLATE_API void ProcessMotionDetectedEvent (const FMotionEvent &InMotionEvent)
 
SLATE_API bool ProcessWindowActivatedEvent (const FWindowActivateEvent &ActivateEvent)
 
SLATE_API void ProcessApplicationActivationEvent (bool InAppActivated)
 
bool IsProcessingInput () const
 
TSharedRef< FNavigationConfigGetNavigationConfig () const
 
SLATE_API void SetNavigationConfig (TSharedRef< FNavigationConfig > InNavigationConfig)
 
void SetNavigationConfigFactory (TFunction< TSharedRef< FNavigationConfig >()> InNavigationConfigFactory)
 
SLATE_API void CloseAllWindowsImmediately ()
 
SLATE_API void DestroyWindowsImmediately ()
 
SLATE_API void ProcessExternalReply (const FWidgetPath &CurrentEventPath, const FReply TheReply, const int32 UserIndex=0, const int32 PointerIndex=10)
 
SLATE_API void ProcessReply (const FWidgetPath &CurrentEventPath, const FReply &TheReply, const FWidgetPath *WidgetsUnderMouse, const FPointerEvent *InMouseEvent, const uint32 UserIndex=0)
 
SLATE_API void QueryCursor ()
 
SLATE_API void ProcessCursorReply (const FCursorReply &CursorReply)
 
SLATE_API void SpawnToolTip (const TSharedRef< IToolTip > &InToolTip, const UE::Slate::FDeprecateVector2DParameter &InSpawnLocation)
 
SLATE_API void CloseToolTip ()
 
SLATE_API void UpdateToolTip (bool bAllowSpawningOfNewToolTips)
 
SLATE_API TArray< TSharedRef< SWindow > > GetInteractiveTopLevelWindows ()
 
SLATE_API void GetAllVisibleWindowsOrdered (TArray< TSharedRef< SWindow > > &OutWindows)
 
SLATE_API bool IsFakingTouchEvents () const
 
SLATE_API void SetGameIsFakingTouchEvents (const bool bIsFaking, FVector2D *CursorLocation=nullptr)
 
SLATE_API void SetGameAllowsFakingTouchEvents (const bool bAllowFaking)
 
SLATE_API void SetUnhandledKeyDownEventHandler (const FOnKeyEvent &NewHandler)
 
SLATE_API void SetUnhandledKeyUpEventHandler (const FOnKeyEvent &NewHandler)
 
double GetLastUserInteractionTime () const
 
 DECLARE_EVENT_OneParam (FSlateApplication, FSlateLastUserInteractionTimeUpdateEvent, double)
 
FSlateLastUserInteractionTimeUpdateEventGetLastUserInteractionTimeUpdateEvent ()
 
SLATE_API float GetDragTriggerDistance () const
 
SLATE_API float GetDragTriggerDistanceSquared () const
 
SLATE_API bool IsLastDragOnDragEnterDisabled () const
 
SLATE_API bool HasTraveledFarEnoughToTriggerDrag (const FPointerEvent &PointerEvent, const UE::Slate::FDeprecateVector2DParameter ScreenSpaceOrigin) const
 
SLATE_API bool HasTraveledFarEnoughToTriggerDrag (const FPointerEvent &PointerEvent, const UE::Slate::FDeprecateVector2DParameter ScreenSpaceOrigin, EOrientation Orientation) const
 
SLATE_API void SetDragTriggerDistance (float ScreenPixels)
 
SLATE_API void ToggleDisableLastDragOnDragEnter (bool bInDisableLastDragOnDragEnter)
 
SLATE_API bool RegisterInputPreProcessor (TSharedPtr< class IInputProcessor > InputProcessor)
 
SLATE_API bool RegisterInputPreProcessor (TSharedPtr< class IInputProcessor > InputProcessor, const int32 Index)
 
SLATE_API bool RegisterInputPreProcessor (TSharedPtr< class IInputProcessor > InputProcessor, const EInputPreProcessorType Type)
 
SLATE_API bool RegisterInputPreProcessor (TSharedPtr< class IInputProcessor > InputProcessor, const FInputPreprocessorRegistrationKey &Info)
 
SLATE_API void UnregisterInputPreProcessor (TSharedPtr< class IInputProcessor > InputProcessor)
 
SLATE_API int32 FindInputPreProcessor (TSharedPtr< class IInputProcessor > InputProcessor) const
 
SLATE_API int32 FindInputPreProcessor (TSharedPtr< class IInputProcessor > InputProcessor, const EInputPreProcessorType &Type) const
 
SLATE_API void SetCursorRadius (float NewRadius)
 
SLATE_API float GetCursorRadius () const
 
SLATE_API void SetAllowTooltips (bool bCanShow)
 
SLATE_API bool GetAllowTooltips () const
 
bool IsRenderingOffScreen () const
 
virtual bool IsActive () const override
 
virtual SLATE_API TSharedRef< SWindowAddWindow (TSharedRef< SWindow > InSlateWindow, const bool bShowImmediately=true) override
 
virtual void ArrangeWindowToFrontVirtual (TArray< TSharedRef< SWindow > > &Windows, const TSharedRef< SWindow > &WindowToBringToFront) override
 
virtual bool FindPathToWidget (TSharedRef< const SWidget > InWidget, FWidgetPath &OutWidgetPath, EVisibility VisibilityFilter=EVisibility::Visible) override
 
virtual const double GetCurrentTime () const override
 
virtual SLATE_API TSharedPtr< SWindowGetActiveTopLevelWindow () const override
 
virtual SLATE_API TSharedPtr< SWindowGetActiveTopLevelRegularWindow () const override
 
virtual SLATE_API const FSlateBrushGetAppIcon () const override
 
virtual SLATE_API const FSlateBrushGetAppIconSmall () const override
 
virtual float GetApplicationScale () const override
 
virtual bool GetSoftwareCursorAvailable () const override
 
virtual SLATE_API EVisibility GetSoftwareCursorVis () const override
 
virtual SLATE_API UE::Slate::FDeprecateVector2DResult GetCursorPos () const override
 
virtual SLATE_API UE::Slate::FDeprecateVector2DResult GetLastCursorPos () const override
 
virtual SLATE_API UE::Slate::FDeprecateVector2DResult GetCursorSize () const override
 
virtual SLATE_API TSharedPtr< SWidgetGetKeyboardFocusedWidget () const override
 
virtual EWindowTransparency GetWindowTransparencySupport () const override
 
virtual SLATE_API bool HasAnyMouseCaptor () const override
 
virtual SLATE_API bool HasUserMouseCapture (int32 UserIndex) const override
 
virtual SLATE_API FSlateRect GetPreferredWorkArea () const override
 
virtual SLATE_API bool HasFocusedDescendants (const TSharedRef< const SWidget > &Widget) const override
 
virtual SLATE_API bool HasUserFocusedDescendants (const TSharedRef< const SWidget > &Widget, int32 UserIndex) const override
 
virtual SLATE_API bool IsExternalUIOpened () override
 
virtual SLATE_API FWidgetPath LocateWindowUnderMouse (UE::Slate::FDeprecateVector2DParameter ScreenspaceMouseCoordinate, const TArray< TSharedRef< SWindow > > &Windows, bool bIgnoreEnabledStatus=false, int32 UserIndex=INDEX_NONE) override
 
virtual SLATE_API bool IsWindowHousingInteractiveTooltip (const TSharedRef< const SWindow > &WindowToTest) const override
 
virtual SLATE_API TSharedRef< SImageMakeImage (const TAttribute< const FSlateBrush * > &Image, const TAttribute< FSlateColor > &Color, const TAttribute< EVisibility > &Visibility) const override
 
virtual SLATE_API TSharedRef< SWidgetMakeWindowTitleBar (const FWindowTitleBarArgs &InArgs, TSharedPtr< IWindowTitleBar > &OutTitleBar) const override
 
virtual SLATE_API TSharedRef< IToolTipMakeToolTip (const TAttribute< FText > &ToolTipText) override
 
virtual SLATE_API TSharedRef< IToolTipMakeToolTip (const FText &ToolTipText) override
 
virtual SLATE_API void RequestDestroyWindow (TSharedRef< SWindow > WindowToDestroy) override
 
virtual SLATE_API bool SetKeyboardFocus (const FWidgetPath &InFocusPath, const EFocusCause InCause) override
 
virtual SLATE_API bool SetUserFocus (const uint32 InUserIndex, const FWidgetPath &InFocusPath, const EFocusCause InCause) override
 
virtual SLATE_API bool SetUserFocusAllowingDescendantFocus (const uint32 InUserIndex, const FWidgetPath &InFocusPath, const EFocusCause InCause) override
 
virtual SLATE_API void SetAllUserFocus (const FWidgetPath &InFocusPath, const EFocusCause InCause) override
 
virtual SLATE_API void SetAllUserFocusAllowingDescendantFocus (const FWidgetPath &InFocusPath, const EFocusCause InCause) override
 
virtual SLATE_API TSharedPtr< SWidgetGetUserFocusedWidget (uint32 UserIndex) const override
 
virtual SLATE_API TSharedPtr< SWidgetGetCurrentDebugContextWidget () const override
 
virtual const TArray< TSharedRef< SWindow > > GetTopLevelWindows () const override
 
 DECLARE_EVENT_OneParam (FSlateApplication, FApplicationActivationStateChangedEvent, const bool) virtual FApplicationActivationStateChangedEvent &OnApplicationActivationStateChanged()
 
virtual SLATE_API bool ShouldProcessUserInputMessages (const TSharedPtr< FGenericWindow > &PlatformWindow) const override
 
virtual SLATE_API bool OnKeyChar (const TCHAR Character, const bool IsRepeat) override
 
virtual SLATE_API bool OnKeyDown (const int32 KeyCode, const uint32 CharacterCode, const bool IsRepeat) override
 
virtual SLATE_API bool OnKeyUp (const int32 KeyCode, const uint32 CharacterCode, const bool IsRepeat) override
 
virtual SLATE_API void OnInputLanguageChanged () override
 
virtual SLATE_API bool OnMouseDown (const TSharedPtr< FGenericWindow > &PlatformWindow, const EMouseButtons::Type Button) override
 
virtual SLATE_API bool OnMouseDown (const TSharedPtr< FGenericWindow > &PlatformWindow, const EMouseButtons::Type Button, const FVector2D CursorPos) override
 
virtual SLATE_API bool OnMouseUp (const EMouseButtons::Type Button) override
 
virtual SLATE_API bool OnMouseUp (const EMouseButtons::Type Button, const FVector2D CursorPos) override
 
virtual SLATE_API bool OnMouseDoubleClick (const TSharedPtr< FGenericWindow > &PlatformWindow, const EMouseButtons::Type Button) override
 
virtual SLATE_API bool OnMouseDoubleClick (const TSharedPtr< FGenericWindow > &PlatformWindow, const EMouseButtons::Type Button, const FVector2D CursorPos) override
 
virtual SLATE_API bool OnMouseWheel (const float Delta) override
 
virtual SLATE_API bool OnMouseWheel (const float Delta, const FVector2D CursorPos) override
 
virtual SLATE_API bool OnMouseMove () override
 
virtual SLATE_API bool OnRawMouseMove (const int32 X, const int32 Y) override
 
virtual SLATE_API bool OnCursorSet () override
 
virtual SLATE_API bool OnTouchGesture (EGestureEvent GestureType, const FVector2D &Delta, float WheelDelta, bool bIsDirectionInvertedFromDevice) override
 
virtual SLATE_API bool OnTouchStarted (const TSharedPtr< FGenericWindow > &Window, const FVector2D &Location, float Force, int32 TouchIndex, FPlatformUserId PlatformUserId, FInputDeviceId DeviceId) override
 
virtual SLATE_API bool OnTouchMoved (const FVector2D &Location, float Force, int32 TouchIndex, FPlatformUserId PlatformUserId, FInputDeviceId DeviceID) override
 
virtual SLATE_API bool OnTouchEnded (const FVector2D &Location, int32 TouchIndex, FPlatformUserId PlatformUserId, FInputDeviceId DeviceID) override
 
virtual SLATE_API bool OnTouchForceChanged (const FVector2D &Location, float Force, int32 TouchIndex, FPlatformUserId PlatformUserId, FInputDeviceId DeviceID) override
 
virtual SLATE_API bool OnTouchFirstMove (const FVector2D &Location, float Force, int32 TouchIndex, FPlatformUserId PlatformUserId, FInputDeviceId DeviceID) override
 
virtual SLATE_API void ShouldSimulateGesture (EGestureEvent Gesture, bool bEnable) override
 
virtual SLATE_API bool OnMotionDetected (const FVector &Tilt, const FVector &RotationRate, const FVector &Gravity, const FVector &Acceleration, FPlatformUserId PlatformUserId, FInputDeviceId InputDeviceId) override
 
virtual SLATE_API bool OnControllerAnalog (FGamepadKeyNames::Type KeyName, FPlatformUserId PlatformUserId, FInputDeviceId InputDeviceId, float AnalogValue) override
 
virtual SLATE_API bool OnControllerButtonPressed (FGamepadKeyNames::Type KeyName, FPlatformUserId PlatformUserId, FInputDeviceId InputDeviceId, bool IsRepeat) override
 
virtual SLATE_API bool OnControllerButtonReleased (FGamepadKeyNames::Type KeyName, FPlatformUserId PlatformUserId, FInputDeviceId InputDeviceId, bool IsRepeat) override
 
virtual SLATE_API bool OnSizeChanged (const TSharedRef< FGenericWindow > &PlatformWindow, const int32 Width, const int32 Height, bool bWasMinimized=false) override
 
virtual SLATE_API void OnOSPaint (const TSharedRef< FGenericWindow > &PlatformWindow) override
 
virtual SLATE_API FWindowSizeLimits GetSizeLimitsForWindow (const TSharedRef< FGenericWindow > &Window) const override
 
virtual SLATE_API void OnResizingWindow (const TSharedRef< FGenericWindow > &PlatformWindow) override
 
virtual SLATE_API bool BeginReshapingWindow (const TSharedRef< FGenericWindow > &PlatformWindow) override
 
virtual SLATE_API void FinishedReshapingWindow (const TSharedRef< FGenericWindow > &PlatformWindow) override
 
virtual SLATE_API void SignalSystemDPIChanged (const TSharedRef< FGenericWindow > &Window) override
 
virtual SLATE_API void HandleDPIScaleChanged (const TSharedRef< FGenericWindow > &Window) override
 
virtual SLATE_API void OnMovedWindow (const TSharedRef< FGenericWindow > &PlatformWindow, const int32 X, const int32 Y) override
 
virtual SLATE_API bool OnWindowActivationChanged (const TSharedRef< FGenericWindow > &PlatformWindow, const EWindowActivation ActivationType) override
 
virtual SLATE_API bool OnApplicationActivationChanged (const bool IsActive) override
 
virtual SLATE_API bool OnConvertibleLaptopModeChanged () override
 
virtual SLATE_API EWindowZone::Type GetWindowZoneForPoint (const TSharedRef< FGenericWindow > &PlatformWindow, const int32 X, const int32 Y) override
 
virtual SLATE_API void OnWindowClose (const TSharedRef< FGenericWindow > &PlatformWindow) override
 
virtual SLATE_API EDropEffect::Type OnDragEnterText (const TSharedRef< FGenericWindow > &Window, const FString &Text) override
 
virtual SLATE_API EDropEffect::Type OnDragEnterFiles (const TSharedRef< FGenericWindow > &Window, const TArray< FString > &Files) override
 
virtual SLATE_API EDropEffect::Type OnDragEnterExternal (const TSharedRef< FGenericWindow > &Window, const FString &Text, const TArray< FString > &Files) override
 
SLATE_API EDropEffect::Type OnDragEnter (const TSharedRef< SWindow > &Window, const TSharedRef< FExternalDragOperation > &DragDropOperation)
 
virtual SLATE_API EDropEffect::Type OnDragOver (const TSharedPtr< FGenericWindow > &Window) override
 
virtual SLATE_API void OnDragLeave (const TSharedPtr< FGenericWindow > &Window) override
 
virtual SLATE_API EDropEffect::Type OnDragDrop (const TSharedPtr< FGenericWindow > &Window) override
 
virtual SLATE_API bool OnWindowAction (const TSharedRef< FGenericWindow > &PlatformWindow, const EWindowAction::Type InActionType) override
 
SLATE_API FReply RoutePointerDownEvent (const FWidgetPath &WidgetsUnderPointer, const FPointerEvent &PointerEvent)
 
SLATE_API FReply RoutePointerUpEvent (const FWidgetPath &WidgetsUnderPointer, const FPointerEvent &PointerEvent)
 
SLATE_API bool RoutePointerMoveEvent (const FWidgetPath &WidgetsUnderPointer, const FPointerEvent &PointerEvent, bool bIsSynthetic)
 
SLATE_API FReply RoutePointerDoubleClickEvent (const FWidgetPath &WidgetsUnderPointer, const FPointerEvent &PointerEvent)
 
SLATE_API FReply RouteMouseWheelOrGestureEvent (const FWidgetPath &WidgetsUnderPointer, const FPointerEvent &InWheelEvent, const FPointerEvent *InGestureEvent=nullptr)
 
SLATE_API int32 GetUserIndexForMouse () const
 
SLATE_API int32 GetUserIndexForKeyboard () const
 
SLATE_API FInputDeviceId GetInputDeviceIdForMouse () const
 
SLATE_API FInputDeviceId GetInputDeviceIdForKeyboard () const
 
SLATE_API int32 GetUserIndexForController (int32 ControllerId) const
 
SLATE_API TOptional< int32GetUserIndexForInputDevice (FInputDeviceId InputDeviceId) const
 
SLATE_API TOptional< int32GetUserIndexForPlatformUser (FPlatformUserId PlatformUser) const
 
SLATE_API TOptional< int32GetUserIndexForController (int32 ControllerId, FKey InKey) const
 
SLATE_API void SetInputManager (TSharedRef< ISlateInputManager > InputManager)
 
SLATE_API FDelegateHandle RegisterOnWindowActionNotification (const FOnWindowAction &Notification)
 
 DECLARE_EVENT_OneParam (FSlateApplication, FOnModalLoopTickEvent, float)
 
FOnModalLoopTickEventGetOnModalLoopTickEvent ()
 
SLATE_API void UnregisterOnWindowActionNotification (FDelegateHandle Handle)
 
SLATE_API void NavigateToWidget (const uint32 UserIndex, const TSharedPtr< SWidget > &NavigationDestination, ENavigationSource NavigationSource=ENavigationSource::FocusedWidget, EUINavigation NavigationType=EUINavigation::Invalid)
 
SLATE_API void NavigateFromWidgetUnderCursor (const uint32 InUserIndex, EUINavigation InNavigationType, TSharedRef< SWindow > InWindow)
 
SLATE_API EUINavigation NavigateFromWidget (const uint32 InUserIndex, TSharedPtr< SWidget > InNavigationSource, const TArray< EUINavigation > &InNavigationTypes)
 
SLATE_API TSharedPtr< SWindowFindBestParentWindowForDialogs (const TSharedPtr< SWidget > &InWidget, const ESlateParentWindowSearchMethod InParentWindowSearchMethod=ESlateParentWindowSearchMethod::ActiveWindow)
 
SLATE_API const voidFindBestParentWindowHandleForDialogs (const TSharedPtr< SWidget > &InWidget, const ESlateParentWindowSearchMethod InParentWindowSearchMethod=ESlateParentWindowSearchMethod::ActiveWindow)
 
SLATE_API uint32 GetCurrentDrawId () const
 
SLATE_API const TSet< FKey > & GetPressedMouseButtons () const
 
- Public Member Functions inherited from FSlateApplicationBase
SLATECORE_API FSlateApplicationBase ()
 
virtual ~FSlateApplicationBase ()
 
FSlateRendererGetRenderer () const
 
SLATECORE_API void GetDisplayMetrics (FDisplayMetrics &OutDisplayMetrics)
 
SLATECORE_API void GetCachedDisplayMetrics (FDisplayMetrics &OutDisplayMetrics) const
 
SLATECORE_API void GetSafeZoneSize (FMargin &SafeZone, const UE::Slate::FDeprecateVector2DParameter &OverrideSize)
 
virtual const TSharedPtr< GenericApplicationGetPlatformApplication () const
 
SLATECORE_API const FHitTestingGetHitTesting () const
 
 DECLARE_EVENT_OneParam (FSlateApplicationBase, FOnInvalidateAllWidgets, bool)
 
FOnInvalidateAllWidgetsOnInvalidateAllWidgets ()
 
 DECLARE_EVENT_OneParam (FSlateApplicationBase, FOnGlobalInvalidationToggled, bool)
 
FOnGlobalInvalidationToggledOnGlobalInvalidationToggled ()
 
SLATECORE_API void ToggleGlobalInvalidation (bool bIsGlobalInvalidationEnabled)
 
SLATECORE_API void InvalidateAllWidgets (bool bClearResourcesImmediately) const
 
SLATECORE_API bool IsSlateAsleep ()
 
TSharedPtr< ICursorGetPlatformCursor ()
 
TSharedPtr< class GenericApplicationGetPlatformApplication ()
 
SLATECORE_API void ResetCustomSafeZone ()
 
SLATECORE_API bool IsCustomSafeZoneSet () const
 
SLATECORE_API void SetCustomSafeZone (const FMargin &InSafeZone)
 
const FMarginGetCustomSafeZone () const
 
- Public Member Functions inherited from FGenericApplicationMessageHandler
virtual ~FGenericApplicationMessageHandler ()
 
virtual bool ShouldUsePlatformUserId () const
 
virtual void OnBeginGesture ()
 
virtual void OnEndGesture ()
 
virtual bool OnTouchStarted (const TSharedPtr< FGenericWindow > &Window, const FVector2D &Location, float Force, int32 TouchIndex, int32 ControllerId)
 
virtual bool OnTouchMoved (const FVector2D &Location, float Force, int32 TouchIndex, int32 ControllerId)
 
virtual bool OnTouchEnded (const FVector2D &Location, int32 TouchIndex, int32 ControllerId)
 
virtual bool OnTouchForceChanged (const FVector2D &Location, float Force, int32 TouchIndex, int32 ControllerId)
 
virtual bool OnTouchFirstMove (const FVector2D &Location, float Force, int32 TouchIndex, int32 ControllerId)
 
virtual bool OnMotionDetected (const FVector &Tilt, const FVector &RotationRate, const FVector &Gravity, const FVector &Acceleration, int32 ControllerId)
 

Static Public Member Functions

static SLATE_API void Create ()
 
static SLATE_API TSharedRef< FSlateApplicationCreate (const TSharedRef< class GenericApplication > &InPlatformApplication)
 
static SLATE_API TSharedRef< FSlateApplicationInitializeAsStandaloneApplication (const TSharedRef< class FSlateRenderer > &PlatformRenderer)
 
static SLATE_API TSharedRef< FSlateApplicationInitializeAsStandaloneApplication (const TSharedRef< class FSlateRenderer > &PlatformRenderer, const TSharedRef< class GenericApplication > &InPlatformApplication)
 
static SLATE_API void InitializeCoreStyle ()
 
static bool IsInitialized ()
 
static FSlateApplicationGet ()
 
static SLATE_API void Shutdown (bool bShutdownPlatform=true)
 
static SLATE_API TSharedRef< class FGlobalTabmanagerGetGlobalTabManager ()
 
static SLATE_API void InitHighDPI (const bool bForceEnable)
 
static double GetFixedDeltaTime ()
 
static SLATE_API void SetFixedDeltaTime (double InSeconds)
 
- Static Public Member Functions inherited from FSlateApplicationBase
static FSlateApplicationBaseGet ()
 
static bool IsInitialized ()
 

Protected Member Functions

SLATE_API TSharedRef< FSlateUserRegisterNewUser (int32 UserIndex, bool bIsVirtual=false)
 
SLATE_API TSharedRef< FSlateUserRegisterNewUser (FPlatformUserId PlatformUserId, bool bIsVirtual=false)
 
SLATE_API TSharedRef< FSlateUserGetOrCreateUser (int32 UserIndex)
 
SLATE_API TSharedRef< FSlateUserGetOrCreateUser (FPlatformUserId PlatformUserId)
 
SLATE_API TSharedRef< FSlateUserGetOrCreateUser (FInputDeviceId DeviceId)
 
TSharedRef< FSlateUserGetOrCreateUser (const FInputEvent &InputEvent)
 
SLATE_API FPointerEvent TransformPointerEvent (const FPointerEvent &PointerEvent, const TSharedPtr< SWindow > &Window) const
 
virtual SLATE_API bool DoesWidgetHaveMouseCaptureByUser (const TSharedPtr< const SWidget > Widget, int32 UserIndex, TOptional< int32 > PointerIndex) const override
 
virtual SLATE_API bool DoesWidgetHaveMouseCapture (const TSharedPtr< const SWidget > Widget) const override
 
virtual SLATE_API TOptional< EFocusCauseHasUserFocus (const TSharedPtr< const SWidget > Widget, int32 UserIndex) const override
 
virtual SLATE_API TOptional< EFocusCauseHasAnyUserFocus (const TSharedPtr< const SWidget > Widget) const override
 
virtual SLATE_API bool IsWidgetDirectlyHovered (const TSharedPtr< const SWidget > Widget) const override
 
virtual SLATE_API bool ShowUserFocus (const TSharedPtr< const SWidget > Widget) const override
 
SLATE_API TSharedRef< FNavigationConfigGetRelevantNavConfig (int32 UserIndex) const
 
SLATE_API void OnShutdown ()
 
SLATE_API void DestroyRenderer ()
 
SLATE_API void TickTime ()
 
SLATE_API void TickPlatform (float DeltaTime)
 
SLATE_API void TickAndDrawWidgets (float DeltaTime)
 
SLATE_API void DrawWindows ()
 
SLATE_API void PrivateDrawWindows (TSharedPtr< SWindow > DrawOnlyThisWindow=nullptr)
 
SLATE_API void DrawPrepass (TSharedPtr< SWindow > DrawOnlyThisWindow)
 
SLATE_API void DrawWindowAndChildren (const TSharedRef< SWindow > &WindowToDraw, struct FDrawWindowArgs &DrawWindowArgs)
 
SLATE_API void GetAllVisibleChildWindows (TArray< TSharedRef< SWindow > > &OutWindows, TSharedRef< SWindow > CurrentWindow)
 
SLATE_API void ThrottleApplicationBasedOnMouseMovement ()
 
virtual SLATE_API FWidgetPath LocateWidgetInWindow (UE::Slate::FDeprecateVector2DParameter ScreenspaceMouseCoordinate, const TSharedRef< SWindow > &Window, bool bIgnoreEnabledStatus, int32 UserIndex) const override
 
SLATE_API void SetupPhysicalSensitivities ()
 
virtual SLATE_API TSharedPtr< SWidgetGetMouseCaptorImpl () const override
 
- Protected Member Functions inherited from FSlateApplicationBase
SLATECORE_API void GetSafeZoneRatio (FMargin &SafeZoneRatio)
 
SLATECORE_API void UpdateAnyActiveTimersArePending ()
 
SLATECORE_API void UpdateCustomSafeZone (const FMargin &NewSafeZoneRatio, bool bShouldRecacheMetrics)
 

Friends

class FEventRouter
 

Additional Inherited Members

- Static Public Attributes inherited from FSlateApplicationBase
SLATECORE_API static const uint32 CursorPointerIndex = ETouchIndex::CursorPointerIndex
 
SLATECORE_API static const uint32 CursorUserIndex = 0
 
SLATECORE_API static const FPlatformUserId SlateAppPrimaryPlatformUser = FPlatformUserId::CreateFromInternalId(0)
 
- Protected Types inherited from FSlateApplicationBase
enum class  ECustomSafeZoneState : uint8 { Unset , Set , Debug }
 
- Protected Attributes inherited from FSlateApplicationBase
TSharedPtr< FSlateRendererRenderer
 
FHitTesting HitTesting
 
FDisplayMetrics CachedDisplayMetrics
 
float CachedDebugTitleSafeRatio
 
FOnInvalidateAllWidgets OnInvalidateAllWidgetsEvent
 
FOnGlobalInvalidationToggled OnGlobalInvalidationToggledEvent
 
FCriticalSection ActiveTimerCS
 
bool bIsSlateAsleep
 
ECustomSafeZoneState CustomSafeZoneState
 
FMargin CustomSafeZoneRatio
 
bool bAnyActiveTimersPending = false
 
- Static Protected Attributes inherited from FSlateApplicationBase
static SLATECORE_API TSharedPtr< FSlateApplicationBaseCurrentBaseApplication = nullptr
 
static SLATECORE_API TSharedPtr< class GenericApplicationPlatformApplication = nullptr
 

Constructor & Destructor Documentation

◆ ~FSlateApplication()

FSlateApplication::~FSlateApplication ( )
virtual

Virtual destructor.

Member Function Documentation

◆ ActivateGameViewport()

void FSlateApplication::ActivateGameViewport ( )

Activates the Game Viewport if it is properly childed under a window

◆ AddModalWindow()

void FSlateApplication::AddModalWindow ( TSharedRef< SWindow InSlateWindow,
const TSharedPtr< const SWidget InParentWidget,
bool  bSlowTaskWindow = false 
)

Adds a modal window to the application.
In most cases, this function does not return until the modal window is closed (the only exception is a modal window for slow tasks)

Parameters
InSlateWindowA SlateWindow to which to add a native window.
InParentWindowThe parent of the modal window. All modal windows must have a parent.
bSlowTaskWindowtrue if the window is for a slow task and this function should return before the window is closed

◆ AddWindow()

TSharedRef< SWindow > FSlateApplication::AddWindow ( TSharedRef< SWindow InSlateWindow,
const bool  bShowImmediately = true 
)
overridevirtual

Associates a top level Slate Window with a native window and ensures that it is tracked properly by the application. Calling this method will cause the window to be displayed (unless specified otherwise), so be sure to associate content with the window object you're passing in first!

Parameters
InSlateWindowA SlateWindow to which to add a native window.
bShowImmediatelytrue to show the window, false if you're going to call ShowWindow() yourself later.
Returns
a reference to the SWindow that was just added.

Implements FSlateApplicationBase.

◆ AddWindowAsNativeChild()

TSharedRef< SWindow > FSlateApplication::AddWindowAsNativeChild ( TSharedRef< SWindow InSlateWindow,
TSharedRef< SWindow InParentWindow,
const bool  bShowImmediately = true 
)

Associates a top level Slate Window with a native window, and "natively" parents that window to the specified Slate window. Although the window still a top level window in Slate, it will be considered a child window to the operating system.

Parameters
InSlateWindowA Slate window to which to add a native window.
InParentWindowSlate window that the window being added should be a native child of
bShowImmediatelyTrue to show the window. Pass false if you're going to call ShowWindow() yourself later.
Returns
a reference to the SWindow that was just added.

◆ AllowMoveCursor()

bool FSlateApplication::AllowMoveCursor ( )
Returns
true if the current platform allows cursor positioning in editable text boxes

◆ AnyMenusVisible()

bool FSlateApplication::AnyMenusVisible ( ) const
overridevirtual
Returns
Returns true if there are any pop-up menus summoned

Implements FSlateApplicationBase.

◆ AreMenuAnimationsEnabled()

bool FSlateApplication::AreMenuAnimationsEnabled ( ) const
Returns
Returns true if transition effects for new menus and windows should be played

◆ ArrangeWindowToFrontVirtual()

virtual void FSlateApplication::ArrangeWindowToFrontVirtual ( TArray< TSharedRef< SWindow > > &  Windows,
const TSharedRef< SWindow > &  WindowToBringToFront 
)
inlineoverridevirtual

Reorders an array of windows so the specified window is "brought to the front"

Implements FSlateApplicationBase.

◆ BeginReshapingWindow()

bool FSlateApplication::BeginReshapingWindow ( const TSharedRef< FGenericWindow > &  PlatformWindow)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ CalculatePopupWindowPosition()

UE::Slate::FDeprecateVector2DResult FSlateApplication::CalculatePopupWindowPosition ( const FSlateRect InAnchor,
const UE::Slate::FDeprecateVector2DParameter InSize,
bool  bAutoAdjustForDPIScale = true,
const UE::Slate::FDeprecateVector2DParameter InProposedPlacement = FVector2f::ZeroVector,
const EOrientation  Orientation = Orient_Vertical,
const EPopupLayoutMode  LayoutMode = EPopupLayoutMode::Menu 
) const
virtual

Calculates the popup window position from the passed in window position and size. Adjusts position for popup windows which are outside of the work area of the monitor where they reside

Parameters
InAnchorThe current(suggested) window position and size of an area which may not be covered by the popup.
InSizeThe size of the window
bAutoAdjustForDPIScaleWhether the method should attempt to correct for the DPI scale of the monitor.
InProposedPlacementThe location on screen where the popup should go if allowed. If zero this will be determined from Orientation and Anchor
OrientationThe direction of the popup. If vertical it will attempt to open below the anchor but will open above if there is no room. If horizontal it will attempt to open below the anchor but will open above if there is no room.
LayoutModeDetermines whether the popup is allowed to flip to the other side of the anchor when there is no room on the screen.
Returns
The adjusted position

◆ CalculateTooltipWindowPosition()

UE::Slate::FDeprecateVector2DResult FSlateApplication::CalculateTooltipWindowPosition ( const FSlateRect InAnchorRect,
const UE::Slate::FDeprecateVector2DParameter InSize,
bool  bAutoAdjustForDPIScale,
EPopupCursorOverlapMode  CursorOverlapMode = EPopupCursorOverlapMode::PreventOverlap 
) const
virtual

Calculates the tooltip window position.

Parameters
InAnchorRectThe current(suggested) window position and size of an area which may not be covered by the popup.
InSizeThe size of the tooltip window.
bAutoAdjustForDPIScaleWhether the method should attempt to correct for the DPI scale of the monitor.
CursorOverlapModeWhether the tooltip window should be permitted to open under the position of the cursor.
Returns
The suggested position.

Implements FSlateApplicationBase.

◆ CanAddModalWindow()

bool FSlateApplication::CanAddModalWindow ( ) const

Returns true if this slate application is ready to open modal windows

◆ CancelDragDrop()

void FSlateApplication::CancelDragDrop ( )

Cancels any in flight drag and drops

◆ CanDisplayWindows()

bool FSlateApplication::CanDisplayWindows ( ) const

Returns true if this slate application is ready to display windows.

◆ ClearAllUserFocus()

void FSlateApplication::ClearAllUserFocus ( EFocusCause  ReasonFocusIsChanging = EFocusCause::SetDirectly)

Releases the focus for all users from whatever it currently is on.

◆ ClearKeyboardFocus()

void FSlateApplication::ClearKeyboardFocus ( const EFocusCause  ReasonFocusIsChanging = EFocusCause::SetDirectly)

Clears keyboard focus, if any widget is currently focused

Parameters
ReasonFocusIsChangingThe reason that keyboard focus is changing

◆ ClearUserFocus()

void FSlateApplication::ClearUserFocus ( uint32  UserIndex,
EFocusCause  ReasonFocusIsChanging = EFocusCause::SetDirectly 
)

Releases the users focus from whatever it currently is on.

◆ CloseAllWindowsImmediately()

void FSlateApplication::CloseAllWindowsImmediately ( )

Closes all active windows immediately

◆ CloseToolTip()

void FSlateApplication::CloseToolTip ( )

Closes the open tool-tip, if a tool-tip is open

◆ Create() [1/2]

void FSlateApplication::Create ( )
static

◆ Create() [2/2]

TSharedRef< FSlateApplication > FSlateApplication::Create ( const TSharedRef< class GenericApplication > &  InPlatformApplication)
static

◆ DECLARE_EVENT_OneParam() [1/6]

FSlateApplication::DECLARE_EVENT_OneParam ( FSlateApplication  ,
FApplicationActivationStateChangedEvent  ,
const bool   
) &
inline

◆ DECLARE_EVENT_OneParam() [2/6]

FSlateApplication::DECLARE_EVENT_OneParam ( FSlateApplication  ,
FOnModalLoopTickEvent  ,
float   
)

Event type for when Slate is ticking during a modal dialog loop

◆ DECLARE_EVENT_OneParam() [3/6]

FSlateApplication::DECLARE_EVENT_OneParam ( FSlateApplication  ,
FOnWindowBeingDestroyed  ,
const SWindow  
)

Delegate called when a window is about to be destroyed

◆ DECLARE_EVENT_OneParam() [4/6]

FSlateApplication::DECLARE_EVENT_OneParam ( FSlateApplication  ,
FSlateLastUserInteractionTimeUpdateEvent  ,
double   
)

◆ DECLARE_EVENT_OneParam() [5/6]

FSlateApplication::DECLARE_EVENT_OneParam ( FSlateApplication  ,
FSlateTickEvent  ,
float   
)

Event before slate application ticks.

◆ DECLARE_EVENT_OneParam() [6/6]

FSlateApplication::DECLARE_EVENT_OneParam ( FSlateApplication  ,
FUserRegisteredEvent  ,
int32   
)

Delegate for when a new user has been registered.

◆ DECLARE_MULTICAST_DELEGATE_FiveParams()

FSlateApplication::DECLARE_MULTICAST_DELEGATE_FiveParams ( FOnFocusChanging  ,
const FFocusEvent ,
const FWeakWidgetPath ,
const TSharedPtr< SWidget > &  ,
const FWidgetPath ,
const TSharedPtr< SWidget > &   
)

Delegate called just before possible focus change

◆ DestroyRenderer()

void FSlateApplication::DestroyRenderer ( )
protected

◆ DestroyWindowImmediately()

void FSlateApplication::DestroyWindowImmediately ( TSharedRef< SWindow WindowToDestroy)

HACK: Don't use this unless shutting down a game viewport Game viewport windows need to be destroyed instantly or else the viewport could tick and access deleted data

Parameters
WindowToDestroyWindow for destruction

◆ DestroyWindowsImmediately()

void FSlateApplication::DestroyWindowsImmediately ( )

Destroy the native and slate windows in the array provided.

Parameters
WindowsToDestroyDestroy these windows

◆ DismissAllMenus()

void FSlateApplication::DismissAllMenus ( )

Dismisses all open menus

◆ DismissMenu()

void FSlateApplication::DismissMenu ( const TSharedPtr< IMenu > &  InFromMenu)

Dismisses a menu and all its children

Parameters
InFromMenuThe menu to dismiss, any children, grandchildren etc will also be dismissed

◆ DismissMenuByWidget()

void FSlateApplication::DismissMenuByWidget ( const TSharedRef< SWidget > &  InWidgetInMenu)

Dismisses a menu and all its children. The menu is determined by looking for menus in the parent chain of the widget.

Parameters
InWidgetInMenuThe widget whose path is search upwards for a menu. That menu will then be dismissed.

◆ DoesWidgetHaveMouseCapture()

bool FSlateApplication::DoesWidgetHaveMouseCapture ( const TSharedPtr< const SWidget Widget) const
overrideprotectedvirtual

Gets whether or not a particular widget has mouse capture.

Returns
True if the widget has mouse capture, otherwise false.

Implements FSlateApplicationBase.

◆ DoesWidgetHaveMouseCaptureByUser()

bool FSlateApplication::DoesWidgetHaveMouseCaptureByUser ( const TSharedPtr< const SWidget Widget,
int32  UserIndex,
TOptional< int32 PointerIndex 
) const
overrideprotectedvirtual

Gets whether or not a particular widget has mouse capture by a user.

Returns
True if the widget has mouse capture, otherwise false.

Implements FSlateApplicationBase.

◆ DrawPrepass()

void FSlateApplication::DrawPrepass ( TSharedPtr< SWindow DrawOnlyThisWindow)
protected

Pre-pass step before drawing windows to compute geometry size and reshape autosized windows

◆ DrawWindowAndChildren()

void FSlateApplication::DrawWindowAndChildren ( const TSharedRef< SWindow > &  WindowToDraw,
struct FDrawWindowArgs DrawWindowArgs 
)
protected

Draws a window and its children

◆ DrawWindows()

void FSlateApplication::DrawWindows ( )
protected

Draws Slate windows. Should only be called by the application's main loop or renderer.

◆ EnableMenuAnimations()

void FSlateApplication::EnableMenuAnimations ( const bool  bEnableAnimations)

Sets whether transition effects for new menus and windows should be played. This can be called at any time.

Parameters
bEnableAnimationsTrue if animations should be used, otherwise false.

◆ EnterDebuggingMode()

void FSlateApplication::EnterDebuggingMode ( )

Enters debugging mode which is a special state that causes the Slate application to tick in place which in the middle of a stack frame

◆ ExternalModalStart()

void FSlateApplication::ExternalModalStart ( )

Disable Slate components when an external, non-slate, modal window is brought up. In the case of multiple external modal windows, we will only increment our tracking counter.

◆ ExternalModalStop()

void FSlateApplication::ExternalModalStop ( )

Re-enable disabled Slate components when a non-slate modal window is dismissed. Slate components will only be re-enabled when all tracked external modal windows have been dismissed.

◆ ExternalUIChange()

void FSlateApplication::ExternalUIChange ( bool  bIsOpening)
inline

Sets the display state of external UI such as Steam.

◆ FindBestParentWindowForDialogs()

TSharedPtr< SWindow > FSlateApplication::FindBestParentWindowForDialogs ( const TSharedPtr< SWidget > &  InWidget,
const ESlateParentWindowSearchMethod  InParentWindowSearchMethod = ESlateParentWindowSearchMethod::ActiveWindow 
)

Given an optional widget, try and get the most suitable parent window to use with dialogs (such as file and directory pickers). This will first try and get the window that owns the widget (if provided), before falling back to using the MainFrame window.

◆ FindBestParentWindowHandleForDialogs()

const void * FSlateApplication::FindBestParentWindowHandleForDialogs ( const TSharedPtr< SWidget > &  InWidget,
const ESlateParentWindowSearchMethod  InParentWindowSearchMethod = ESlateParentWindowSearchMethod::ActiveWindow 
)

Given an optional widget, try and get the most suitable parent window handle to use with dialogs (such as file and directory pickers). This will first try and get the window that owns the widget (if provided), before falling back to using the MainFrame window.

◆ FindInputPreProcessor() [1/2]

int32 FSlateApplication::FindInputPreProcessor ( TSharedPtr< class IInputProcessor InputProcessor) const

Get the index of a registered pre-processor.

Parameters
InputProcessorThe input pre-processor to find.
Returns
The index of the pre-processor, or INDEX_NONE if not registered.

◆ FindInputPreProcessor() [2/2]

int32 FSlateApplication::FindInputPreProcessor ( TSharedPtr< class IInputProcessor InputProcessor,
const EInputPreProcessorType Type 
) const

Get the index of a registered pre-processor.

Parameters
InputProcessorThe input pre-processor to find.
TypeThe priority bracket in which the pre-processor should be registered
Returns
The index of the pre-processor, or INDEX_NONE if not registered.

◆ FindMenuInWidgetPath()

TSharedPtr< IMenu > FSlateApplication::FindMenuInWidgetPath ( const FWidgetPath InWidgetPath) const

Attempt to locate a menu that contains the specified widget

Parameters
InWidgetPathPath to the widget to use for the search
Returns
the menu in which the widget resides, or nullptr

◆ FindOrCreateVirtualUser()

TSharedRef< FSlateVirtualUserHandle > FSlateApplication::FindOrCreateVirtualUser ( int32  VirtualUserIndex)
Returns
a handle for the existing or newly created virtual slate user. This is handy when you need to create virtual hardware users for slate components in the virtual world that may need to be interacted with with virtual hardware.

◆ FindPathToWidget()

virtual bool FSlateApplication::FindPathToWidget ( TSharedRef< const SWidget InWidget,
FWidgetPath OutWidgetPath,
EVisibility  VisibilityFilter = EVisibility::Visible 
)
inlineoverridevirtual

Searches for the specified widget and generates a full path to it.

Note: this is a relatively slow operation!

Parameters
InWidgetWidget to generate a path to
OutWidgetPathThe generated widget path
VisibilityFilterWidgets must have this type of visibility to be included the path
Returns
True if the widget path was found

Implements FSlateApplicationBase.

◆ FindWidgetWindow() [1/2]

TSharedPtr< SWindow > FSlateApplication::FindWidgetWindow ( TSharedRef< const SWidget InWidget) const
overridevirtual

Finds the window that the provided widget resides in

Parameters
InWidgetThe widget to find the window for
Returns
The window where the widget resides, or null if the widget wasn't found. Remember, a widget might not be found simply because its parent decided not to report the widget in ArrangeChildren.

Implements FSlateApplicationBase.

◆ FindWidgetWindow() [2/2]

TSharedPtr< SWindow > FSlateApplication::FindWidgetWindow ( TSharedRef< const SWidget InWidget,
FWidgetPath OutWidgetPath 
) const

Finds the window that the provided widget resides in

Parameters
InWidgetThe widget to find the window for
OutWidgetPathFull widget path generated
Returns
The window where the widget resides, or null if the widget wasn't found. Remember, a widget might not be found simply because its parent decided not to report the widget in ArrangeChildren.

◆ FinishedInputThisFrame()

void FSlateApplication::FinishedInputThisFrame ( )

Occurs before Tick(), after all pointer and keyboard input has been processed.

◆ FinishedReshapingWindow()

void FSlateApplication::FinishedReshapingWindow ( const TSharedRef< FGenericWindow > &  PlatformWindow)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ FlushRenderState()

void FSlateApplication::FlushRenderState ( )

Flushes the render state of slate, releasing accesses and flushing all render commands.

◆ ForceRedrawWindow()

void FSlateApplication::ForceRedrawWindow ( const TSharedRef< SWindow > &  InWindowToDraw)

Forces the window to redraw immediately.

◆ ForEachUser() [1/2]

void FSlateApplication::ForEachUser ( TFunctionRef< void(FSlateUser &)>  InPredicate,
bool  bIncludeVirtualUsers = false 
)

Allows you do some operations for every registered user.

◆ ForEachUser() [2/2]

void FSlateApplication::ForEachUser ( TFunctionRef< void(FSlateUser *)>  InPredicate,
bool  bIncludeVirtualUsers = false 
)

◆ GeneratePathToWidgetChecked()

void FSlateApplication::GeneratePathToWidgetChecked ( TSharedRef< const SWidget InWidget,
FWidgetPath OutWidgetPath,
EVisibility  VisibilityFilter = EVisibility::Visible 
) const
Parameters
InWidgetWidget to generate a path to
OutWidgetPathThe generated widget path
VisibilityFilterWidgets must have this type of visibility to be included the path

◆ GeneratePathToWidgetUnchecked()

bool FSlateApplication::GeneratePathToWidgetUnchecked ( TSharedRef< const SWidget InWidget,
FWidgetPath OutWidgetPath,
EVisibility  VisibilityFilter = EVisibility::Visible 
) const
Parameters
InWidgetWidget to generate a path to
OutWidgetPathThe generated widget path
VisibilityFilterWidgets must have this type of visibility to be included the path

◆ Get()

static FSlateApplication & FSlateApplication::Get ( )
inlinestatic

Returns the current instance of the application. The application should have been initialized before this method is called

Returns
Reference to the application

◆ GetActiveModalWindow()

TSharedPtr< SWindow > FSlateApplication::GetActiveModalWindow ( ) const
Returns
The active modal window or nullptr if there is no modal window.

◆ GetActiveTopLevelRegularWindow()

TSharedPtr< SWindow > FSlateApplication::GetActiveTopLevelRegularWindow ( ) const
overridevirtual

Gets the active regular top-level window. A regular window is a non-menu, non-tooltip, non-cursor decorator window

Returns
The top level window, or nullptr if no Slate windows are currently active.

Implements FSlateApplicationBase.

◆ GetActiveTopLevelWindow()

TSharedPtr< SWindow > FSlateApplication::GetActiveTopLevelWindow ( ) const
overridevirtual

Gets the active top-level window.

Returns
The top level window, or nullptr if no Slate windows are currently active.

Implements FSlateApplicationBase.

◆ GetAllowTooltips()

bool FSlateApplication::GetAllowTooltips ( ) const

◆ GetAllVisibleChildWindows()

void FSlateApplication::GetAllVisibleChildWindows ( TArray< TSharedRef< SWindow > > &  OutWindows,
TSharedRef< SWindow CurrentWindow 
)
protected

Gets all visible child windows of a window.

◆ GetAllVisibleWindowsOrdered()

void FSlateApplication::GetAllVisibleWindowsOrdered ( TArray< TSharedRef< SWindow > > &  OutWindows)

Gets all visible slate windows ordered from back to front based on child hierarchies

◆ GetAppIcon()

const FSlateBrush * FSlateApplication::GetAppIcon ( ) const
overridevirtual

Gets the global application icon.

Returns
The icon.

Implements FSlateApplicationBase.

◆ GetAppIconSmall()

const FSlateBrush * FSlateApplication::GetAppIconSmall ( ) const
overridevirtual

Implements FSlateApplicationBase.

◆ GetApplicationScale()

virtual float FSlateApplication::GetApplicationScale ( ) const
inlineoverridevirtual

Gets the ratio SlateUnit / ScreenPixel.

Returns
Application scale.

Implements FSlateApplicationBase.

◆ GetAverageDeltaTime()

const float FSlateApplication::GetAverageDeltaTime ( ) const
inline

Returns the running average delta time (smoothed over several frames)

Returns
The average time delta

◆ GetAverageDeltaTimeForResponsiveness()

float FSlateApplication::GetAverageDeltaTimeForResponsiveness ( ) const
inline

Returns the running average delta time (smoothed over several frames) Unlike GetAverageDeltaTime() it excludes exceptional situations, such as when throttling mode is active.

Returns
The average time delta

◆ GetCurrentDebugContextWidget()

TSharedPtr< SWidget > FSlateApplication::GetCurrentDebugContextWidget ( ) const
overridevirtual
Returns
the Widget that started a tick, paint, prepass or an event.

Implements FSlateApplicationBase.

◆ GetCurrentDrawId()

uint32 FSlateApplication::GetCurrentDrawId ( ) const
Returns
Returns the current Id of the application drawing phase. The value returned can be used for == and != operations only.

◆ GetCurrentTime()

virtual const double FSlateApplication::GetCurrentTime ( ) const
inlineoverridevirtual

Gets Slate's current cached real time.

This time value is updated every frame right before we tick widgets and is the recommended time value to use for UI animations and transitions, as opposed to calling FPlatformTime::Seconds() (which is generally slower)

Returns
The current Slate real time in seconds

Implements FSlateApplicationBase.

◆ GetCursorPos()

UE::Slate::FDeprecateVector2DResult FSlateApplication::GetCursorPos ( ) const
overridevirtual

Gets the current position of the cursor.

Returns
Cursor position.

Implements FSlateApplicationBase.

◆ GetCursorRadius()

float FSlateApplication::GetCursorRadius ( ) const

Getter for the cursor radius

◆ GetCursorSize()

UE::Slate::FDeprecateVector2DResult FSlateApplication::GetCursorSize ( ) const
overridevirtual

Gets the size of the cursor..

Returns
Cursor size.

Implements FSlateApplicationBase.

◆ GetCursorUser() [1/2]

TSharedPtr< FSlateUser > FSlateApplication::GetCursorUser ( )
inline

◆ GetCursorUser() [2/2]

TSharedPtr< const FSlateUser > FSlateApplication::GetCursorUser ( ) const
inline

Get the standard 'default' user (there's always guaranteed to be at least one).

◆ GetDeltaTime()

const float FSlateApplication::GetDeltaTime ( ) const
inline

Returns the real time delta since Slate last ticked widgets

Returns
The time delta since last tick

◆ GetDragDroppingContent()

TSharedPtr< FDragDropOperation > FSlateApplication::GetDragDroppingContent ( ) const

Get the current drag-dropping content

◆ GetDragTriggerDistance()

float FSlateApplication::GetDragTriggerDistance ( ) const
Returns
the deadzone size for dragging in screen pixels (aka virtual desktop pixels)

◆ GetDragTriggerDistanceSquared()

float FSlateApplication::GetDragTriggerDistanceSquared ( ) const
Returns
the deadzone size squared for dragging in screen pixels (aka virtual desktop pixels)

◆ GetFixedDeltaTime()

static double FSlateApplication::GetFixedDeltaTime ( )
inlinestatic

Gets time step in seconds if a fixed delta time is wanted.

Returns
Time step in seconds for fixed delta time.

◆ GetGameViewport()

TSharedPtr< SViewport > FSlateApplication::GetGameViewport ( ) const

Returns the game viewport registered with the slate application

Returns
registered game viewport

◆ GetGlobalTabManager()

static SLATE_API TSharedRef< class FGlobalTabmanager > FSlateApplication::GetGlobalTabManager ( )
static
Returns
the global tab manager

◆ GetHandleDeviceInputWhenApplicationNotActive()

bool FSlateApplication::GetHandleDeviceInputWhenApplicationNotActive ( ) const
inline

◆ GetInitialDisplayMetrics()

virtual void FSlateApplication::GetInitialDisplayMetrics ( FDisplayMetrics OutDisplayMetrics) const
inlinevirtual

◆ GetInputDeviceIdForKeyboard()

FInputDeviceId FSlateApplication::GetInputDeviceIdForKeyboard ( ) const
Returns
InputDeviceId that the keyboard is mapped to

◆ GetInputDeviceIdForMouse()

FInputDeviceId FSlateApplication::GetInputDeviceIdForMouse ( ) const
Returns
InputDeviceId that the mouse is mapped to

◆ GetInputInterface()

IInputInterface * FSlateApplication::GetInputInterface ( ) const
inline

◆ GetInteractiveTopLevelWindows()

TArray< TSharedRef< SWindow > > FSlateApplication::GetInteractiveTopLevelWindows ( )
Returns
an array of top-level windows that can be interacted with. e.g. when a modal window is up, only return the modal window

◆ GetKeyboardFocusedWidget()

TSharedPtr< SWidget > FSlateApplication::GetKeyboardFocusedWidget ( ) const
overridevirtual

Gets the widget that currently has keyboard focus, if any.

Returns
The focused widget, or nullptr if no widget has focus.

Implements FSlateApplicationBase.

◆ GetLastCursorPos()

UE::Slate::FDeprecateVector2DResult FSlateApplication::GetLastCursorPos ( ) const
overridevirtual

Gets the last known position of the cursor.

Returns
Cursor position.

Implements FSlateApplicationBase.

◆ GetLastUserInteractionTime()

double FSlateApplication::GetLastUserInteractionTime ( ) const
inline
Returns
the last time a user interacted with a keyboard, mouse, touch device, or controller

◆ GetLastUserInteractionTimeUpdateEvent()

FSlateLastUserInteractionTimeUpdateEvent & FSlateApplication::GetLastUserInteractionTimeUpdateEvent ( )
inline
Returns
Gets the event for LasterUserInteractionTime update

◆ GetMenuHostWidget()

TSharedPtr< SWidget > FSlateApplication::GetMenuHostWidget ( ) const
Returns
Returns a ptr to the widget that created the opened root menu or null if one is not opened

◆ GetModifierKeys()

FModifierKeysState FSlateApplication::GetModifierKeys ( ) const

Returns the current modifier keys state

Returns
State of modifier keys

◆ GetMouseCaptorImpl()

TSharedPtr< SWidget > FSlateApplication::GetMouseCaptorImpl ( ) const
overrideprotectedvirtual

Implementation of GetMouseCaptor which can be overridden without warnings.

Returns
Widget with the mouse capture

Implements FSlateApplicationBase.

◆ GetMouseCaptureWindow()

void * FSlateApplication::GetMouseCaptureWindow ( ) const
virtual

returning platform-specific value designating window that captures mouse, or nullptr if mouse isn't captured

◆ GetNavigationActionForKey()

EUINavigationAction FSlateApplication::GetNavigationActionForKey ( const FKey InKey) const
overridevirtual

Implements FSlateApplicationBase.

◆ GetNavigationActionFromKey()

EUINavigationAction FSlateApplication::GetNavigationActionFromKey ( const FKeyEvent InKeyEvent) const
overridevirtual

Returns the navigation action corresponding to a key event. This version will handle multiple users correctly

Implements FSlateApplicationBase.

◆ GetNavigationConfig()

TSharedRef< FNavigationConfig > FSlateApplication::GetNavigationConfig ( ) const
inline

◆ GetNavigationDirectionFromAnalog()

EUINavigation FSlateApplication::GetNavigationDirectionFromAnalog ( const FAnalogInputEvent InAnalogEvent)
overridevirtual

Returns navigation direction matching an anlog event, this is determined in the FNavigationConfig

Implements FSlateApplicationBase.

◆ GetNavigationDirectionFromKey()

EUINavigation FSlateApplication::GetNavigationDirectionFromKey ( const FKeyEvent InKeyEvent) const
overridevirtual

Returns navigation direction matching a key event, this is determined in the FNavigationConfig

Implements FSlateApplicationBase.

◆ GetNormalExecutionAttribute()

const TAttribute< bool > & FSlateApplication::GetNormalExecutionAttribute ( ) const
inline

Returns the attribute that can be used by widgets to check if the application is in normal execution mode Don't hold a reference to this anywhere that can exist when this application closes

◆ GetOnModalLoopTickEvent()

FOnModalLoopTickEvent & FSlateApplication::GetOnModalLoopTickEvent ( )
inline

Get the FOnModalLoopTickEvent for the Slate Application. Allows clients to register for callbacks during modal dialog loops.

Returns
The application's FOnModalLoopTickEvent.

◆ GetOrCreateUser() [1/4]

TSharedRef< FSlateUser > FSlateApplication::GetOrCreateUser ( const FInputEvent InputEvent)
inlineprotected

◆ GetOrCreateUser() [2/4]

TSharedRef< FSlateUser > FSlateApplication::GetOrCreateUser ( FInputDeviceId  DeviceId)
protected

Locates the SlateUser object corresponding to the input device id, creating a new one if it doesn't exist. This will call GetOrCreateUser for the owning Platform User of the given input device. Asserts if given an invalid (ie, negative) index.

◆ GetOrCreateUser() [3/4]

TSharedRef< FSlateUser > FSlateApplication::GetOrCreateUser ( FPlatformUserId  PlatformUserId)
protected

Locates the SlateUser object corresponding to the index, creating a new one if it doesn't exist. Asserts if given an invalid (ie, negative) index.

◆ GetOrCreateUser() [4/4]

TSharedRef< FSlateUser > FSlateApplication::GetOrCreateUser ( int32  UserIndex)
protected

Locates the SlateUser object corresponding to the index, creating a new one if it doesn't exist. Asserts if given an invalid (ie, negative) index.

◆ GetPopupSupport()

FPopupSupport & FSlateApplication::GetPopupSupport ( )
inline
Returns
Service that supports popups; helps with auto-hiding of popups

◆ GetPreferredWorkArea()

FSlateRect FSlateApplication::GetPreferredWorkArea ( ) const
overridevirtual

Gets the rectangle of the current preferred work area.

Returns
Area rectangle.

Implements FSlateApplicationBase.

◆ GetPressedMouseButtons()

const TSet< FKey > & FSlateApplication::GetPressedMouseButtons ( ) const

◆ GetRelevantNavConfig()

TSharedRef< FNavigationConfig > FSlateApplication::GetRelevantNavConfig ( int32  UserIndex) const
protected

◆ GetRootStyle()

const FStyleNode * FSlateApplication::GetRootStyle ( ) const
Returns
the root style node, which is the entry point to the style graph representing all the current style rules.

◆ GetSizeLimitsForWindow()

FWindowSizeLimits FSlateApplication::GetSizeLimitsForWindow ( const TSharedRef< FGenericWindow > &  Window) const
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ GetSoftwareCursorAvailable()

virtual bool FSlateApplication::GetSoftwareCursorAvailable ( ) const
inlineoverridevirtual

Whether the software cursor is enabled for this application.

Returns
software cursor available or not.

Implements FSlateApplicationBase.

◆ GetSoftwareCursorVis()

EVisibility FSlateApplication::GetSoftwareCursorVis ( ) const
overridevirtual

Gets the desired visibility of the software cursor

Returns
Software Cursor visibility

Implements FSlateApplicationBase.

◆ GetSoundDuration()

float FSlateApplication::GetSoundDuration ( const FSlateSound Sound) const
Returns
The duration of the given sound resource

◆ GetTextInputMethodSystem()

ITextInputMethodSystem * FSlateApplication::GetTextInputMethodSystem ( ) const
inline
Returns
The text input method interface for this application

◆ GetTopLevelWindows()

virtual const TArray< TSharedRef< SWindow > > FSlateApplication::GetTopLevelWindows ( ) const
inlineoverridevirtual

Get a list of all top-level windows in the application, excluding virtual windows.

Returns
An array of all current top-level SWindows.

Implements FSlateApplicationBase.

◆ GetTransformFullscreenMouseInput()

bool FSlateApplication::GetTransformFullscreenMouseInput ( ) const

True if transforming mouse input coordinates to account for fullscreen distortions

◆ GetUser() [1/5]

TSharedPtr< FSlateUser > FSlateApplication::GetUser ( const FInputEvent InputEvent)
inline

◆ GetUser() [2/5]

TSharedPtr< const FSlateUser > FSlateApplication::GetUser ( const FInputEvent InputEvent) const
inline

◆ GetUser() [3/5]

TSharedPtr< FSlateUser > FSlateApplication::GetUser ( FPlatformUserId  PlatformUser)

◆ GetUser() [4/5]

TSharedPtr< FSlateUser > FSlateApplication::GetUser ( int32  UserIndex)
inline

◆ GetUser() [5/5]

TSharedPtr< const FSlateUser > FSlateApplication::GetUser ( int32  UserIndex) const
inline

Gets the user at the given index, null if the user does not exist.

◆ GetUserFocusedWidget()

TSharedPtr< SWidget > FSlateApplication::GetUserFocusedWidget ( uint32  UserIndex) const
overridevirtual
Returns
a pointer to the Widget that currently has the users focus; Empty pointer when the user has no focus.

Implements FSlateApplicationBase.

◆ GetUserFromControllerId() [1/2]

TSharedPtr< FSlateUser > FSlateApplication::GetUserFromControllerId ( int32  ControllerId)
inline

◆ GetUserFromControllerId() [2/2]

TSharedPtr< const FSlateUser > FSlateApplication::GetUserFromControllerId ( int32  ControllerId) const
inline

◆ GetUserFromPlatformUser() [1/2]

TSharedPtr< FSlateUser > FSlateApplication::GetUserFromPlatformUser ( FPlatformUserId  PlatformUser)

◆ GetUserFromPlatformUser() [2/2]

TSharedPtr< const FSlateUser > FSlateApplication::GetUserFromPlatformUser ( FPlatformUserId  PlatformUser) const

◆ GetUserIndexForController() [1/2]

int32 FSlateApplication::GetUserIndexForController ( int32  ControllerId) const
Returns
int user index that this controller is mapped to.

◆ GetUserIndexForController() [2/2]

TOptional< int32 > FSlateApplication::GetUserIndexForController ( int32  ControllerId,
FKey  InKey 
) const

◆ GetUserIndexForInputDevice()

TOptional< int32 > FSlateApplication::GetUserIndexForInputDevice ( FInputDeviceId  InputDeviceId) const
Returns
Gets the slate user index that this input device is mapped to

◆ GetUserIndexForKeyboard()

int32 FSlateApplication::GetUserIndexForKeyboard ( ) const
Returns
int user index that the keyboard is mapped to.

◆ GetUserIndexForMouse()

int32 FSlateApplication::GetUserIndexForMouse ( ) const
Returns
int user index that the mouse is mapped to.

◆ GetUserIndexForPlatformUser()

TOptional< int32 > FSlateApplication::GetUserIndexForPlatformUser ( FPlatformUserId  PlatformUser) const
Returns
Gets the slate user index that this platform user id mapped to

◆ GetVisibleMenuWindow()

TSharedPtr< SWindow > FSlateApplication::GetVisibleMenuWindow ( ) const
Returns
Returns a ptr to the window that is currently the host of the menu stack or null if no menus are visible

◆ GetWindowTransparencySupport()

virtual EWindowTransparency FSlateApplication::GetWindowTransparencySupport ( ) const
inlineoverridevirtual

Get the highest level of window transparency support currently enabled by this application

Returns
Enumeration value specifying the level of transparency currently supported

Implements FSlateApplicationBase.

◆ GetWindowZoneForPoint()

EWindowZone::Type FSlateApplication::GetWindowZoneForPoint ( const TSharedRef< FGenericWindow > &  PlatformWindow,
const int32  X,
const int32  Y 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ GetWorkArea()

FSlateRect FSlateApplication::GetWorkArea ( const FSlateRect InRect) const

Get the work area that has the largest intersection with the specified rectangle

◆ GotoLineInSource()

void FSlateApplication::GotoLineInSource ( const FString &  FileName,
int32  LineNumber 
) const

Opens the current platform's code editing IDE (if necessary) and focuses the specified line in the specified file. Will only work if SupportsSourceAccess() returns true

◆ HandleDPIScaleChanged()

void FSlateApplication::HandleDPIScaleChanged ( const TSharedRef< FGenericWindow > &  Window)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ HasAnyMouseCaptor()

bool FSlateApplication::HasAnyMouseCaptor ( ) const
overridevirtual

Gets whether or not a widget has captured the mouse.

Returns
True if one or more widgets have capture, otherwise false.

Implements FSlateApplicationBase.

◆ HasAnyUserFocus()

TOptional< EFocusCause > FSlateApplication::HasAnyUserFocus ( const TSharedPtr< const SWidget Widget) const
overrideprotectedvirtual

Gets whether or not a particular widget has any users focus, and if so the type of focus (first one found).

Returns
The optional will be set with the focus cause, if unset this widget doesn't have focus.

Implements FSlateApplicationBase.

◆ HasFocusedDescendants()

bool FSlateApplication::HasFocusedDescendants ( const TSharedRef< const SWidget > &  Widget) const
overridevirtual

Checks whether the specified widget has any descendants which are currently focused.

Parameters
WidgetThe widget to check.
Returns
true if any descendants are focused, false otherwise.

Implements FSlateApplicationBase.

◆ HasOpenSubMenus()

bool FSlateApplication::HasOpenSubMenus ( TSharedPtr< IMenu InMenu) const
Returns
Returns whether the menu has child menus.

◆ HasTraveledFarEnoughToTriggerDrag() [1/2]

bool FSlateApplication::HasTraveledFarEnoughToTriggerDrag ( const FPointerEvent PointerEvent,
const UE::Slate::FDeprecateVector2DParameter  ScreenSpaceOrigin 
) const
Returns
true if the difference between the ScreenSpaceOrigin and the ScreenSpacePosition is larger than the trigger distance for dragging in Slate.

◆ HasTraveledFarEnoughToTriggerDrag() [2/2]

bool FSlateApplication::HasTraveledFarEnoughToTriggerDrag ( const FPointerEvent PointerEvent,
const UE::Slate::FDeprecateVector2DParameter  ScreenSpaceOrigin,
EOrientation  Orientation 
) const

◆ HasUserFocus()

TOptional< EFocusCause > FSlateApplication::HasUserFocus ( const TSharedPtr< const SWidget Widget,
int32  UserIndex 
) const
overrideprotectedvirtual

Gets whether or not a particular widget has the specified users focus, and if so the type of focus.

Returns
The optional will be set with the focus cause, if unset this widget doesn't have focus.

Implements FSlateApplicationBase.

◆ HasUserFocusedDescendants()

bool FSlateApplication::HasUserFocusedDescendants ( const TSharedRef< const SWidget > &  Widget,
int32  UserIndex 
) const
overridevirtual

Checks whether the specified widget has any descendants which are currently focused for the specified user user.

Parameters
WidgetThe widget to check.
InUserIndexIndex of the user that we want to check for.
Returns
true if any descendants are focused, false otherwise.

Implements FSlateApplicationBase.

◆ HasUserMouseCapture()

bool FSlateApplication::HasUserMouseCapture ( int32  UserIndex) const
overridevirtual

Gets whether or not a widget has captured the mouse for a particular user.

Returns
True if one or more widgets have capture, otherwise false.

Implements FSlateApplicationBase.

◆ InitHighDPI()

void FSlateApplication::InitHighDPI ( const bool  bForceEnable)
static

Initializes high dpi support for the process

◆ InitializeAsStandaloneApplication() [1/2]

TSharedRef< FSlateApplication > FSlateApplication::InitializeAsStandaloneApplication ( const TSharedRef< class FSlateRenderer > &  PlatformRenderer)
static

◆ InitializeAsStandaloneApplication() [2/2]

TSharedRef< FSlateApplication > FSlateApplication::InitializeAsStandaloneApplication ( const TSharedRef< class FSlateRenderer > &  PlatformRenderer,
const TSharedRef< class GenericApplication > &  InPlatformApplication 
)
static

◆ InitializeCoreStyle()

void FSlateApplication::InitializeCoreStyle ( )
static

◆ InitializeRenderer()

bool FSlateApplication::InitializeRenderer ( TSharedRef< FSlateRenderer InRenderer,
bool  bQuietMode = false 
)
virtual

Initializes the renderer responsible for drawing all elements in this application

Parameters
InRendererThe renderer to use.
bQuietModeDon't show any message boxes when initialization fails.

◆ InitializeSound()

void FSlateApplication::InitializeSound ( const TSharedRef< ISlateSoundDevice > &  InSlateSoundDevice)
virtual

Set the slate sound provider that the slate app should use.

◆ InKismetDebuggingMode()

bool FSlateApplication::InKismetDebuggingMode ( ) const
inline
Returns
true if in debugging mode

◆ InvalidateAllViewports()

void FSlateApplication::InvalidateAllViewports ( )

Removes references to FViewportRHI's.
This has to be done explicitly instead of using the FRenderResource mechanism because FViewportRHI's are managed by the game thread. This is needed before destroying the RHI device.

◆ IsActive()

virtual bool FSlateApplication::IsActive ( ) const
inlineoverridevirtual

Whether the application is active.

Returns
application active or not

Implements FSlateApplicationBase.

◆ IsDragDropping()

bool FSlateApplication::IsDragDropping ( ) const

Are we drag-dropping right now?

◆ IsDragDroppingAffected()

bool FSlateApplication::IsDragDroppingAffected ( const FPointerEvent InPointerEvent) const

Are we drag-dropping and are we affected by this pointer event?

◆ IsExternalUIOpened()

bool FSlateApplication::IsExternalUIOpened ( )
overridevirtual

Checks whether an UI for external services such as Steam is open.

Returns
true if an external UI is open, false otherwise.

Implements FSlateApplicationBase.

◆ IsFakingTouchEvents()

bool FSlateApplication::IsFakingTouchEvents ( ) const
Returns
true if mouse events are being turned into touch events, and touch UI should be forced on

◆ IsGamepadAttached()

bool FSlateApplication::IsGamepadAttached ( ) const
inline
Returns
True if there is a gamepad attached

◆ IsInitialized()

static bool FSlateApplication::IsInitialized ( )
inlinestatic

Returns true if a Slate application instance is currently initialized and ready

Returns
True if Slate application is initialized

◆ IsLastDragOnDragEnterDisabled()

bool FSlateApplication::IsLastDragOnDragEnterDisabled ( ) const
Returns
Whether we disable the last drag on a new drag enter event to prevent double drag conflicts.

◆ IsMouseAttached()

bool FSlateApplication::IsMouseAttached ( ) const
inline
Returns
True if there is a mouse device attached

◆ IsNormalExecution()

bool FSlateApplication::IsNormalExecution ( ) const
inline
Returns
true if not in debugging mode

◆ IsProcessingInput()

bool FSlateApplication::IsProcessingInput ( ) const
inline

Returns true if the we're currently processing mouse, keyboard, touch or gamepad input.

◆ IsRenderingOffScreen()

bool FSlateApplication::IsRenderingOffScreen ( ) const
inline

◆ IsRunningAtTargetFrameRate()

bool FSlateApplication::IsRunningAtTargetFrameRate ( ) const
Returns
Returns true if the application's average frame rate is at least as high as our target frame rate that satisfies our requirement for a smooth and responsive UI experience

◆ IsTicking()

bool FSlateApplication::IsTicking ( ) const

Returns true if we are currently ticking the SlateApplication.

◆ IsUsingHighPrecisionMouseMovment()

bool FSlateApplication::IsUsingHighPrecisionMouseMovment ( ) const
inline
Returns
True if the application is currently routing high precision mouse movement events (OS specific) If this value is true, the mouse is captured and hidden by the widget that originally made the request.

◆ IsUsingTrackpad()

bool FSlateApplication::IsUsingTrackpad ( ) const
inline
Returns
True if the last mouse event was from a trackpad.

◆ IsWidgetDirectlyHovered()

bool FSlateApplication::IsWidgetDirectlyHovered ( const TSharedPtr< const SWidget Widget) const
overrideprotectedvirtual

Gets whether or not a particular widget is directly hovered. Directly hovered means that the widget is directly under the pointer, is not true for ancestors tho they are Hovered.

Returns
True if the widget is directly hovered, otherwise false.

Implements FSlateApplicationBase.

◆ IsWindowHousingInteractiveTooltip()

bool FSlateApplication::IsWindowHousingInteractiveTooltip ( const TSharedRef< const SWindow > &  WindowToTest) const
overridevirtual
Returns
true if 'WindowToTest' is being used to display the current tooltip and the tooltip is interactive.

Implements FSlateApplicationBase.

◆ IsWindowInDestroyQueue()

bool FSlateApplication::IsWindowInDestroyQueue ( TSharedRef< SWindow Window) const

Is the window in the app's destroy queue? If so it will be destroyed next tick.

Parameters
WindowThe window to find in the destroy list
Returns
true if Window is in the destroy queue

◆ LeaveDebuggingMode()

void FSlateApplication::LeaveDebuggingMode ( bool  bLeavingDebugForSingleStep = false)

Leaves debugging mode

Parameters
bLeavingDebugForSingleStepWhether or not we are leaving debug mode due to single stepping

◆ LocateWidgetInWindow()

FWidgetPath FSlateApplication::LocateWidgetInWindow ( UE::Slate::FDeprecateVector2DParameter  ScreenspaceMouseCoordinate,
const TSharedRef< SWindow > &  Window,
bool  bIgnoreEnabledStatus,
int32  UserIndex 
) const
overrideprotectedvirtual

Given a window, locate a widget under the cursor in it; returns an invalid path if cursor is not over this window.

Implements FSlateApplicationBase.

◆ LocateWindowUnderMouse()

FWidgetPath FSlateApplication::LocateWindowUnderMouse ( UE::Slate::FDeprecateVector2DParameter  ScreenspaceMouseCoordinate,
const TArray< TSharedRef< SWindow > > &  Windows,
bool  bIgnoreEnabledStatus = false,
int32  UserIndex = INDEX_NONE 
)
overridevirtual

Given the screen-space coordinate of the mouse cursor, searches for a string of widgets that are under the mouse.

The widgets will be returned with the associated geometry. The first item will always be the top-level window while the last item will be the leaf-most widget.

Returns
The path to the widget.

Implements FSlateApplicationBase.

◆ MakeImage()

TSharedRef< SImage > FSlateApplication::MakeImage ( const TAttribute< const FSlateBrush * > &  Image,
const TAttribute< FSlateColor > &  Color,
const TAttribute< EVisibility > &  Visibility 
) const
overridevirtual

Creates an image widget.

Returns
The new image widget.

Implements FSlateApplicationBase.

◆ MakeToolTip() [1/2]

TSharedRef< IToolTip > FSlateApplication::MakeToolTip ( const FText ToolTipText)
overridevirtual

Creates a tool tip with the specified text.

Parameters
ToolTipTextThe text to assign to the tool tip.
Returns
The tool tip.

Implements FSlateApplicationBase.

◆ MakeToolTip() [2/2]

TSharedRef< IToolTip > FSlateApplication::MakeToolTip ( const TAttribute< FText > &  ToolTipText)
overridevirtual

Creates a tool tip with the specified text.

Parameters
ToolTipTextThe text attribute to assign to the tool tip.
Returns
The tool tip.

Implements FSlateApplicationBase.

◆ MakeWindowTitleBar()

TSharedRef< SWidget > FSlateApplication::MakeWindowTitleBar ( const FWindowTitleBarArgs InArgs,
TSharedPtr< IWindowTitleBar > &  OutTitleBar 
) const
overridevirtual

Creates a title bar for the specified window.

Parameters
InArgsThe creation arguments for the titlebar
OutTitleBarWill hold a pointer to the title bar's interface.
Returns
The new title bar widget.

Implements FSlateApplicationBase.

◆ NativeApp_ShowKeyboard()

virtual void FSlateApplication::NativeApp_ShowKeyboard ( bool  bShow,
FString  InitialString = "",
int32  SelectionStart = -1,
int32  SelectionEnd = -1 
)
inlinevirtual

Shows or hides an onscreen keyboard

Parameters
bShowtrue to show the keyboard, false to hide it

◆ NavigateFromWidget()

EUINavigation FSlateApplication::NavigateFromWidget ( const uint32  InUserIndex,
TSharedPtr< SWidget InNavigationSource,
const TArray< EUINavigation > &  InNavigationTypes 
)

Attempts to navigate to a neighboring widget by searching the given directions

Parameters
InUserIndexThe user that is doing the navigation
InNavigationSourceThe source widget to navigate from. If null, will use current user focus
InNavigationTypesThe navigation requests to attempt, in order
Returns
If succesful, returns the direction navigated. Otherwise return EUINavigation::Invalid

◆ NavigateFromWidgetUnderCursor()

void FSlateApplication::NavigateFromWidgetUnderCursor ( const uint32  InUserIndex,
EUINavigation  InNavigationType,
TSharedRef< SWindow InWindow 
)

Attempts to navigate directly to the widget currently under the given user's cursor

Parameters
InUserIndexThe user that is doing the navigation
InNavigationTypeThe navigation type / direction
InWindowThe window to do the navigation within

◆ NavigateToWidget()

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

Attempts to navigate directly to the given widget

Parameters
InUserIndexThe user that is doing the navigation
NavigationDestinationThe navigation destination widget
NavigationSourceThe source type of the navigation
NavigationTypeThe type of the navigation transition.

◆ OnApplicationActivationChanged()

bool FSlateApplication::OnApplicationActivationChanged ( const bool  IsActive)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnControllerAnalog()

bool FSlateApplication::OnControllerAnalog ( FGamepadKeyNames::Type  KeyName,
FPlatformUserId  PlatformUserId,
FInputDeviceId  InputDeviceId,
float  AnalogValue 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnControllerButtonPressed()

bool FSlateApplication::OnControllerButtonPressed ( FGamepadKeyNames::Type  KeyName,
FPlatformUserId  PlatformUserId,
FInputDeviceId  InputDeviceId,
bool  IsRepeat 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnControllerButtonReleased()

bool FSlateApplication::OnControllerButtonReleased ( FGamepadKeyNames::Type  KeyName,
FPlatformUserId  PlatformUserId,
FInputDeviceId  InputDeviceId,
bool  IsRepeat 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnConvertibleLaptopModeChanged()

bool FSlateApplication::OnConvertibleLaptopModeChanged ( )
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnCursorSet()

bool FSlateApplication::OnCursorSet ( )
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnDragDrop()

EDropEffect::Type FSlateApplication::OnDragDrop ( const TSharedPtr< FGenericWindow > &  Window)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnDragEnter()

EDropEffect::Type FSlateApplication::OnDragEnter ( const TSharedRef< SWindow > &  Window,
const TSharedRef< FExternalDragOperation > &  DragDropOperation 
)

◆ OnDragEnterExternal()

EDropEffect::Type FSlateApplication::OnDragEnterExternal ( const TSharedRef< FGenericWindow > &  Window,
const FString &  Text,
const TArray< FString > &  Files 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnDragEnterFiles()

EDropEffect::Type FSlateApplication::OnDragEnterFiles ( const TSharedRef< FGenericWindow > &  Window,
const TArray< FString > &  Files 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnDragEnterText()

EDropEffect::Type FSlateApplication::OnDragEnterText ( const TSharedRef< FGenericWindow > &  Window,
const FString &  Text 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnDragLeave()

void FSlateApplication::OnDragLeave ( const TSharedPtr< FGenericWindow > &  Window)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnDragOver()

EDropEffect::Type FSlateApplication::OnDragOver ( const TSharedPtr< FGenericWindow > &  Window)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnFocusChanging()

FOnFocusChanging & FSlateApplication::OnFocusChanging ( )
inline

◆ OnInputLanguageChanged()

void FSlateApplication::OnInputLanguageChanged ( )
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnKeyChar()

bool FSlateApplication::OnKeyChar ( const TCHAR  Character,
const bool  IsRepeat 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnKeyDown()

bool FSlateApplication::OnKeyDown ( const int32  KeyCode,
const uint32  CharacterCode,
const bool  IsRepeat 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnKeyUp()

bool FSlateApplication::OnKeyUp ( const int32  KeyCode,
const uint32  CharacterCode,
const bool  IsRepeat 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnMenuBeingDestroyed()

FOnMenuDestroyed & FSlateApplication::OnMenuBeingDestroyed ( )
inline

◆ OnMotionDetected()

bool FSlateApplication::OnMotionDetected ( const FVector Tilt,
const FVector RotationRate,
const FVector Gravity,
const FVector Acceleration,
FPlatformUserId  PlatformUserId,
FInputDeviceId  InputDeviceId 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnMouseDoubleClick() [1/2]

bool FSlateApplication::OnMouseDoubleClick ( const TSharedPtr< FGenericWindow > &  PlatformWindow,
const EMouseButtons::Type  Button 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnMouseDoubleClick() [2/2]

bool FSlateApplication::OnMouseDoubleClick ( const TSharedPtr< FGenericWindow > &  PlatformWindow,
const EMouseButtons::Type  Button,
const FVector2D  CursorPos 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnMouseDown() [1/2]

bool FSlateApplication::OnMouseDown ( const TSharedPtr< FGenericWindow > &  PlatformWindow,
const EMouseButtons::Type  Button 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnMouseDown() [2/2]

bool FSlateApplication::OnMouseDown ( const TSharedPtr< FGenericWindow > &  PlatformWindow,
const EMouseButtons::Type  Button,
const FVector2D  CursorPos 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnMouseMove()

bool FSlateApplication::OnMouseMove ( )
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnMouseUp() [1/2]

bool FSlateApplication::OnMouseUp ( const EMouseButtons::Type  Button)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnMouseUp() [2/2]

bool FSlateApplication::OnMouseUp ( const EMouseButtons::Type  Button,
const FVector2D  CursorPos 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnMouseWheel() [1/2]

bool FSlateApplication::OnMouseWheel ( const float  Delta)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnMouseWheel() [2/2]

bool FSlateApplication::OnMouseWheel ( const float  Delta,
const FVector2D  CursorPos 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnMovedWindow()

void FSlateApplication::OnMovedWindow ( const TSharedRef< FGenericWindow > &  PlatformWindow,
const int32  X,
const int32  Y 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnOSPaint()

void FSlateApplication::OnOSPaint ( const TSharedRef< FGenericWindow > &  PlatformWindow)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnPostTick()

FSlateTickEvent & FSlateApplication::OnPostTick ( )
inline

Event after slate application ticks.

◆ OnPreShutdown()

FSimpleMulticastDelegate & FSlateApplication::OnPreShutdown ( )
inline

Event when the application is about to shutdown.

◆ OnPreTick()

FSlateTickEvent & FSlateApplication::OnPreTick ( )
inline

◆ OnRawMouseMove()

bool FSlateApplication::OnRawMouseMove ( const int32  X,
const int32  Y 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnResizingWindow()

void FSlateApplication::OnResizingWindow ( const TSharedRef< FGenericWindow > &  PlatformWindow)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnShutdown()

void FSlateApplication::OnShutdown ( )
protected

Called when the slate application is being shut down.

◆ OnSizeChanged()

bool FSlateApplication::OnSizeChanged ( const TSharedRef< FGenericWindow > &  PlatformWindow,
const int32  Width,
const int32  Height,
bool  bWasMinimized = false 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnTouchEnded()

bool FSlateApplication::OnTouchEnded ( const FVector2D Location,
int32  TouchIndex,
FPlatformUserId  PlatformUserId,
FInputDeviceId  DeviceID 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnTouchFirstMove()

bool FSlateApplication::OnTouchFirstMove ( const FVector2D Location,
float  Force,
int32  TouchIndex,
FPlatformUserId  PlatformUserId,
FInputDeviceId  DeviceID 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnTouchForceChanged()

bool FSlateApplication::OnTouchForceChanged ( const FVector2D Location,
float  Force,
int32  TouchIndex,
FPlatformUserId  PlatformUserId,
FInputDeviceId  DeviceID 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnTouchGesture()

bool FSlateApplication::OnTouchGesture ( EGestureEvent  GestureType,
const FVector2D Delta,
float  WheelDelta,
bool  bIsDirectionInvertedFromDevice 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnTouchMoved()

bool FSlateApplication::OnTouchMoved ( const FVector2D Location,
float  Force,
int32  TouchIndex,
FPlatformUserId  PlatformUserId,
FInputDeviceId  DeviceID 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnTouchStarted()

bool FSlateApplication::OnTouchStarted ( const TSharedPtr< FGenericWindow > &  Window,
const FVector2D Location,
float  Force,
int32  TouchIndex,
FPlatformUserId  PlatformUserId,
FInputDeviceId  DeviceId 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnUserRegistered()

FUserRegisteredEvent & FSlateApplication::OnUserRegistered ( )
inline

◆ OnWindowAction()

bool FSlateApplication::OnWindowAction ( const TSharedRef< FGenericWindow > &  PlatformWindow,
const EWindowAction::Type  InActionType 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnWindowActivationChanged()

bool FSlateApplication::OnWindowActivationChanged ( const TSharedRef< FGenericWindow > &  PlatformWindow,
const EWindowActivation  ActivationType 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OnWindowBeingDestroyed()

FOnWindowBeingDestroyed & FSlateApplication::OnWindowBeingDestroyed ( )
inline

◆ OnWindowClose()

void FSlateApplication::OnWindowClose ( const TSharedRef< FGenericWindow > &  PlatformWindow)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ OverridePlatformApplication()

void FSlateApplication::OverridePlatformApplication ( TSharedPtr< class GenericApplication InPlatformApplication)

Replace the current platform application with a custom version.

Parameters
InPlatformApplication- The replacement platform application.

◆ OverridePlatformTextField()

void FSlateApplication::OverridePlatformTextField ( TUniquePtr< IPlatformTextField PlatformTextField)

Replace the IPlatformTextField implementation with a custom one. The implementation used by default is platform specific. If you need to change the default behavior for virtual keyboard, this method is for you.

Parameters
PlatformTextFieldThe platform specific implementation of the IPlatformTextField.

◆ PlaySound()

void FSlateApplication::PlaySound ( const FSlateSound SoundToPlay,
int32  UserIndex = 0 
) const

Play SoundToPlay. Interrupt previous sound if one is playing.

◆ PollGameDeviceState()

void FSlateApplication::PollGameDeviceState ( )

Polls game devices for input

◆ PrivateDrawWindows()

void FSlateApplication::PrivateDrawWindows ( TSharedPtr< SWindow DrawOnlyThisWindow = nullptr)
protected

Draws slate windows, optionally only drawing the passed in window

◆ ProcessAnalogInputEvent()

bool FSlateApplication::ProcessAnalogInputEvent ( const FAnalogInputEvent InAnalogInputEvent)

Called when a analog input values change

Parameters
InAnalogInputEventAnalog input event
Returns
Was this event handled by the Slate application?

◆ ProcessApplicationActivationEvent()

void FSlateApplication::ProcessApplicationActivationEvent ( bool  InAppActivated)

Called when the application is activated (i.e. one of its windows becomes active) or deactivated.

Parameters
InAppActivatedWhether the application was activated.

◆ ProcessCursorReply()

void FSlateApplication::ProcessCursorReply ( const FCursorReply CursorReply)

Apply any requests from the CursorReply

Parameters
CursorReplyThe reply generated by an event that was being processed.

◆ ProcessDragEnterEvent()

bool FSlateApplication::ProcessDragEnterEvent ( TSharedRef< SWindow WindowEntered,
const FDragDropEvent DragDropEvent 
)

Called when a drag from an external (non-slate) source enters a window

Parameters
WindowEnteredThe window that was entered by the drag and drop
DragDropEventDescribes the mouse state (position, pressed buttons, etc) and associated payload
Returns
true if the drag enter was handled and can be processed by some widget in this window; false otherwise

◆ ProcessExternalReply()

void FSlateApplication::ProcessExternalReply ( const FWidgetPath CurrentEventPath,
const FReply  TheReply,
const int32  UserIndex = 0,
const int32  PointerIndex = 10 
)

Apply any requests from the Reply to the application. E.g. Capture mouse

Parameters
CurrentEventPathThe WidgetPath along which the reply-generated event was routed
TheReplyThe reply generated by an event that was being processed.
UserIndexUser index that generated the event we are replying to (defaults to 0, at least for now)
PointerIndexPointer index that generated the event we are replying to

◆ ProcessKeyCharEvent()

bool FSlateApplication::ProcessKeyCharEvent ( const FCharacterEvent InCharacterEvent)

Called when a character is entered

Parameters
InCharacterEventCharacter event
Returns
Was this event handled by the Slate application?

◆ ProcessKeyDownEvent()

bool FSlateApplication::ProcessKeyDownEvent ( const FKeyEvent InKeyEvent)

Called when a key is pressed

Parameters
InKeyEventKeyb event
Returns
Was this event handled by the Slate application?

◆ ProcessKeyUpEvent()

bool FSlateApplication::ProcessKeyUpEvent ( const FKeyEvent InKeyEvent)

Called when a key is released

Parameters
InKeyEventKey event
Returns
Was this event handled by the Slate application?

◆ ProcessMotionDetectedEvent()

void FSlateApplication::ProcessMotionDetectedEvent ( const FMotionEvent InMotionEvent)

Called when motion is detected (controller or device) when polling game device state

Parameters
MotionEventThe motion event generated

◆ ProcessMouseButtonDoubleClickEvent()

bool FSlateApplication::ProcessMouseButtonDoubleClickEvent ( const TSharedPtr< FGenericWindow > &  PlatformWindow,
const FPointerEvent InMouseEvent 
)

Called by the native application in response to a mouse release. Routs the event to Slate Widgets.

Parameters
InMouseEventMouse event
Returns
Was this event handled by the Slate application?

◆ ProcessMouseButtonDownEvent()

bool FSlateApplication::ProcessMouseButtonDownEvent ( const TSharedPtr< FGenericWindow > &  PlatformWindow,
const FPointerEvent InMouseEvent 
)

Called by the native application in response to a mouse button press. Routs the event to Slate Widgets.

Parameters
PlatformWindowThe platform window the event originated from, used to set focus at the platform level. If Invalid the Mouse event will work but there will be no effect on the platform.
InMouseEventMouse event
Returns
Was this event handled by the Slate application?

◆ ProcessMouseButtonUpEvent()

bool FSlateApplication::ProcessMouseButtonUpEvent ( const FPointerEvent MouseEvent)

Called by the native application in response to a mouse button release. Routs the event to Slate Widgets.

Parameters
InMouseEventMouse event
Returns
Was this event handled by the Slate application?

◆ ProcessMouseMoveEvent()

bool FSlateApplication::ProcessMouseMoveEvent ( const FPointerEvent MouseEvent,
bool  bIsSynthetic = false 
)

Called by the native application in response to a mouse move. Routs the event to Slate Widgets.

Parameters
InMouseEventMouse event
bIsSyntheticTrue when the even is synthesized by slate.
Returns
Was this event handled by the Slate application?

◆ ProcessMouseWheelOrGestureEvent()

bool FSlateApplication::ProcessMouseWheelOrGestureEvent ( const FPointerEvent InWheelEvent,
const FPointerEvent InGestureEvent 
)

Called by the native application in response to a mouse wheel spin or a touch gesture. Routs the event to Slate Widgets.

Parameters
InWheelEventMouse wheel event details
InGestureEventOptional gesture event details
Returns
Was this event handled by the Slate application?

◆ ProcessReply()

void FSlateApplication::ProcessReply ( const FWidgetPath CurrentEventPath,
const FReply TheReply,
const FWidgetPath WidgetsUnderMouse,
const FPointerEvent InMouseEvent,
const uint32  UserIndex = 0 
)

Apply any requests from the Reply to the application. E.g. Capture mouse

Parameters
CurrentEventPathThe WidgetPath along which the reply-generated event was routed
TheReplyThe reply generated by an event that was being processed.
WidgetsUnderMouseOptional widgets currently under the mouse; initiating drag and drop needs access to widgets under the mouse.
InMouseEventOptional mouse event that caused this action.
UserIndexUser index that generated the event we are replying to (defaults to 0, at least for now)

◆ ProcessTouchEndedEvent()

void FSlateApplication::ProcessTouchEndedEvent ( const FPointerEvent InTouchEvent)

Called when a touchpad touch is ended (finger lifted) when polling game device state

Parameters
ControllerEventThe touch event generated

◆ ProcessTouchMovedEvent()

void FSlateApplication::ProcessTouchMovedEvent ( const FPointerEvent InTouchEvent)

Called when a touchpad touch is moved (finger moved) when polling game device state

Parameters
ControllerEventThe touch event generated

◆ ProcessTouchStartedEvent()

void FSlateApplication::ProcessTouchStartedEvent ( const TSharedPtr< FGenericWindow > &  PlatformWindow,
const FPointerEvent InTouchEvent 
)

Called when a touchpad touch is started (finger down) when polling game device state

Parameters
ControllerEventThe touch event generated

◆ ProcessWindowActivatedEvent()

bool FSlateApplication::ProcessWindowActivatedEvent ( const FWindowActivateEvent ActivateEvent)

Called by the native application in response to an activation or deactivation.

Parameters
ActivateEventInformation about the window activation/deactivation
Returns
Was this event handled by the Slate application?

◆ PumpMessages()

void FSlateApplication::PumpMessages ( )

Pumps OS messages when a modal window or intra-frame debugging session exists

◆ PushHostedMenu() [1/2]

TSharedPtr< IMenu > FSlateApplication::PushHostedMenu ( const TSharedPtr< IMenu > &  InParentMenu,
const TSharedRef< IMenuHost > &  InMenuHost,
const TSharedRef< SWidget > &  InContent,
TSharedPtr< SWidget > &  OutWrappedContent,
const FPopupTransitionEffect TransitionEffect,
EShouldThrottle  ShouldThrottle,
const bool  bIsCollapsedByParent = true 
)

Creates a new hosted child Menu and adds it to the menu stack under the specified parent menu. Hosted menus are drawn by an external host widget.

Parameters
InParentMenuThe parent menu for this menu
InMenuHostThe host widget that draws the menu's content
InContentThe menu's content
OutWrappedContentReturns the InContent wrapped with widgets needed by the menu stack system. This is what should be drawn by the host after this call.
TransitionEffectAnimation to use when the popup appears
ShouldThrottleShould we throttle engine ticking to maximize the menu responsiveness
bIsCollapsedByParentIs this menu collapsed when a parent menu receives focus/activation? If false, only focus/activation outside the entire stack will auto collapse it.

◆ PushHostedMenu() [2/2]

TSharedPtr< IMenu > FSlateApplication::PushHostedMenu ( const TSharedRef< SWidget > &  InParentWidget,
const FWidgetPath InOwnerPath,
const TSharedRef< IMenuHost > &  InMenuHost,
const TSharedRef< SWidget > &  InContent,
TSharedPtr< SWidget > &  OutWrappedContent,
const FPopupTransitionEffect TransitionEffect,
EShouldThrottle  ShouldThrottle,
const bool  bIsCollapsedByParent = true 
)

Creates a new hosted Menu and adds it to the menu stack. Hosted menus are drawn by an external host widget.

Parameters
InParentMenuThe parent of the menu. Must be a valid menu in the stack.
InOwnerPathOptional full widget path of the parent if one is available. If an invalid path is given PushMenu will attempt to generate a path to the InParentWidget
InMenuHostThe host widget that draws the menu's content
InContentThe content to be placed inside the new menu
OutWrappedContentReturns the InContent wrapped with widgets needed by the menu stack system. This is what should be drawn by the host after this call.
TransitionEffectAnimation to use when the popup appears
ShouldThrottleShould we throttle engine ticking to maximize the menu responsiveness
bIsCollapsedByParentIs this menu collapsed when a parent menu receives focus/activation? If false, only focus/activation outside the entire stack will auto collapse it.

◆ PushMenu() [1/2]

TSharedPtr< IMenu > FSlateApplication::PushMenu ( const TSharedPtr< IMenu > &  InParentMenu,
const TSharedRef< SWidget > &  InContent,
const UE::Slate::FDeprecateVector2DParameter SummonLocation,
const FPopupTransitionEffect TransitionEffect,
const bool  bFocusImmediately = true,
const UE::Slate::FDeprecateVector2DParameter SummonLocationSize = FVector2f::ZeroVector,
const bool  bIsCollapsedByParent = true,
const int32  FocusUserIndex = INDEX_NONE 
)

Creates a new Menu and adds it to the menu stack under the specified parent menu. Menus are always auto-sized. Use fixed-size content if a fixed size is required.

Parameters
InParentMenuThe parent of the menu. Must be a valid menu in the stack.
InContentThe content to be placed inside the new menu
SummonLocationThe location where this menu should be summoned
TransitionEffectAnimation to use when the popup appears
bFocusImmediatelyShould the popup steal focus when shown?
SummonLocationSizeAn optional rect which describes an area in which the menu may not appear
bIsCollapsedByParentIs this menu collapsed when a parent menu receives focus/activation? If false, only focus/activation outside the entire stack will auto collapse it.
FocusUserIndexThe index of the user that should focus the menu. INDEX_NONE for all users.

◆ PushMenu() [2/2]

TSharedPtr< IMenu > FSlateApplication::PushMenu ( const TSharedRef< SWidget > &  InParentWidget,
const FWidgetPath InOwnerPath,
const TSharedRef< SWidget > &  InContent,
const UE::Slate::FDeprecateVector2DParameter SummonLocation,
const FPopupTransitionEffect TransitionEffect,
const bool  bFocusImmediately = true,
const UE::Slate::FDeprecateVector2DParameter SummonLocationSize = FVector2f::ZeroVector,
TOptional< EPopupMethod Method = TOptional<EPopupMethod>(),
const bool  bIsCollapsedByParent = true,
const int32  FocusUserIndex = INDEX_NONE 
)

Creates a new Menu and adds it to the menu stack. Menus are always auto-sized. Use fixed-size content if a fixed size is required.

Parameters
InParentWidgetThe parent of the menu. If the stack isn't empty, PushMenu will attempt to determine the stack level for the new menu by looking of an open menu in the parent's path.
InOwnerPathOptional full widget path of the parent if one is available. If an invalid path is given PushMenu will attempt to generate a path to the InParentWidget
InContentThe content to be placed inside the new menu
SummonLocationThe location where this menu should be summoned
TransitionEffectAnimation to use when the popup appears
bFocusImmediatelyShould the popup steal focus when shown?
SummonLocationSizeAn optional rect which describes an area in which the menu may not appear
MethodAn optional popup method override. If not set, the widgets in the InOwnerPath will be queried for this.
bIsCollapsedByParentIs this menu collapsed when a parent menu receives focus/activation? If false, only focus/activation outside the entire stack will auto collapse it.
FocusUserIndexThe index of the user that should focus the menu. INDEX_NONE for all users.

◆ QueryCursor()

void FSlateApplication::QueryCursor ( )

Bubble a request for which cursor to display for widgets under the mouse or the widget that captured the mouse.

◆ RegisterGameViewport()

void FSlateApplication::RegisterGameViewport ( TSharedRef< SViewport InViewport)

Registers a game viewport with the Slate application so that specific messages can be routed directly to a viewport

Parameters
InViewportThe viewport to register. Note there is currently only one registered viewport

◆ RegisterInputPreProcessor() [1/4]

bool FSlateApplication::RegisterInputPreProcessor ( TSharedPtr< class IInputProcessor InputProcessor)

Adds input pre-processor if unique.

Parameters
InputProcessorThe input pre-processor to add. Defaults to using the EInputPreProcessorType::Game bucket type and adding at the end of the bucket.
Returns
True if added to list of input pre-processors, false if not

◆ RegisterInputPreProcessor() [2/4]

bool FSlateApplication::RegisterInputPreProcessor ( TSharedPtr< class IInputProcessor InputProcessor,
const EInputPreProcessorType  Type 
)

Adds input pre-processor if unique.

Parameters
InputProcessorThe input pre-processor to add.
TypeWhich bucket to insert the processor in. Defaults to adding at the end of the bucket.
Returns
True if added to list of input pre-processors, false if not

◆ RegisterInputPreProcessor() [3/4]

bool FSlateApplication::RegisterInputPreProcessor ( TSharedPtr< class IInputProcessor InputProcessor,
const FInputPreprocessorRegistrationKey Info 
)

Adds input pre-processor if unique.

Parameters
InputProcessorThe input pre-processor to add.
InfoInformation specifying which priority type and index should be used to register the pre-processor.
Returns
True if added to list of input pre-processors, false if not

◆ RegisterInputPreProcessor() [4/4]

bool FSlateApplication::RegisterInputPreProcessor ( TSharedPtr< class IInputProcessor InputProcessor,
const int32  Index 
)

Adds input pre-processor if unique.

Parameters
InputProcessorThe input pre-processor to add.
IndexWhere to insert the InputProcessor within the type bucket. Defaults to using the EInputPreProcessorType::Game type.
Returns
True if added to list of input pre-processors, false if not

◆ RegisterNewUser() [1/2]

TSharedRef< FSlateUser > FSlateApplication::RegisterNewUser ( FPlatformUserId  PlatformUserId,
bool  bIsVirtual = false 
)
protected

Register a new user with Slate. Normally this is unnecessary as Slate automatically adds a user entry if it gets input from a controller for that index. Might happen if the user allocates the virtual user.

◆ RegisterNewUser() [2/2]

TSharedRef< FSlateUser > FSlateApplication::RegisterNewUser ( int32  UserIndex,
bool  bIsVirtual = false 
)
protected

Register a new user with Slate. Normally this is unnecessary as Slate automatically adds a user entry if it gets input from a controller for that index. Might happen if the user allocates the virtual user.

◆ RegisterOnWindowActionNotification()

FDelegateHandle FSlateApplication::RegisterOnWindowActionNotification ( const FOnWindowAction Notification)

Register for a notification when the window action occurs.

Parameters
NotificationThe notification to invoke.
Returns
Handle to the registered delegate.

◆ RegisterViewport()

void FSlateApplication::RegisterViewport ( TSharedRef< SViewport InViewport)

Registers a viewport with the Slate application so that specific messages can be routed directly to a viewport This is for all viewports, there can be multiple of these as opposed to the singular "Game Viewport"

Parameters
InViewportThe viewport to register. Note there is currently only one registered viewport

◆ RegisterVirtualWindow()

void FSlateApplication::RegisterVirtualWindow ( TSharedRef< SWindow InWindow)

Register another window that may be visible in a non-top level way that still needs to be able to maintain focus paths. Generally speaking - this is for Virtual Windows that are created to render in the 3D world slate content.

◆ ReleaseAllPointerCapture() [1/2]

void FSlateApplication::ReleaseAllPointerCapture ( )

Releases capture for every pointer on every user from whatever it currently is on.

◆ ReleaseAllPointerCapture() [2/2]

void FSlateApplication::ReleaseAllPointerCapture ( int32  UserIndex)

Releases capture for every pointer belonging to the given user index particular user.

◆ ReleaseMouseCapture()

void FSlateApplication::ReleaseMouseCapture ( )

◆ ReleaseMouseCaptureForUser()

void FSlateApplication::ReleaseMouseCaptureForUser ( int32  UserIndex)

◆ RequestDestroyWindow()

void FSlateApplication::RequestDestroyWindow ( TSharedRef< SWindow WindowToDestroy)
overridevirtual

Destroying windows has implications on some OSs (e.g. destroying Win32 HWNDs can cause events to be lost).

Slate strictly controls when windows are destroyed.

Parameters
WindowToDestroyThe window to queue for destruction.
Returns
the list of this window's child windows

Implements FSlateApplicationBase.

◆ ResetToDefaultInputSettings()

void FSlateApplication::ResetToDefaultInputSettings ( )

Restores all input settings to their original values

Clears all user focus Shows the mouse, clears any locks and captures, turns off high precision input

◆ ResetToDefaultPointerInputSettings()

void FSlateApplication::ResetToDefaultPointerInputSettings ( )

Restores all pointer input settings to their original values

Shows the mouse, clears any locks and captures, turns off high precision input

◆ RouteMouseWheelOrGestureEvent()

FReply FSlateApplication::RouteMouseWheelOrGestureEvent ( const FWidgetPath WidgetsUnderPointer,
const FPointerEvent InWheelEvent,
const FPointerEvent InGestureEvent = nullptr 
)

Directly routes a pointer mouse wheel or gesture event to the widgets in the specified widget path.

Parameters
WidgetsUnderPointerThe path of widgets the event is routed to.
InWheelEventThe event data that is is routed to the widget path
InGestureEventThe event data that is is routed to the widget path

◆ RoutePointerDoubleClickEvent()

FReply FSlateApplication::RoutePointerDoubleClickEvent ( const FWidgetPath WidgetsUnderPointer,
const FPointerEvent PointerEvent 
)

Directly routes a pointer double click event to the widgets in the specified widget path

Parameters
WidgetsUnderPointerThe path of widgets the event is routed to.
PointerEventThe event data that is is routed to the widget path

◆ RoutePointerDownEvent()

FReply FSlateApplication::RoutePointerDownEvent ( const FWidgetPath WidgetsUnderPointer,
const FPointerEvent PointerEvent 
)

Directly routes a pointer down event to the widgets in the specified widget path

Parameters
WidgetsUnderPointerThe path of widgets the event is routed to.
PointerEventThe event data that is is routed to the widget path
Returns
The reply returned by the widget that handled the event

◆ RoutePointerMoveEvent()

bool FSlateApplication::RoutePointerMoveEvent ( const FWidgetPath WidgetsUnderPointer,
const FPointerEvent PointerEvent,
bool  bIsSynthetic 
)

Directly routes a pointer move event to the widgets in the specified widget path

Parameters
WidgetsUnderPointerThe path of widgets the event is routed to.
PointerEventThe event data that is is routed to the widget path
bIsSyntheticWhether or not the move event is synthetic. Synthetic pointer moves used simulate an event without the pointer actually moving

◆ RoutePointerUpEvent()

FReply FSlateApplication::RoutePointerUpEvent ( const FWidgetPath WidgetsUnderPointer,
const FPointerEvent PointerEvent 
)

Directly routes a pointer up event to the widgets in the specified widget path

Parameters
WidgetsUnderPointerThe path of widgets the event is routed to.
PointerEventThe event data that is is routed to the widget path
Returns
The reply from the event

◆ SetAllowTooltips()

void FSlateApplication::SetAllowTooltips ( bool  bCanShow)

◆ SetAllUserFocus() [1/2]

void FSlateApplication::SetAllUserFocus ( const FWidgetPath InFocusPath,
const EFocusCause  InCause 
)
overridevirtual

Sets the focus for all users to the specified widget. The widget must be allowed to receive focus.

Parameters
InFocusPathWidgetPath to the Widget to being focused.
InCauseThe reason that focus is changing.

Implements FSlateApplicationBase.

◆ SetAllUserFocus() [2/2]

void FSlateApplication::SetAllUserFocus ( const TSharedPtr< SWidget > &  WidgetToFocus,
EFocusCause  ReasonFocusIsChanging = EFocusCause::SetDirectly 
)

Sets focus for all users to the SWidget passed in.

Parameters
WidgetToFocusthe widget to set focus to
ReasonFocusIsChangingthe contextual reason for the focus change

◆ SetAllUserFocusAllowingDescendantFocus()

void FSlateApplication::SetAllUserFocusAllowingDescendantFocus ( const FWidgetPath InFocusPath,
const EFocusCause  InCause 
)
overridevirtual

Sets the focus for all users to the specified widget unless that user is focused on a descendant. The widget must be allowed to receive focus.

Parameters
InWidgetWidgetPath to the Widget to being focused.
InCauseThe reason that focus is changing.

Implements FSlateApplicationBase.

◆ SetAllUserFocusToGameViewport()

void FSlateApplication::SetAllUserFocusToGameViewport ( EFocusCause  ReasonFocusIsChanging = EFocusCause::SetDirectly)

Sets all users focus to the SWidget representing the currently active game viewport

◆ SetAppIcon()

void FSlateApplication::SetAppIcon ( const FSlateBrush *const  InAppIcon)

Set the global application icon

◆ SetApplicationScale()

void FSlateApplication::SetApplicationScale ( float  InScale)
inline
Parameters
ScaleSets the ratio SlateUnit / ScreenPixel

◆ SetCursorPos()

void FSlateApplication::SetCursorPos ( const FVector2D MouseCoordinate)
overridevirtual

Sets the position of the cursor.

Parameters
MouseCoordinateThe new position.

Reimplemented from FGenericApplicationMessageHandler.

◆ SetCursorRadius()

void FSlateApplication::SetCursorRadius ( float  NewRadius)

Sets the hit detection radius of the cursor

◆ SetDragTriggerDistance()

void FSlateApplication::SetDragTriggerDistance ( float  ScreenPixels)

Set the size of the deadzone for dragging in screen pixels

◆ SetExitRequestedHandler()

void FSlateApplication::SetExitRequestedHandler ( const FSimpleDelegate OnExitRequestedHandler)

Assign a delegate to be called when this application is requesting an exit (e.g. when the last window is closed).

Parameters
OnExitRequestHandlerFunction to execute when the application wants to quit

◆ SetFixedDeltaTime()

void FSlateApplication::SetFixedDeltaTime ( double  InSeconds)
static

Sets time step in seconds if a fixed delta time is wanted.

Parameters
secondsTime step in seconds for fixed delta time.

◆ SetGameAllowsFakingTouchEvents()

void FSlateApplication::SetGameAllowsFakingTouchEvents ( const bool  bAllowFaking)

Sets whether the application is allowed to fake touches or not

◆ SetGameIsFakingTouchEvents()

void FSlateApplication::SetGameIsFakingTouchEvents ( const bool  bIsFaking,
FVector2D CursorLocation = nullptr 
)

Sets whether the application is treating mouse events as imitating touch events. Optional CursorLocation can be supplied to override the platform's belief of where the cursor is

◆ SetHandleDeviceInputWhenApplicationNotActive()

void FSlateApplication::SetHandleDeviceInputWhenApplicationNotActive ( bool  bAllow)
inline

Mouse capture

Parameters
bAllowIf true, mouse pointer capture will be processed even when the application is not active or widget is not a virtual window

◆ SetInputManager()

void FSlateApplication::SetInputManager ( TSharedRef< ISlateInputManager InputManager)

Establishes the input mapping object used to map input sources to SlateUser indices

◆ SetKeyboardFocus() [1/2]

bool FSlateApplication::SetKeyboardFocus ( const FWidgetPath InFocusPath,
const EFocusCause  InCause 
)
overridevirtual

Sets keyboard focus to the specified widget. The widget must be allowed to receive keyboard focus.

Parameters
InFocusPathWidgetPath to the Widget to being focused
InCauseThe reason that keyboard focus is changing
Returns
true if the widget is now focused, false otherwise.

Implements FSlateApplicationBase.

◆ SetKeyboardFocus() [2/2]

bool FSlateApplication::SetKeyboardFocus ( const TSharedPtr< SWidget > &  OptionalWidgetToFocus,
EFocusCause  ReasonFocusIsChanging = EFocusCause::SetDirectly 
)

Sets the Keyboard focus to the specified SWidget

◆ SetModalWindowStackEndedDelegate()

void FSlateApplication::SetModalWindowStackEndedDelegate ( FModalWindowStackEnded  StackEndedDelegate)

Sets the delegate for when a modal window stack ends

◆ SetModalWindowStackStartedDelegate()

void FSlateApplication::SetModalWindowStackStartedDelegate ( FModalWindowStackStarted  StackStartedDelegate)

Sets the delegate for when a modal window stack begins

◆ SetNavigationConfig()

void FSlateApplication::SetNavigationConfig ( TSharedRef< FNavigationConfig InNavigationConfig)

Sets the navigation config. If you need to control navigation config dynamically, you should subclass FNavigationConfig to be dynamically adjustable to your needs.

◆ SetNavigationConfigFactory()

void FSlateApplication::SetNavigationConfigFactory ( TFunction< TSharedRef< FNavigationConfig >()>  InNavigationConfigFactory)
inline

Sets the navigation config factory. If you need to control navigation config dynamically, you should subclass FNavigationConfig to be dynamically adjustable to your needs.

◆ SetPlatformApplication()

void FSlateApplication::SetPlatformApplication ( const TSharedRef< class GenericApplication > &  InPlatformApplication)

◆ SetPlatformCursorVisibility()

void FSlateApplication::SetPlatformCursorVisibility ( bool  bNewVisibility)

Changes the cursor type to Default (Visible) or None (Not Visible)

◆ SetUnhandledKeyDownEventHandler()

void FSlateApplication::SetUnhandledKeyDownEventHandler ( const FOnKeyEvent NewHandler)

Sets the handler for otherwise unhandled key down events. This is used by the editor to provide a global action list, if the key was not consumed by any widget.

◆ SetUnhandledKeyUpEventHandler()

void FSlateApplication::SetUnhandledKeyUpEventHandler ( const FOnKeyEvent NewHandler)

Sets the handler for otherwise unhandled key down events. This is used by the editor to provide a global action list, if the key was not consumed by any widget.

◆ SetupPhysicalSensitivities()

void FSlateApplication::SetupPhysicalSensitivities ( )
protected

Sets up any values that need to be based on the physical dimensions of the device.
Such as dead zones associated with precise tapping...etc

◆ SetUserFocus() [1/2]

bool FSlateApplication::SetUserFocus ( const uint32  InUserIndex,
const FWidgetPath InFocusPath,
const EFocusCause  InCause 
)
overridevirtual

Sets user focus to the specified widget. The widget must be allowed to receive focus.

Parameters
InUserIndexIndex of the user that we want to change the focus of.
InFocusPathWidgetPath to the Widget to being focused.
InCauseThe reason that focus is changing.
Returns
true if the widget is now focused, false otherwise.

Implements FSlateApplicationBase.

◆ SetUserFocus() [2/2]

bool FSlateApplication::SetUserFocus ( uint32  UserIndex,
const TSharedPtr< SWidget > &  WidgetToFocus,
EFocusCause  ReasonFocusIsChanging = EFocusCause::SetDirectly 
)

Sets specified user focus to the SWidget passed in.

Parameters
UserIndexIndex of the user to change focus for
WidgetToFocusthe widget to set focus to
ReasonFocusIsChangingthe contextual reason for the focus change

◆ SetUserFocusAllowingDescendantFocus()

bool FSlateApplication::SetUserFocusAllowingDescendantFocus ( const uint32  InUserIndex,
const FWidgetPath InFocusPath,
const EFocusCause  InCause 
)
overridevirtual

Sets the focus for the specified user to the specified widget unless that user is focused on a descendant. The widget must be allowed to receive focus.

Parameters
InUserIndexIndex of the user that we want to change the focus of.
InFocusPathWidgetPath to the Widget to being focused.
InCauseThe reason that focus is changing.
Returns
true if the widget or a descendant is now focused, false otherwise.

Implements FSlateApplicationBase.

◆ SetUserFocusToGameViewport()

void FSlateApplication::SetUserFocusToGameViewport ( uint32  UserIndex,
EFocusCause  ReasonFocusIsChanging = EFocusCause::SetDirectly 
)

Sets specified user focus to the SWidget representing the currently active game viewport

◆ SetWidgetReflector()

void FSlateApplication::SetWidgetReflector ( const TSharedRef< IWidgetReflector > &  WidgetReflector)

Sets the widget reflector.

Parameters
WidgetReflectorThe widget reflector to set.

◆ SetWidgetReflectorAssetAccessDelegate()

void FSlateApplication::SetWidgetReflectorAssetAccessDelegate ( FAccessAsset  AccessDelegate)
inline
Parameters
AccessDelegateThe delegate to pass along to the widget reflector

◆ SetWidgetReflectorQuerySourceAccessDelegate()

void FSlateApplication::SetWidgetReflectorQuerySourceAccessDelegate ( FQueryAccessSourceCode  QueryAccessDelegate)
inline
Parameters
QueryAccessDelegateThe delegate to pass along to the widget reflector

◆ SetWidgetReflectorSourceAccessDelegate()

void FSlateApplication::SetWidgetReflectorSourceAccessDelegate ( FAccessSourceCode  AccessDelegate)
inline
Parameters
AccessDelegateThe delegate to pass along to the widget reflector

◆ ShouldProcessUserInputMessages()

bool FSlateApplication::ShouldProcessUserInputMessages ( const TSharedPtr< FGenericWindow > &  PlatformWindow) const
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ ShouldSimulateGesture()

void FSlateApplication::ShouldSimulateGesture ( EGestureEvent  Gesture,
bool  bEnable 
)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ ShowSystemHelp()

void FSlateApplication::ShowSystemHelp ( )
inline

◆ ShowUserFocus()

bool FSlateApplication::ShowUserFocus ( const TSharedPtr< const SWidget Widget) const
overrideprotectedvirtual

Gets whether or not a particular widget should show user focus.

Returns
True if we should show user focus

Implements FSlateApplicationBase.

◆ ShowVirtualKeyboard()

void FSlateApplication::ShowVirtualKeyboard ( bool  bShow,
int32  UserIndex,
TSharedPtr< IVirtualKeyboardEntry TextEntryWidget = nullptr 
)

Shows or hides an onscreen keyboard

Parameters
bShowtrue to show the keyboard, false to hide it
TextEntryWidgetThe widget that will receive the input from the virtual keyboard

◆ Shutdown()

void FSlateApplication::Shutdown ( bool  bShutdownPlatform = true)
static

◆ SignalSystemDPIChanged()

void FSlateApplication::SignalSystemDPIChanged ( const TSharedRef< FGenericWindow > &  Window)
overridevirtual

Reimplemented from FGenericApplicationMessageHandler.

◆ SpawnToolTip()

void FSlateApplication::SpawnToolTip ( const TSharedRef< IToolTip > &  InToolTip,
const UE::Slate::FDeprecateVector2DParameter InSpawnLocation 
)

Spawns a tool tip window. If an existing tool tip window is open, it will be dismissed first.

Parameters
InToolTipWidget to display.
InSpawnLocationScreen space location to show the tool tip (window top left)

◆ SupportsSourceAccess()

bool FSlateApplication::SupportsSourceAccess ( ) const
Returns
true if the current platform allows source code access

◆ SupportsSystemHelp()

bool FSlateApplication::SupportsSystemHelp ( ) const
inline
Returns
Whether or not the current platform supports system help

◆ TakeHDRScreenshot() [1/2]

bool FSlateApplication::TakeHDRScreenshot ( const TSharedRef< SWidget > &  Widget,
const FIntRect InnerWidgetArea,
TArray< FLinearColor > &  OutColorData,
FIntVector OutSize 
)

Takes a screenshot of the widget writing the results into the color buffer provided, this version allows you to provide an inner area to screenshot. Note that the format is BGRA. The size of the resulting image is also output.

Returns
true if taking the screenshot was successful.

◆ TakeHDRScreenshot() [2/2]

bool FSlateApplication::TakeHDRScreenshot ( const TSharedRef< SWidget > &  Widget,
TArray< FLinearColor > &  OutColorData,
FIntVector OutSize 
)

Takes a screenshot of the widget writing the results into the color buffer provided. This is to be used with HDR buffers the size of the resulting image is also output.

Returns
true if taking the screenshot was successful.

◆ TakeScreenshot() [1/2]

bool FSlateApplication::TakeScreenshot ( const TSharedRef< SWidget > &  Widget,
const FIntRect InnerWidgetArea,
TArray< FColor > &  OutColorData,
FIntVector OutSize 
)

Takes a screenshot of the widget writing the results into the color buffer provided, this version allows you to provide an inner area to screenshot. Note that the format is BGRA. The size of the resulting image is also output.

Returns
true if taking the screenshot was successful.

◆ TakeScreenshot() [2/2]

bool FSlateApplication::TakeScreenshot ( const TSharedRef< SWidget > &  Widget,
TArray< FColor > &  OutColorData,
FIntVector OutSize 
)

Takes a screenshot of the widget writing the results into the color buffer provided. Note that the format is BGRA. the size of the resulting image is also output.

Returns
true if taking the screenshot was successful.

◆ ThrottleApplicationBasedOnMouseMovement()

void FSlateApplication::ThrottleApplicationBasedOnMouseMovement ( )
protected

Engages or disengages application throttling based on user behavior

◆ Tick()

void FSlateApplication::Tick ( ESlateTickType  TickType = ESlateTickType::All)

Ticks this application

◆ TickAndDrawWidgets()

void FSlateApplication::TickAndDrawWidgets ( float  DeltaTime)
protected

Ticks and paints the actual Slate portion of the application.

◆ TickPlatform()

void FSlateApplication::TickPlatform ( float  DeltaTime)
protected

Pumps and ticks the platform.

◆ TickTime()

void FSlateApplication::TickTime ( )
protected

Advances time for the application.

◆ ToggleDisableLastDragOnDragEnter()

void FSlateApplication::ToggleDisableLastDragOnDragEnter ( bool  bInDisableLastDragOnDragEnter)

Toggle disabling last drag on a new drag enter event to prevent double drag conflicts.

◆ TransformPointerEvent()

FPointerEvent FSlateApplication::TransformPointerEvent ( const FPointerEvent PointerEvent,
const TSharedPtr< SWindow > &  Window 
) const
protected

Transforms a pointer event to account for non-standard viewport resolutions

◆ UnregisterGameViewport()

void FSlateApplication::UnregisterGameViewport ( )

Unregisters the current game viewport from Slate. This method sends a final deactivation message to the viewport to allow it to do a final cleanup before being closed.

◆ UnregisterInputPreProcessor()

void FSlateApplication::UnregisterInputPreProcessor ( TSharedPtr< class IInputProcessor InputProcessor)

Removes an input pre-processor.

Parameters
InputProcessorThe input pre-processor to Remove.

◆ UnregisterOnWindowActionNotification()

void FSlateApplication::UnregisterOnWindowActionNotification ( FDelegateHandle  Handle)

Unregister the notification because it is no longer desired.

Parameters
HandleHandle to the delegate to unregister.

◆ UnregisterUser()

void FSlateApplication::UnregisterUser ( int32  UserIndex)

◆ UnregisterVirtualWindow()

void FSlateApplication::UnregisterVirtualWindow ( TSharedRef< SWindow InWindow)

Unregister a virtual window.

◆ UpdateToolTip()

void FSlateApplication::UpdateToolTip ( bool  bAllowSpawningOfNewToolTips)

◆ UsePlatformCursorForCursorUser()

void FSlateApplication::UsePlatformCursorForCursorUser ( bool  bUsePlatformCursor)

Updates the cursor user's cursor to either the platform cursor or fake cursor

Friends And Related Symbol Documentation

◆ FEventRouter

friend class FEventRouter
friend

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