From ba4ec062202f04e160cda05bb51c132784a55d3d Mon Sep 17 00:00:00 2001 From: Jean-Philip Desjardins Date: Fri, 3 Jul 2015 01:11:10 -0400 Subject: [PATCH] Added GetBindingInfoDescription to avoid duplication. --- .../ui_win32/PH_DirectInput/InputManager.cpp | 39 ++++++++----------- Source/ui_win32/PH_DirectInput/InputManager.h | 1 + 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/Source/ui_win32/PH_DirectInput/InputManager.cpp b/Source/ui_win32/PH_DirectInput/InputManager.cpp index d59e5dc3..1418d093 100644 --- a/Source/ui_win32/PH_DirectInput/InputManager.cpp +++ b/Source/ui_win32/PH_DirectInput/InputManager.cpp @@ -210,6 +210,21 @@ void CInputManager::OnInputEventReceived(const GUID& device, uint32 id, uint32 v } } +std::tstring CInputManager::GetBindingInfoDescription(Framework::DirectInput::CManager* directInputManager, const BINDINGINFO& binding) +{ + DIDEVICEINSTANCE deviceInstance; + DIDEVICEOBJECTINSTANCE objectInstance; + if(!directInputManager->GetDeviceInfo(binding.device, &deviceInstance)) + { + return _T(""); + } + if(!directInputManager->GetDeviceObjectInfo(binding.device, binding.id, &objectInstance)) + { + return _T(""); + } + return std::tstring(deviceInstance.tszInstanceName) + _T(": ") + std::tstring(objectInstance.tszName); +} + Framework::DirectInput::CManager* CInputManager::GetDirectInputManager() const { return m_directInputManager; @@ -265,17 +280,7 @@ void CInputManager::CSimpleBinding::Load(Framework::CConfig& config, const char* std::tstring CInputManager::CSimpleBinding::GetDescription(Framework::DirectInput::CManager* directInputManager) const { - DIDEVICEINSTANCE deviceInstance; - DIDEVICEOBJECTINSTANCE objectInstance; - if(!directInputManager->GetDeviceInfo(m_binding.device, &deviceInstance)) - { - return _T(""); - } - if(!directInputManager->GetDeviceObjectInfo(m_binding.device, m_binding.id, &objectInstance)) - { - return _T(""); - } - return std::tstring(deviceInstance.tszInstanceName) + _T(": ") + std::tstring(objectInstance.tszName); + return GetBindingInfoDescription(directInputManager, m_binding); } void CInputManager::CSimpleBinding::ProcessEvent(const GUID& device, uint32 id, uint32 value) @@ -341,17 +346,7 @@ void CInputManager::CPovHatBinding::Load(Framework::CConfig& config, const char* std::tstring CInputManager::CPovHatBinding::GetDescription(Framework::DirectInput::CManager* directInputManager) const { - DIDEVICEINSTANCE deviceInstance; - DIDEVICEOBJECTINSTANCE objectInstance; - if(!directInputManager->GetDeviceInfo(m_binding.device, &deviceInstance)) - { - return _T(""); - } - if(!directInputManager->GetDeviceObjectInfo(m_binding.device, m_binding.id, &objectInstance)) - { - return _T(""); - } - return std::tstring(deviceInstance.tszInstanceName) + _T(": ") + std::tstring(objectInstance.tszName); + return GetBindingInfoDescription(directInputManager, m_binding); } void CInputManager::CPovHatBinding::ProcessEvent(const GUID& device, uint32 id, uint32 value) diff --git a/Source/ui_win32/PH_DirectInput/InputManager.h b/Source/ui_win32/PH_DirectInput/InputManager.h index 9a683712..3e0f55b8 100644 --- a/Source/ui_win32/PH_DirectInput/InputManager.h +++ b/Source/ui_win32/PH_DirectInput/InputManager.h @@ -147,6 +147,7 @@ namespace PH_DirectInput void OnInputEventReceived(const GUID&, uint32, uint32); + static std::tstring GetBindingInfoDescription(Framework::DirectInput::CManager*, const BINDINGINFO&); BindingPtr m_bindings[PS2::CControllerInfo::MAX_BUTTONS]; static uint32 m_buttonDefaultValue[PS2::CControllerInfo::MAX_BUTTONS];