Ajout de l'ensemble du workspace.
[GPU.git] / WCudaMSE / API_Bilat_Displayable / INC / KeyEvent.h
1 #ifndef KEY_EVENT_H
2 #define KEY_EVENT_H
3
4 #include "envBilatDisplayable.h"
5 #include "InputEvent.h"
6
7 /*----------------------------------------------------------------------*\
8 |* Declaration *|
9 \*---------------------------------------------------------------------*/
10
11 enum SpecialKeyType
12 {
13 KEY_UNKNOWN,
14 KEY_F1,
15 KEY_F2,
16 KEY_F3,
17 KEY_F4,
18 KEY_F5,
19 KEY_F6,
20 KEY_F7,
21 KEY_F8,
22 KEY_F9,
23 KEY_F10,
24 KEY_F11,
25 KEY_F12,
26 KEY_LEFT,
27 KEY_UP,
28 KEY_RIGHT,
29 KEY_DOWN,
30 KEY_PAGE_UP,
31 KEY_PAGE_DOWN,
32 KEY_HOME,
33 KEY_END,
34 KEY_INSERT,
35 };
36
37 /*--------------------------------------*\
38 |* Public *|
39 \*-------------------------------------*/
40
41 class CBI_DISPLAYABLE KeyEvent: public InputEvent
42 {
43 public:
44 /*--------------------------------------*\
45 |* Constructor *|
46 \*-------------------------------------*/
47
48 KeyEvent(const Panel_A &ptrPanelSource);
49
50 KeyEvent(const KeyEvent& source);
51
52 /*--------------------------------------*\
53 |* Destructor *|
54 \*-------------------------------------*/
55
56 virtual ~KeyEvent();
57
58 /*--------------------------------------*\
59 |* Get *|
60 \*-------------------------------------*/
61
62 unsigned char getKey() const;
63
64 SpecialKeyType getSpecialKey() const;
65
66 /*--------------------------------------*\
67 |* Set *|
68 \*-------------------------------------*/
69
70 void setKey(unsigned char key);
71
72 void setSpecialKey(SpecialKeyType specialKey);
73
74 /*--------------------------------------*\
75 |* Is *|
76 \*-------------------------------------*/
77
78 bool isNumeric() const;
79
80 bool isChar() const;
81
82 bool isSpecial() const;
83
84 private:
85 SpecialKeyType specialKey;
86 unsigned char key;
87 };
88
89 #endif
90
91 /*----------------------------------------------------------------------*\
92 |* End *|
93 \*---------------------------------------------------------------------*/