test.html
1 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
---|---|
2 |
<html>
|
3 |
<head>
|
4 |
<title>Javascript Key Event Tester</title> |
5 |
<script type="text/javascript"> |
6 |
"use strict";
|
7 |
|
8 |
function simulateKeyPress(elementId, code, ctrlKey, altKey, shiftKey, metaKey) {
|
9 |
simulateKeyPressExt(elementId, code, code, ctrlKey, altKey, shiftKey, metaKey);
|
10 |
}
|
11 |
|
12 |
function simulateKeyPressExt(elementId, code, charCode, ctrlKey, altKey, shiftKey, metaKey) {
|
13 |
var ch;
|
14 |
try
|
15 |
{
|
16 |
ch = String.fromCodePoint(charCode);
|
17 |
}
|
18 |
catch (ex)
|
19 |
{
|
20 |
ch = "";
|
21 |
}
|
22 |
|
23 |
var input = document.getElementById(elementId);
|
24 |
|
25 |
if (ctrlKey)
|
26 |
{
|
27 |
input.dispatchEvent(createKeyDownUpEvent(true, 17, ctrlKey, altKey, shiftKey, metaKey));
|
28 |
}
|
29 |
if (altKey)
|
30 |
{
|
31 |
input.dispatchEvent(createKeyDownUpEvent(true, 18, ctrlKey, altKey, shiftKey, metaKey));
|
32 |
}
|
33 |
if (shiftKey)
|
34 |
{
|
35 |
input.dispatchEvent(createKeyDownUpEvent(true, 16, ctrlKey, altKey, shiftKey, metaKey));
|
36 |
}
|
37 |
var keyDownEvent = createKeyDownUpEvent(true, code, ctrlKey, altKey, shiftKey, metaKey);
|
38 |
input.dispatchEvent(keyDownEvent);
|
39 |
if (keyDownEvent.defaultPrevented)
|
40 |
{
|
41 |
return;
|
42 |
}
|
43 |
if (ch !== "") {
|
44 |
input.dispatchEvent(createKeyPressEvent(ch.charCodeAt(0), ctrlKey, altKey, shiftKey, metaKey));
|
45 |
}
|
46 |
input.dispatchEvent(createKeyDownUpEvent(false, code, ctrlKey, altKey, shiftKey, metaKey));
|
47 |
|
48 |
if (ctrlKey)
|
49 |
{
|
50 |
input.dispatchEvent(createKeyDownUpEvent(false, 17, false, altKey, shiftKey, metaKey));
|
51 |
}
|
52 |
if (altKey)
|
53 |
{
|
54 |
input.dispatchEvent(createKeyDownUpEvent(false, 18, false, false, shiftKey, metaKey));
|
55 |
}
|
56 |
if (shiftKey)
|
57 |
{
|
58 |
input.dispatchEvent(createKeyDownUpEvent(false, 16, false, false, false, metaKey));
|
59 |
}
|
60 |
|
61 |
}
|
62 |
|
63 |
function createKeyDownUpEvent(down, code, ctrlKey, altKey, shiftKey, metaKey)
|
64 |
{
|
65 |
var event = document.createEvent("KeyEvents");
|
66 |
|
67 |
event.initKeyEvent(down ? "keydown" : "keyup", false, true, null, ctrlKey,
|
68 |
altKey, shiftKey, metaKey, code, 0);
|
69 |
return event;
|
70 |
}
|
71 |
|
72 |
function createKeyPressEvent(charCode, ctrlKey, altKey, shiftKey, metaKey)
|
73 |
{
|
74 |
var event = document.createEvent("KeyEvents");
|
75 |
|
76 |
event.initKeyEvent("keypress", false, true, null, ctrlKey,
|
77 |
altKey, shiftKey, metaKey, 0, charCode);
|
78 |
return event;
|
79 |
}
|
80 |
</script>
|
81 |
<script type="text/javascript" > |
82 |
var p2j = {};
|
83 |
p2j.isFirefox = true;
|
84 |
</script>
|
85 |
|
86 |
<script type="text/javascript" src=p2j.keymap.js></script> |
87 |
<script type="text/javascript" src=p2j.keyboard.js></script> |
88 |
<script language="JavaScript"> |
89 |
|
90 |
function init(isGui)
|
91 |
{
|
92 |
var cfg = {
|
93 |
isGui : isGui
|
94 |
};
|
95 |
p2j.keyboard.init(cfg);
|
96 |
p2j.clipboard = {
|
97 |
enabled : false,
|
98 |
needsSelection : function() {},
|
99 |
haveSelection : function() {},
|
100 |
clearSelection : function() {}
|
101 |
};
|
102 |
p2j.socket = {
|
103 |
send : function(data)
|
104 |
{
|
105 |
var ch = data[1] << 8 | data[2];
|
106 |
addResult(document.testform.results, ch);
|
107 |
}};
|
108 |
|
109 |
document.testform.testArea.value = '';
|
110 |
document.testform.results.value = '';
|
111 |
}
|
112 |
|
113 |
function addResult(el, t)
|
114 |
{
|
115 |
var old= el.value;
|
116 |
el.value = old + '\n' + t;
|
117 |
}
|
118 |
|
119 |
function run4GLKeyTest(isGui)
|
120 |
{
|
121 |
init(isGui);
|
122 |
// 0 CTRL-@
|
123 |
simulateKeyPress("testArea", '2'.codePointAt(0), true, false, false, false);
|
124 |
// 1 CTRL-A
|
125 |
simulateKeyPress("testArea", 'A'.codePointAt(0), true, false, false, false);
|
126 |
// 2 CTRL-B
|
127 |
simulateKeyPress("testArea", 'B'.codePointAt(0), true, false, false, false);
|
128 |
// 3 CTRL-C
|
129 |
simulateKeyPress("testArea", 'C'.codePointAt(0), true, false, false, false);
|
130 |
// 4 CTRL-D
|
131 |
simulateKeyPress("testArea", 'D'.codePointAt(0), true, false, false, false);
|
132 |
// 5 CTRL-E
|
133 |
simulateKeyPress("testArea", 'E'.codePointAt(0), true, false, false, false);
|
134 |
// 6 CTRL-F
|
135 |
simulateKeyPress("testArea", 'F'.codePointAt(0), true, false, false, false);
|
136 |
// 7 CTRL-G BELL
|
137 |
simulateKeyPress("testArea", 'G'.codePointAt(0), true, false, false, false);
|
138 |
// 8 BACKSPACE BACKSPACE
|
139 |
simulateKeyPress("testArea", 8, false, false, false, false);
|
140 |
// 9 TAB TAB
|
141 |
simulateKeyPress("testArea", 9, false, false, false, false);
|
142 |
// 10 CTRL-J
|
143 |
simulateKeyPress("testArea", 'J'.codePointAt(0), true, false, false, false);
|
144 |
// 11 CTRL-K
|
145 |
simulateKeyPress("testArea", 'K'.codePointAt(0), true, false, false, false);
|
146 |
// 12 CTRL-L
|
147 |
simulateKeyPress("testArea", 'L'.codePointAt(0), true, false, false, false);
|
148 |
// 13 ENTER RETURN
|
149 |
simulateKeyPress("testArea", 13, false, false, false, false);
|
150 |
// 14 CTRL-N
|
151 |
// 15 CTRL-O
|
152 |
// 16 CTRL-P
|
153 |
// 17 CTRL-Q
|
154 |
// 18 CTRL-R
|
155 |
// 19 CTRL-S
|
156 |
// 20 CTRL-T
|
157 |
// 21 CTRL-U
|
158 |
// 22 CTRL-V
|
159 |
// 23 CTRL-W
|
160 |
// 24 CTRL-X
|
161 |
// 25 CTRL-Y
|
162 |
// 26 CTRL-Z
|
163 |
for (var code = 78; code <= 90; code++)
|
164 |
{
|
165 |
simulateKeyPress("testArea", code, true, false, false, false);
|
166 |
}
|
167 |
|
168 |
// 27 ESC END-ERROR
|
169 |
//because of CHUI it needs to call ESC two times to clear internal esc state.
|
170 |
simulateKeyPress("testArea", 27, false, false, false, false);
|
171 |
simulateKeyPress("testArea", 27, false, false, false, false);
|
172 |
// 28 CTRL-'\'
|
173 |
simulateKeyPressExt("testArea", 220, 92, true, false, false, false);
|
174 |
// 29 CTRL-]
|
175 |
simulateKeyPressExt("testArea", 221, 93, true, false, false, false);
|
176 |
// 30 CTRL-^
|
177 |
simulateKeyPress("testArea", '6'.codePointAt(0), true, false, false, false);
|
178 |
// 31 CTRL-_
|
179 |
simulateKeyPressExt("testArea", 173, 45, true, false, false, false);
|
180 |
|
181 |
// 32 space
|
182 |
simulateKeyPress("testArea", 32, false, false, false, false);
|
183 |
|
184 |
// SHIFT + .
|
185 |
// 33 ! ! = SHIFT + '1'
|
186 |
simulateKeyPressExt("testArea", 49, 33, false, false, true, false);
|
187 |
// 34 " " = SHIFT + '\''
|
188 |
simulateKeyPressExt("testArea", 222, 34, false, false, true, false);
|
189 |
// 35 # # = SHIFT + '3'
|
190 |
simulateKeyPressExt("testArea", 51, 35, false, false, true, false);
|
191 |
// 36 $ $ = SHIFT + '4'
|
192 |
simulateKeyPressExt("testArea", 52, 36, false, false, true, false);
|
193 |
// 37 % % = SHIFT + '5'
|
194 |
simulateKeyPressExt("testArea", 53, 37, false, false, true, false);
|
195 |
// 38 & & = SHIFT + '7'
|
196 |
simulateKeyPressExt("testArea", 55, 38, false, false, true, false);
|
197 |
|
198 |
// 39 ' '
|
199 |
simulateKeyPressExt("testArea", 222, 39, false, false, false, false);
|
200 |
|
201 |
// 40 ( ( = SHIFT + '('
|
202 |
simulateKeyPressExt("testArea", 57, 40, false, false, true, false);
|
203 |
// 41 ) ) = SHIFT + ')'
|
204 |
simulateKeyPressExt("testArea", 48, 41, false, false, true, false);
|
205 |
// 42 * * = SHIFT +'8'
|
206 |
simulateKeyPressExt("testArea", 56, 42, false, false, true, false);
|
207 |
// 43 + + = SHIFT + '='
|
208 |
simulateKeyPressExt("testArea", 61, 43, false, false, true, false);
|
209 |
// 44 , ,
|
210 |
simulateKeyPressExt("testArea", 188, 44, false, false, false, false);
|
211 |
// 45 - -
|
212 |
simulateKeyPressExt("testArea", 173, 45, false, false, false, false);
|
213 |
// 46 . .
|
214 |
simulateKeyPressExt("testArea", 190, 46, false, false, false, false);
|
215 |
// 47 / /
|
216 |
simulateKeyPressExt("testArea", 191, 47, false, false, false, false);
|
217 |
//digits
|
218 |
// 48 ... 57 0...9
|
219 |
for (var code = 48; code <= 57; code++)
|
220 |
{
|
221 |
simulateKeyPress("testArea", code, false, false, false, false);
|
222 |
}
|
223 |
// 58 : : = SHIFT + ';'
|
224 |
simulateKeyPressExt("testArea", 59, 58, false, false, true, false);
|
225 |
// 59 ; ;
|
226 |
simulateKeyPress("testArea", 59, false, false, false, false);
|
227 |
// 60 < <
|
228 |
simulateKeyPressExt("testArea", 188, 60, false, false, true, false);
|
229 |
// 61 = =
|
230 |
simulateKeyPress("testArea", 61, false, false, false, false);
|
231 |
// 62 > >
|
232 |
simulateKeyPressExt("testArea", 190, 62, false, false, true, false);
|
233 |
// 63 ? ?
|
234 |
simulateKeyPressExt("testArea", 191, 63, false, false, true, false);
|
235 |
// 64 @ @
|
236 |
simulateKeyPressExt("testArea", 50, 64, false, false, true, false);
|
237 |
// 65 A A
|
238 |
// 66 B B
|
239 |
// 67 C C
|
240 |
// 68 D D
|
241 |
// 69 E E
|
242 |
// 70 F F
|
243 |
// 71 G G
|
244 |
// 72 H H
|
245 |
// 73 I I
|
246 |
// 74 J J
|
247 |
// 75 K K
|
248 |
// 76 L L
|
249 |
// 77 M M
|
250 |
// 78 N N
|
251 |
// 79 O O
|
252 |
// 80 P P
|
253 |
// 81 Q Q
|
254 |
// 82 R R
|
255 |
// 83 S S
|
256 |
// 84 T T
|
257 |
// 85 U U
|
258 |
// 86 V V
|
259 |
// 87 W W
|
260 |
// 88 X X
|
261 |
// 89 Y Y
|
262 |
// 90 Z Z
|
263 |
for (var code = 65; code <= 90; code++)
|
264 |
{
|
265 |
simulateKeyPress("testArea", code, false, false, true, false);
|
266 |
}
|
267 |
// 91 [ [
|
268 |
simulateKeyPressExt("testArea", 219, 91, false, false, false, false);
|
269 |
// 92 \ \
|
270 |
simulateKeyPressExt("testArea", 220, 92, false, false, false, false);
|
271 |
// 93 ] ]
|
272 |
simulateKeyPressExt("testArea", 221, 93, false, false, false, false);
|
273 |
// 94 ^ ^ = SHIFT + '6'
|
274 |
simulateKeyPressExt("testArea", 54, 94, false, false, true, false);
|
275 |
// 95 _ _ = SHIFT + '-'
|
276 |
simulateKeyPressExt("testArea", 173, 95, false, false, true, false);
|
277 |
// 96 ` `
|
278 |
simulateKeyPressExt("testArea", 192, 96, false, false, false, false);
|
279 |
|
280 |
// 97 a a
|
281 |
// 98 b b
|
282 |
// 99 c c
|
283 |
// 100 d d
|
284 |
// 101 e e
|
285 |
// 102 f f
|
286 |
// 103 g g
|
287 |
// 104 h h
|
288 |
// 105 i i
|
289 |
// 106 j j
|
290 |
// 107 k k
|
291 |
// 108 l l
|
292 |
// 109 m m
|
293 |
// 110 n n
|
294 |
// 111 o o
|
295 |
// 112 p p
|
296 |
// 113 q q
|
297 |
// 114 r r
|
298 |
// 115 s s
|
299 |
// 116 t t
|
300 |
// 117 u u
|
301 |
// 118 v v
|
302 |
// 119 w w
|
303 |
// 120 x x
|
304 |
// 121 y y
|
305 |
// 122 z z
|
306 |
for (var code = 65; code <= 90; code++)
|
307 |
{
|
308 |
simulateKeyPressExt("testArea", code, code + 32, false, false, false, false);
|
309 |
}
|
310 |
|
311 |
// 123 { { = SHIFT + '['
|
312 |
simulateKeyPressExt("testArea", 219, 123, false, false, true, false);
|
313 |
// 124 | | = SHIFT + '\\'
|
314 |
simulateKeyPressExt("testArea", 220, 124, false, false, true, false);
|
315 |
// 125 } } = SHIFT + ']'
|
316 |
simulateKeyPressExt("testArea", 221, 125, false, false, true, false);
|
317 |
// 126 ~ ~ = SHIFT + '`'
|
318 |
simulateKeyPressExt("testArea", 192, 126, false, false, true, false);
|
319 |
// 127 DEL DELETE-CHARACTER
|
320 |
simulateKeyPress("testArea", 46, false, false, false, false);
|
321 |
for (var code = 128; code <= 255; code++)
|
322 |
{
|
323 |
simulateKeyPress("testArea", code, false, false, false, false);
|
324 |
}
|
325 |
// 301 F1 HELP
|
326 |
// 302 F2 GO
|
327 |
// 303 F3
|
328 |
// 304 F4
|
329 |
// 305 F5
|
330 |
// 306 F6 NEXT-FRAME
|
331 |
// 307 F7
|
332 |
// 308 F8
|
333 |
// 309 F9
|
334 |
// 310 F10
|
335 |
// 311 F11
|
336 |
// 312 F12
|
337 |
for (var code = 112; code <= 123; code++)
|
338 |
{
|
339 |
simulateKeyPress("testArea", code, false, false, false, false);
|
340 |
}
|
341 |
// 500
|
342 |
// 501 CURSOR-UP CURSOR-UP
|
343 |
simulateKeyPress("testArea", 38, false, false, false, false);
|
344 |
// 502 CURSOR-DOWN CURSOR-DOWN
|
345 |
simulateKeyPress("testArea", 40, false, false, false, false);
|
346 |
// 503 CURSOR-RIGHT CURSOR-RIGHT
|
347 |
simulateKeyPress("testArea", 39, false, false, false, false);
|
348 |
// 504 CURSOR-LEFT CURSOR-LEFT
|
349 |
simulateKeyPress("testArea", 37, false, false, false, false);
|
350 |
// 505 HOME HOME
|
351 |
simulateKeyPress("testArea", 36, false, false, false, false);
|
352 |
// 506 END END
|
353 |
simulateKeyPress("testArea", 35, false, false, false, false);
|
354 |
// 507 PAGE-UP PAGE-UP
|
355 |
simulateKeyPress("testArea", 33, false, false, false, false);
|
356 |
// 508 PAGE-DOWN PAGE-DOWN
|
357 |
simulateKeyPress("testArea", 34, false, false, false, false);
|
358 |
// 509 SHIFT-TAB BACK-TAB
|
359 |
simulateKeyPress("testArea", 9, false, false, true, false);
|
360 |
// 510 INS INSERT-MODE
|
361 |
simulateKeyPress("testArea", 45, false, false, false, false);
|
362 |
|
363 |
// 511 HELP-KEY
|
364 |
// 512 DELETE
|
365 |
// 513 EXECUTE
|
366 |
// 514 PAGE
|
367 |
// 515 FIND
|
368 |
// 516 INS-LINE
|
369 |
// 517 DEL-LINE
|
370 |
// 518 LINE-ERASE
|
371 |
// 519 PAGE-ERASE
|
372 |
// 520 SHIFT-BACKSPACE
|
373 |
// 521 SHIFT-TAB
|
374 |
// 522 EXIT
|
375 |
// 523
|
376 |
// 524
|
377 |
// 525 SHIFT-ENTER
|
378 |
simulateKeyPress("testArea", 13, false, false, true, false);
|
379 |
// 526
|
380 |
// 527
|
381 |
// 528
|
382 |
// 529
|
383 |
// 530
|
384 |
// 531
|
385 |
// 532
|
386 |
// 533
|
387 |
// 534
|
388 |
// 535 ERASE
|
389 |
// 536 WHITE
|
390 |
// 537 BLUE
|
391 |
// 538 RED
|
392 |
// 539 SHIFT-ESC
|
393 |
simulateKeyPress("testArea", 27, false, false, true, false);
|
394 |
|
395 |
// 540
|
396 |
// 541 CTRL-BREAK STOP
|
397 |
simulateKeyPress("testArea", 17, true, false, false, false);
|
398 |
|
399 |
// 542
|
400 |
// 543
|
401 |
// 544
|
402 |
// 545
|
403 |
// 546
|
404 |
// 547
|
405 |
// 548
|
406 |
// 549
|
407 |
// 550
|
408 |
// 551 U1
|
409 |
// 552 U2
|
410 |
// 553 U3
|
411 |
// 554 U4
|
412 |
// 555 U5
|
413 |
// 556 U6
|
414 |
// 557 U7
|
415 |
// 558 U8
|
416 |
// 559 U9
|
417 |
// 560 U10
|
418 |
// 561
|
419 |
// 562
|
420 |
// 563
|
421 |
// 564
|
422 |
// 565
|
423 |
// 566
|
424 |
// 567
|
425 |
// 568
|
426 |
// 569
|
427 |
// 570
|
428 |
// 571
|
429 |
// 572
|
430 |
// 573
|
431 |
// 574
|
432 |
// 575
|
433 |
// 576
|
434 |
// 577
|
435 |
// 578
|
436 |
// 579
|
437 |
// 580
|
438 |
// 581
|
439 |
// 582
|
440 |
// 583
|
441 |
// 584
|
442 |
// 585
|
443 |
// 586 DO
|
444 |
// 587 SELECT
|
445 |
// 588 REMOVE
|
446 |
// 589 INSERT-HERE
|
447 |
// 590
|
448 |
// 591
|
449 |
// 592
|
450 |
// 593
|
451 |
// 594
|
452 |
// 595
|
453 |
// 596
|
454 |
// 597
|
455 |
// 598
|
456 |
// 599
|
457 |
// 600
|
458 |
// 601
|
459 |
// 602
|
460 |
// 603
|
461 |
// 604
|
462 |
// 605
|
463 |
// 606
|
464 |
// 607
|
465 |
// 608
|
466 |
// 609 MOUSE-SELECT-UP
|
467 |
// 610 MIDDLE-MOUSE-UP
|
468 |
// 611 MOUSE-MENU-UP
|
469 |
// 612 MOUSE-EXTEND-UP
|
470 |
// 613
|
471 |
// 614
|
472 |
// 615
|
473 |
// 616
|
474 |
// 617 MOUSE-SELECT-DOWN
|
475 |
// 618 MIDDLE-MOUSE-DOWN
|
476 |
// 619 MOUSE-MENU-DOWN
|
477 |
// 620 MOUSE-EXTEND-DOWN
|
478 |
// 621
|
479 |
// 622
|
480 |
// 623
|
481 |
// 624
|
482 |
// 625 MOUSE-SELECT-CLICK
|
483 |
// 626 MIDDLE-MOUSE-CLICK
|
484 |
// 627 MOUSE-MENU-CLICK
|
485 |
// 628 MOUSE-EXTEND-CLICK
|
486 |
// 629
|
487 |
// 630
|
488 |
// 631
|
489 |
// 632
|
490 |
// 633 MOUSE-SELECT-DRAG
|
491 |
// 634
|
492 |
// 635 MOUSE-MENU-DRAG
|
493 |
// 636 MOUSE-EXTEND-DRAG
|
494 |
// 637
|
495 |
// 638
|
496 |
// 639
|
497 |
// 640 MOUSE-MOVE
|
498 |
// 641
|
499 |
// 642
|
500 |
// 643
|
501 |
// 644
|
502 |
// 645
|
503 |
// 646
|
504 |
// 647
|
505 |
// 648
|
506 |
// 649 MOUSE-SELECT-DBLCLICK
|
507 |
// 650 MIDDLE-MOUSE-DBLCLICK
|
508 |
// 651 MOUSE-MENU-DBLCLICK
|
509 |
// 652 MOUSE-EXTEND-DBLCLICK
|
510 |
// 653
|
511 |
// 654
|
512 |
// 655
|
513 |
//656 ... 767 SHIFT + code 157 ... 255
|
514 |
|
515 |
//812 ...911 SHIFT + F1 ...F99
|
516 |
|
517 |
//912 ...1011 SHIFT +PF1...PF99
|
518 |
|
519 |
// 1013 SHIFT-CURSOR-UP
|
520 |
// 1014 SHIFT-CURSOR-DOWN
|
521 |
// 1015 SHIFT-CURSOR-RIGHT
|
522 |
// 1016 SHIFT-CURSOR-LEFT
|
523 |
|
524 |
// 1017 SHIFT-HOME
|
525 |
// 1018 SHIFT-END
|
526 |
// 1019 SHIFT-PAGE-UP
|
527 |
// 1020 SHIFT-PAGE-DOWN
|
528 |
// 1021 SHIFT-SHIFT-TAB
|
529 |
// 1022 SHIFT-INS
|
530 |
|
531 |
// 1023 SHIFT-HELP-KEY
|
532 |
// 1024 ALT
|
533 |
// 1025 ALT-CTRL-A
|
534 |
// 1026 ALT-CTRL-B
|
535 |
// 1027 ALT-CTRL-C
|
536 |
// 1028 ALT-CTRL-D
|
537 |
// 1029 ALT-CTRL-E
|
538 |
// 1030 ALT-CTRL-F
|
539 |
// 1031 ALT-CTRL-G
|
540 |
// 1032 ALT-BACKSPACE
|
541 |
// 1033 ALT-CTRL-I
|
542 |
// 1034 ALT-CTRL-J
|
543 |
// 1035 ALT-CTRL-K
|
544 |
// 1036 ALT-CTRL-L
|
545 |
// 1037 ALT-ENTER
|
546 |
// 1038 ALT-CTRL-N
|
547 |
// 1039 ALT-CTRL-O
|
548 |
// 1040 ALT-CTRL-P
|
549 |
// 1041 ALT-CTRL-Q
|
550 |
// 1042 ALT-CTRL-R
|
551 |
// 1043 ALT-CTRL-S
|
552 |
// 1044 ALT-CTRL-T
|
553 |
// 1045 ALT-CTRL-U
|
554 |
// 1046 ALT-CTRL-V
|
555 |
// 1047 ALT-CTRL-W
|
556 |
// 1048 ALT-CTRL-X
|
557 |
// 1049 ALT-CTRL-Y
|
558 |
|
559 |
// 1050 ALT-CTRL-Z
|
560 |
// 1051 ALT-ESC
|
561 |
// 1052 ALT-CTRL-\
|
562 |
// 1053 ALT-CTRL-]
|
563 |
// 1054 ALT-CTRL-^
|
564 |
// 1055 ALT-CTRL-_
|
565 |
// 1056 ALT-
|
566 |
// 1057 ALT-!
|
567 |
// 1058 ALT-"
|
568 |
// 1059 ALT-#
|
569 |
// 1060 ALT-$
|
570 |
// 1061 ALT-%
|
571 |
// 1062 ALT-&
|
572 |
// 1063 ALT-'
|
573 |
// 1064 ALT-(
|
574 |
// 1065 ALT-)
|
575 |
// 1066 ALT-*
|
576 |
// 1067 ALT-+
|
577 |
// 1068 ALT-,
|
578 |
// 1069 ALT--
|
579 |
// 1070 ALT-.
|
580 |
// 1071 ALT-/
|
581 |
// 1072 ALT-0
|
582 |
// 1073 ALT-1
|
583 |
// 1074 ALT-2
|
584 |
// 1075 ALT-3
|
585 |
// 1076 ALT-4
|
586 |
// 1077 ALT-5
|
587 |
// 1078 ALT-6
|
588 |
// 1079 ALT-7
|
589 |
// 1080 ALT-8
|
590 |
// 1081 ALT-9
|
591 |
// 1082 ALT-:
|
592 |
// 1083 ALT-;
|
593 |
// 1084 ALT-<
|
594 |
// 1085 ALT-=
|
595 |
// 1086 ALT->
|
596 |
// 1087 ALT-?
|
597 |
// 1088 ALT-@
|
598 |
// 1089 ALT-A
|
599 |
// 1090 ALT-B
|
600 |
// 1091 ALT-C
|
601 |
// 1092 ALT-D
|
602 |
// 1093 ALT-E
|
603 |
// 1094 ALT-F
|
604 |
// 1095 ALT-G
|
605 |
// 1096 ALT-H
|
606 |
// 1097 ALT-I
|
607 |
// 1098 ALT-J
|
608 |
// 1099 ALT-K
|
609 |
// 1100 ALT-L
|
610 |
// 1101 ALT-M
|
611 |
// 1102 ALT-N
|
612 |
// 1103 ALT-O
|
613 |
// 1104 ALT-P
|
614 |
// 1105 ALT-Q
|
615 |
// 1106 ALT-R
|
616 |
// 1107 ALT-S
|
617 |
// 1108 ALT-T
|
618 |
// 1109 ALT-U
|
619 |
// 1110 ALT-V
|
620 |
// 1111 ALT-W
|
621 |
// 1112 ALT-X
|
622 |
// 1113 ALT-Y
|
623 |
// 1114 ALT-Z
|
624 |
// 1115 ALT-[
|
625 |
// 1116 ALT-\
|
626 |
// 1117 ALT-]
|
627 |
// 1118 ALT-^
|
628 |
// 1119 ALT-_
|
629 |
// 1120 ALT-`
|
630 |
// 1121 ALT-a
|
631 |
// 1122 ALT-b
|
632 |
// 1123 ALT-c
|
633 |
// 1124 ALT-d
|
634 |
// 1125 ALT-e
|
635 |
// 1126 ALT-f
|
636 |
// 1127 ALT-g
|
637 |
// 1128 ALT-h
|
638 |
// 1129 ALT-i
|
639 |
// 1130 ALT-j
|
640 |
// 1131 ALT-k
|
641 |
// 1132 ALT-l
|
642 |
// 1133 ALT-m
|
643 |
// 1134 ALT-n
|
644 |
// 1135 ALT-o
|
645 |
// 1136 ALT-p
|
646 |
// 1137 ALT-q
|
647 |
// 1138 ALT-r
|
648 |
// 1139 ALT-s
|
649 |
// 1140 ALT-t
|
650 |
// 1141 ALT-u
|
651 |
// 1142 ALT-v
|
652 |
// 1143 ALT-w
|
653 |
// 1144 ALT-x
|
654 |
// 1145 ALT-y
|
655 |
// 1146 ALT-z
|
656 |
// 1147 ALT-{
|
657 |
// 1148 ALT-|
|
658 |
// 1149 ALT-}
|
659 |
// 1150 ALT-~
|
660 |
// 1151 ALT-DEL
|
661 |
// 1152 ... 1279 ALT + code
|
662 |
// 1324 ... 1423 ALT + F1 ... F99
|
663 |
// 1424 ... 1523 ALT + PF1 ... PF99
|
664 |
// 1525 ALT-CURSOR-UP
|
665 |
// 1526 ALT-CURSOR-DOWN
|
666 |
// 1527 ALT-CURSOR-RIGHT
|
667 |
// 1528 ALT-CURSOR-LEFT
|
668 |
// 1529 ALT-HOME
|
669 |
// 1530 ALT-END
|
670 |
// 1531 ALT-PAGE-UP
|
671 |
// 1532 ALT-PAGE-DOWN
|
672 |
// 1533 ALT-SHIFT-TAB
|
673 |
// 1534 ALT-INS
|
674 |
// 1535 ALT-HELP-KEY
|
675 |
// 1536 ALT-DELETE
|
676 |
// 1537 ALT-EXECUTE
|
677 |
// 1538 ALT-PAGE
|
678 |
// 1539 ALT-FIND
|
679 |
// 1540 ALT-INS-LINE
|
680 |
// 1541 ALT-DEL-LINE
|
681 |
// 1542 ALT-LINE-ERASE
|
682 |
// 1543 ALT-PAGE-ERASE
|
683 |
// 1544 SHIFT-ALT-BACKSPACE
|
684 |
// 1545 SHIFT-ALT-CTRL-I
|
685 |
// 1546 ALT-EXIT
|
686 |
// 1547
|
687 |
// 1548
|
688 |
// 1549 SHIFT-ALT-ENTER
|
689 |
|
690 |
}
|
691 |
</script>
|
692 |
</head>
|
693 |
<body>
|
694 |
<form name="testform"> |
695 |
<input type="button" value="Run CHUI Test" onclick="void(run4GLKeyTest(false));"/> |
696 |
<input type="button" value="Run GUI Test" onclick="void(run4GLKeyTest(true));"/> |
697 |
<textarea id="testArea" name="testArea" rows="25" cols="90" style="display:block;"></textarea> |
698 |
<textarea id="results" name="results" rows="4" cols="90"></textarea> |
699 |
<br>
|
700 |
</form>
|
701 |
</body>
|
702 |
</html>
|