2 Copyright (C) 1996-1997 Id Software, Inc.
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.
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.
13 See the GNU General Public License for more details.
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.
22 // these are the key numbers that should be passed to Key_Event
29 // normal keys should be passed as lowercased ascii
31 #define K_BACKSPACE 127
33 #define K_DOWNARROW 129
34 #define K_LEFTARROW 130
35 #define K_RIGHTARROW 131
62 // mouse buttons generate virtual keys
77 // aux keys are for multi-buttoned joysticks to generate so they can use
78 // the normal binding process
113 // JACK: Intellimouse(c) Mouse Wheel Support
115 #define K_MWHEELUP 239
116 #define K_MWHEELDOWN 240
120 typedef enum {key_game
, key_console
, key_message
, key_menu
} keydest_t
;
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
;
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
, char *binding
);
132 void Key_ClearStates (void);