TastaturEreignis.h 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. #ifndef TastaturEreignis_H
  2. #define TastaturEreignis_H
  3. #include "Betriebssystem.h"
  4. #include <functional>
  5. namespace Framework
  6. {
  7. // Es wurde eine Taste runtergedrückt
  8. const int TE_Press = 0;
  9. // Es wurde eine Taste losgelassen
  10. const int TE_Release = 1;
  11. const unsigned char T_Esc = 27;
  12. const unsigned char T_Tab = 0;
  13. const unsigned char T_Enter = 13;
  14. const unsigned char T_BackSpace = 8;
  15. const unsigned char T_Space = 32;
  16. const unsigned char T_Caps_Lock = 129;
  17. const unsigned char T_Shift = 130;
  18. const unsigned char T_Strg = 141;
  19. const unsigned char T_F1 = 143;
  20. const unsigned char T_F2 = 144;
  21. const unsigned char T_F3 = 157;
  22. const unsigned char T_F4 = 160;
  23. const unsigned char T_F5 = 130;
  24. const unsigned char T_F6 = 132;
  25. const unsigned char T_F7 = 133;
  26. const unsigned char T_F8 = 134;
  27. const unsigned char T_F9 = 135;
  28. const unsigned char T_F10 = 136;
  29. const unsigned char T_F11 = 137;
  30. const unsigned char T_F12 = 138;
  31. const unsigned char T_Pause = 139;
  32. const unsigned char T_Druck = 140;
  33. const unsigned char T_Einfg = 142;
  34. const unsigned char T_Entf = 145;
  35. const unsigned char T_Links = 146;
  36. const unsigned char T_Oben = 147;
  37. const unsigned char T_Rechts = 148;
  38. const unsigned char T_Unten = 149;
  39. const unsigned char T_Alt_Gr = 150;
  40. const unsigned char T_Num = 151;
  41. const unsigned char T_Pos1 = 152;
  42. const unsigned char T_BildO = 153;
  43. const unsigned char T_BildU = 154;
  44. const unsigned char T_Ende = 155;
  45. // Speichert den Input eines Nutzers auf der Tastatur
  46. struct TastaturEreignis
  47. {
  48. // Art der Eingabe
  49. int id;
  50. // Betroffene Taste
  51. unsigned char taste;
  52. // (true), wenn die Eingabe bereits verarbeitet wurde. (false) sonnst
  53. bool verarbeitet;
  54. };
  55. typedef std::function< bool( void*, void*, TastaturEreignis ) > TastaturAktion;
  56. // Standart Tastatur Ereinis Rückruffunktion
  57. // param: Ein beliebiger Parameter
  58. // obj: Die Zeichnung, welches diese Funktion aufruft
  59. // te: Das Tastaturereignis, welches verarbeitet werden soll
  60. // return: (true), wenn aufrufende Zeichnung das Ereignis weiterverarbeiten soll. (false) sonnst.
  61. // Gibt immer (true) zurück
  62. __declspec( dllexport ) bool _ret1TE( void *param, void *obj, TastaturEreignis te );
  63. // Standart Tastatur Ereinis Rückruffunktion
  64. // param: Ein beliebiger Parameter
  65. // obj: Die Zeichnung, welches diese Funktion aufruft
  66. // te: Das Tastaturereignis, welches verarbeitet werden soll
  67. // return: (true), wenn aufrufende Zeichnung das Ereignis weiterverarbeiten soll. (false) sonnst.
  68. // Gibt nur (true) zurück, wenn die Taste zwischen '0' und '9' ist, oder zum Löschen oder Cursorbewegen dient
  69. __declspec( dllexport ) bool _nurNummernTE( void *param, void *obj, TastaturEreignis te );
  70. // Standart Tastatur Ereinis Rückruffunktion
  71. // param: Ein beliebiger Parameter
  72. // obj: Die Zeichnung, welches diese Funktion aufruft
  73. // te: Das Tastaturereignis, welches verarbeitet werden soll
  74. // return: (true), wenn aufrufende Zeichnung das Ereignis weiterverarbeiten soll. (false) sonnst.
  75. // Gibt nur (true) zurück, wenn die Taste zwischen '0' und '9' oder 'A' und 'F' ist, oder zum Löschen oder Cursorbewegen dient
  76. __declspec( dllexport ) bool _nurHexTE( void *param, void *obj, TastaturEreignis te );
  77. }
  78. #endif