summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.cpp')
-rw-r--r--Source/Core/InputCommon/Src/ControllerInterface/Xlib/XInput2.cpp41
1 files changed, 16 insertions, 25 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));
}
}