Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add a Androind ControllerInterface class for allowing input in a non-…
…hacky way. Add a default GCPad.ini file so it actually works.
- Loading branch information
1 parent
37b6797
commit 44bbb54
Showing
11 changed files
with
183 additions
and
33 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
[GCPad1] | ||
Device = Android/0/Touchscreen | ||
Buttons/A = Button 0 | ||
Buttons/B = Button 1 | ||
Buttons/X = C | ||
Buttons/Y = S | ||
Buttons/Z = D | ||
Buttons/Start = Button 2 | ||
Main Stick/Up = Up | ||
Main Stick/Down = Down | ||
Main Stick/Left = Left | ||
Main Stick/Right = Right | ||
Main Stick/Modifier = Shift_L | ||
Main Stick/Modifier/Range = 50.000000 | ||
C-Stick/Up = I | ||
C-Stick/Down = K | ||
C-Stick/Left = J | ||
C-Stick/Right = L | ||
C-Stick/Modifier = Control_L | ||
C-Stick/Modifier/Range = 50.000000 | ||
Triggers/L = Q | ||
Triggers/R = W | ||
D-Pad/Up = T | ||
D-Pad/Down = G | ||
D-Pad/Left = F | ||
D-Pad/Right = H | ||
[GCPad2] | ||
[GCPad3] | ||
[GCPad4] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
File renamed without changes.
67 changes: 67 additions & 0 deletions
67
Source/Core/InputCommon/Src/ControllerInterface/Android/Android.cpp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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); | ||
} | ||
|
||
} | ||
} |
57 changes: 57 additions & 0 deletions
57
Source/Core/InputCommon/Src/ControllerInterface/Android/Android.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
// 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/ | ||
#ifndef _CIFACE_ANDROID_H_ | ||
#define _CIFACE_ANDROID_H_ | ||
|
||
#include "../ControllerInterface.h" | ||
#include "Android/ButtonManager.h" | ||
|
||
namespace ciface | ||
{ | ||
namespace Android | ||
{ | ||
|
||
void Init( std::vector<ControllerInterface::Device*>& devices ); | ||
class Touchscreen : public ControllerInterface::Device | ||
{ | ||
private: | ||
class Button : public Input | ||
{ | ||
public: | ||
std::string GetName() const; | ||
Button(ButtonManager::ButtonType index) : m_index(index) {} | ||
ControlState GetState() const; | ||
private: | ||
const ButtonManager::ButtonType m_index; | ||
}; | ||
|
||
public: | ||
bool UpdateInput() { return true; } | ||
bool UpdateOutput() { return true; } | ||
|
||
Touchscreen(); | ||
~Touchscreen() {} | ||
|
||
std::string GetName() const; | ||
int GetId() const; | ||
std::string GetSource() const; | ||
}; | ||
|
||
} | ||
} | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters