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

#include <NavigationConfig.h>

+ Inheritance diagram for FNavigationConfig:

Public Member Functions

SLATE_API FNavigationConfig ()
 
virtual SLATE_API ~FNavigationConfig ()
 
virtual SLATE_API EUINavigation GetNavigationDirectionFromKey (const FKeyEvent &InKeyEvent) const
 
virtual SLATE_API EUINavigation GetNavigationDirectionFromAnalog (const FAnalogInputEvent &InAnalogEvent)
 
virtual SLATE_API void OnRegister ()
 
virtual SLATE_API void OnUnregister ()
 
virtual SLATE_API void OnUserRemoved (int32 UserIndex)
 
virtual void OnNavigationChangedFocus (TSharedPtr< SWidget > OldWidget, TSharedPtr< SWidget > NewWidget, FFocusEvent FocusEvent)
 
virtual SLATE_API EUINavigationAction GetNavigationActionFromKey (const FKeyEvent &InKeyEvent) const
 
virtual SLATE_API EUINavigationAction GetNavigationActionForKey (const FKey &InKey) const
 
virtual SLATE_API FString ToString () const
 
bool IsAnalogEventBeyondNavigationThreshold (const FAnalogInputEvent &InAnalogEvent) const
 
- Public Member Functions inherited from TSharedFromThis< FNavigationConfig >
TSharedRef< FNavigationConfig, Mode > AsShared ()
 
TSharedRef< FNavigationConfig const, Mode > AsShared () const
 
TSharedRef< SubobjectType, Mode > AsSharedSubobject (SubobjectType *SubobjectPtr) const
 
TWeakPtr< FNavigationConfig, Mode > AsWeak ()
 
TWeakPtr< FNavigationConfig const, Mode > AsWeak () const
 
TWeakPtr< SubobjectType, Mode > AsWeakSubobject (SubobjectType *SubobjectPtr) const
 
void UpdateWeakReferenceInternal (TSharedPtr< SharedPtrType, SharedPtrMode > const *InSharedPtr, OtherType *InObject) const
 
void UpdateWeakReferenceInternal (TSharedRef< SharedRefType, SharedPtrMode > const *InSharedRef, OtherType *InObject) const
 
UE_FORCEINLINE_HINT bool DoesSharedInstanceExist () const
 

Public Attributes

bool bTabNavigation
 
bool bKeyNavigation
 
bool bAnalogNavigation
 
bool bIgnoreModifiersForNavigationActions
 
float AnalogNavigationHorizontalThreshold
 
float AnalogNavigationVerticalThreshold
 
FKey AnalogHorizontalKey
 
FKey AnalogVerticalKey
 
TMap< FKey, EUINavigationKeyEventRules
 
TMap< FKey, EUINavigationActionKeyActionRules
 

Protected Member Functions

virtual SLATE_API float GetRepeatRateForPressure (float InPressure, int32 InRepeats) const
 
virtual SLATE_API EUINavigation GetNavigationDirectionFromAnalogInternal (const FAnalogInputEvent &InAnalogEvent)
 
virtual bool IsAnalogHorizontalKey (const FKey &InKey) const
 
virtual bool IsAnalogVerticalKey (const FKey &InKey) const
 
- Protected Member Functions inherited from TSharedFromThis< FNavigationConfig >
 TSharedFromThis ()
 
 TSharedFromThis (TSharedFromThis const &)
 
UE_FORCEINLINE_HINT TSharedFromThisoperator= (TSharedFromThis const &)
 
 ~TSharedFromThis ()
 

Protected Attributes

TMap< int, FUserNavigationStateUserNavigationState
 

Additional Inherited Members

- Static Protected Member Functions inherited from TSharedFromThis< FNavigationConfig >
static UE_FORCEINLINE_HINT TSharedRef< OtherType, Mode > SharedThis (OtherType *ThisPtr)
 
static UE_FORCEINLINE_HINT TSharedRef< OtherType const, Mode > SharedThis (const OtherType *ThisPtr)
 

Detailed Description

This class is used to control which FKeys and analog axis should move focus.

Constructor & Destructor Documentation

◆ FNavigationConfig()

FNavigationConfig::FNavigationConfig ( )

ctor

◆ ~FNavigationConfig()

FNavigationConfig::~FNavigationConfig ( )
virtual

dtor

Member Function Documentation

◆ GetNavigationActionForKey()

EUINavigationAction FNavigationConfig::GetNavigationActionForKey ( const FKey InKey) const
virtual

