+#ifndef KEY_EVENT_H\r
+#define KEY_EVENT_H\r
+\r
+#include "envBilatDisplayable.h"\r
+#include "InputEvent.h"\r
+\r
+/*----------------------------------------------------------------------*\\r
+ |* Declaration *|\r
+ \*---------------------------------------------------------------------*/\r
+\r
+enum SpecialKeyType\r
+ {\r
+ KEY_UNKNOWN,\r
+ KEY_F1,\r
+ KEY_F2,\r
+ KEY_F3,\r
+ KEY_F4,\r
+ KEY_F5,\r
+ KEY_F6,\r
+ KEY_F7,\r
+ KEY_F8,\r
+ KEY_F9,\r
+ KEY_F10,\r
+ KEY_F11,\r
+ KEY_F12,\r
+ KEY_LEFT,\r
+ KEY_UP,\r
+ KEY_RIGHT,\r
+ KEY_DOWN,\r
+ KEY_PAGE_UP,\r
+ KEY_PAGE_DOWN,\r
+ KEY_HOME,\r
+ KEY_END,\r
+ KEY_INSERT,\r
+ };\r
+\r
+/*--------------------------------------*\\r
+ |* Public *|\r
+ \*-------------------------------------*/\r
+\r
+class CBI_DISPLAYABLE KeyEvent: public InputEvent\r
+ {\r
+ public:\r
+ /*--------------------------------------*\\r
+ |* Constructor *|\r
+ \*-------------------------------------*/\r
+\r
+ KeyEvent(const Panel_A &ptrPanelSource);\r
+\r
+ KeyEvent(const KeyEvent& source);\r
+\r
+ /*--------------------------------------*\\r
+ |* Destructor *|\r
+ \*-------------------------------------*/\r
+\r
+ virtual ~KeyEvent();\r
+\r
+ /*--------------------------------------*\\r
+ |* Get *|\r
+ \*-------------------------------------*/\r
+\r
+ unsigned char getKey() const;\r
+\r
+ SpecialKeyType getSpecialKey() const;\r
+\r
+ /*--------------------------------------*\\r
+ |* Set *|\r
+ \*-------------------------------------*/\r
+\r
+ void setKey(unsigned char key);\r
+\r
+ void setSpecialKey(SpecialKeyType specialKey);\r
+\r
+ /*--------------------------------------*\\r
+ |* Is *|\r
+ \*-------------------------------------*/\r
+\r
+ bool isNumeric() const;\r
+\r
+ bool isChar() const;\r
+\r
+ bool isSpecial() const;\r
+\r
+ private:\r
+ SpecialKeyType specialKey;\r
+ unsigned char key;\r
+ };\r
+\r
+#endif \r
+\r
+/*----------------------------------------------------------------------*\\r
+ |* End *|\r
+ \*---------------------------------------------------------------------*/\r