TastaturEreignis.h 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  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. const unsigned char T_Alt = 164;
  46. //! Speichert den Input eines Nutzers auf der Tastatur
  47. struct TastaturEreignis
  48. {
  49. //! Art der Eingabe
  50. int id;
  51. //! Betroffene Taste
  52. unsigned char taste;
  53. //! (true), wenn die Eingabe bereits verarbeitet wurde. (false) sonnst
  54. bool verarbeitet;
  55. };
  56. typedef std::function< bool( void*, void*, TastaturEreignis ) > TastaturAktion;
  57. //! Standart Tastatur Ereinis Rückruffunktion
  58. //! \param param Ein beliebiger Parameter
  59. //! \param obj Die Zeichnung, welches diese Funktion aufruft
  60. //! \param te Das Tastaturereignis, welches verarbeitet werden soll
  61. //! \return (true), wenn aufrufende Zeichnung das Ereignis weiterverarbeiten soll. (false) sonnst.
  62. //! Gibt immer (true) zurück
  63. DLLEXPORT bool _ret1TE( void *param, void *obj, TastaturEreignis te );
  64. //! Standart Tastatur Ereinis Rückruffunktion
  65. //! \param param Ein beliebiger Parameter
  66. //! \param obj Die Zeichnung, welches diese Funktion aufruft
  67. //! \param te Das Tastaturereignis, welches verarbeitet werden soll
  68. //! \return (true), wenn aufrufende Zeichnung das Ereignis weiterverarbeiten soll. (false) sonnst.
  69. //! Gibt nur (true) zurück, wenn die Taste zwischen '0' und '9' ist, oder zum Löschen oder Cursorbewegen dient
  70. DLLEXPORT bool _nurNummernTE( void *param, void *obj, TastaturEreignis te );
  71. //! Standart Tastatur Ereinis Rückruffunktion
  72. //! \param param Ein beliebiger Parameter
  73. //! \param obj Die Zeichnung, welches diese Funktion aufruft
  74. //! \param te Das Tastaturereignis, welches verarbeitet werden soll
  75. //! \return (true), wenn aufrufende Zeichnung das Ereignis weiterverarbeiten soll. (false) sonnst.
  76. //! Gibt nur (true) zurück, wenn die Taste zwischen '0' und '9' oder 'A' und 'F' ist, oder zum Löschen oder Cursorbewegen dient
  77. DLLEXPORT bool _nurHexTE( void *param, void *obj, TastaturEreignis te );
  78. }
  79. #endif