1 // =================================
  2 // Copyright (c) 2021 Seppo Laakko
  3 // Distributed under the MIT license
  4 // =================================
  5 
  6 // Key codes returned by RtGetCh function:
  7 
  8 // xxx
  9 
 10 public const int keyBackspace = cast<int>('\b');
 11 public const int keyTab = cast<int>('\t');
 12 
 13 public const int keyControlA = 0x001;
 14 public const int keyControlB = 0x002;
 15 public const int keyControlC = 0x003;
 16 public const int keyControlD = 0x004;
 17 public const int keyControlE = 0x005;
 18 public const int keyControlF = 0x006;
 19 public const int keyControlG = 0x007;
 20 public const int keyControlH = 0x008;
 21 public const int keyControlI = 0x009;
 22 public const int keyControlJ = 0x00A;
 23 public const int keyControlK = 0x00B;
 24 public const int keyControlL = 0x00C;
 25 public const int keyControlM = 0x00D;
 26 public const int keyControlN = 0x00E;
 27 public const int keyControlO = 0x00F;
 28 public const int keyControlP = 0x010;
 29 public const int keyControlQ = 0x011;
 30 public const int keyControlR = 0x012;
 31 public const int keyControlS = 0x013;
 32 public const int keyControlT = 0x014;
 33 public const int keyControlU = 0x015;
 34 public const int keyControlV = 0x016;
 35 public const int keyControlW = 0x017;
 36 public const int keyControlX = 0x018;
 37 public const int keyControlY = 0x019;
 38 public const int keyControlZ = 0x01A;
 39 public const int keyEscape = 0x01B;
 40 public const int keyFS = 0x01C;
 41 public const int keyGS = 0x01D;
 42 public const int keyRS = 0x01E;
 43 public const int keyUS = 0x01F;
 44 
 45 // special keys are mapped to Unicode Private Use Area
 46 
 47 public const int specialKeyStart = 0xE000;
 48 
 49 public const int keyEnter = specialKeyStart + 0;
 50 public const int keyDown = specialKeyStart + 1;
 51 public const int keyUp = specialKeyStart + 2;
 52 public const int keyLeft = specialKeyStart + 3;
 53 public const int keyRight = specialKeyStart + 4;
 54 public const int keyHome = specialKeyStart + 5;
 55 public const int keyF0 = specialKeyStart + 6;
 56 public const int keyF1 = specialKeyStart + 7;
 57 public const int keyF2 = specialKeyStart + 8;
 58 public const int keyF3 = specialKeyStart + 9;
 59 public const int keyF4 = specialKeyStart + 10;
 60 public const int keyF5 = specialKeyStart + 11;
 61 public const int keyF6 = specialKeyStart + 12;
 62 public const int keyF7 = specialKeyStart + 13;
 63 public const int keyF8 = specialKeyStart + 14;
 64 public const int keyF9 = specialKeyStart + 15;
 65 public const int keyF10 = specialKeyStart + 16;
 66 public const int keyF11 = specialKeyStart + 17;
 67 public const int keyF12 = specialKeyStart + 18;
 68 public const int keyDel = specialKeyStart + 19;
 69 public const int keyIns = specialKeyStart + 20;
 70 public const int keyPgDown = specialKeyStart + 21;
 71 public const int keyPgUp = specialKeyStart + 22;
 72 public const int keyPrint = specialKeyStart + 23;
 73 public const int keyEnd = specialKeyStart + 24;
 74 public const int keyShiftDel = specialKeyStart + 25;
 75 public const int keyShiftEnd = specialKeyStart + 26;
 76 public const int keyShiftHome = specialKeyStart + 27;
 77 public const int keyShiftLeft = specialKeyStart + 28;
 78 public const int keyShiftRight = specialKeyStart + 29;
 79 public const int keyResize = specialKeyStart + 30;
 80 public const int keyShiftUp = specialKeyStart + 31;
 81 public const int keyShiftDown = specialKeyStart + 32;
 82 public const int keyControlUp = specialKeyStart + 33;
 83 public const int keyControlDown = specialKeyStart + 34;
 84 public const int keyControlLeft = specialKeyStart + 35;
 85 public const int keyControlRight = specialKeyStart + 36;
 86 public const int keyControlPgUp = specialKeyStart + 37;
 87 public const int keyControlPgDown = specialKeyStart + 38;
 88 public const int keyControlHome = specialKeyStart + 39;
 89 public const int keyControlEnd = specialKeyStart + 40;
 90 
 91 public const int keyControlDel = specialKeyStart + 41;
 92 public const int keyControlF1 = specialKeyStart + 42;
 93 public const int keyControlF2 = specialKeyStart + 43;
 94 public const int keyControlF3 = specialKeyStart + 44;
 95 public const int keyControlF4 = specialKeyStart + 45;
 96 public const int keyControlF5 = specialKeyStart + 46;
 97 public const int keyControlF6 = specialKeyStart + 47;
 98 public const int keyControlF7 = specialKeyStart + 48;
 99 public const int keyControlF8 = specialKeyStart + 49;
100 public const int keyControlF9 = specialKeyStart + 50;
101 public const int keyControlF10 = specialKeyStart + 51;
102 public const int keyControlF11 = specialKeyStart + 52;
103 public const int keyControlF12 = specialKeyStart + 53;
104 public const int keyShiftPgUp = specialKeyStart + 54;
105 public const int keyShiftPgDown = specialKeyStart + 55;
106 public const int keyShiftF1 = specialKeyStart + 56;
107 public const int keyShiftF2 = specialKeyStart + 57;
108 public const int keyShiftF3 = specialKeyStart + 58;
109 public const int keyShiftF4 = specialKeyStart + 59;
110 public const int keyShiftF5 = specialKeyStart + 60;
111 public const int keyShiftF6 = specialKeyStart + 61;
112 public const int keyShiftF7 = specialKeyStart + 62;
113 public const int keyShiftF8 = specialKeyStart + 63;
114 public const int keyShiftF9 = specialKeyStart + 64;
115 public const int keyShiftF10 = specialKeyStart + 65;
116 public const int keyShiftF11 = specialKeyStart + 66;
117 public const int keyShiftF12 = specialKeyStart + 67;
118 
119 public const int specialKeyEnd = specialKeyStart + 67;