/*
 *      Copyright (C) 2005-2009 Team XBMC
 *      http://xbmc.org
 *
 *  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; either version 2, or (at your option)
 *  any later version.
 *
 *  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 for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with XBMC Remote; see the file license.  If not, write to
 *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 *  http://www.gnu.org/copyleft/gpl.html
 *
 */

package org.xbmc.kore.eventclient;

/**
 * Remote control and keyboard strings, taken from xbmc/ButtonTranslator.cpp
 * 
 * @author Team XBMC
 */
public final class ButtonCodes {
	/**
	 * "KB" => standard keyboard map ( <keyboard> section )
	 * "XG" => xbox gamepad map ( <gamepad> section )
	 * "R1" => xbox remote map ( <remote> section )
	 * "R2" => xbox universal remote map ( <universalremote> section )
	 * "LI:devicename" => LIRC remote map where 'devicename' is the actual device's name
	 */
	public static final String MAP_KEYBOARD = "KB";
	public static final String MAP_GAMEPAD = "XG";
	public static final String MAP_REMOTE = "R1";
	public static final String MAP_UNIVERSAL_REMOTE = "R2";

	public static final String REMOTE_LEFT = "left";
	public static final String REMOTE_RIGHT = "right";
	public static final String REMOTE_UP = "up";
	public static final String REMOTE_DOWN = "down";
	public static final String REMOTE_SELECT = "select";
	public static final String REMOTE_BACK = "back";
	public static final String REMOTE_MENU = "menu";
	public static final String REMOTE_INFO = "info";
	public static final String REMOTE_DISPLAY = "display";
	public static final String REMOTE_TITLE = "title";
	public static final String REMOTE_PLAY = "play";
	public static final String REMOTE_PAUSE = "pause";
	public static final String REMOTE_REVERSE = "reverse";
	public static final String REMOTE_FORWARD = "forward";
	public static final String REMOTE_SKIP_PLUS = "skipplus";
	public static final String REMOTE_SKIP_MINUS = "skipminus";
	public static final String REMOTE_STOP = "stop";
	public static final String REMOTE_0 = "zero";
	public static final String REMOTE_1 = "one";
	public static final String REMOTE_2 = "two";
	public static final String REMOTE_3 = "three";
	public static final String REMOTE_4 = "four";
	public static final String REMOTE_5 = "five";
	public static final String REMOTE_6 = "six";
	public static final String REMOTE_7 = "seven";
	public static final String REMOTE_8 = "eight";
	public static final String REMOTE_9 = "nine";
	// additional keys from the media center extender for xbox remote
	public static final String REMOTE_POWER = "power";
	public static final String REMOTE_MY_TV = "mytv";
	public static final String REMOTE_MY_MUSIC = "mymusic";
	public static final String REMOTE_MY_PICTURES = "mypictures";
	public static final String REMOTE_MY_VIDEOS = "myvideo";
	public static final String REMOTE_RECORD = "record";
	public static final String REMOTE_START = "start";
	public static final String REMOTE_VOLUME_PLUS = "volumeplus";
	public static final String REMOTE_VOLUME_MINUS = "volumeminus";
	public static final String REMOTE_CHANNEL_PLUS = "channelplus";
	public static final String REMOTE_CHANNEL_MINUS = "channelminus";
	public static final String REMOTE_PAGE_PLUS = "pageplus";
	public static final String REMOTE_PAGE_MINUS = "pageminus";
	public static final String REMOTE_MUTE = "mute";
	public static final String REMOTE_RECORDED_TV = "recordedtv";
	public static final String REMOTE_GUIDE = "guide";
	public static final String REMOTE_LIVE_TV = "livetv";
	public static final String REMOTE_STAR = "star";
	public static final String REMOTE_HASH = "hash";
	public static final String REMOTE_CLEAR = "clear";
	public static final String REMOTE_ENTER = "enter";
	public static final String REMOTE_XBOX = "xbox";

