dolphin/Source/Core/InputCommon/Src/WXInputBase.cpp
Soren Jorvang c05c9fa1f4 Use 10.5 compatible API's to get list of display resolutions on OS X.
Patch from user gamepromcompany on the MacOSX_Build wiki page.

Add support for the Mac command key as a hotkey modifier in 
WXKeyToString but present it as Control. WXKeyToString is used for     
both hotkeys and menu accelerators, the latter only supporting
Shift/Alt/Control with wxWidgets.

wxSpinCtrl on wx 2.9 has a very small default size, so give the 
window size ones a reasonable size.

Use wxFULLSCREEN_ALL when switching to fullscreen, which gets rid
of window decorations like the title bar. Note that to actually
be rid of it with wx 2.9 on OS X, you'll need this patch:
http://trac.wxwidgets.org/ticket/11701

Also remove a couple of files I had accidentally duplicated.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5642 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-09 20:03:37 +00:00

159 lines
5.8 KiB
C++

// 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 "WXInputBase.h"
namespace InputCommon
{
const wxString WXKeyToString(int keycode)
{
switch (keycode)
{
case WXK_BACK: return wxT("Back");
case WXK_TAB: return wxT("Tab");
case WXK_RETURN: return wxT("Return");
case WXK_ESCAPE: return wxT("Escape");
case WXK_SPACE: return wxT("Space");
case WXK_DELETE: return wxT("Delete");
// Undocumented wx keycodes
case 167: return wxT("Paragraph");
case 177: return wxT("Plus-Minus");
case WXK_START: return wxT("Start");
case WXK_LBUTTON: return wxT("L Button");
case WXK_RBUTTON: return wxT("R Button");
case WXK_CANCEL: return wxT("Cancel");
case WXK_MBUTTON: return wxT("M Button");
case WXK_CLEAR: return wxT("Clear");
case WXK_SHIFT: return wxT("Shift");
case WXK_ALT: return wxT("Alt");
case WXK_CONTROL: return wxT("Control");
case WXK_MENU: return wxT("Menu");
case WXK_PAUSE: return wxT("Pause");
case WXK_CAPITAL: return wxT("Caps Lock");
case WXK_END: return wxT("End");
case WXK_HOME: return wxT("Home");
case WXK_LEFT: return wxT("Left");
case WXK_UP: return wxT("Up");
case WXK_RIGHT: return wxT("Right");
case WXK_DOWN: return wxT("Down");
case WXK_SELECT: return wxT("Select");
case WXK_PRINT: return wxT("Print");
case WXK_EXECUTE: return wxT("Execute");
case WXK_SNAPSHOT: return wxT("Snapshot");
case WXK_INSERT: return wxT("Insert");
case WXK_HELP: return wxT("Help");
case WXK_NUMPAD0: return wxT("NP 0");
case WXK_NUMPAD1: return wxT("NP 1");
case WXK_NUMPAD2: return wxT("NP 2");
case WXK_NUMPAD3: return wxT("NP 3");
case WXK_NUMPAD4: return wxT("NP 4");
case WXK_NUMPAD5: return wxT("NP 5");
case WXK_NUMPAD6: return wxT("NP 6");
case WXK_NUMPAD7: return wxT("NP 7");
case WXK_NUMPAD8: return wxT("NP 8");
case WXK_NUMPAD9: return wxT("NP 9");
case WXK_MULTIPLY: return wxT("Multiply");
case WXK_ADD: return wxT("Add");
case WXK_SEPARATOR: return wxT("Separator");
case WXK_SUBTRACT: return wxT("Subtract");
case WXK_DECIMAL: return wxT("Decimal");
case WXK_DIVIDE: return wxT("Divide");
case WXK_F1: return wxT("F1");
case WXK_F2: return wxT("F2");
case WXK_F3: return wxT("F3");
case WXK_F4: return wxT("F4");
case WXK_F5: return wxT("F5");
case WXK_F6: return wxT("F6");
case WXK_F7: return wxT("F7");
case WXK_F8: return wxT("F8");
case WXK_F9: return wxT("F9");
case WXK_F10: return wxT("F10");
case WXK_F11: return wxT("F11");
case WXK_F12: return wxT("F12");
case WXK_F13: return wxT("F13");
case WXK_F14: return wxT("F14");
case WXK_F15: return wxT("F15");
case WXK_F16: return wxT("F16");
case WXK_F17: return wxT("F17");
case WXK_F18: return wxT("F19");
case WXK_F19: return wxT("F20");
case WXK_F20: return wxT("F21");
case WXK_F21: return wxT("F22");
case WXK_F22: return wxT("F23");
case WXK_F23: return wxT("F24");
case WXK_F24: return wxT("F25");
case WXK_NUMLOCK: return wxT("Num Lock");
case WXK_SCROLL: return wxT("Scroll Lock");
case WXK_PAGEUP: return wxT("Page Up");
case WXK_PAGEDOWN: return wxT("Page Down");
case WXK_NUMPAD_SPACE: return wxT("NP Space");
case WXK_NUMPAD_TAB: return wxT("NP Tab");
case WXK_NUMPAD_ENTER: return wxT("NP Enter");
case WXK_NUMPAD_F1: return wxT("NP F1");
case WXK_NUMPAD_F2: return wxT("NP F2");
case WXK_NUMPAD_F3: return wxT("NP F3");
case WXK_NUMPAD_F4: return wxT("NP F4");
case WXK_NUMPAD_HOME: return wxT("NP Home");
case WXK_NUMPAD_LEFT: return wxT("NP Left");
case WXK_NUMPAD_UP: return wxT("NP Up");
case WXK_NUMPAD_RIGHT: return wxT("NP Right");
case WXK_NUMPAD_DOWN: return wxT("NP Down");
case WXK_NUMPAD_PAGEUP: return wxT("NP Page Up");
case WXK_NUMPAD_PAGEDOWN: return wxT("NP Page Down");
case WXK_NUMPAD_END: return wxT("NP End");
case WXK_NUMPAD_BEGIN: return wxT("NP Begin");
case WXK_NUMPAD_INSERT: return wxT("NP Insert");
case WXK_NUMPAD_DELETE: return wxT("NP Delete");
case WXK_NUMPAD_EQUAL: return wxT("NP Equal");
case WXK_NUMPAD_MULTIPLY: return wxT("NP Multiply");
case WXK_NUMPAD_ADD: return wxT("NP Add");
case WXK_NUMPAD_SEPARATOR: return wxT("NP Separator");
case WXK_NUMPAD_SUBTRACT: return wxT("NP Subtract");
case WXK_NUMPAD_DECIMAL: return wxT("NP Decimal");
case WXK_NUMPAD_DIVIDE: return wxT("NP Divide");
case WXK_WINDOWS_LEFT: return wxT("Windows Left");
case WXK_WINDOWS_RIGHT: return wxT("Windows Right");
case WXK_WINDOWS_MENU: return wxT("Windows Menu");
case WXK_COMMAND: return wxT("Command");
}
if (keycode > WXK_SPACE && keycode < WXK_DELETE) {
return wxString((wxChar)keycode, 1);
}
return wxT("");
}
const wxString WXKeymodToString(int modifier)
{
switch (modifier)
{
case wxMOD_ALT: return wxT("Alt");
case wxMOD_CONTROL: return wxT("Ctrl");
case wxMOD_ALTGR: return wxT("Ctrl+Alt");
case wxMOD_SHIFT: return wxT("Shift");
// wxWidgets can only use Alt/Ctrl/Shift as menu accelerators,
// so Meta (Command on OS X) is simply made equivalent to Ctrl.
case wxMOD_META: return wxT("Ctrl");
default: return wxT("");
}
}
}