diff options
| author | Max Eliaser <max@meliaserlow.dyndns.tv> | 2013-07-20 13:39:28 -0800 |
|---|---|---|
| committer | Max Eliaser <max@meliaserlow.dyndns.tv> | 2013-07-20 13:58:02 -0800 |
| commit | fe2fe8b6cc847aa7521b8713263fc183fa074947 (patch) | |
| tree | e77ee55398d5747fed604199d05f243afebb5ac1 /Source/Core/InputCommon | |
| parent | 9fbc5ff27cef0acac37a5a5a1a2c0d060ec226e1 (diff) | |
Clean up all the GetName methods for XInput2 controls.
Diffstat (limited to 'Source/Core/InputCommon')
| -rw-r--r-- | Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.cpp | 41 | ||||
| -rw-r--r-- | Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.h | 20 |
2 files changed, 26 insertions, 35 deletions
diff --git a/Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.cpp b/Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.cpp index e4abe03f2f..b42eda1f21 100644 --- a/Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.cpp +++ b/Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.cpp @@ -340,47 +340,38 @@ ControlState KeyboardMouse::Key::GetState() const return (m_keyboard[m_keycode / 8] & (1 << (m_keycode % 8))) != 0; } -ControlState KeyboardMouse::Button::GetState() const -{ - return ((m_buttons & (1 << m_index)) != 0); -} - -ControlState KeyboardMouse::Cursor::GetState() const +KeyboardMouse::Button::Button(unsigned int index, unsigned int& buttons) + : m_buttons(buttons), m_index(index) { - return std::max(0.0f, m_cursor / (m_positive ? 1.0f : -1.0f)); + // this will be a problem if we remove the hardcoded five-button limit + name = std::string("Click ") + (char)('1' + m_index); } -ControlState KeyboardMouse::Axis::GetState() const +ControlState KeyboardMouse::Button::GetState() const { - return std::max(0.0f, m_axis / (m_positive ? MOUSE_AXIS_SENSITIVITY : -MOUSE_AXIS_SENSITIVITY)); + return ((m_buttons & (1 << m_index)) != 0); } -std::string KeyboardMouse::Key::GetName() const +KeyboardMouse::Cursor::Cursor(u8 index, bool positive, const float& cursor) + : m_cursor(cursor), m_index(index), m_positive(positive) { - return m_keyname; + name = std::string("Cursor ") + (char)('X' + m_index) + (m_positive ? '+' : '-'); } -std::string KeyboardMouse::Cursor::GetName() const +ControlState KeyboardMouse::Cursor::GetState() const { - static char tmpstr[] = "Cursor .."; - tmpstr[7] = (char)('X' + m_index); - tmpstr[8] = (m_positive ? '+' : '-'); - return tmpstr; + return std::max(0.0f, m_cursor / (m_positive ? 1.0f : -1.0f)); } -std::string KeyboardMouse::Axis::GetName() const +KeyboardMouse::Axis::Axis(u8 index, bool positive, const float& axis) + : m_axis(axis), m_index(index), m_positive(positive) { - static char tmpstr[] = "Axis .."; - tmpstr[5] = (char)('X' + m_index); - tmpstr[6] = (m_positive ? '+' : '-'); - return tmpstr; + name = std::string("Axis ") + (char)('X' + m_index) + (m_positive ? '+' : '-'); } -std::string KeyboardMouse::Button::GetName() const +ControlState KeyboardMouse::Axis::GetState() const { - static char tmpstr[] = "Click ."; - tmpstr[6] = m_index + '1'; - return tmpstr; + return std::max(0.0f, m_axis / (m_positive ? MOUSE_AXIS_SENSITIVITY : -MOUSE_AXIS_SENSITIVITY)); } } diff --git a/Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.h b/Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.h index 3f138f1416..58a1a38c8c 100644 --- a/Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.h +++ b/Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.h @@ -40,7 +40,7 @@ private: { friend class KeyboardMouse; public: - std::string GetName() const; + std::string GetName() const { return m_keyname; } Key(Display* display, KeyCode keycode, const char* keyboard); ControlState GetState() const; @@ -54,44 +54,44 @@ private: class Button : public Input { public: - std::string GetName() const; - Button(unsigned int index, unsigned int& buttons) - : m_buttons(buttons), m_index(index) {} + std::string GetName() const { return name; } + Button(unsigned int index, unsigned int& buttons); ControlState GetState() const; private: const unsigned int& m_buttons; const unsigned int m_index; + std::string name; }; class Cursor : public Input { public: - std::string GetName() const; + std::string GetName() const { return name; } bool IsDetectable() { return false; } - Cursor(u8 index, bool positive, const float& cursor) - : m_cursor(cursor), m_index(index), m_positive(positive) {} + Cursor(u8 index, bool positive, const float& cursor); ControlState GetState() const; private: const float& m_cursor; const u8 m_index; const bool m_positive; + std::string name; }; class Axis : public Input { public: - std::string GetName() const; + std::string GetName() const { return name; } bool IsDetectable() { return false; } - Axis(u8 index, bool positive, const float& axis) - : m_axis(axis), m_index(index), m_positive(positive) {} + Axis(u8 index, bool positive, const float& axis); ControlState GetState() const; private: const float& m_axis; const u8 m_index; const bool m_positive; + std::string name; }; private: |
