LeviLamina
Loading...
Searching...
No Matches
FocusComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/CardinalDirection.h"
7#include "mc/client/gui/controls/ComponentReceiveActionType.h"
8#include "mc/client/gui/controls/UIComponent.h"
9
10// auto generated forward declare list
11// clang-format off
12class FocusManager;
15class UIControl;
16class VisualTree;
17struct ScreenEvent;
18// clang-format on
19
20class FocusComponent : public ::UIComponent {
21public:
22 // member variables
23 // NOLINTBEGIN
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;
29 ::ll::TypedStorage<
30 8,
31 64,
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;
39 // NOLINTEND
40
41public:
42 // virtual functions
43 // NOLINTBEGIN
44 virtual ~FocusComponent() /*override*/;
45
46 virtual ::std::unique_ptr<::UIComponent> clone(::UIControl& cloneOwner) const /*override*/;
47
48 virtual void reset() /*override*/;
49
50 virtual ::ComponentReceiveActionType receive(
51 ::VisualTree& visualTree,
52 ::ScreenInputContext& context,
53 ::UIAnimationController& animationController,
54 ::ScreenEvent const& screenEvent
55 ) /*override*/;
56
57 virtual ::ComponentReceiveActionType receive(::ScreenEvent const& screenEvent) /*override*/;
58 // NOLINTEND
59
60public:
61 // member functions
62 // NOLINTBEGIN
63 MCAPI void _captureFocusPoint();
64
65 MCAPI void _resetDirectionalOverrides();
66
67 MCAPI bool checkFocusChangeOverride(::ui::CardinalDirection dir, ::std::string const& checkName) const;
68
69 MCAPI void registerNewLookupMapEntry(
70 ::std::string const& focusID,
71 ::std::unordered_map<::ui::CardinalDirection, ::std::string> const& mapping
72 );
73
74 MCAPI void setFocusChangeOverride(::ui::CardinalDirection dir, ::std::string const& str);
75
76 MCAPI void setFocusIdentifier(::std::string const& str);
77 // NOLINTEND
78
79public:
80 // destructor thunk
81 // NOLINTBEGIN
82 MCAPI void $dtor();
83 // NOLINTEND
84
85public:
86 // virtual function thunks
87 // NOLINTBEGIN
88 MCAPI ::std::unique_ptr<::UIComponent> $clone(::UIControl& cloneOwner) const;
89
90 MCAPI void $reset();
91
92 MCAPI ::ComponentReceiveActionType $receive(
93 ::VisualTree& visualTree,
94 ::ScreenInputContext& context,
95 ::UIAnimationController& animationController,
96 ::ScreenEvent const& screenEvent
97 );
98
99 MCAPI ::ComponentReceiveActionType $receive(::ScreenEvent const& screenEvent);
100 // NOLINTEND
101
102public:
103 // vftables
104 // NOLINTBEGIN
105 MCNAPI static void** $vftable();
106 // NOLINTEND
107};
Definition FocusComponent.h:5
static MCAPI void ** $vftable()
Definition FocusManager.h:5
Definition ScreenInputContext.h:5
Definition UIAnimationController.h:5
Definition UIComponent.h:5
Definition UIControl.h:5
Definition VisualTree.h:5
Definition ScreenEvent.h:5