3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/input/IconSize.h"
7#include "mc/client/input/RemappingLayoutRawIndex.h"
8#include "mc/deps/core/utility/pub_sub/Publisher.h"
9#include "mc/deps/input/enums/RawInputType.h"
21 using RefreshKeymappingPublisher =
22 ::Bedrock::PubSub::Publisher<void(::std::optional<uint64>), ::Bedrock::PubSub::ThreadModel::SingleThreaded, 0>;
27 ::ll::TypedStorage<8, 24, ::std::vector<::Keymapping>> mKeymappings;
28 ::ll::TypedStorage<8, 24, ::std::vector<::Keymapping>> mDefaultMappings;
34 Publisher<void(::std::optional<uint64>), ::Bedrock::PubSub::ThreadModel::SingleThreaded, 0>>>
35 mRefreshKeymappingsPublisher;
36 ::ll::TypedStorage<8, 32, ::RemappingLayoutRawIndex> mLayoutRawIndex;
41 RemappingLayout(RemappingLayout
const&);
47 virtual ~RemappingLayout();
49 virtual void setMappingWithRawInput(::std::string
const& action,
int key, ::RawInputType type);
51 virtual int getAdjustedKey(
int key)
const;
53 virtual ::std::string getSaveString(::std::string
const& action)
const;
55 virtual ::std::string getMappedKeyName(
int key)
const;
57 virtual ::std::string getMappedKeyName(
int key,
bool checkUserConfiguredSwap)
const;
59 virtual ::std::string getMappedKeyName(::Keymapping
const& keyMapping)
const;
61 virtual ::std::string getKeySpriteLocation(
63 bool checkUserConfiguredSwap,
64 bool checkPlatformButtonSwapping,
68 virtual ::std::string getKeySpriteLocation(::Keymapping
const& keyMapping)
const;
70 virtual int _rawKeyToKey(
int rawInputKey, ::RawInputType rawInputType)
const = 0;
76 MCAPI
void assignDefaultMapping(::std::vector<::Keymapping>&& newDefaultMapping);
82 MCAPI ::Keymapping
const& getKeymappingByAction(::std::string_view action)
const;
84 MCNAPI ::RemappingLayout&
operator=(::RemappingLayout
const& other);
86 MCAPI
void setMapping(::std::string_view action, ::std::vector<int>
const& keys);
88 MCAPI
void unassignDuplicateKeys(uint64 index);
116 bool checkUserConfiguredSwap,
117 bool checkPlatformButtonSwapping,
Definition Keymapping.h:5
Definition RemappingLayout.h:5
MCAPI::std::string $getMappedKeyName(int key, bool checkUserConfiguredSwap) const
MCAPI::std::string $getMappedKeyName(int key) const
MCAPI::std::string $getKeySpriteLocation(int key, bool checkUserConfiguredSwap, bool checkPlatformButtonSwapping, ::IconSize iconSize) const
MCAPI::std::string $getKeySpriteLocation(::Keymapping const &keyMapping) const
MCAPI int $getAdjustedKey(int key) const
MCAPI void $setMappingWithRawInput(::std::string const &action, int key, ::RawInputType type)
MCAPI void unassignKeyAtIndex(uint64 index)
static MCAPI void ** $vftable()
MCAPI::RemappingLayout & operator=(::RemappingLayout const &other)
MCAPI::std::string $getMappedKeyName(::Keymapping const &keyMapping) const
MCAPI::std::string $getSaveString(::std::string const &action) const
MCAPI void defaultKeyAtIndex(uint64 index)
MCAPI ::std::vector<::DuplicateKey > generateIndicesOfDuplicates() const
Definition SingleThreaded.h:7
Definition DuplicateKey.h:5