123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- #ifndef TastaturEreignis_H
- #define TastaturEreignis_H
- #include "Betriebssystem.h"
- #include <functional>
- namespace Framework
- {
- //! Es wurde eine Taste runtergedrückt
- const int TE_Press = 0;
- //! Es wurde eine Taste losgelassen
- const int TE_Release = 1;
- #ifdef WIN32
- const unsigned char T_Tab = VK_TAB;
- const unsigned char T_Enter = VK_RETURN;
- const unsigned char T_BackSpace = VK_BACK;
- const unsigned char T_Shift = VK_SHIFT;
- const unsigned char T_Strg = VK_CONTROL;
- const unsigned char T_Alt = VK_MENU;
- const unsigned char T_Pause = VK_PAUSE;
- const unsigned char T_Caps_Lock = VK_CAPITAL;
- const unsigned char T_Esc = VK_ESCAPE;
- const unsigned char T_Space = VK_SPACE;
- const unsigned char T_BildO = VK_PRIOR;
- const unsigned char T_BildU = VK_NEXT;
- const unsigned char T_Ende = VK_END;
- const unsigned char T_Pos1 = VK_HOME;
- const unsigned char T_Links = VK_LEFT;
- const unsigned char T_Oben = VK_UP;
- const unsigned char T_Rechts = VK_RIGHT;
- const unsigned char T_Unten = VK_DOWN;
- const unsigned char T_Druck = VK_PRINT;
- const unsigned char T_Einfg = VK_INSERT;
- const unsigned char T_Entf = VK_DELETE;
- const unsigned char T_F1 = VK_F1;
- const unsigned char T_F2 = VK_F2;
- const unsigned char T_F3 = VK_F3;
- const unsigned char T_F4 = VK_F4;
- const unsigned char T_F5 = VK_F5;
- const unsigned char T_F6 = VK_F6;
- const unsigned char T_F7 = VK_F7;
- const unsigned char T_F8 = VK_F8;
- const unsigned char T_F9 = VK_F9;
- const unsigned char T_F10 = VK_F10;
- const unsigned char T_F11 = VK_F11;
- const unsigned char T_F12 = VK_F12;
- const unsigned char T_Num = VK_NUMLOCK;
- const unsigned char T_Alt_Gr = VK_RMENU;
- #else
- const unsigned char T_Tab = 0x09;
- const unsigned char T_Enter = 0x0D;
- const unsigned char T_BackSpace = 0x0B;
- const unsigned char T_Shift = 0x10;
- const unsigned char T_Strg = 0x11;
- const unsigned char T_Alt = 0x12;
- const unsigned char T_Pause = 0x13;
- const unsigned char T_Caps_Lock = 0x14;
- const unsigned char T_Esc = 0x1B;
- const unsigned char T_Space = 0x20;
- const unsigned char T_BildO = 0x21;
- const unsigned char T_BildU = 0x22;
- const unsigned char T_Ende = 0x23;
- const unsigned char T_Pos1 = 0x24;
- const unsigned char T_Links = 0x25;
- const unsigned char T_Oben = 0x26;
- const unsigned char T_Rechts = 0x27;
- const unsigned char T_Unten = 0x28;
- const unsigned char T_Druck = 0x2A;
- const unsigned char T_Einfg = 0x2D;
- const unsigned char T_Entf = 0x2E;
- const unsigned char T_F1 = 0x70;
- const unsigned char T_F2 = 0x71;
- const unsigned char T_F3 = 0x72;
- const unsigned char T_F4 = 0x73;
- const unsigned char T_F5 = 0x74;
- const unsigned char T_F6 = 0x75;
- const unsigned char T_F7 = 0x76;
- const unsigned char T_F8 = 0x77;
- const unsigned char T_F9 = 0x78;
- const unsigned char T_F10 = 0x79;
- const unsigned char T_F11 = 0x7A;
- const unsigned char T_F12 = 0x7B;
- const unsigned char T_Num = 0x90;
- const unsigned char T_Alt_Gr = 0xA5;
- #endif
- //! Speichert den Input eines Nutzers auf der Tastatur
- struct TastaturEreignis
- {
- //! Art der Eingabe
- int id;
- //! Betroffene Taste
- unsigned char taste;
- //! (true), wenn die Eingabe bereits verarbeitet wurde. (false) sonnst
- bool verarbeitet;
- };
- typedef std::function< bool(void*, void*, TastaturEreignis) > TastaturAktion;
- //! Standart Tastatur Ereinis Rückruffunktion
- //! \param param Ein beliebiger Parameter
- //! \param obj Die Zeichnung, welches diese Funktion aufruft
- //! \param te Das Tastaturereignis, welches verarbeitet werden soll
- //! \return (true), wenn aufrufende Zeichnung das Ereignis weiterverarbeiten soll. (false) sonnst.
- //! Gibt immer (true) zurück
- DLLEXPORT bool _ret1TE(void* param, void* obj, TastaturEreignis te);
- //! Standart Tastatur Ereinis Rückruffunktion
- //! \param param Ein beliebiger Parameter
- //! \param obj Die Zeichnung, welches diese Funktion aufruft
- //! \param te Das Tastaturereignis, welches verarbeitet werden soll
- //! \return (true), wenn aufrufende Zeichnung das Ereignis weiterverarbeiten soll. (false) sonnst.
- //! Gibt nur (true) zurück, wenn die Taste zwischen '0' und '9' ist, oder zum Löschen oder Cursorbewegen dient
- DLLEXPORT bool _nurNummernTE(void* param, void* obj, TastaturEreignis te);
- //! Standart Tastatur Ereinis Rückruffunktion
- //! \param param Ein beliebiger Parameter
- //! \param obj Die Zeichnung, welches diese Funktion aufruft
- //! \param te Das Tastaturereignis, welches verarbeitet werden soll
- //! \return (true), wenn aufrufende Zeichnung das Ereignis weiterverarbeiten soll. (false) sonnst.
- //! Gibt nur (true) zurück, wenn die Taste zwischen '0' und '9' oder 'A' und 'F' ist, oder zum Löschen oder Cursorbewegen dient
- DLLEXPORT bool _nurHexTE(void* param, void* obj, TastaturEreignis te);
- }
- #endif
|