From c632c13c66db715b816390f0734f2b1839a7ff3e Mon Sep 17 00:00:00 2001 From: hondres Date: Fri, 8 Jan 2016 00:40:41 +0100 Subject: Add some joystick functions to input. Enables manipulation of mappings at runtime --- main/input_default.cpp | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) (limited to 'main/input_default.cpp') diff --git a/main/input_default.cpp b/main/input_default.cpp index 68f7434d9..a79199580 100644 --- a/main/input_default.cpp +++ b/main/input_default.cpp @@ -781,3 +781,49 @@ void InputDefault::parse_mapping(String p_mapping) { map_db.push_back(mapping); //printf("added mapping with uuid %ls\n", mapping.uid.c_str()); }; + +void InputDefault::add_joy_mapping(String p_mapping, bool p_update_existing) { + parse_mapping(p_mapping); + if (p_update_existing) { + Vector entry = p_mapping.split(","); + String uid = entry[0]; + for (int i=0; i= 0;i--) { + if (p_guid == map_db[i].uid) { + map_db.remove(i); + } + } + for (int i=0; iis_joy_known(p_device); +} + +String InputDefault::get_joy_guid(int p_device) const { + return OS::get_singleton()->get_joy_guid(p_device); +} + +//platforms that use the remapping system can override and call to these ones +bool InputDefault::is_joy_mapped(int p_device) { + return joy_names[p_device].mapping != -1 ? true : false; +} + +String InputDefault::get_joy_guid_remapped(int p_device) const { + return joy_names[p_device].uid; +} + -- cgit v1.2.3-70-g09d2