summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp
diff options
context:
space:
mode:
authorRyan Houdek <Sonicadvance1@gmail.com>2013-06-18 07:09:20 -0500
committerRyan Houdek <Sonicadvance1@gmail.com>2013-06-18 07:09:38 -0500
commit7223778520472bc2cca33632df56e451fc1d3796 (patch)
treedb11405cd792b4dd3de08c30a822033e2c2bbee2 /Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp
parenta518a1cbdcc311af1b01eeb940b3fb57f6f15554 (diff)
[Android] Gamepad input. Refactor JNI native functions to all pull from a single class instead of everywhere willy-nilly
Diffstat (limited to 'Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp')
-rw-r--r--Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp b/Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp
index 2d01d38f23..6469945971 100644
--- a/Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp
+++ b/Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp
@@ -48,6 +48,20 @@ Touchscreen::Touchscreen()
AddInput(new Button(ButtonManager::BUTTON_A));
AddInput(new Button(ButtonManager::BUTTON_B));
AddInput(new Button(ButtonManager::BUTTON_START));
+ AddInput(new Button(ButtonManager::BUTTON_X));
+ AddInput(new Button(ButtonManager::BUTTON_Y));
+ AddInput(new Button(ButtonManager::BUTTON_Z));
+ AddInput(new Button(ButtonManager::BUTTON_UP));
+ AddInput(new Button(ButtonManager::BUTTON_DOWN));
+ AddInput(new Button(ButtonManager::BUTTON_LEFT));
+ AddInput(new Button(ButtonManager::BUTTON_RIGHT));
+ AddAnalogInputs(new Axis(ButtonManager::STICK_MAIN_LEFT), new Axis(ButtonManager::STICK_MAIN_RIGHT));
+ AddAnalogInputs(new Axis(ButtonManager::STICK_MAIN_UP), new Axis(ButtonManager::STICK_MAIN_DOWN));
+ AddAnalogInputs(new Axis(ButtonManager::STICK_C_UP), new Axis(ButtonManager::STICK_C_DOWN));
+ AddAnalogInputs(new Axis(ButtonManager::STICK_C_LEFT), new Axis(ButtonManager::STICK_C_RIGHT));
+ AddAnalogInputs(new Axis(ButtonManager::TRIGGER_L), new Axis(ButtonManager::TRIGGER_L));
+ AddAnalogInputs(new Axis(ButtonManager::TRIGGER_R), new Axis(ButtonManager::TRIGGER_R));
+
}
// Buttons and stuff
@@ -62,6 +76,17 @@ ControlState Touchscreen::Button::GetState() const
{
return ButtonManager::GetButtonPressed(m_index);
}
+std::string Touchscreen::Axis::GetName() const
+{
+ std::ostringstream ss;
+ ss << "Axis " << (int)m_index;
+ return ss.str();
+}
+
+ControlState Touchscreen::Axis::GetState() const
+{
+ return ButtonManager::GetAxisValue(m_index);
+}
}
}