// Copyright (C) 2003-2008 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 __PADSIMPLE_H__ #define __PADSIMPLE_H__ #include "InputCommon.h" #include "pluginspecs_pad.h" #define EPAD_CONFIG_FILE "epad.ini" // Controls enum { CTL_A = 0, CTL_B, CTL_X, CTL_Y, CTL_Z, CTL_START, CTL_L, CTL_R, CTL_MAINUP, CTL_MAINDOWN, CTL_MAINLEFT, CTL_MAINRIGHT, CTL_SUBUP, CTL_SUBDOWN, CTL_SUBLEFT, CTL_SUBRIGHT, CTL_DPADUP, CTL_DPADDOWN, CTL_DPADLEFT, CTL_DPADRIGHT, CTL_HALFPRESS, CTL_MIC, NUMCONTROLS }; struct SPads { bool bAttached; // Pad is "attached" to the gamecube/wii bool bDisable; // Disabled when dolphin isn't in focus sf::Key::Code keyForControl[NUMCONTROLS];// Keyboard mapping }; extern SPads pad[]; extern PLUGIN_GLOBALS* globals; void LoadConfig(); void SaveConfig(); bool registerKey(int nPad, int id, sf::Key::Code code, int mods = 0); bool ParseKeyEvent(sf::Event ev); #endif