1 //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
9 // Vkey table (terminated by NULL)
10 const VKeyTable g_vkeyTable[] =
12 #define VK(name) { VK_##name, _T(#name) }
21 VK(MBUTTON), // 0x04 /* NOT contiguous with L & RBUTTON */
23 VK(XBUTTON1), // 0x05 /* NOT contiguous with L & RBUTTON */
24 VK(XBUTTON2), // 0x06 /* NOT contiguous with L & RBUTTON */
34 * 0x0A - 0x0B : reserved
47 VK(HANGEUL), // 0x15 /* old name - should be here for compatibility */
57 VK(NONCONVERT), // 0x1D
59 VK(MODECHANGE), // 0x1F
79 * VK_0 - VK_9 are the same as ASCII '0' - '9' (0x30 - 0x39)
81 * VK_A - VK_Z are the same as ASCII 'A' - 'Z' (0x41 - 0x5A)
84 { _T('0'), _T("_0") }, // 30 0
85 { _T('1'), _T("_1") }, // 31 1
86 { _T('2'), _T("_2") }, // 32 2
87 { _T('3'), _T("_3") }, // 33 3
88 { _T('4'), _T("_4") }, // 34 4
89 { _T('5'), _T("_5") }, // 35 5
90 { _T('6'), _T("_6") }, // 36 6
91 { _T('7'), _T("_7") }, // 37 7
92 { _T('8'), _T("_8") }, // 38 8
93 { _T('9'), _T("_9") }, // 39 9
95 { _T('A'), _T("A") }, // 41 A
96 { _T('B'), _T("B") }, // 42 B
97 { _T('C'), _T("C") }, // 43 C
98 { _T('D'), _T("D") }, // 44 D
99 { _T('E'), _T("E") }, // 45 E
100 { _T('F'), _T("F") }, // 46 F
101 { _T('G'), _T("G") }, // 47 G
102 { _T('H'), _T("H") }, // 48 H
103 { _T('I'), _T("I") }, // 49 I
104 { _T('J'), _T("J") }, // 4A J
105 { _T('K'), _T("K") }, // 4B K
106 { _T('L'), _T("L") }, // 4C L
107 { _T('M'), _T("M") }, // 4D M
108 { _T('N'), _T("N") }, // 4E N
109 { _T('O'), _T("O") }, // 4F O
110 { _T('P'), _T("P") }, // 50 P
111 { _T('Q'), _T("Q") }, // 51 Q
112 { _T('R'), _T("R") }, // 52 R
113 { _T('S'), _T("S") }, // 53 S
114 { _T('T'), _T("T") }, // 54 T
115 { _T('U'), _T("U") }, // 55 U
116 { _T('V'), _T("V") }, // 56 V
117 { _T('W'), _T("W") }, // 57 W
118 { _T('X'), _T("X") }, // 58 X
119 { _T('Y'), _T("Y") }, // 59 Y
120 { _T('Z'), _T("Z") }, // 5A Z
142 VK(MULTIPLY), // 0x6A
144 VK(SEPARATOR), // 0x6C
145 VK(SUBTRACT), // 0x6D
174 * 0x88 - 0x8F : unassigned
181 * NEC PC-9800 kbd definitions
183 VK(OEM_NEC_EQUAL), // 0x92 // '=' key on numpad
186 * Fujitsu/OASYS kbd definitions
188 VK(OEM_FJ_JISHO), // 0x92 // 'Dictionary' key
189 VK(OEM_FJ_MASSHOU), // 0x93 // 'Unregister word' key
190 VK(OEM_FJ_TOUROKU), // 0x94 // 'Register word' key
191 VK(OEM_FJ_LOYA), // 0x95 // 'Left OYAYUBI' key
192 VK(OEM_FJ_ROYA), // 0x96 // 'Right OYAYUBI' key
195 * 0x97 - 0x9F : unassigned
199 * VK_L* & VK_R* - left and right Alt, Ctrl and Shift virtual keys.
200 * Used only as parameters to GetAsyncKeyState() and GetKeyState().
201 * No other API or message will distinguish left and right keys in this way.
205 VK(LCONTROL), // 0xA2
206 VK(RCONTROL), // 0xA3
210 VK(BROWSER_BACK), // 0xA6
211 VK(BROWSER_FORWARD), // 0xA7
212 VK(BROWSER_REFRESH), // 0xA8
213 VK(BROWSER_STOP), // 0xA9
214 VK(BROWSER_SEARCH), // 0xAA
215 VK(BROWSER_FAVORITES),// 0xAB
216 VK(BROWSER_HOME), // 0xAC
218 VK(VOLUME_MUTE), // 0xAD
219 VK(VOLUME_DOWN), // 0xAE
220 VK(VOLUME_UP), // 0xAF
221 VK(MEDIA_NEXT_TRACK), // 0xB0
222 VK(MEDIA_PREV_TRACK), // 0xB1
223 VK(MEDIA_STOP), // 0xB2
224 VK(MEDIA_PLAY_PAUSE), // 0xB3
225 VK(LAUNCH_MAIL), // 0xB4
226 VK(LAUNCH_MEDIA_SELECT), // 0xB5
227 VK(LAUNCH_APP1), // 0xB6
228 VK(LAUNCH_APP2), // 0xB7
231 * 0xB8 - 0xB9 : reserved
234 VK(OEM_1), // 0xBA // ';:' for US
235 VK(OEM_PLUS), // 0xBB // '+' any country
236 VK(OEM_COMMA), // 0xBC // ',' any country
237 VK(OEM_MINUS), // 0xBD // '-' any country
238 VK(OEM_PERIOD), // 0xBE // '.' any country
239 VK(OEM_2), // 0xBF // '/?' for US
240 VK(OEM_3), // 0xC0 // '`~' for US
243 * 0xC1 - 0xD7 : reserved
247 * 0xD8 - 0xDA : unassigned
250 VK(OEM_4), // 0xDB // '[{' for US
251 VK(OEM_5), // 0xDC // '\|' for US
252 VK(OEM_6), // 0xDD // ']}' for US
253 VK(OEM_7), // 0xDE // ''"' for US
261 * Various extended or enhanced keyboards
263 VK(OEM_AX), // 0xE1 // 'AX' key on Japanese AX kbd
264 VK(OEM_102), // 0xE2 // "<>" or "\|" on RT 102-key kbd.
265 VK(ICO_HELP), // 0xE3 // Help key on ICO
266 VK(ICO_00), // 0xE4 // 00 key on ICO
268 VK(PROCESSKEY), // 0xE5
270 VK(ICO_CLEAR), // 0xE6
279 * Nokia/Ericsson definitions
281 VK(OEM_RESET), // 0xE9
282 VK(OEM_JUMP), // 0xEA
286 VK(OEM_WSCTRL), // 0xEE
287 VK(OEM_CUSEL), // 0xEF
288 VK(OEM_ATTN), // 0xF0
289 VK(OEM_FINISH), // 0xF1
290 VK(OEM_COPY), // 0xF2
291 VK(OEM_AUTO), // 0xF3
292 VK(OEM_ENLW), // 0xF4
293 VK(OEM_BACKTAB), // 0xF5
303 VK(OEM_CLEAR), // 0xFE
309 #if !defined(VK_DBE_ALPHANUMERIC)
310 VK(DBE_ALPHANUMERIC), // 0x0f0
311 VK(DBE_KATAKANA), // 0x0f1
312 VK(DBE_HIRAGANA), // 0x0f2
313 VK(DBE_SBCSCHAR), // 0x0f3
314 VK(DBE_DBCSCHAR), // 0x0f4
315 VK(DBE_ROMAN), // 0x0f5
316 VK(DBE_NOROMAN), // 0x0f6
317 VK(DBE_ENTERWORDREGISTERMODE), // 0x0f7
318 VK(DBE_ENTERIMECONFIGMODE), // 0x0f8
319 VK(DBE_FLUSHSTRING), // 0x0f9
320 VK(DBE_CODEINPUT), // 0x0fa
321 VK(DBE_NOCODEINPUT), // 0x0fb
322 VK(DBE_DETERMINESTRING), // 0x0fc
323 VK(DBE_ENTERDLGCONVERSIONMODE), // 0x0fd