3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/controls/ComponentReceiveActionType.h"
7#include "mc/client/gui/controls/UIComponent.h"
8#include "mc/deps/input/InputMode.h"
27 enum class SelectionWheelIterateDir : uchar {
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;
43 using HoverSliceType = uint64;
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;
67 SelectionWheelComponent();
72 virtual ~SelectionWheelComponent() =
default;
74 virtual ::std::unique_ptr<::UIComponent> clone(::UIControl& cloneOwner)
const ;
76 virtual void reset() ;
78 virtual void reload(::UIComponent
const& rhs) ;
80 virtual ::ComponentReceiveActionType receive(
81 ::VisualTree& visualTree,
82 ::ScreenInputContext& context,
83 ::UIAnimationController& animationController,
84 ::ScreenEvent
const& screenEvent
87 virtual ::ComponentReceiveActionType receive(::ScreenEvent
const& screenEvent) ;
89 virtual void onVisibilityChanged(
bool visible) ;
91 virtual void onEnabledChanged(
bool enabled) ;
115 MCNAPI
void $reload(::UIComponent
const& rhs);
Definition ScreenInputContext.h:5
Definition SelectionWheelComponent.h:5
MCAPI void _updateControlVisibility()
MCAPI SelectionWheelComponent(::UIControl &owner)
MCAPI void $onVisibilityChanged(bool visible)
MCAPI void $reload(::UIComponent const &rhs)
MCAPI::ComponentReceiveActionType $receive(::VisualTree &visualTree, ::ScreenInputContext &context, ::UIAnimationController &animationController, ::ScreenEvent const &screenEvent)
MCAPI::ComponentReceiveActionType $receive(::ScreenEvent const &screenEvent)
MCAPI void $onEnabledChanged(bool enabled)
MCAPI ::std::unique_ptr<::UIComponent > $clone(::UIControl &cloneOwner) const
MCAPI void * $ctor(::UIControl &owner)
Definition UIAnimationController.h:5
Definition UIComponent.h:5
Definition VisualTree.h:5
Definition ScreenEvent.h:5