]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - keys.h
cleaned up glDrawRangeElements limit checking a bit (now done in gl_backend.c)
[xonotic/darkplaces.git] / keys.h
diff --git a/keys.h b/keys.h
index 3fbefd080570b229001e0746cac25110fc0a77c2..7e9b9dd5327c9d849e667c7644b680d719014e46 100644 (file)
--- a/keys.h
+++ b/keys.h
@@ -18,103 +18,133 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 
 */
 
-//
+#ifndef KEYS_H
+#define KEYS_H
+
 // these are the key numbers that should be passed to Key_Event
-//
-#define        K_TAB                   9
-#define        K_ENTER                 13
-#define        K_ESCAPE                27
-#define        K_SPACE                 32
-
-// normal keys should be passed as lowercased ascii
-
-#define        K_BACKSPACE             127
-#define        K_UPARROW               128
-#define        K_DOWNARROW             129
-#define        K_LEFTARROW             130
-#define        K_RIGHTARROW    131
-
-#define        K_ALT                   132
-#define        K_CTRL                  133
-#define        K_SHIFT                 134
-#define        K_F1                    135
-#define        K_F2                    136
-#define        K_F3                    137
-#define        K_F4                    138
-#define        K_F5                    139
-#define        K_F6                    140
-#define        K_F7                    141
-#define        K_F8                    142
-#define        K_F9                    143
-#define        K_F10                   144
-#define        K_F11                   145
-#define        K_F12                   146
-#define        K_INS                   147
-#define        K_DEL                   148
-#define        K_PGDN                  149
-#define        K_PGUP                  150
-#define        K_HOME                  151
-#define        K_END                   152
-
-#define K_PAUSE                        255
-
-//
-// mouse buttons generate virtual keys
-//
-#define        K_MOUSE1                200
-#define        K_MOUSE2                201
-#define        K_MOUSE3                202
-
-//
-// joystick buttons
-//
-#define        K_JOY1                  203
-#define        K_JOY2                  204
-#define        K_JOY3                  205
-#define        K_JOY4                  206
-
-//
-// aux keys are for multi-buttoned joysticks to generate so they can use
-// the normal binding process
-//
-#define        K_AUX1                  207
-#define        K_AUX2                  208
-#define        K_AUX3                  209
-#define        K_AUX4                  210
-#define        K_AUX5                  211
-#define        K_AUX6                  212
-#define        K_AUX7                  213
-#define        K_AUX8                  214
-#define        K_AUX9                  215
-#define        K_AUX10                 216
-#define        K_AUX11                 217
-#define        K_AUX12                 218
-#define        K_AUX13                 219
-#define        K_AUX14                 220
-#define        K_AUX15                 221
-#define        K_AUX16                 222
-#define        K_AUX17                 223
-#define        K_AUX18                 224
-#define        K_AUX19                 225
-#define        K_AUX20                 226
-#define        K_AUX21                 227
-#define        K_AUX22                 228
-#define        K_AUX23                 229
-#define        K_AUX24                 230
-#define        K_AUX25                 231
-#define        K_AUX26                 232
-#define        K_AUX27                 233
-#define        K_AUX28                 234
-#define        K_AUX29                 235
-#define        K_AUX30                 236
-#define        K_AUX31                 237
-#define        K_AUX32                 238
-
-// JACK: Intellimouse(c) Mouse Wheel Support
-
-#define K_MWHEELUP             239
-#define K_MWHEELDOWN   240
 
+typedef enum {
+       K_TAB = 9,
+       K_ENTER = 13,
+       K_ESCAPE = 27,
+       K_SPACE = 32,
+
+       // normal keys should be passed as lowercased ascii
+
+       K_BACKSPACE = 127,
+
+       K_CAPSLOCK,
+       K_PRNTSCR,
+       K_SCRLCK,
+       K_PAUSE,
+
+       K_UPARROW,
+       K_DOWNARROW,
+       K_LEFTARROW,
+       K_RIGHTARROW,
+
+       K_ALT,
+       K_CTRL,
+       K_SHIFT,
+       K_F1,
+       K_F2,
+       K_F3,
+       K_F4,
+       K_F5,
+       K_F6,
+       K_F7,
+       K_F8,
+       K_F9,
+       K_F10,
+       K_F11,
+       K_F12,
+       K_INS,
+       K_DEL,
+       K_PGDN,
+       K_PGUP,
+       K_HOME,
+       K_END,
+
+
+       // Keypad stuff..
+
+       KP_NUMLCK,
+       KP_DIVIDE,
+       KP_MULTIPLY,
+
+       KP_HOME,
+       KP_UPARROW,
+       KP_PGUP,
+       KP_MINUS,
+
+       KP_LEFTARROW,
+       KP_5,
+       KP_RIGHTARROW,
+       KP_PLUS,
+
+       KP_END,
+       KP_DOWNARROW,
+       KP_PGDN,
+
+
+       KP_INS,
+       KP_DEL,
+       KP_ENTER,
+
+       // mouse buttons generate virtual keys
+       K_MOUSE1 = 200,
+       K_MOUSE2,
+       K_MOUSE3,
+
+       // joystick buttons
+       K_JOY1,
+       K_JOY2,
+       K_JOY3,
+       K_JOY4,
+
+       //
+       //// aux keys are for multi-buttoned joysticks to generate so they can use
+       //// the normal binding process
+       ////
+       //
+       K_AUX1,
+       K_AUX2,
+       K_AUX3,
+       K_AUX4,
+       K_AUX5,
+       K_AUX6,
+       K_AUX7,
+       K_AUX8,
+       K_AUX9,
+       K_AUX10,
+       K_AUX11,
+       K_AUX12,
+       K_AUX13,
+       K_AUX14,
+       K_AUX15,
+       K_AUX16,
+       K_AUX17,
+       K_AUX18,
+       K_AUX19,
+       K_AUX20,
+       K_AUX21,
+       K_AUX22,
+       K_AUX23,
+       K_AUX24,
+       K_AUX25,
+       K_AUX26,
+       K_AUX27,
+       K_AUX28,
+       K_AUX29,
+       K_AUX30,
+       K_AUX31,
+       K_AUX32,
+
+       // JACK: Intellimouse(c) Mouse Wheel Support
+
+       K_MWHEELUP,
+       K_MWHEELDOWN
+} keynum_t;
 
 
 typedef enum {key_game, key_console, key_message, key_menu} keydest_t;
@@ -127,7 +157,9 @@ extern      int             key_lastpress;
 
 void Key_Event (int key, qboolean down);
 void Key_Init (void);
-void Key_WriteBindings (FILE *f);
+void Key_WriteBindings (QFile *f);
 void Key_SetBinding (int keynum, char *binding);
 void Key_ClearStates (void);
 
+#endif
+