summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp
diff options
context:
space:
mode:
authorRyan Houdek <Sonicadvance1@gmail.com>2013-04-14 23:02:53 -0500
committerRyan Houdek <Sonicadvance1@gmail.com>2013-04-14 23:02:53 -0500
commit44bbb54a62a58be4ad39caf6ba55ff98244223d5 (patch)
treec5654ff4ac41a7bf36133a868f61628757663f37 /Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp
parent37b67971e7def8dcd0dae3209afc6c69b52d0609 (diff)
Add a Androind ControllerInterface class for allowing input in a non-hacky way. Add a default GCPad.ini file so it actually works.
Diffstat (limited to 'Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp')
-rw-r--r--Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp67
1 files changed, 67 insertions, 0 deletions
diff --git a/Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp b/Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp
new file mode 100644
index 0000000000..2d01d38f23
--- /dev/null
+++ b/Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp
@@ -0,0 +1,67 @@
+// Copyright (C) 2003 Dolphin Project.
+
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, version 2.0.
+
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License 2.0 for more details.
+
+// A copy of the GPL 2.0 should have been included with the program.
+// If not, see http://www.gnu.org/licenses/
+
+// Official SVN repository and contact information can be found at
+// http://code.google.com/p/dolphin-emu/
+
+#include "Android.h"
+
+namespace ciface
+{
+
+namespace Android
+{
+
+void Init( std::vector<ControllerInterface::Device*>& devices )
+{
+ devices.push_back(new Touchscreen());
+}
+
+// Touchscreens and stuff
+std::string Touchscreen::GetName() const
+{
+ return "Touchscreen";
+}
+
+std::string Touchscreen::GetSource() const
+{
+ return "Android";
+}
+
+int Touchscreen::GetId() const
+{
+ return 0;
+}
+Touchscreen::Touchscreen()
+{
+ AddInput(new Button(ButtonManager::BUTTON_A));
+ AddInput(new Button(ButtonManager::BUTTON_B));
+ AddInput(new Button(ButtonManager::BUTTON_START));
+}
+// Buttons and stuff
+
+std::string Touchscreen::Button::GetName() const
+{
+ std::ostringstream ss;
+ ss << "Button " << (int)m_index;
+ return ss.str();
+}
+
+ControlState Touchscreen::Button::GetState() const
+{
+ return ButtonManager::GetButtonPressed(m_index);
+}
+
+}
+}