3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/CardinalDirection.h"
7#include "mc/client/gui/controls/ComponentReceiveActionType.h"
8#include "mc/client/gui/controls/UIComponent.h"
24 ::ll::TypedStorage<8, 8, ::FocusManager*> mFocusManager;
25 ::ll::TypedStorage<4, 4, int> mDefaultFocusPrecedence;
26 ::ll::TypedStorage<4, 8, ::glm::vec2> mCapturedFocusPoint;
27 ::ll::TypedStorage<8, 32, ::std::string> mFocusIdentifier;
28 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ui::CardinalDirection, ::std::string>> mDirectionalFocusOverrides;
32 ::std::unordered_map<::std::string, ::std::unordered_map<::ui::CardinalDirection, ::std::string>>>
33 mNamedMappingLookupData;
34 bool mFocusEnabled : 1;
35 bool mFocusWrapEnabled : 1;
36 bool mFocusPointCaptured : 1;
37 bool mFocusMagnetEnabled : 1;
38 bool mResetOnFocusLost : 1;
48 virtual ~FocusComponent() =
default;
50 virtual ::std::unique_ptr<::UIComponent> clone(::UIControl& cloneOwner)
const ;
52 virtual void reset() ;
54 virtual ::ComponentReceiveActionType receive(
55 ::VisualTree& visualTree,
56 ::ScreenInputContext& context,
57 ::UIAnimationController& animationController,
58 ::ScreenEvent
const& screenEvent
61 virtual ::ComponentReceiveActionType receive(::ScreenEvent
const& screenEvent) ;
67 MCAPI
explicit FocusComponent(::UIControl& owner);
69 MCAPI
bool checkFocusChangeOverride(::ui::CardinalDirection dir, ::std::string
const& checkName)
const;
71 MCAPI
void registerNewLookupMapEntry(
72 ::std::string
const& focusID,
73 ::std::unordered_map<::ui::CardinalDirection, ::std::string>
const& mapping
76 MCAPI
void setFocusChangeOverride(::ui::CardinalDirection dir, ::std::string
const& str);
78 MCAPI
void setFocusIdentifier(::std::string
const& str);
84 MCAPI
void* $ctor(::UIControl& owner);
90 MCAPI ::std::unique_ptr<::UIComponent> $clone(::UIControl& cloneOwner)
const;
94 MCAPI ::ComponentReceiveActionType $receive(
95 ::VisualTree& visualTree,
96 ::ScreenInputContext& context,
97 ::UIAnimationController& animationController,
98 ::ScreenEvent
const& screenEvent
101 MCAPI ::ComponentReceiveActionType $receive(::ScreenEvent
const& screenEvent);
Definition FocusComponent.h:5
Definition FocusManager.h:5
Definition ScreenInputContext.h:5
Definition UIAnimationController.h:5
Definition UIComponent.h:5
Definition VisualTree.h:5
Definition ScreenEvent.h:5