Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
TouchGlyphButtonControl.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Color.h"
7#include "mc/deps/input/TouchControl.h"
8#include "mc/deps/input/enums/ButtonState.h"
9
10// auto generated forward declare list
11// clang-format off
12class InputEventQueue;
14class RectangleArea;
16struct ButtonColors;
17// clang-format on
18
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mCondition;
24 ::ll::TypedStorage<8, 64, ::std::function<float()>> mOpacity;
25 ::ll::TypedStorage<4, 4, uint> mButtonId;
26 ::ll::TypedStorage<1, 1, ::ButtonState> mButtonState;
27 ::ll::TypedStorage<4, 16, ::mce::Color> mPressedColor;
28 ::ll::TypedStorage<4, 16, ::mce::Color> mReleasedColor;
29 ::ll::TypedStorage<4, 4, int> mUx;
30 ::ll::TypedStorage<4, 4, int> mUv;
31 ::ll::TypedStorage<4, 4, int> mUvWidth;
32 ::ll::TypedStorage<4, 4, int> mUvHeight;
33 ::ll::TypedStorage<4, 4, float> mInnerPaddingX;
34 ::ll::TypedStorage<4, 4, float> mInnerPaddingY;
35 ::ll::TypedStorage<4, 4, int> mActivePointerId;
36 ::ll::TypedStorage<1, 1, bool> mPassThrough;
37 ::ll::TypedStorage<1, 1, bool> mPromiscuous;
38 ::ll::TypedStorage<4, 4, int> mTouchStateRequirement;
39 ::ll::TypedStorage<8, 8, int64> mTimeSinceFirstPress;
40 ::ll::TypedStorage<1, 1, bool> mWaitingForSecondPress;
41 ::ll::TypedStorage<1, 1, bool> mExtendButtonPressOutsideAreaUntilReleased;
42 ::ll::TypedStorage<8, 32, ::std::string> mIconPath;
43 ::ll::TypedStorage<8, 32, ::std::string> mPressedIconPath;
44 ::ll::TypedStorage<4, 4, float> mGlyphScale;
45 // NOLINTEND
46
47public:
48 // prevent constructor by default
49 TouchGlyphButtonControl();
50
51public:
52 // virtual functions
53 // NOLINTBEGIN
54 virtual ~TouchGlyphButtonControl() /*override*/ = default;
55
56 virtual uint getHoldButtonId() const /*override*/;
57
58 virtual int getActivePointerId() const /*override*/;
59
60 virtual bool releaseOnClear() const /*override*/;
61
62 virtual void render(::InputRenderContext& context) const /*override*/;
63
64 virtual void
65 tick(::InputEventQueue& eventQueue, ::TouchPointResults& touchPointResults, int yAxisInversionFactor) /*override*/;
66
67 virtual void release(::InputEventQueue& eventQueue) /*override*/;
68 // NOLINTEND
69
70public:
71 // member functions
72 // NOLINTBEGIN
73 MCNAPI TouchGlyphButtonControl(
74 ::std::function<::RectangleArea()> area,
75 ::std::function<bool()> condition,
76 ::std::function<float()> opacity,
77 uint buttonId,
78 ::std::string const& iconPath,
79 ::std::string const& pressedIconPath,
80 ::ButtonColors const& buttonColors,
81 int uvWidth,
82 int uvHeight,
83 int activePointerId,
84 bool passThrough,
85 int touchStateRequirement,
86 float glyphScale,
87 bool promiscuous,
88 bool extendButtonPressOutsideUntilReleased,
89 float innerPaddingX,
90 float innerPaddingY
91 );
92 // NOLINTEND
93
94public:
95 // constructor thunks
96 // NOLINTBEGIN
97 MCNAPI void* $ctor(
98 ::std::function<::RectangleArea()> area,
99 ::std::function<bool()> condition,
100 ::std::function<float()> opacity,
101 uint buttonId,
102 ::std::string const& iconPath,
103 ::std::string const& pressedIconPath,
104 ::ButtonColors const& buttonColors,
105 int uvWidth,
106 int uvHeight,
107 int activePointerId,
108 bool passThrough,
109 int touchStateRequirement,
110 float glyphScale,
111 bool promiscuous,
112 bool extendButtonPressOutsideUntilReleased,
113 float innerPaddingX,
114 float innerPaddingY
115 );
116 // NOLINTEND
117
118public:
119 // virtual function thunks
120 // NOLINTBEGIN
121 MCNAPI uint $getHoldButtonId() const;
122
123 MCNAPI int $getActivePointerId() const;
124
125 MCNAPI bool $releaseOnClear() const;
126
127 MCNAPI void $render(::InputRenderContext& context) const;
128
129 MCNAPI void $tick(::InputEventQueue& eventQueue, ::TouchPointResults& touchPointResults, int yAxisInversionFactor);
130
131 MCNAPI void $release(::InputEventQueue& eventQueue);
132 // NOLINTEND
133};
Definition InputEventQueue.h:5
Definition InputRenderContext.h:5
Definition RectangleArea.h:5
Definition TouchControl.h:5
Definition TouchGlyphButtonControl.h:5
MCAPI void * $ctor(::std::function<::RectangleArea()> area, ::std::function< bool()> condition, ::std::function< float()> opacity, uint buttonId, ::std::string const &iconPath, ::std::string const &pressedIconPath, ::ButtonColors const &buttonColors, int uvWidth, int uvHeight, int activePointerId, bool passThrough, int touchStateRequirement, float glyphScale, bool promiscuous, bool extendButtonPressOutsideUntilReleased, float innerPaddingX, float innerPaddingY)
MCAPI bool $releaseOnClear() const
MCAPI void $render(::InputRenderContext &context) const
MCAPI uint $getHoldButtonId() const
MCAPI int $getActivePointerId() const
MCAPI void $release(::InputEventQueue &eventQueue)
MCAPI void $tick(::InputEventQueue &eventQueue, ::TouchPointResults &touchPointResults, int yAxisInversionFactor)
Definition TouchPointResults.h:5
STL namespace.
Definition ButtonColors.h:5
Definition context.h:5