From 7b45ac6e01fd6b817cec19a277241888a60e50dc Mon Sep 17 00:00:00 2001 From: Jordan Woyak Date: Tue, 19 Oct 2010 23:11:22 +0000 Subject: Made it easer to use mouse/keyboard and a gamepad together on the same emulated wiimote. Renamed mouse buttons from "Button N" to "Click N" so they do not conflict with gamepad buttons.(hopefully not too ugly, mouse buttons will need to be reconfigured) (Fixes issue 3363) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6289 8ced0084-cf51-0410-be5f-012b33b47a6e --- .../ControllerInterface/ControllerInterface.cpp | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'Source/Core/InputCommon/Src/ControllerInterface/ControllerInterface.cpp') diff --git a/Source/Core/InputCommon/Src/ControllerInterface/ControllerInterface.cpp b/Source/Core/InputCommon/Src/ControllerInterface/ControllerInterface.cpp index e29c9d53e3..69e340d4f5 100644 --- a/Source/Core/InputCommon/Src/ControllerInterface/ControllerInterface.cpp +++ b/Source/Core/InputCommon/Src/ControllerInterface/ControllerInterface.cpp @@ -419,6 +419,29 @@ void ControllerInterface::UpdateReference(ControllerInterface::ControlReference* devc.control = *i; ref->m_controls.push_back(devc); } + else + { + // the input wasn't found, look through all the other devices + + std::vector::const_iterator + deviter = m_devices.begin(), + devend = m_devices.end(); + + for(; deviter != devend; ++deviter) + { + for(i = (*deviter)->Inputs().begin(); i < (*deviter)->Inputs().end(); ++i) + if(*(*i) == ctrl_str) + break; + + if ((*deviter)->Inputs().end() != i) + { + devc.device = *deviter; + devc.control = *i; + ref->m_controls.push_back(devc); + break; + } + } + } } else { -- cgit v1.2.3