summaryrefslogtreecommitdiff
path: root/src/input/include/input_hook.hpp
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2024-04-29 12:42:16 +1000
committerjacqueline <me@jacqueline.id.au>2024-04-29 12:42:16 +1000
commitb255ea799eead9668e7fd69a286349ac4a74a73c (patch)
tree747e8038de0ff048ab253ac1d6f481df601e8449 /src/input/include/input_hook.hpp
parent920345b940bb3993c389d9e9be1a75a8041d431d (diff)
downloadtangara-fw-b255ea799eead9668e7fd69a286349ac4a74a73c.tar.gz
Add lua bindings for override input hooks
Diffstat (limited to 'src/input/include/input_hook.hpp')
-rw-r--r--src/input/include/input_hook.hpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/input/include/input_hook.hpp b/src/input/include/input_hook.hpp
index 81eb80d9..a257c04a 100644
--- a/src/input/include/input_hook.hpp
+++ b/src/input/include/input_hook.hpp
@@ -32,6 +32,10 @@ class Hook {
auto name() const -> const std::string& { return name_; }
auto callback() -> std::optional<HookCallback>;
+ // Not copyable or movable.
+ Hook(const Hook&) = delete;
+ Hook& operator=(const Hook&) = delete;
+
private:
std::string name_;
std::optional<HookCallback> default_;
@@ -51,7 +55,11 @@ class TriggerHooks {
auto override(Trigger::State, std::optional<HookCallback>) -> void;
auto name() const -> const std::string&;
- auto pushHooks(lua_State*) -> void;
+ auto hooks() -> std::vector<std::reference_wrapper<Hook>>;
+
+ // Not copyable or movable.
+ TriggerHooks(const TriggerHooks&) = delete;
+ TriggerHooks& operator=(const TriggerHooks&) = delete;
private:
std::string name_;