◆ GetNavigationActionFromKey()

EUINavigationAction FNavigationConfig::GetNavigationActionFromKey ( const FKeyEvent InKeyEvent) const
virtual

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

◆ GetNavigationDirectionFromAnalog()

EUINavigation FNavigationConfig::GetNavigationDirectionFromAnalog ( const FAnalogInputEvent InAnalogEvent)
virtual

Gets the navigation direction from a given analog event.

◆ GetNavigationDirectionFromAnalogInternal()

EUINavigation FNavigationConfig::GetNavigationDirectionFromAnalogInternal ( const FAnalogInputEvent InAnalogEvent)
protectedvirtual

Gets the navigation direction from the analog internally.

◆ GetNavigationDirectionFromKey()

EUINavigation FNavigationConfig::GetNavigationDirectionFromKey ( const FKeyEvent InKeyEvent) const
virtual

Gets the navigation direction from a given key event.

◆ GetRepeatRateForPressure()

float FNavigationConfig::GetRepeatRateForPressure ( float  InPressure,
int32  InRepeats 
) const
protectedvirtual

Gets the repeat rate of the navigation based on the current pressure being applied. The idea being that if the user moves the stick a little, we would navigate slowly, if they move it a lot, we would repeat the navigation often.

◆ IsAnalogEventBeyondNavigationThreshold()

bool FNavigationConfig::IsAnalogEventBeyondNavigationThreshold ( const FAnalogInputEvent InAnalogEvent) const

Returns whether the analog event is beyond the navigation thresholds set in this config.

◆ IsAnalogHorizontalKey()

virtual bool FNavigationConfig::IsAnalogHorizontalKey ( const FKey InKey) const
inlineprotectedvirtual

Reimplemented in FTwinStickNavigationConfig.

◆ IsAnalogVerticalKey()

virtual bool FNavigationConfig::IsAnalogVerticalKey ( const FKey InKey) const
inlineprotectedvirtual

Reimplemented in FTwinStickNavigationConfig.

◆ OnNavigationChangedFocus()

virtual void FNavigationConfig::OnNavigationChangedFocus ( TSharedPtr< SWidget OldWidget,
TSharedPtr< SWidget NewWidget,
FFocusEvent  FocusEvent 
)
inlinevirtual

Notified when navigation has caused a widget change to occur

◆ OnRegister()

void FNavigationConfig::OnRegister ( )
virtual

Called when the navigation config is registered with Slate Application

◆ OnUnregister()

void FNavigationConfig::OnUnregister ( )
virtual

Called when the navigation config is registered with Slate Application

◆ OnUserRemoved()

void FNavigationConfig::OnUserRemoved ( int32  UserIndex)
virtual

Notified when users are removed from the system, good chance to clean up any user specific state.

◆ ToString()

FString FNavigationConfig::ToString ( ) const
virtual

Simplification of config as string

Member Data Documentation

◆ AnalogHorizontalKey

FKey FNavigationConfig::AnalogHorizontalKey

Which Axis Key controls horizontal navigation

◆ AnalogNavigationHorizontalThreshold

float FNavigationConfig::AnalogNavigationHorizontalThreshold

◆ AnalogNavigationVerticalThreshold

float FNavigationConfig::AnalogNavigationVerticalThreshold

◆ AnalogVerticalKey

FKey FNavigationConfig::AnalogVerticalKey

Which Axis Key controls vertical navigation

◆ bAnalogNavigation

bool FNavigationConfig::bAnalogNavigation

Should we respect the analog stick for navigation.

◆ bIgnoreModifiersForNavigationActions

bool FNavigationConfig::bIgnoreModifiersForNavigationActions

Should we ignore modifier keys when checking for navigation actions. If false, only unmodified keys will be processed.

◆ bKeyNavigation

bool FNavigationConfig::bKeyNavigation

Should we respect keys for navigation.

◆ bTabNavigation

bool FNavigationConfig::bTabNavigation

Should the Tab key perform next and previous style navigation.

◆ KeyActionRules

TMap<FKey, EUINavigationAction> FNavigationConfig::KeyActionRules

Digital key action rules.

◆ KeyEventRules

TMap<FKey, EUINavigation> FNavigationConfig::KeyEventRules

Digital key navigation rules.

◆ UserNavigationState

TMap<int, FUserNavigationState> FNavigationConfig::UserNavigationState
protected

Navigation state that we store per user.


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