UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
NavigationReply.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
7
8#include "NavigationReply.generated.h"
9
10class SWidget;
11enum class EUINavigation : uint8;
12
13UENUM(BlueprintType)
15{
17 Escape,
24 Wrap,
26 Stop,
28 Custom,
33};
34
36
43{
44public:
45
47 const TSharedPtr<SWidget> GetHandler() const { return EventHandler; }
48
50 EUINavigationRule GetBoundaryRule() const { return BoundaryRule; }
51
53 const TSharedPtr<SWidget>& GetFocusRecipient() const { return FocusRecipient; }
54
56 const FNavigationDelegate& GetFocusDelegate() const { return FocusDelegate; }
57
58public:
59
70
81
92
97 {
99 NewReply.BoundaryRule = EUINavigationRule::Wrap;
100 return NewReply;
101 }
102
107 {
109 NewReply.BoundaryRule = EUINavigationRule::Stop;
110 return NewReply;
111 }
112
117 {
119 NewReply.BoundaryRule = EUINavigationRule::Escape;
120 return NewReply;
121 }
122
123private:
124
127 {
128 this->EventHandler = InHandler;
129 return *this;
130 }
131
136 : EventHandler(nullptr)
137 , FocusRecipient(nullptr)
138 , FocusDelegate()
139 , BoundaryRule(EUINavigationRule::Escape)
140 { }
141
146 : EventHandler(nullptr)
147 , FocusRecipient(InFocusRecipient)
148 , FocusDelegate(InFocusDelegate)
149 , BoundaryRule(InBoundaryRule)
150 { }
151
152private:
153
154 TSharedPtr<SWidget> EventHandler;
155 TSharedPtr<SWidget> FocusRecipient;
156 FNavigationDelegate FocusDelegate;
157 EUINavigationRule BoundaryRule;
158
159 friend class FSlateApplication;
161 friend class SWidget;
162};
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define DECLARE_DELEGATE_RetVal_OneParam(ReturnValueType, DelegateName, Param1Type)
Definition DelegateCombinations.h:54
EUINavigationRule
Definition NavigationReply.h:15
#define UENUM(...)
Definition ObjectMacros.h:749
EUINavigation
Definition SlateEnums.h:99
uint8_t uint8
Definition binka_ue_file_header.h:8
Definition NavigationReply.h:43
static FNavigationReply CustomBoundary(const FNavigationDelegate &InFocusDelegate)
Definition NavigationReply.h:85
const TSharedPtr< SWidget > GetHandler() const
Definition NavigationReply.h:47
friend class FSlateNavigationEventSimulator
Definition NavigationReply.h:160
static FNavigationReply Escape()
Definition NavigationReply.h:116
const FNavigationDelegate & GetFocusDelegate() const
Definition NavigationReply.h:56
static FNavigationReply Explicit(TSharedPtr< SWidget > InFocusRecipient)
Definition NavigationReply.h:63
static FNavigationReply Custom(const FNavigationDelegate &InFocusDelegate)
Definition NavigationReply.h:74
EUINavigationRule GetBoundaryRule() const
Definition NavigationReply.h:50
const TSharedPtr< SWidget > & GetFocusRecipient() const
Definition NavigationReply.h:53
static FNavigationReply Stop()
Definition NavigationReply.h:106
static FNavigationReply Wrap()
Definition NavigationReply.h:96
Definition SlateApplication.h:252
Definition SWidget.h:165
Definition SharedPointer.h:692
Definition SharedPointer.h:153