LeviLamina
Loading...
Searching...
No Matches
SelectionWheelComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/controls/ComponentReceiveActionType.h"
7#include "mc/client/gui/controls/UIComponent.h"
8#include "mc/deps/input/InputMode.h"
9
10// auto generated forward declare list
11// clang-format off
14class UIControl;
15class VisualTree;
16struct ScreenEvent;
17// clang-format on
18
20public:
21 // SelectionWheelComponent inner types declare
22 // clang-format off
24 // clang-format on
25
26 // SelectionWheelComponent inner types define
27 enum class SelectionWheelIterateDir : uchar {
28 Left = 0,
29 Right = 1,
30 };
31
33 public:
34 // member variables
35 // NOLINTBEGIN
36 ::ll::TypedStorage<8, 8, uint64> mHoverSlice;
37 ::ll::TypedStorage<4, 4, uint> mButtonEventName;
38 ::ll::TypedStorage<1, 1, bool> mIsInteracted;
39 ::ll::TypedStorage<1, 1, bool> mIsSlotButtonPressed;
40 // NOLINTEND
41 };
42
43 using HoverSliceType = uint64;
44
45public:
46 // member variables
47 // NOLINTBEGIN
48 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::UIControl>> mWeakScreenControl;
49 ::ll::TypedStorage<8, 24, ::std::vector<::std::weak_ptr<::UIControl>>> mStateControls;
50 ::ll::TypedStorage<1, 1, bool> mConsumeEvents;
51 ::ll::TypedStorage<8, 8, uint64> mSliceCount;
52 ::ll::TypedStorage<8, 8, uint64> mHoverSlice;
53 ::ll::TypedStorage<8, 8, uint64> mLastValidHoverSlice;
54 ::ll::TypedStorage<4, 4, float> mInnerRadius;
55 ::ll::TypedStorage<4, 4, float> mOuterRadius;
56 ::ll::TypedStorage<4, 4, uint> mAnalogButtonNameId;
57 ::ll::TypedStorage<4, 4, uint> mSelectButtonNameId;
58 ::ll::TypedStorage<4, 4, uint> mHoverButtonNameId;
59 ::ll::TypedStorage<4, 4, uint> mIterateLeftNameId;
60 ::ll::TypedStorage<4, 4, uint> mIterateRightNameId;
61 ::ll::TypedStorage<8, 24, ::std::vector<uint>> mSelectSlotNameIds;
62 ::ll::TypedStorage<4, 4, ::InputMode> mInputMode;
63 // NOLINTEND
64
65public:
66 // prevent constructor by default
67 SelectionWheelComponent();
68
69public:
70 // virtual functions
71 // NOLINTBEGIN
72 virtual ~SelectionWheelComponent() /*override*/ = default;
73
74 virtual ::std::unique_ptr<::UIComponent> clone(::UIControl& cloneOwner) const /*override*/;
75
76 virtual void reset() /*override*/;
77
78 virtual void reload(::UIComponent const& rhs) /*override*/;
79
80 virtual ::ComponentReceiveActionType receive(
81 ::VisualTree& visualTree,
82 ::ScreenInputContext& context,
83 ::UIAnimationController& animationController,
84 ::ScreenEvent const& screenEvent
85 ) /*override*/;
86
87 virtual ::ComponentReceiveActionType receive(::ScreenEvent const& screenEvent) /*override*/;
88
89 virtual void onVisibilityChanged(bool visible) /*override*/;
90
91 virtual void onEnabledChanged(bool enabled) /*override*/;
92 // NOLINTEND
93
94public:
95 // member functions
96 // NOLINTBEGIN
97 MCAPI explicit SelectionWheelComponent(::UIControl& owner);
98
99 MCAPI void _updateControlVisibility();
100 // NOLINTEND
101
102public:
103 // constructor thunks
104 // NOLINTBEGIN
105 MCAPI void* $ctor(::UIControl& owner);
106 // NOLINTEND
107
108public:
109 // virtual function thunks
110 // NOLINTBEGIN
111 MCAPI ::std::unique_ptr<::UIComponent> $clone(::UIControl& cloneOwner) const;
112
113 MCAPI void $reset();
114
115 MCAPI void $reload(::UIComponent const& rhs);
116
117 MCAPI ::ComponentReceiveActionType $receive(
118 ::VisualTree& visualTree,
119 ::ScreenInputContext& context,
120 ::UIAnimationController& animationController,
121 ::ScreenEvent const& screenEvent
122 );
123
124 MCAPI ::ComponentReceiveActionType $receive(::ScreenEvent const& screenEvent);
125
126 MCAPI void $onVisibilityChanged(bool visible);
127
128 MCAPI void $onEnabledChanged(bool enabled);
129 // NOLINTEND
130};
Definition ScreenInputContext.h:5
Definition SelectionWheelComponent.h:5
Definition UIAnimationController.h:5
Definition UIComponent.h:5
Definition UIControl.h:5
Definition VisualTree.h:5
Definition ScreenEvent.h:5
Definition SelectionWheelComponent.h:15