	public static final String KEYBOARD_RETURN = "return";
	public static final String KEYBOARD_ENTER = "enter";
	public static final String KEYBOARD_ESCAPE = "escape";
	public static final String KEYBOARD_ESC = "esc";
	public static final String KEYBOARD_TAB = "tab";
	public static final String KEYBOARD_SPACE = "space";
	public static final String KEYBOARD_LEFT = "left";
	public static final String KEYBOARD_RIGHT = "right";
	public static final String KEYBOARD_UP = "up";
	public static final String KEYBOARD_DOWN = "down";
	public static final String KEYBOARD_INSERT = "insert";
	public static final String KEYBOARD_DELETE = "delete";
	public static final String KEYBOARD_HOME = "home";
	public static final String KEYBOARD_END = "end";
	public static final String KEYBOARD_F1 = "f1";
	public static final String KEYBOARD_F2 = "f2";
	public static final String KEYBOARD_F3 = "f3";
	public static final String KEYBOARD_F4 = "f4";
	public static final String KEYBOARD_F5 = "f5";
	public static final String KEYBOARD_F6 = "f6";
	public static final String KEYBOARD_F7 = "f7";
	public static final String KEYBOARD_F8 = "f8";
	public static final String KEYBOARD_F9 = "f9";
	public static final String KEYBOARD_F10 = "f10";
	public static final String KEYBOARD_F11 = "f11";
	public static final String KEYBOARD_F12 = "f12";
	public static final String KEYBOARD_NUMPAD_ZERO = "numpadzero";
	public static final String KEYBOARD_NUMPAD_1 = "numpadone";
	public static final String KEYBOARD_NUMPAD_2 = "numpadtwo";
	public static final String KEYBOARD_NUMPAD_3 = "numpadthree";
	public static final String KEYBOARD_NUMPAD_4 = "numpadfour";
	public static final String KEYBOARD_NUMPAD_5 = "numpadfive";
	public static final String KEYBOARD_NUMPAD_6 = "numpadsix";
	public static final String KEYBOARD_NUMPAD_7 = "numpadseven";
	public static final String KEYBOARD_NUMPAD_8 = "numpadeight";
	public static final String KEYBOARD_NUMPAD_9 = "numpadnine";
	public static final String KEYBOARD_NUMPAD_TIMES = "numpadtimes";
	public static final String KEYBOARD_NUMPAD_PLUS = "numpadplus";
	public static final String KEYBOARD_NUMPAD_MINUS = "numpadminus";
	public static final String KEYBOARD_NUMPAD_PERIOD = "numpadperiod";
	public static final String KEYBOARD_NUMPAD_DIVIDE = "numpaddivide";
	public static final String KEYBOARD_PAGEUP = "pageup";
	public static final String KEYBOARD_PAGEDOWN = "pagedown";
	public static final String KEYBOARD_PRINTSCREEN = "printscreen";
	public static final String KEYBOARD_BACKSPACE = "backspace";
	public static final String KEYBOARD_MENU = "menu";
	public static final String KEYBOARD_PAUSE = "pause";
	public static final String KEYBOARD_LEFTSHIFT = "leftshift";
	public static final String KEYBOARD_RIGHTSHIFT = "rightshift";
	public static final String KEYBOARD_LEFTCTRL = "leftctrl";
	public static final String KEYBOARD_RIGHTCTRL = "rightctrl";
	public static final String KEYBOARD_LEFTALT = "leftalt";
	public static final String KEYBOARD_RIGHTALT = "rightalt";
	public static final String KEYBOARD_LEFTWINDOWS = "leftwindows";
	public static final String KEYBOARD_RIGHTWINDOWS = "rightwindows";
	public static final String KEYBOARD_CAPSLOCK = "capslock";
	public static final String KEYBOARD_NUMLOCK = "numlock";
	public static final String KEYBOARD_SCROLLLOCK = "scrolllock";
	public static final String KEYBOARD_SEMICOLON = "semicolon";
	public static final String KEYBOARD_COLON = "colon";
	public static final String KEYBOARD_EQUALS = "equals";
	public static final String KEYBOARD_PLUS = "plus";
	public static final String KEYBOARD_COMMA = "comma";
	public static final String KEYBOARD_LESSTHAN = "lessthan";
	public static final String KEYBOARD_MINUS = "minus";
	public static final String KEYBOARD_UNDERLINE = "underline";
	public static final String KEYBOARD_PERIOD = "period";
	public static final String KEYBOARD_GREATERTHAN = "greaterthan";
	public static final String KEYBOARD_FORWARDSLASH = "forwardslash";
	public static final String KEYBOARD_QUESTIONMARK = "questionmark";
	public static final String KEYBOARD_LEFTQUOTE = "leftquote";
	public static final String KEYBOARD_TILDE = "tilde";
	public static final String KEYBOARD_OPENSQUAREBRACKET = "opensquarebracket";
	public static final String KEYBOARD_OPENBRACE = "openbrace";
	public static final String KEYBOARD_BACKSLASH = "backslash";
	public static final String KEYBOARD_PIPE = "pipe";
	public static final String KEYBOARD_CLOSESQUAREBRACKET = "closesquarebracket";
	public static final String KEYBOARD_CLOSEBRACE = "closebrace";
	public static final String KEYBOARD_QUOTE = "quote";
	public static final String KEYBOARD_DOUBLEQUOTE = "doublequote";
	public static final String KEYBOARD_LAUNCH_MAIL = "launch_mail";
	public static final String KEYBOARD_BROWSER_HOME = "browser_home";
	public static final String KEYBOARD_BROWSER_FAVORITES = "browser_favorites";
	public static final String KEYBOARD_BROWSER_REFRESH = "browser_refresh";
	public static final String KEYBOARD_BROWSER_SEARCH = "browser_search";
	public static final String KEYBOARD_LAUNCH_APP1_PC_ICON = "launch_app1_pc_icon";
	public static final String KEYBOARD_LAUNCH_MEDIA_SELECT = "launch_media_select";
	public static final String KEYBOARD_PLAY_PAUSE = "play_pause";
	public static final String KEYBOARD_STOP = "stop";
	public static final String KEYBOARD_VOLUME_UP = "volume_up";
	public static final String KEYBOARD_VOLUME_MUTE = "volume_mute";
	public static final String KEYBOARD_VOLUME_DOWN = "volume_down";
	public static final String KEYBOARD_PREV_TRACK = "prev_track";
	public static final String KEYBOARD_NEXT_TRACK = "next_track";
	
	public static final String GAMEPAD_LEFT_ANALOG_TRIGGER = "leftanalogtrigger";
	public static final String GAMEPAD_RIGHT_ANALOG_TRIGGER = "rightanalogtrigger";

}