Home | History | Annotate | Download | only in jni
      1 /*
      2 Copyright (C) 1996-1997 Id Software, Inc.
      3 
      4 This program is free software; you can redistribute it and/or
      5 modify it under the terms of the GNU General Public License
      6 as published by the Free Software Foundation; either version 2
      7 of the License, or (at your option) any later version.
      8 
      9 This program is distributed in the hope that it will be useful,
     10 but WITHOUT ANY WARRANTY; without even the implied warranty of
     11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
     12 
     13 See the GNU General Public License for more details.
     14 
     15 You should have received a copy of the GNU General Public License
     16 along with this program; if not, write to the Free Software
     17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
     18 
     19 */
     20 
     21 //
     22 // these are the key numbers that should be passed to Key_Event
     23 //
     24 #define	K_TAB			9
     25 #define	K_ENTER			13
     26 #define	K_ESCAPE		27
     27 #define	K_SPACE			32
     28 
     29 // normal keys should be passed as lowercased ascii
     30 
     31 #define	K_BACKSPACE		127
     32 #define	K_UPARROW		128
     33 #define	K_DOWNARROW		129
     34 #define	K_LEFTARROW		130
     35 #define	K_RIGHTARROW	131
     36 
     37 #define	K_ALT			132
     38 #define	K_CTRL			133
     39 #define	K_SHIFT			134
     40 #define	K_F1			135
     41 #define	K_F2			136
     42 #define	K_F3			137
     43 #define	K_F4			138
     44 #define	K_F5			139
     45 #define	K_F6			140
     46 #define	K_F7			141
     47 #define	K_F8			142
     48 #define	K_F9			143
     49 #define	K_F10			144
     50 #define	K_F11			145
     51 #define	K_F12			146
     52 #define	K_INS			147
     53 #define	K_DEL			148
     54 #define	K_PGDN			149
     55 #define	K_PGUP			150
     56 #define	K_HOME			151
     57 #define	K_END			152
     58 
     59 #define K_PAUSE			255
     60 
     61 //
     62 // mouse buttons generate virtual keys
     63 //
     64 #define	K_MOUSE1		200
     65 #define	K_MOUSE2		201
     66 #define	K_MOUSE3		202
     67 
     68 //
     69 // joystick buttons
     70 //
     71 #define	K_JOY1			203
     72 #define	K_JOY2			204
     73 #define	K_JOY3			205
     74 #define	K_JOY4			206
     75 
     76 //
     77 // aux keys are for multi-buttoned joysticks to generate so they can use
     78 // the normal binding process
     79 //
     80 #define	K_AUX1			207
     81 #define	K_AUX2			208
     82 #define	K_AUX3			209
     83 #define	K_AUX4			210
     84 #define	K_AUX5			211
     85 #define	K_AUX6			212
     86 #define	K_AUX7			213
     87 #define	K_AUX8			214
     88 #define	K_AUX9			215
     89 #define	K_AUX10			216
     90 #define	K_AUX11			217
     91 #define	K_AUX12			218
     92 #define	K_AUX13			219
     93 #define	K_AUX14			220
     94 #define	K_AUX15			221
     95 #define	K_AUX16			222
     96 #define	K_AUX17			223
     97 #define	K_AUX18			224
     98 #define	K_AUX19			225
     99 #define	K_AUX20			226
    100 #define	K_AUX21			227
    101 #define	K_AUX22			228
    102 #define	K_AUX23			229
    103 #define	K_AUX24			230
    104 #define	K_AUX25			231
    105 #define	K_AUX26			232
    106 #define	K_AUX27			233
    107 #define	K_AUX28			234
    108 #define	K_AUX29			235
    109 #define	K_AUX30			236
    110 #define	K_AUX31			237
    111 #define	K_AUX32			238
    112 
    113 // JACK: Intellimouse(c) Mouse Wheel Support
    114 
    115 #define K_MWHEELUP		239
    116 #define K_MWHEELDOWN	240
    117 
    118 
    119 
    120 typedef enum {key_game, key_console, key_message, key_menu, keydest_t_max = 1 << 30} keydest_t;
    121 
    122 extern keydest_t	key_dest;
    123 extern char *keybindings[256];
    124 extern	int		key_repeats[256];
    125 extern	int		key_count;			// incremented every key event
    126 extern	int		key_lastpress;
    127 
    128 void Key_Event (int key, qboolean down);
    129 void Key_Init (void);
    130 void Key_WriteBindings (FILE *f);
    131 void Key_SetBinding (int keynum, const char *binding);
    132 void Key_ClearStates (void);
    133 
    134