3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/math/Color.h"
7#include "mc/deps/input/TouchControl.h"
8#include "mc/deps/input/enums/ButtonState.h"
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;
49 TouchGlyphButtonControl();
54 virtual ~TouchGlyphButtonControl() =
default;
56 virtual uint getHoldButtonId() const ;
58 virtual
int getActivePointerId() const ;
60 virtual
bool releaseOnClear() const ;
62 virtual
void render(::InputRenderContext& context) const ;
65 tick(::InputEventQueue& eventQueue, ::TouchPointResults& touchPointResults,
int yAxisInversionFactor) ;
67 virtual
void release(::InputEventQueue& eventQueue) ;
73 MCNAPI TouchGlyphButtonControl(
75 ::
std::function<
bool()> condition,
76 ::
std::function<
float()> opacity,
78 ::
std::
string const& iconPath,
79 ::
std::
string const& pressedIconPath,
85 int touchStateRequirement,
88 bool extendButtonPressOutsideUntilReleased,
99 ::
std::function<
bool()> condition,
100 ::
std::function<
float()> opacity,
102 ::
std::
string const& iconPath,
103 ::
std::
string const& pressedIconPath,
109 int touchStateRequirement,
112 bool extendButtonPressOutsideUntilReleased,
Definition InputRenderContext.h:5
Definition RectangleArea.h:5
Definition TouchControl.h:5
Definition TouchPointResults.h:5