UFO: Alien Invasion
Toggle main menu visibility
Loading...
Searching...
No Matches
cl_keys.h
Go to the documentation of this file.
1
5
6
/*
7
All original material Copyright (C) 2002-2025 UFO: Alien Invasion.
8
9
Original file from Quake 2 v3.21: quake2-2.31/client/keys.h
10
Copyright (C) 1997-2001 Id Software, Inc.
11
12
This program is free software; you can redistribute it and/or
13
modify it under the terms of the GNU General Public License
14
as published by the Free Software Foundation; either version 2
15
of the License, or (at your option) any later version.
16
17
This program is distributed in the hope that it will be useful,
18
but WITHOUT ANY WARRANTY; without even the implied warranty of
19
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
20
21
See the GNU General Public License for more details.
22
23
You should have received a copy of the GNU General Public License
24
along with this program; if not, write to the Free Software
25
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
26
27
*/
28
29
#pragma once
30
31
/* these are the key numbers that should be passed to KeyEvent */
32
33
/* normal keys should be passed as lowercased ascii */
34
35
typedef
enum
{
36
K_FIRST_KEY
,
37
38
K_BACKSPACE
= 8,
39
K_TAB
= 9,
40
K_ENTER
= 13,
41
K_PAUSE
= 19,
42
K_ESCAPE
= 27,
43
K_SPACE
= 32,
44
K_DEL
= 127,
45
46
K_MOUSE1
= 200,
47
K_MOUSE2
= 201,
48
K_MOUSE3
= 202,
49
K_MWHEELDOWN
= 239,
50
K_MWHEELUP
= 240,
51
K_MOUSE4
= 241,
52
K_MOUSE5
= 242,
53
54
K_KP_INS
= 256,
55
K_KP_END
= 257,
56
K_KP_DOWNARROW
= 258,
57
K_KP_PGDN
= 259,
58
K_KP_LEFTARROW
= 260,
59
K_KP_5
= 261,
60
K_KP_RIGHTARROW
= 262,
61
K_KP_HOME
= 263,
62
K_KP_UPARROW
= 264,
63
K_KP_PGUP
= 265,
64
K_KP_DEL
= 266,
65
K_KP_SLASH
= 267,
66
K_KP_MULTIPLY
= 268,
67
K_KP_MINUS
= 269,
68
K_KP_PLUS
= 270,
69
K_KP_ENTER
= 271,
70
K_KP_NUMLOCK
= 272,
71
72
K_UPARROW
= 273,
73
K_DOWNARROW
= 274,
74
K_RIGHTARROW
= 275,
75
K_LEFTARROW
= 276,
76
77
K_HOME
= 278,
78
K_END
= 279,
79
K_PGUP
= 280,
80
K_PGDN
= 281,
81
K_F1
= 282,
82
K_F2
= 283,
83
K_F3
= 284,
84
K_F4
= 285,
85
K_F5
= 286,
86
K_F6
= 287,
87
K_F7
= 288,
88
K_F8
= 289,
89
K_F9
= 290,
90
K_F10
= 291,
91
K_F11
= 292,
92
K_F12
= 293,
93
K_F13
= 294,
94
K_F14
= 295,
95
K_F15
= 296,
96
K_INS
= 277,
97
K_SHIFT
= 304,
98
K_CTRL
= 306,
99
K_ALT
= 308,
100
101
K_JOY1
,
102
K_JOY2
,
103
K_JOY3
,
104
K_JOY4
,
105
K_JOY5
,
106
K_JOY6
,
107
K_JOY7
,
108
K_JOY8
,
109
K_JOY9
,
110
K_JOY10
,
111
K_JOY11
,
112
K_JOY12
,
113
K_JOY13
,
114
K_JOY14
,
115
K_JOY15
,
116
K_JOY16
,
117
K_JOY17
,
118
K_JOY18
,
119
K_JOY19
,
120
K_JOY20
,
121
K_JOY21
,
122
K_JOY22
,
123
K_JOY23
,
124
K_JOY24
,
125
K_JOY25
,
126
K_JOY26
,
127
K_JOY27
,
128
K_JOY28
,
129
K_JOY29
,
130
K_JOY30
,
131
K_JOY31
,
132
K_JOY32
,
133
134
K_AUX1
,
135
K_AUX2
,
136
K_AUX3
,
137
K_AUX4
,
138
K_AUX5
,
139
K_AUX6
,
140
K_AUX7
,
141
K_AUX8
,
142
K_AUX9
,
143
K_AUX10
,
144
K_AUX11
,
145
K_AUX12
,
146
K_AUX13
,
147
K_AUX14
,
148
K_AUX15
,
149
K_AUX16
,
150
151
K_NUMLOCK
,
152
K_SUPER
,
153
K_COMPOSE
,
154
K_MODE
,
155
K_HELP
,
156
K_PRINT
,
157
K_SYSREQ
,
158
K_SCROLLOCK
,
159
K_BREAK
,
160
K_MENU
,
161
K_EURO
,
162
K_UNDO
,
163
164
K_COMMAND
,
165
K_CAPSLOCK
,
166
K_POWER
,
167
K_APPS
,
168
169
K_LAST_KEY
= 511,
/* to support as many chars as posible */
170
K_KEY_SIZE
= 512
171
}
keyNum_t
;
172
173
typedef
enum
{
174
KEYSPACE_UI
,
175
KEYSPACE_GAME
,
176
KEYSPACE_BATTLE
,
177
178
KEYSPACE_MAX
179
}
keyBindSpace_t
;
180
181
typedef
enum
{
182
key_game
,
183
key_console
184
}
keydest_t
;
185
186
#define MAXKEYLINES 32
187
188
extern
int
msgMode
;
189
extern
char
msgBuffer
[
MAXCMDLINE
];
190
extern
size_t
msgBufferLen
;
191
extern
char
keyLines
[
MAXKEYLINES
][
MAXCMDLINE
];
192
extern
uint32_t
keyLinePos
;
193
extern
int
historyLine
;
194
extern
int
editLine
;
195
extern
char
*
keyBindings
[
K_KEY_SIZE
];
196
extern
char
*
menuKeyBindings
[
K_KEY_SIZE
];
197
extern
char
*
battleKeyBindings
[
K_KEY_SIZE
];
198
199
bool
Key_IsDown
(
unsigned
int
key
);
200
bool
Key_IsNumlock
(
void
);
201
void
Key_SetDest
(
keydest_t
key_dest);
202
void
Key_Event
(
unsigned
int
key
,
unsigned
short
unicode
,
bool
down
,
unsigned
time);
203
void
Key_Init
(
void
);
204
void
Key_WriteBindings
(
const
char
*
filename
);
205
const
char
*
Key_GetBinding
(
const
char
*
binding
,
keyBindSpace_t
space);
206
const
char
*
Key_KeynumToString
(
int
keynum);
207
int
Key_StringToKeynum
(
const
char
* str);
208
void
Key_SetBinding
(
int
keynum,
const
char
*
binding
,
keyBindSpace_t
space);
key
unsigned int key
Definition
cl_input.cpp:64
down
int down
Definition
cl_input.cpp:66
unicode
unsigned short unicode
Definition
cl_input.cpp:65
keyLines
char keyLines[MAXKEYLINES][MAXCMDLINE]
Definition
cl_keys.cpp:37
keyBindings
char * keyBindings[K_KEY_SIZE]
Definition
cl_keys.cpp:63
editLine
int editLine
Definition
cl_keys.cpp:42
msgBuffer
char msgBuffer[MAXCMDLINE]
Definition
cl_keys.cpp:46
menuKeyBindings
char * menuKeyBindings[K_KEY_SIZE]
Definition
cl_keys.cpp:64
keyLinePos
uint32_t keyLinePos
Definition
cl_keys.cpp:38
historyLine
int historyLine
Definition
cl_keys.cpp:43
msgBufferLen
size_t msgBufferLen
Definition
cl_keys.cpp:47
msgMode
int msgMode
Definition
cl_keys.cpp:45
battleKeyBindings
char * battleKeyBindings[K_KEY_SIZE]
Definition
cl_keys.cpp:65
Key_Init
void Key_Init(void)
Definition
cl_keys.cpp:776
Key_IsDown
bool Key_IsDown(unsigned int key)
Checks whether a given key is currently pressed.
Definition
cl_keys.cpp:214
Key_GetBinding
const char * Key_GetBinding(const char *binding, keyBindSpace_t space)
Return the key binding for a given script command.
Definition
cl_keys.cpp:511
Key_SetBinding
void Key_SetBinding(int keynum, const char *binding, keyBindSpace_t space)
Bind a keynum to script command.
Definition
cl_keys.cpp:547
Key_WriteBindings
void Key_WriteBindings(const char *filename)
Writes lines containing "bind key value".
Definition
cl_keys.cpp:664
Key_SetDest
void Key_SetDest(keydest_t key_dest)
Sets the keyDest in cls.
Definition
cl_keys.cpp:815
Key_IsNumlock
bool Key_IsNumlock(void)
Definition
cl_keys.cpp:221
keydest_t
keydest_t
Definition
cl_keys.h:181
key_game
@ key_game
Definition
cl_keys.h:182
key_console
@ key_console
Definition
cl_keys.h:183
Key_KeynumToString
const char * Key_KeynumToString(int keynum)
Convert a given keynum to string.
Definition
cl_keys.cpp:485
Key_Event
void Key_Event(unsigned int key, unsigned short unicode, bool down, unsigned time)
Called by the system between frames for both key up and key down events.
Definition
cl_keys.cpp:841
keyNum_t
keyNum_t
Definition
cl_keys.h:35
K_F2
@ K_F2
Definition
cl_keys.h:82
K_FIRST_KEY
@ K_FIRST_KEY
Definition
cl_keys.h:36
K_F1
@ K_F1
Definition
cl_keys.h:81
K_MOUSE4
@ K_MOUSE4
Definition
cl_keys.h:51
K_JOY19
@ K_JOY19
Definition
cl_keys.h:119
K_SHIFT
@ K_SHIFT
Definition
cl_keys.h:97
K_KP_5
@ K_KP_5
Definition
cl_keys.h:59
K_F12
@ K_F12
Definition
cl_keys.h:92
K_KP_RIGHTARROW
@ K_KP_RIGHTARROW
Definition
cl_keys.h:60
K_DEL
@ K_DEL
Definition
cl_keys.h:44
K_JOY22
@ K_JOY22
Definition
cl_keys.h:122
K_KP_MINUS
@ K_KP_MINUS
Definition
cl_keys.h:67
K_JOY21
@ K_JOY21
Definition
cl_keys.h:121
K_F6
@ K_F6
Definition
cl_keys.h:86
K_JOY32
@ K_JOY32
Definition
cl_keys.h:132
K_F4
@ K_F4
Definition
cl_keys.h:84
K_JOY7
@ K_JOY7
Definition
cl_keys.h:107
K_AUX15
@ K_AUX15
Definition
cl_keys.h:148
K_KP_PGDN
@ K_KP_PGDN
Definition
cl_keys.h:57
K_JOY12
@ K_JOY12
Definition
cl_keys.h:112
K_EURO
@ K_EURO
Definition
cl_keys.h:161
K_JOY25
@ K_JOY25
Definition
cl_keys.h:125
K_MOUSE5
@ K_MOUSE5
Definition
cl_keys.h:52
K_KP_DEL
@ K_KP_DEL
Definition
cl_keys.h:64
K_KP_PGUP
@ K_KP_PGUP
Definition
cl_keys.h:63
K_MENU
@ K_MENU
Definition
cl_keys.h:160
K_LAST_KEY
@ K_LAST_KEY
Definition
cl_keys.h:169
K_JOY17
@ K_JOY17
Definition
cl_keys.h:117
K_KP_UPARROW
@ K_KP_UPARROW
Definition
cl_keys.h:62
K_KP_INS
@ K_KP_INS
Definition
cl_keys.h:54
K_KP_PLUS
@ K_KP_PLUS
Definition
cl_keys.h:68
K_NUMLOCK
@ K_NUMLOCK
Definition
cl_keys.h:151
K_COMPOSE
@ K_COMPOSE
Definition
cl_keys.h:153
K_ALT
@ K_ALT
Definition
cl_keys.h:99
K_JOY23
@ K_JOY23
Definition
cl_keys.h:123
K_MWHEELUP
@ K_MWHEELUP
Definition
cl_keys.h:50
K_KP_END
@ K_KP_END
Definition
cl_keys.h:55
K_JOY30
@ K_JOY30
Definition
cl_keys.h:130
K_F13
@ K_F13
Definition
cl_keys.h:93
K_JOY10
@ K_JOY10
Definition
cl_keys.h:110
K_SUPER
@ K_SUPER
Definition
cl_keys.h:152
K_JOY4
@ K_JOY4
Definition
cl_keys.h:104
K_JOY13
@ K_JOY13
Definition
cl_keys.h:113
K_JOY14
@ K_JOY14
Definition
cl_keys.h:114
K_COMMAND
@ K_COMMAND
Definition
cl_keys.h:164
K_JOY15
@ K_JOY15
Definition
cl_keys.h:115
K_JOY16
@ K_JOY16
Definition
cl_keys.h:116
K_ENTER
@ K_ENTER
Definition
cl_keys.h:40
K_F9
@ K_F9
Definition
cl_keys.h:89
K_F14
@ K_F14
Definition
cl_keys.h:94
K_MOUSE2
@ K_MOUSE2
Definition
cl_keys.h:47
K_MOUSE1
@ K_MOUSE1
Definition
cl_keys.h:46
K_MODE
@ K_MODE
Definition
cl_keys.h:154
K_AUX13
@ K_AUX13
Definition
cl_keys.h:146
K_AUX2
@ K_AUX2
Definition
cl_keys.h:135
K_UPARROW
@ K_UPARROW
Definition
cl_keys.h:72
K_F8
@ K_F8
Definition
cl_keys.h:88
K_AUX9
@ K_AUX9
Definition
cl_keys.h:142
K_ESCAPE
@ K_ESCAPE
Definition
cl_keys.h:42
K_F5
@ K_F5
Definition
cl_keys.h:85
K_UNDO
@ K_UNDO
Definition
cl_keys.h:162
K_JOY18
@ K_JOY18
Definition
cl_keys.h:118
K_JOY5
@ K_JOY5
Definition
cl_keys.h:105
K_JOY31
@ K_JOY31
Definition
cl_keys.h:131
K_JOY29
@ K_JOY29
Definition
cl_keys.h:129
K_POWER
@ K_POWER
Definition
cl_keys.h:166
K_JOY3
@ K_JOY3
Definition
cl_keys.h:103
K_JOY9
@ K_JOY9
Definition
cl_keys.h:109
K_AUX3
@ K_AUX3
Definition
cl_keys.h:136
K_JOY28
@ K_JOY28
Definition
cl_keys.h:128
K_JOY26
@ K_JOY26
Definition
cl_keys.h:126
K_AUX5
@ K_AUX5
Definition
cl_keys.h:138
K_SYSREQ
@ K_SYSREQ
Definition
cl_keys.h:157
K_JOY27
@ K_JOY27
Definition
cl_keys.h:127
K_AUX6
@ K_AUX6
Definition
cl_keys.h:139
K_AUX7
@ K_AUX7
Definition
cl_keys.h:140
K_PGUP
@ K_PGUP
Definition
cl_keys.h:79
K_AUX11
@ K_AUX11
Definition
cl_keys.h:144
K_PAUSE
@ K_PAUSE
Definition
cl_keys.h:41
K_JOY20
@ K_JOY20
Definition
cl_keys.h:120
K_KP_DOWNARROW
@ K_KP_DOWNARROW
Definition
cl_keys.h:56
K_KP_NUMLOCK
@ K_KP_NUMLOCK
Definition
cl_keys.h:70
K_JOY24
@ K_JOY24
Definition
cl_keys.h:124
K_AUX1
@ K_AUX1
Definition
cl_keys.h:134
K_BACKSPACE
@ K_BACKSPACE
Definition
cl_keys.h:38
K_JOY2
@ K_JOY2
Definition
cl_keys.h:102
K_CAPSLOCK
@ K_CAPSLOCK
Definition
cl_keys.h:165
K_KP_SLASH
@ K_KP_SLASH
Definition
cl_keys.h:65
K_HELP
@ K_HELP
Definition
cl_keys.h:155
K_MOUSE3
@ K_MOUSE3
Definition
cl_keys.h:48
K_END
@ K_END
Definition
cl_keys.h:78
K_JOY11
@ K_JOY11
Definition
cl_keys.h:111
K_F15
@ K_F15
Definition
cl_keys.h:95
K_APPS
@ K_APPS
Definition
cl_keys.h:167
K_SCROLLOCK
@ K_SCROLLOCK
Definition
cl_keys.h:158
K_INS
@ K_INS
Definition
cl_keys.h:96
K_F10
@ K_F10
Definition
cl_keys.h:90
K_KP_ENTER
@ K_KP_ENTER
Definition
cl_keys.h:69
K_CTRL
@ K_CTRL
Definition
cl_keys.h:98
K_AUX14
@ K_AUX14
Definition
cl_keys.h:147
K_KP_LEFTARROW
@ K_KP_LEFTARROW
Definition
cl_keys.h:58
K_JOY8
@ K_JOY8
Definition
cl_keys.h:108
K_MWHEELDOWN
@ K_MWHEELDOWN
Definition
cl_keys.h:49
K_F11
@ K_F11
Definition
cl_keys.h:91
K_KP_MULTIPLY
@ K_KP_MULTIPLY
Definition
cl_keys.h:66
K_SPACE
@ K_SPACE
Definition
cl_keys.h:43
K_HOME
@ K_HOME
Definition
cl_keys.h:77
K_AUX10
@ K_AUX10
Definition
cl_keys.h:143
K_PRINT
@ K_PRINT
Definition
cl_keys.h:156
K_TAB
@ K_TAB
Definition
cl_keys.h:39
K_JOY6
@ K_JOY6
Definition
cl_keys.h:106
K_AUX8
@ K_AUX8
Definition
cl_keys.h:141
K_RIGHTARROW
@ K_RIGHTARROW
Definition
cl_keys.h:74
K_KEY_SIZE
@ K_KEY_SIZE
Definition
cl_keys.h:170
K_F3
@ K_F3
Definition
cl_keys.h:83
K_F7
@ K_F7
Definition
cl_keys.h:87
K_DOWNARROW
@ K_DOWNARROW
Definition
cl_keys.h:73
K_KP_HOME
@ K_KP_HOME
Definition
cl_keys.h:61
K_AUX16
@ K_AUX16
Definition
cl_keys.h:149
K_JOY1
@ K_JOY1
Definition
cl_keys.h:101
K_BREAK
@ K_BREAK
Definition
cl_keys.h:159
K_AUX4
@ K_AUX4
Definition
cl_keys.h:137
K_AUX12
@ K_AUX12
Definition
cl_keys.h:145
K_PGDN
@ K_PGDN
Definition
cl_keys.h:80
K_LEFTARROW
@ K_LEFTARROW
Definition
cl_keys.h:75
keyBindSpace_t
keyBindSpace_t
Definition
cl_keys.h:173
KEYSPACE_UI
@ KEYSPACE_UI
Definition
cl_keys.h:174
KEYSPACE_MAX
@ KEYSPACE_MAX
Definition
cl_keys.h:178
KEYSPACE_BATTLE
@ KEYSPACE_BATTLE
Definition
cl_keys.h:176
KEYSPACE_GAME
@ KEYSPACE_GAME
Definition
cl_keys.h:175
MAXKEYLINES
#define MAXKEYLINES
Definition
cl_keys.h:186
Key_StringToKeynum
int Key_StringToKeynum(const char *str)
Convert to given string to keynum.
Definition
cl_keys.cpp:462
MAXCMDLINE
#define MAXCMDLINE
Definition
common.h:285
filename
const char * filename
Definition
ioapi.h:41
binding
const uiKeyBinding_t * binding
Definition
ui_node_window.cpp:449
src
client
input
cl_keys.h
Generated on __DATE__ __TIME__ for UFO: Alien Invasion by
1.17.0