diff options
author | Juan Linietsky <reduzio@gmail.com> | 2017-05-20 12:38:03 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2017-05-20 17:05:38 -0300 |
commit | 5b3709d3096df737b8bb2344446be818b0389bfe (patch) | |
tree | 649a0989b1494f3c4687d59e503310f4e6bbeb40 /core/input_map.h | |
parent | 93f9a83062dbe74474a4a7928758c5cf5588238e (diff) | |
download | redot-engine-5b3709d3096df737b8bb2344446be818b0389bfe.tar.gz |
Removal of InputEvent as built-in Variant type..
this might cause bugs I haven't found yet..
Diffstat (limited to 'core/input_map.h')
-rw-r--r-- | core/input_map.h | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/core/input_map.h b/core/input_map.h index a25255da2d..ba93e61f5f 100644 --- a/core/input_map.h +++ b/core/input_map.h @@ -31,6 +31,7 @@ #define INPUT_MAP_H #include "object.h" +#include "os/input_event.h" class InputMap : public Object { @@ -39,16 +40,15 @@ class InputMap : public Object { public: struct Action { int id; - List<InputEvent> inputs; + List<Ref<InputEvent> > inputs; }; private: static InputMap *singleton; mutable Map<StringName, Action> input_map; - mutable Map<int, StringName> input_id_map; - List<InputEvent>::Element *_find_event(List<InputEvent> &p_list, const InputEvent &p_event, bool p_action_test = false) const; + List<Ref<InputEvent> >::Element *_find_event(List<Ref<InputEvent> > &p_list, const Ref<InputEvent> &p_event, bool p_action_test = false) const; Array _get_action_list(const StringName &p_action); Array _get_actions(); @@ -60,18 +60,16 @@ public: static _FORCE_INLINE_ InputMap *get_singleton() { return singleton; } bool has_action(const StringName &p_action) const; - int get_action_id(const StringName &p_action) const; - StringName get_action_from_id(int p_id) const; List<StringName> get_actions() const; void add_action(const StringName &p_action); void erase_action(const StringName &p_action); - void action_add_event(const StringName &p_action, const InputEvent &p_event); - bool action_has_event(const StringName &p_action, const InputEvent &p_event); - void action_erase_event(const StringName &p_action, const InputEvent &p_event); + void action_add_event(const StringName &p_action, const Ref<InputEvent> &p_event); + bool action_has_event(const StringName &p_action, const Ref<InputEvent> &p_event); + void action_erase_event(const StringName &p_action, const Ref<InputEvent> &p_event); - const List<InputEvent> *get_action_list(const StringName &p_action); - bool event_is_action(const InputEvent &p_event, const StringName &p_action) const; + const List<Ref<InputEvent> > *get_action_list(const StringName &p_action); + bool event_is_action(const Ref<InputEvent> &p_event, const StringName &p_action) const; const Map<StringName, Action> &get_action_map() const; void load_from_globals(); |