25 std::unique_ptr<Impl> impl;
28 KeyRegistry& registrar,
29 std::string_view name,
30 std::vector<int>
const& keyCodes,
32 std::weak_ptr<mod::Mod> mod
35 void disableModOverloads(std::string_view modName);
37 void triggerButtonDownHandlers(::FocusImpact focusImpact,
::IClientInstance& client);
39 void triggerButtonUpHandlers(::FocusImpact focusImpact,
::IClientInstance& client);
47 KeyHandle(KeyHandle&&)
noexcept;
48 KeyHandle& operator=(KeyHandle&&)
noexcept;
50 LLNDAPI std::string
const& getName()
const;
52 LLNDAPI std::shared_ptr<mod::Mod> getMod()
const;
54 LLNDAPI std::string getFullName()
const;
56 LLNDAPI std::vector<int>
const& getKeyCodes()
const;
58 LLNDAPI
bool isAllowRemap()
const;
60 LLNDAPI
void setAllowRemap(
bool allowRemap);
62 LLNDAPI
bool isValid()
const;
64 LLAPI
void registerButtonDownHandler(ButtonDownHandler handler,
bool suspendable =
false);
66 LLAPI
void registerButtonUpHandler(ButtonUpHandler handler,
bool suspendable =
false);
68 LLAPI
void setInputMappingStack(std::vector<std::string> stacks);
70 LLNDAPI
bool containsInputMappingStack(std::string_view stack)
const;