event_util.js 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. export var KeyCode;
  2. (function (KeyCode) {
  3. KeyCode[KeyCode["ENTER"] = 13] = "ENTER";
  4. KeyCode[KeyCode["ESC"] = 27] = "ESC";
  5. KeyCode[KeyCode["SPACE"] = 32] = "SPACE";
  6. KeyCode[KeyCode["PAGE_UP"] = 33] = "PAGE_UP";
  7. KeyCode[KeyCode["PAGE_DOWN"] = 34] = "PAGE_DOWN";
  8. KeyCode[KeyCode["END"] = 35] = "END";
  9. KeyCode[KeyCode["HOME"] = 36] = "HOME";
  10. KeyCode[KeyCode["LEFT"] = 37] = "LEFT";
  11. KeyCode[KeyCode["UP"] = 38] = "UP";
  12. KeyCode[KeyCode["RIGHT"] = 39] = "RIGHT";
  13. KeyCode[KeyCode["DOWN"] = 40] = "DOWN";
  14. KeyCode[KeyCode["TAB"] = 9] = "TAB";
  15. KeyCode[KeyCode["LESS"] = 188] = "LESS";
  16. KeyCode[KeyCode["GREATER"] = 190] = "GREATER";
  17. KeyCode[KeyCode["DASH"] = 189] = "DASH";
  18. KeyCode[KeyCode["ZERO"] = 48] = "ZERO";
  19. KeyCode[KeyCode["ONE"] = 49] = "ONE";
  20. KeyCode[KeyCode["TWO"] = 50] = "TWO";
  21. KeyCode[KeyCode["THREE"] = 51] = "THREE";
  22. KeyCode[KeyCode["FOUR"] = 52] = "FOUR";
  23. KeyCode[KeyCode["FIVE"] = 53] = "FIVE";
  24. KeyCode[KeyCode["SIX"] = 54] = "SIX";
  25. KeyCode[KeyCode["SEVEN"] = 55] = "SEVEN";
  26. KeyCode[KeyCode["EIGHT"] = 56] = "EIGHT";
  27. KeyCode[KeyCode["NINE"] = 57] = "NINE";
  28. KeyCode[KeyCode["A"] = 65] = "A";
  29. KeyCode[KeyCode["B"] = 66] = "B";
  30. KeyCode[KeyCode["C"] = 67] = "C";
  31. KeyCode[KeyCode["D"] = 68] = "D";
  32. KeyCode[KeyCode["E"] = 69] = "E";
  33. KeyCode[KeyCode["F"] = 70] = "F";
  34. KeyCode[KeyCode["G"] = 71] = "G";
  35. KeyCode[KeyCode["H"] = 72] = "H";
  36. KeyCode[KeyCode["I"] = 73] = "I";
  37. KeyCode[KeyCode["J"] = 74] = "J";
  38. KeyCode[KeyCode["K"] = 75] = "K";
  39. KeyCode[KeyCode["L"] = 76] = "L";
  40. KeyCode[KeyCode["M"] = 77] = "M";
  41. KeyCode[KeyCode["N"] = 78] = "N";
  42. KeyCode[KeyCode["O"] = 79] = "O";
  43. KeyCode[KeyCode["P"] = 80] = "P";
  44. KeyCode[KeyCode["Q"] = 81] = "Q";
  45. KeyCode[KeyCode["R"] = 82] = "R";
  46. KeyCode[KeyCode["S"] = 83] = "S";
  47. KeyCode[KeyCode["T"] = 84] = "T";
  48. KeyCode[KeyCode["U"] = 85] = "U";
  49. KeyCode[KeyCode["V"] = 86] = "V";
  50. KeyCode[KeyCode["W"] = 87] = "W";
  51. KeyCode[KeyCode["X"] = 88] = "X";
  52. KeyCode[KeyCode["Y"] = 89] = "Y";
  53. KeyCode[KeyCode["Z"] = 90] = "Z";
  54. })(KeyCode || (KeyCode = {}));
  55. export const Move = new Map([
  56. [13, 'ENTER'],
  57. [27, 'ESC'],
  58. [32, 'SPACE'],
  59. [33, 'PAGE_UP'],
  60. [34, 'PAGE_DOWN'],
  61. [35, 'END'],
  62. [36, 'HOME'],
  63. [37, 'LEFT'],
  64. [38, 'UP'],
  65. [39, 'RIGHT'],
  66. [40, 'DOWN'],
  67. [9, 'TAB'],
  68. [188, 'LESS'],
  69. [190, 'GREATER'],
  70. [189, 'DASH'],
  71. [48, 'ZERO'],
  72. [49, 'ONE'],
  73. [50, 'TWO'],
  74. [51, 'THREE'],
  75. [52, 'FOUR'],
  76. [53, 'FIVE'],
  77. [54, 'SIX'],
  78. [55, 'SEVEN'],
  79. [56, 'EIGHT'],
  80. [57, 'NINE'],
  81. [65, 'A'],
  82. [66, 'B'],
  83. [67, 'C'],
  84. [68, 'D'],
  85. [69, 'E'],
  86. [70, 'F'],
  87. [71, 'G'],
  88. [72, 'H'],
  89. [73, 'I'],
  90. [74, 'J'],
  91. [75, 'K'],
  92. [76, 'L'],
  93. [77, 'M'],
  94. [78, 'N'],
  95. [79, 'O'],
  96. [80, 'P'],
  97. [81, 'Q'],
  98. [82, 'R'],
  99. [83, 'S'],
  100. [84, 'T'],
  101. [85, 'U'],
  102. [86, 'V'],
  103. [87, 'W'],
  104. [88, 'X'],
  105. [89, 'Y'],
  106. [90, 'Z']
  107. ]);
  108. var EventType;
  109. (function (EventType) {
  110. EventType["CLICK"] = "click";
  111. EventType["DBLCLICK"] = "dblclick";
  112. EventType["MOUSEDOWN"] = "mousedown";
  113. EventType["MOUSEUP"] = "mouseup";
  114. EventType["MOUSEOVER"] = "mouseover";
  115. EventType["MOUSEOUT"] = "mouseout";
  116. EventType["MOUSEMOVE"] = "mousemove";
  117. EventType["SELECTSTART"] = "selectstart";
  118. EventType["KEYPRESS"] = "keypress";
  119. EventType["KEYDOWN"] = "keydown";
  120. EventType["KEYUP"] = "keyup";
  121. EventType["TOUCHSTART"] = "touchstart";
  122. EventType["TOUCHMOVE"] = "touchmove";
  123. EventType["TOUCHEND"] = "touchend";
  124. EventType["TOUCHCANCEL"] = "touchcancel";
  125. })(EventType || (EventType = {}));
  126. export class Event {
  127. constructor(src, type, callback) {
  128. this.src = src;
  129. this.type = type;
  130. this.callback = callback;
  131. }
  132. add() {
  133. this.src.addEventListener(this.type, this.callback);
  134. }
  135. remove() {
  136. this.src.removeEventListener(this.type, this.callback);
  137. }
  138. }