LeviLamina
Loading...
Searching...
No Matches
FocusContainerComponent.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/FocusNavigationMode.h"
8#include "mc/client/gui/controls/UIComponent.h"
9#include "mc/client/gui/screens/RecentFocusVector.h"
10
11// auto generated forward declare list
12// clang-format off
13class UIControl;
15// clang-format on
16
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<8, 32, ::RecentFocusVector> mRecentFocusList;
22 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::UIControl>> mLastFocusedControl;
23 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ui::CardinalDirection, ::FocusNavigationMode>>
24 mDirectionalFocusOverrides;
25 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ui::CardinalDirection, ::std::vector<::FocusContainerCustomData>>>
26 mFocusContainerCustomOverrides;
27 ::ll::TypedStorage<8, 24, ::std::vector<::std::weak_ptr<::UIControl const>>> mSubFocusContainers;
28 ::ll::TypedStorage<1, 1, bool> mUseLastFocus;
29 ::ll::TypedStorage<1, 1, bool> mWrappingAllowed;
30 // NOLINTEND
31
32public:
33 // virtual functions
34 // NOLINTBEGIN
35 virtual ~FocusContainerComponent() /*override*/;
36
37 virtual ::std::unique_ptr<::UIComponent> clone(::UIControl& cloneOwner) const /*override*/;
38
39 virtual void reset() /*override*/;
40 // NOLINTEND
41
42public:
43 // member functions
44 // NOLINTBEGIN
45 MCAPI ::FocusContainerComponent* _getParentFocusContainer();
46
47 MCAPI void addRecentFocusControl(::std::weak_ptr<::UIControl> weakControl);
48
49 MCAPI ::std::string getFocusNavigationModeName(::ui::CardinalDirection dir) const;
50
51 MCAPI ::std::shared_ptr<::UIControl> getLastFocusedControl();
52
53 MCAPI ::std::string getLastFocusedControlName() const;
54
55 MCAPI void initialize();
56
57 MCAPI bool isAncestorFocusContainer(::std::shared_ptr<::UIControl const> focusContainerControl) const;
58
59 MCAPI void loseFocus(::std::weak_ptr<::UIControl> lastControl);
60
61 MCAPI void removeInvalidSubFocusContainer();
62
63 MCAPI void setFocusNavigationModeOverride(::ui::CardinalDirection dir, ::std::string const& str);
64
65 MCAPI void setLastFocusedControl(::std::weak_ptr<::UIControl> control);
66 // NOLINTEND
67
68public:
69 // destructor thunk
70 // NOLINTBEGIN
71 MCAPI void $dtor();
72 // NOLINTEND
73
74public:
75 // virtual function thunks
76 // NOLINTBEGIN
77 MCAPI ::std::unique_ptr<::UIComponent> $clone(::UIControl& cloneOwner) const;
78
79 MCAPI void $reset();
80 // NOLINTEND
81
82public:
83 // vftables
84 // NOLINTBEGIN
85 MCNAPI static void** $vftable();
86 // NOLINTEND
87};
Definition FocusContainerComponent.h:5
static MCAPI void ** $vftable()
Definition UIComponent.h:5
Definition UIControl.h:5
Definition FocusContainerCustomData.h:5