1 Clazz.declarePackage ("java.awt.event");
\r
2 Clazz.load (["java.awt.event.InputEvent"], "java.awt.event.KeyEvent", ["java.lang.IllegalArgumentException", "$.StringBuilder", "java.awt.Toolkit"], function () {
\r
3 c$ = Clazz.decorateAsClass (function () {
\r
4 this.isProxyActive = false;
\r
7 this.keyLocation = 0;
\r
8 Clazz.instantialize (this, arguments);
\r
9 }, java.awt.event, "KeyEvent", java.awt.event.InputEvent);
\r
10 Clazz.makeConstructor (c$,
\r
11 function (source, id, when, modifiers, keyCode, keyChar, keyLocation) {
\r
12 Clazz.superConstructor (this, java.awt.event.KeyEvent, [source, id, when, modifiers]);
\r
14 if (keyChar == '\uffff') {
\r
15 throw new IllegalArgumentException ("invalid keyChar");
\r
16 }if (keyCode != 0) {
\r
17 throw new IllegalArgumentException ("invalid keyCode");
\r
18 }if (keyLocation != 0) {
\r
19 throw new IllegalArgumentException ("invalid keyLocation");
\r
20 }}this.keyCode = keyCode;
\r
21 this.keyChar = keyChar;
\r
22 if ((keyLocation < 0) || (keyLocation > 4)) {
\r
23 throw new IllegalArgumentException ("invalid keyLocation");
\r
24 }this.keyLocation = keyLocation;
\r
25 if ((this.getModifiers () != 0) && (this.getModifiersEx () == 0)) {
\r
26 this.setNewModifiers ();
\r
27 } else if ((this.getModifiers () == 0) && (this.getModifiersEx () != 0)) {
\r
28 this.setOldModifiers ();
\r
29 }}, "java.awt.Component,~N,~N,~N,~N,~S,~N");
\r
30 Clazz.makeConstructor (c$,
\r
31 function (source, id, when, modifiers, keyCode, keyChar) {
\r
32 this.construct (source, id, when, modifiers, keyCode, keyChar, 0);
\r
33 }, "java.awt.Component,~N,~N,~N,~N,~S");
\r
34 Clazz.makeConstructor (c$,
\r
35 function (source, id, when, modifiers, keyCode) {
\r
36 this.construct (source, id, when, modifiers, keyCode, String.fromCharCode (keyCode));
\r
37 }, "java.awt.Component,~N,~N,~N,~N");
\r
38 Clazz.defineMethod (c$, "getKeyCode",
\r
40 return this.keyCode;
\r
42 Clazz.defineMethod (c$, "setKeyCode",
\r
43 function (keyCode) {
\r
44 this.keyCode = keyCode;
\r
46 Clazz.defineMethod (c$, "getKeyChar",
\r
48 return this.keyChar;
\r
50 Clazz.defineMethod (c$, "setKeyChar",
\r
51 function (keyChar) {
\r
52 this.keyChar = keyChar;
\r
54 Clazz.defineMethod (c$, "setModifiers",
\r
55 function (modifiers) {
\r
56 this.modifiers = modifiers;
\r
57 if ((this.getModifiers () != 0) && (this.getModifiersEx () == 0)) {
\r
58 this.setNewModifiers ();
\r
59 } else if ((this.getModifiers () == 0) && (this.getModifiersEx () != 0)) {
\r
60 this.setOldModifiers ();
\r
62 Clazz.defineMethod (c$, "getKeyLocation",
\r
64 return this.keyLocation;
\r
66 c$.getKeyText = Clazz.defineMethod (c$, "getKeyText",
\r
67 function (keyCode) {
\r
68 if (keyCode >= 48 && keyCode <= 57 || keyCode >= 65 && keyCode <= 90) {
\r
69 return String.valueOf (String.fromCharCode (keyCode));
\r
72 return java.awt.Toolkit.getProperty ("AWT.enter", "Enter");
\r
74 return java.awt.Toolkit.getProperty ("AWT.backSpace", "Backspace");
\r
76 return java.awt.Toolkit.getProperty ("AWT.tab", "Tab");
\r
78 return java.awt.Toolkit.getProperty ("AWT.cancel", "Cancel");
\r
80 return java.awt.Toolkit.getProperty ("AWT.clear", "Clear");
\r
82 return java.awt.Toolkit.getProperty ("AWT.compose", "Compose");
\r
84 return java.awt.Toolkit.getProperty ("AWT.pause", "Pause");
\r
86 return java.awt.Toolkit.getProperty ("AWT.capsLock", "Caps Lock");
\r
88 return java.awt.Toolkit.getProperty ("AWT.escape", "Escape");
\r
90 return java.awt.Toolkit.getProperty ("AWT.space", "Space");
\r
92 return java.awt.Toolkit.getProperty ("AWT.pgup", "Page Up");
\r
94 return java.awt.Toolkit.getProperty ("AWT.pgdn", "Page Down");
\r
96 return java.awt.Toolkit.getProperty ("AWT.end", "End");
\r
98 return java.awt.Toolkit.getProperty ("AWT.home", "Home");
\r
100 return java.awt.Toolkit.getProperty ("AWT.left", "Left");
\r
102 return java.awt.Toolkit.getProperty ("AWT.up", "Up");
\r
104 return java.awt.Toolkit.getProperty ("AWT.right", "Right");
\r
106 return java.awt.Toolkit.getProperty ("AWT.down", "Down");
\r
108 return java.awt.Toolkit.getProperty ("AWT.begin", "Begin");
\r
110 return java.awt.Toolkit.getProperty ("AWT.shift", "Shift");
\r
112 return java.awt.Toolkit.getProperty ("AWT.control", "Control");
\r
114 return java.awt.Toolkit.getProperty ("AWT.alt", "Alt");
\r
116 return java.awt.Toolkit.getProperty ("AWT.meta", "Meta");
\r
118 return java.awt.Toolkit.getProperty ("AWT.altGraph", "Alt Graph");
\r
120 return java.awt.Toolkit.getProperty ("AWT.comma", "Comma");
\r
122 return java.awt.Toolkit.getProperty ("AWT.period", "Period");
\r
124 return java.awt.Toolkit.getProperty ("AWT.slash", "Slash");
\r
126 return java.awt.Toolkit.getProperty ("AWT.semicolon", "Semicolon");
\r
128 return java.awt.Toolkit.getProperty ("AWT.equals", "Equals");
\r
130 return java.awt.Toolkit.getProperty ("AWT.openBracket", "Open Bracket");
\r
132 return java.awt.Toolkit.getProperty ("AWT.backSlash", "Back Slash");
\r
134 return java.awt.Toolkit.getProperty ("AWT.closeBracket", "Close Bracket");
\r
136 return java.awt.Toolkit.getProperty ("AWT.multiply", "NumPad *");
\r
138 return java.awt.Toolkit.getProperty ("AWT.add", "NumPad +");
\r
140 return java.awt.Toolkit.getProperty ("AWT.separator", "NumPad ,");
\r
142 return java.awt.Toolkit.getProperty ("AWT.subtract", "NumPad -");
\r
144 return java.awt.Toolkit.getProperty ("AWT.decimal", "NumPad .");
\r
146 return java.awt.Toolkit.getProperty ("AWT.divide", "NumPad /");
\r
148 return java.awt.Toolkit.getProperty ("AWT.delete", "Delete");
\r
150 return java.awt.Toolkit.getProperty ("AWT.numLock", "Num Lock");
\r
152 return java.awt.Toolkit.getProperty ("AWT.scrollLock", "Scroll Lock");
\r
154 return java.awt.Toolkit.getProperty ("AWT.windows", "Windows");
\r
156 return java.awt.Toolkit.getProperty ("AWT.context", "Context Menu");
\r
158 return java.awt.Toolkit.getProperty ("AWT.f1", "F1");
\r
160 return java.awt.Toolkit.getProperty ("AWT.f2", "F2");
\r
162 return java.awt.Toolkit.getProperty ("AWT.f3", "F3");
\r
164 return java.awt.Toolkit.getProperty ("AWT.f4", "F4");
\r
166 return java.awt.Toolkit.getProperty ("AWT.f5", "F5");
\r
168 return java.awt.Toolkit.getProperty ("AWT.f6", "F6");
\r
170 return java.awt.Toolkit.getProperty ("AWT.f7", "F7");
\r
172 return java.awt.Toolkit.getProperty ("AWT.f8", "F8");
\r
174 return java.awt.Toolkit.getProperty ("AWT.f9", "F9");
\r
176 return java.awt.Toolkit.getProperty ("AWT.f10", "F10");
\r
178 return java.awt.Toolkit.getProperty ("AWT.f11", "F11");
\r
180 return java.awt.Toolkit.getProperty ("AWT.f12", "F12");
\r
182 return java.awt.Toolkit.getProperty ("AWT.f13", "F13");
\r
184 return java.awt.Toolkit.getProperty ("AWT.f14", "F14");
\r
186 return java.awt.Toolkit.getProperty ("AWT.f15", "F15");
\r
188 return java.awt.Toolkit.getProperty ("AWT.f16", "F16");
\r
190 return java.awt.Toolkit.getProperty ("AWT.f17", "F17");
\r
192 return java.awt.Toolkit.getProperty ("AWT.f18", "F18");
\r
194 return java.awt.Toolkit.getProperty ("AWT.f19", "F19");
\r
196 return java.awt.Toolkit.getProperty ("AWT.f20", "F20");
\r
198 return java.awt.Toolkit.getProperty ("AWT.f21", "F21");
\r
200 return java.awt.Toolkit.getProperty ("AWT.f22", "F22");
\r
202 return java.awt.Toolkit.getProperty ("AWT.f23", "F23");
\r
204 return java.awt.Toolkit.getProperty ("AWT.f24", "F24");
\r
206 return java.awt.Toolkit.getProperty ("AWT.printScreen", "Print Screen");
\r
208 return java.awt.Toolkit.getProperty ("AWT.insert", "Insert");
\r
210 return java.awt.Toolkit.getProperty ("AWT.help", "Help");
\r
212 return java.awt.Toolkit.getProperty ("AWT.backQuote", "Back Quote");
\r
214 return java.awt.Toolkit.getProperty ("AWT.quote", "Quote");
\r
216 return java.awt.Toolkit.getProperty ("AWT.up", "Up");
\r
218 return java.awt.Toolkit.getProperty ("AWT.down", "Down");
\r
220 return java.awt.Toolkit.getProperty ("AWT.left", "Left");
\r
222 return java.awt.Toolkit.getProperty ("AWT.right", "Right");
\r
224 return java.awt.Toolkit.getProperty ("AWT.deadGrave", "Dead Grave");
\r
226 return java.awt.Toolkit.getProperty ("AWT.deadAcute", "Dead Acute");
\r
228 return java.awt.Toolkit.getProperty ("AWT.deadCircumflex", "Dead Circumflex");
\r
230 return java.awt.Toolkit.getProperty ("AWT.deadTilde", "Dead Tilde");
\r
232 return java.awt.Toolkit.getProperty ("AWT.deadMacron", "Dead Macron");
\r
234 return java.awt.Toolkit.getProperty ("AWT.deadBreve", "Dead Breve");
\r
236 return java.awt.Toolkit.getProperty ("AWT.deadAboveDot", "Dead Above Dot");
\r
238 return java.awt.Toolkit.getProperty ("AWT.deadDiaeresis", "Dead Diaeresis");
\r
240 return java.awt.Toolkit.getProperty ("AWT.deadAboveRing", "Dead Above Ring");
\r
242 return java.awt.Toolkit.getProperty ("AWT.deadDoubleAcute", "Dead Double Acute");
\r
244 return java.awt.Toolkit.getProperty ("AWT.deadCaron", "Dead Caron");
\r
246 return java.awt.Toolkit.getProperty ("AWT.deadCedilla", "Dead Cedilla");
\r
248 return java.awt.Toolkit.getProperty ("AWT.deadOgonek", "Dead Ogonek");
\r
250 return java.awt.Toolkit.getProperty ("AWT.deadIota", "Dead Iota");
\r
252 return java.awt.Toolkit.getProperty ("AWT.deadVoicedSound", "Dead Voiced Sound");
\r
254 return java.awt.Toolkit.getProperty ("AWT.deadSemivoicedSound", "Dead Semivoiced Sound");
\r
256 return java.awt.Toolkit.getProperty ("AWT.ampersand", "Ampersand");
\r
258 return java.awt.Toolkit.getProperty ("AWT.asterisk", "Asterisk");
\r
260 return java.awt.Toolkit.getProperty ("AWT.quoteDbl", "Double Quote");
\r
262 return java.awt.Toolkit.getProperty ("AWT.Less", "Less");
\r
264 return java.awt.Toolkit.getProperty ("AWT.greater", "Greater");
\r
266 return java.awt.Toolkit.getProperty ("AWT.braceLeft", "Left Brace");
\r
268 return java.awt.Toolkit.getProperty ("AWT.braceRight", "Right Brace");
\r
270 return java.awt.Toolkit.getProperty ("AWT.at", "At");
\r
272 return java.awt.Toolkit.getProperty ("AWT.colon", "Colon");
\r
274 return java.awt.Toolkit.getProperty ("AWT.circumflex", "Circumflex");
\r
276 return java.awt.Toolkit.getProperty ("AWT.dollar", "Dollar");
\r
278 return java.awt.Toolkit.getProperty ("AWT.euro", "Euro");
\r
280 return java.awt.Toolkit.getProperty ("AWT.exclamationMark", "Exclamation Mark");
\r
282 return java.awt.Toolkit.getProperty ("AWT.invertedExclamationMark", "Inverted Exclamation Mark");
\r
284 return java.awt.Toolkit.getProperty ("AWT.leftParenthesis", "Left Parenthesis");
\r
286 return java.awt.Toolkit.getProperty ("AWT.numberSign", "Number Sign");
\r
288 return java.awt.Toolkit.getProperty ("AWT.minus", "Minus");
\r
290 return java.awt.Toolkit.getProperty ("AWT.plus", "Plus");
\r
292 return java.awt.Toolkit.getProperty ("AWT.rightParenthesis", "Right Parenthesis");
\r
294 return java.awt.Toolkit.getProperty ("AWT.underscore", "Underscore");
\r
296 return java.awt.Toolkit.getProperty ("AWT.final", "Final");
\r
298 return java.awt.Toolkit.getProperty ("AWT.convert", "Convert");
\r
300 return java.awt.Toolkit.getProperty ("AWT.noconvert", "No Convert");
\r
302 return java.awt.Toolkit.getProperty ("AWT.accept", "Accept");
\r
304 return java.awt.Toolkit.getProperty ("AWT.modechange", "Mode Change");
\r
306 return java.awt.Toolkit.getProperty ("AWT.kana", "Kana");
\r
308 return java.awt.Toolkit.getProperty ("AWT.kanji", "Kanji");
\r
310 return java.awt.Toolkit.getProperty ("AWT.alphanumeric", "Alphanumeric");
\r
312 return java.awt.Toolkit.getProperty ("AWT.katakana", "Katakana");
\r
314 return java.awt.Toolkit.getProperty ("AWT.hiragana", "Hiragana");
\r
316 return java.awt.Toolkit.getProperty ("AWT.fullWidth", "Full-Width");
\r
318 return java.awt.Toolkit.getProperty ("AWT.halfWidth", "Half-Width");
\r
320 return java.awt.Toolkit.getProperty ("AWT.romanCharacters", "Roman Characters");
\r
322 return java.awt.Toolkit.getProperty ("AWT.allCandidates", "All Candidates");
\r
324 return java.awt.Toolkit.getProperty ("AWT.previousCandidate", "Previous Candidate");
\r
326 return java.awt.Toolkit.getProperty ("AWT.codeInput", "Code Input");
\r
328 return java.awt.Toolkit.getProperty ("AWT.japaneseKatakana", "Japanese Katakana");
\r
330 return java.awt.Toolkit.getProperty ("AWT.japaneseHiragana", "Japanese Hiragana");
\r
332 return java.awt.Toolkit.getProperty ("AWT.japaneseRoman", "Japanese Roman");
\r
334 return java.awt.Toolkit.getProperty ("AWT.kanaLock", "Kana Lock");
\r
336 return java.awt.Toolkit.getProperty ("AWT.inputMethodOnOff", "Input Method On/Off");
\r
338 return java.awt.Toolkit.getProperty ("AWT.again", "Again");
\r
340 return java.awt.Toolkit.getProperty ("AWT.undo", "Undo");
\r
342 return java.awt.Toolkit.getProperty ("AWT.copy", "Copy");
\r
344 return java.awt.Toolkit.getProperty ("AWT.paste", "Paste");
\r
346 return java.awt.Toolkit.getProperty ("AWT.cut", "Cut");
\r
348 return java.awt.Toolkit.getProperty ("AWT.find", "Find");
\r
350 return java.awt.Toolkit.getProperty ("AWT.props", "Props");
\r
352 return java.awt.Toolkit.getProperty ("AWT.stop", "Stop");
\r
354 if (keyCode >= 96 && keyCode <= 105) {
\r
355 var numpad = java.awt.Toolkit.getProperty ("AWT.numpad", "NumPad");
\r
356 var c = String.fromCharCode (keyCode - 96 + 48);
\r
357 return numpad + "-" + c;
\r
358 }var unknown = java.awt.Toolkit.getProperty ("AWT.unknown", "Unknown");
\r
359 return unknown + " keyCode: 0x" + Integer.toString (keyCode, 16);
\r
361 c$.getKeyModifiersText = Clazz.defineMethod (c$, "getKeyModifiersText",
\r
362 function (modifiers) {
\r
363 var buf = new StringBuilder ();
\r
364 if ((modifiers & 4) != 0) {
\r
365 buf.append (java.awt.Toolkit.getProperty ("AWT.meta", "Meta"));
\r
367 }if ((modifiers & 2) != 0) {
\r
368 buf.append (java.awt.Toolkit.getProperty ("AWT.control", "Ctrl"));
\r
370 }if ((modifiers & 8) != 0) {
\r
371 buf.append (java.awt.Toolkit.getProperty ("AWT.alt", "Alt"));
\r
373 }if ((modifiers & 1) != 0) {
\r
374 buf.append (java.awt.Toolkit.getProperty ("AWT.shift", "Shift"));
\r
376 }if ((modifiers & 32) != 0) {
\r
377 buf.append (java.awt.Toolkit.getProperty ("AWT.altGraph", "Alt Graph"));
\r
379 }if ((modifiers & 16) != 0) {
\r
380 buf.append (java.awt.Toolkit.getProperty ("AWT.button1", "Button1"));
\r
382 }if (buf.length () > 0) {
\r
383 buf.setLength (buf.length () - 1);
\r
384 }return buf.toString ();
\r
386 Clazz.defineMethod (c$, "isActionKey",
\r
388 switch (this.keyCode) {
\r
468 Clazz.overrideMethod (c$, "paramString",
\r
470 var str = new StringBuilder (100);
\r
473 str.append ("KEY_PRESSED");
\r
476 str.append ("KEY_RELEASED");
\r
479 str.append ("KEY_TYPED");
\r
482 str.append ("unknown type");
\r
485 str.append (",keyCode=").append ("" + this.keyCode);
\r
486 str.append (",keyText=").append (java.awt.event.KeyEvent.getKeyText (this.keyCode));
\r
487 str.append (",keyChar=");
\r
488 switch (this.keyChar) {
\r
490 str.append (java.awt.event.KeyEvent.getKeyText (8));
\r
493 str.append (java.awt.event.KeyEvent.getKeyText (9));
\r
496 str.append (java.awt.event.KeyEvent.getKeyText (10));
\r
499 str.append (java.awt.event.KeyEvent.getKeyText (3));
\r
502 str.append (java.awt.event.KeyEvent.getKeyText (27));
\r
505 str.append (java.awt.event.KeyEvent.getKeyText (127));
\r
508 str.append (java.awt.Toolkit.getProperty ("AWT.undefined", "Undefined"));
\r
509 str.append (" keyChar");
\r
512 str.append ("'").append (this.keyChar).append ("'");
\r
515 if (this.getModifiers () != 0) {
\r
516 str.append (",modifiers=").append (java.awt.event.KeyEvent.getKeyModifiersText (this.modifiers));
\r
517 }if (this.getModifiersEx () != 0) {
\r
518 str.append (",extModifiers=").append (java.awt.event.InputEvent.getModifiersExText (this.modifiers));
\r
519 }str.append (",keyLocation=");
\r
520 switch (this.keyLocation) {
\r
522 str.append ("KEY_LOCATION_UNKNOWN");
\r
525 str.append ("KEY_LOCATION_STANDARD");
\r
528 str.append ("KEY_LOCATION_LEFT");
\r
531 str.append ("KEY_LOCATION_RIGHT");
\r
534 str.append ("KEY_LOCATION_NUMPAD");
\r
537 str.append ("KEY_LOCATION_UNKNOWN");
\r
540 return str.toString ();
\r
542 Clazz.defineMethod (c$, "setNewModifiers",
\r
544 if ((this.modifiers & 1) != 0) {
\r
545 this.modifiers |= 64;
\r
546 }if ((this.modifiers & 8) != 0) {
\r
547 this.modifiers |= 512;
\r
548 }if ((this.modifiers & 2) != 0) {
\r
549 this.modifiers |= 128;
\r
550 }if ((this.modifiers & 4) != 0) {
\r
551 this.modifiers |= 256;
\r
552 }if ((this.modifiers & 32) != 0) {
\r
553 this.modifiers |= 8192;
\r
554 }if ((this.modifiers & 16) != 0) {
\r
555 this.modifiers |= 1024;
\r
557 Clazz.defineMethod (c$, "setOldModifiers",
\r
559 if ((this.modifiers & 64) != 0) {
\r
560 this.modifiers |= 1;
\r
561 }if ((this.modifiers & 512) != 0) {
\r
562 this.modifiers |= 8;
\r
563 }if ((this.modifiers & 128) != 0) {
\r
564 this.modifiers |= 2;
\r
565 }if ((this.modifiers & 256) != 0) {
\r
566 this.modifiers |= 4;
\r
567 }if ((this.modifiers & 8192) != 0) {
\r
568 this.modifiers |= 32;
\r
569 }if ((this.modifiers & 1024) != 0) {
\r
570 this.modifiers |= 16;
\r
572 Clazz.defineStatics (c$,
\r
576 "KEY_PRESSED", 401,
\r
577 "KEY_RELEASED", 402,
\r
579 "VK_BACK_SPACE", '\b',
\r
584 "VK_CONTROL", 0x11,
\r
587 "VK_CAPS_LOCK", 0x14,
\r
590 "VK_PAGE_UP", 0x21,
\r
591 "VK_PAGE_DOWN", 0x22,
\r
612 "VK_SEMICOLON", 0x3B,
\r
640 "VK_OPEN_BRACKET", 0x5B,
\r
641 "VK_BACK_SLASH", 0x5C,
\r
642 "VK_CLOSE_BRACKET", 0x5D,
\r
643 "VK_NUMPAD0", 0x60,
\r
644 "VK_NUMPAD1", 0x61,
\r
645 "VK_NUMPAD2", 0x62,
\r
646 "VK_NUMPAD3", 0x63,
\r
647 "VK_NUMPAD4", 0x64,
\r
648 "VK_NUMPAD5", 0x65,
\r
649 "VK_NUMPAD6", 0x66,
\r
650 "VK_NUMPAD7", 0x67,
\r
651 "VK_NUMPAD8", 0x68,
\r
652 "VK_NUMPAD9", 0x69,
\r
653 "VK_MULTIPLY", 0x6A,
\r
655 "VK_SEPARATER", 0x6C,
\r
656 "VK_SEPARATOR", 108,
\r
657 "VK_SUBTRACT", 0x6D,
\r
658 "VK_DECIMAL", 0x6E,
\r
661 "VK_NUM_LOCK", 0x90,
\r
662 "VK_SCROLL_LOCK", 0x91,
\r
687 "VK_PRINTSCREEN", 0x9A,
\r
691 "VK_BACK_QUOTE", 0xC0,
\r
694 "VK_KP_DOWN", 0xE1,
\r
695 "VK_KP_LEFT", 0xE2,
\r
696 "VK_KP_RIGHT", 0xE3,
\r
697 "VK_DEAD_GRAVE", 0x80,
\r
698 "VK_DEAD_ACUTE", 0x81,
\r
699 "VK_DEAD_CIRCUMFLEX", 0x82,
\r
700 "VK_DEAD_TILDE", 0x83,
\r
701 "VK_DEAD_MACRON", 0x84,
\r
702 "VK_DEAD_BREVE", 0x85,
\r
703 "VK_DEAD_ABOVEDOT", 0x86,
\r
704 "VK_DEAD_DIAERESIS", 0x87,
\r
705 "VK_DEAD_ABOVERING", 0x88,
\r
706 "VK_DEAD_DOUBLEACUTE", 0x89,
\r
707 "VK_DEAD_CARON", 0x8a,
\r
708 "VK_DEAD_CEDILLA", 0x8b,
\r
709 "VK_DEAD_OGONEK", 0x8c,
\r
710 "VK_DEAD_IOTA", 0x8d,
\r
711 "VK_DEAD_VOICED_SOUND", 0x8e,
\r
712 "VK_DEAD_SEMIVOICED_SOUND", 0x8f,
\r
713 "VK_AMPERSAND", 0x96,
\r
714 "VK_ASTERISK", 0x97,
\r
715 "VK_QUOTEDBL", 0x98,
\r
717 "VK_GREATER", 0xa0,
\r
718 "VK_BRACELEFT", 0xa1,
\r
719 "VK_BRACERIGHT", 0xa2,
\r
721 "VK_COLON", 0x0201,
\r
722 "VK_CIRCUMFLEX", 0x0202,
\r
723 "VK_DOLLAR", 0x0203,
\r
724 "VK_EURO_SIGN", 0x0204,
\r
725 "VK_EXCLAMATION_MARK", 0x0205,
\r
726 "VK_INVERTED_EXCLAMATION_MARK", 0x0206,
\r
727 "VK_LEFT_PARENTHESIS", 0x0207,
\r
728 "VK_NUMBER_SIGN", 0x0208,
\r
730 "VK_RIGHT_PARENTHESIS", 0x020A,
\r
731 "VK_UNDERSCORE", 0x020B,
\r
732 "VK_WINDOWS", 0x020C,
\r
733 "VK_CONTEXT_MENU", 0x020D,
\r
734 "VK_FINAL", 0x0018,
\r
735 "VK_CONVERT", 0x001C,
\r
736 "VK_NONCONVERT", 0x001D,
\r
737 "VK_ACCEPT", 0x001E,
\r
738 "VK_MODECHANGE", 0x001F,
\r
740 "VK_KANJI", 0x0019,
\r
741 "VK_ALPHANUMERIC", 0x00F0,
\r
742 "VK_KATAKANA", 0x00F1,
\r
743 "VK_HIRAGANA", 0x00F2,
\r
744 "VK_FULL_WIDTH", 0x00F3,
\r
745 "VK_HALF_WIDTH", 0x00F4,
\r
746 "VK_ROMAN_CHARACTERS", 0x00F5,
\r
747 "VK_ALL_CANDIDATES", 0x0100,
\r
748 "VK_PREVIOUS_CANDIDATE", 0x0101,
\r
749 "VK_CODE_INPUT", 0x0102,
\r
750 "VK_JAPANESE_KATAKANA", 0x0103,
\r
751 "VK_JAPANESE_HIRAGANA", 0x0104,
\r
752 "VK_JAPANESE_ROMAN", 0x0105,
\r
753 "VK_KANA_LOCK", 0x0106,
\r
754 "VK_INPUT_METHOD_ON_OFF", 0x0107,
\r
757 "VK_PASTE", 0xFFCF,
\r
759 "VK_AGAIN", 0xFFC9,
\r
761 "VK_PROPS", 0xFFCA,
\r
763 "VK_COMPOSE", 0xFF20,
\r
764 "VK_ALT_GRAPH", 0xFF7E,
\r
765 "VK_BEGIN", 0xFF58,
\r
766 "VK_UNDEFINED", 0x0,
\r
767 "CHAR_UNDEFINED", String.fromCharCode (0xFFFF),
\r
768 "KEY_LOCATION_UNKNOWN", 0,
\r
769 "KEY_LOCATION_STANDARD", 1,
\r
770 "KEY_LOCATION_LEFT", 2,
\r
771 "KEY_LOCATION_RIGHT", 3,
\r
772 "KEY_LOCATION_NUMPAD", 4);
\r