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&);
46 virtual ~RemappingLayout();
48 virtual void setMappingWithRawInput(::std::string
const& action,
int key, ::RawInputType type);
50 virtual int getAdjustedKey(
int key)
const;
52 virtual ::std::string getSaveString(::std::string
const& action)
const;
54 virtual ::std::string getMappedKeyName(
int key)
const;
56 virtual ::std::string getMappedKeyName(
int key,
bool checkUserConfiguredSwap)
const;
58 virtual ::std::string getMappedKeyName(::Keymapping
const& keyMapping)
const;
60 virtual ::std::string getKeySpriteLocation(
62 bool checkUserConfiguredSwap,
63 bool checkPlatformButtonSwapping,
67 virtual ::std::string getKeySpriteLocation(::Keymapping
const& keyMapping)
const;
69 virtual int _rawKeyToKey(
int rawKeyIndex, ::RawInputType rawInputType)
const = 0;
75 MCAPI RemappingLayout();
77 MCAPI
void assignDefaultMapping(::std::vector<::Keymapping>&& newDefaultMapping);
79 MCAPI
void defaultKeyAtIndex(uint64 index);
81 MCAPI ::std::vector<::DuplicateKey> generateIndicesOfDuplicates()
const;
83 MCAPI ::Keymapping
const& getKeymappingByAction(::std::string
const& action)
const;
85 MCAPI ::RemappingLayout& operator=(::RemappingLayout
const& other);
87 MCAPI
void setMapping(::std::string
const& action, ::std::vector<int>
const& keys);
89 MCAPI
void unassignDuplicateKeys(uint64 index);
91 MCAPI
void unassignKey(::DuplicateKey duplicateKey);
93 MCAPI
void unassignKeyAtIndex(uint64 index);
111 MCAPI
void $setMappingWithRawInput(::std::string
const& action,
int key, ::RawInputType type);
113 MCFOLD
int $getAdjustedKey(
int key)
const;
115 MCFOLD ::std::string $getSaveString(::std::string
const& action)
const;
117 MCFOLD ::std::string $getMappedKeyName(
int key)
const;
119 MCFOLD ::std::string $getMappedKeyName(
int key,
bool checkUserConfiguredSwap)
const;
121 MCAPI ::std::string $getMappedKeyName(::Keymapping
const& keyMapping)
const;
123 MCFOLD ::std::string $getKeySpriteLocation(
125 bool checkUserConfiguredSwap,
126 bool checkPlatformButtonSwapping,
130 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