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;
42 virtual ~RemappingLayout();
44 virtual void setMappingWithRawInput(::std::string
const& action,
int key, ::RawInputType type);
46 virtual int getAdjustedKey(
int key)
const;
48 virtual ::std::string getSaveString(::std::string
const& action)
const;
50 virtual ::std::string getMappedKeyName(
int key)
const;
52 virtual ::std::string getMappedKeyName(
int key,
bool checkUserConfiguredSwap)
const;
54 virtual ::std::string getMappedKeyName(::Keymapping
const& keyMapping)
const;
56 virtual ::std::string getKeySpriteLocation(
int key, ::IconSize iconSize)
const;
58 virtual ::std::string getKeySpriteLocation(::Keymapping
const& keyMapping)
const;
60 virtual int _rawKeyToKey(
int rawInputKey, ::RawInputType rawInputType)
const = 0;
66 MCAPI RemappingLayout();
68 MCAPI
void assignDefaultMapping(::std::vector<::Keymapping>&& newDefaultMapping);
70 MCAPI
void defaultKeyAtIndex(uint64 index);
72 MCAPI ::std::vector<::DuplicateKey> generateIndicesOfDuplicates()
const;
74 MCAPI ::Keymapping
const& getKeymappingByAction(::std::string
const& action)
const;
76 MCAPI
void setMapping(::std::string
const& action, ::std::vector<int>
const& keys);
78 MCAPI
void unassignDuplicateKeys(uint64 index);
80 MCAPI
void unassignKey(::DuplicateKey duplicateKey);
82 MCAPI
void unassignKeyAtIndex(uint64 index);
100 MCAPI
void $setMappingWithRawInput(::std::string
const& action,
int key, ::RawInputType type);
102 MCFOLD
int $getAdjustedKey(
int key)
const;
104 MCFOLD ::std::string $getSaveString(::std::string
const& action)
const;
106 MCFOLD ::std::string $getMappedKeyName(
int key)
const;
108 MCFOLD ::std::string $getMappedKeyName(
int key,
bool checkUserConfiguredSwap)
const;
110 MCAPI ::std::string $getMappedKeyName(::Keymapping
const& keyMapping)
const;
112 MCFOLD ::std::string $getKeySpriteLocation(
int key, ::IconSize iconSize)
const;
114 MCAPI ::std::string $getKeySpriteLocation(::Keymapping
const& keyMapping)
const;
Definition Keymapping.h:5
Definition RemappingLayout.h:5
static MCAPI void ** $vftable()
Definition SingleThreaded.h:7
Definition DuplicateKey.h:5