#include <ntos/types.h>
+/* Virtual Key codes */
+#define VK_0 (48)
+#define VK_1 (49)
+#define VK_2 (50)
+#define VK_3 (51)
+#define VK_4 (52)
+#define VK_5 (53)
+#define VK_6 (54)
+#define VK_7 (55)
+#define VK_8 (56)
+#define VK_9 (57)
+#define VK_A (65)
+#define VK_B (66)
+#define VK_C (67)
+#define VK_D (68)
+#define VK_E (69)
+#define VK_F (70)
+#define VK_G (71)
+#define VK_H (72)
+#define VK_I (73)
+#define VK_J (74)
+#define VK_K (75)
+#define VK_L (76)
+#define VK_M (77)
+#define VK_N (78)
+#define VK_O (79)
+#define VK_P (80)
+#define VK_Q (81)
+#define VK_R (82)
+#define VK_S (83)
+#define VK_T (84)
+#define VK_U (85)
+#define VK_V (86)
+#define VK_W (87)
+#define VK_X (88)
+#define VK_Y (89)
+#define VK_Z (90)
+
+#ifndef __USE_W32API
+
/* KEY_EVENT_RECORD structure */
#define CAPSLOCK_ON (128)
#define ENHANCED_KEY (256)
#define FOCUS_EVENT (16)
-typedef struct _KEY_EVENT_RECORD {
- BOOL bKeyDown;
- WORD wRepeatCount;
- WORD wVirtualKeyCode;
- WORD wVirtualScanCode;
- union {
- WCHAR UnicodeChar;
- CHAR AsciiChar;
- } uChar;
+typedef struct _KEY_EVENT_RECORD
+{
+ BOOL bKeyDown;
+ WORD wRepeatCount;
+ WORD wVirtualKeyCode;
+ WORD wVirtualScanCode;
+ union
+ {
+ WCHAR UnicodeChar;
+ CHAR AsciiChar;
+ } uChar;
DWORD dwControlKeyState;
} KEY_EVENT_RECORD PACKED;
-typedef struct _MOUSE_EVENT_RECORD {
- COORD dwMousePosition;
- DWORD dwButtonState;
- DWORD dwControlKeyState;
- DWORD dwEventFlags;
-} MOUSE_EVENT_RECORD;
+typedef struct _MOUSE_EVENT_RECORD
+{
+ COORD dwMousePosition;
+ DWORD dwButtonState;
+ DWORD dwControlKeyState;
+ DWORD dwEventFlags;
+} MOUSE_EVENT_RECORD;
-typedef struct _WINDOW_BUFFER_SIZE_RECORD {
- COORD dwSize;
-} WINDOW_BUFFER_SIZE_RECORD;
+typedef struct _WINDOW_BUFFER_SIZE_RECORD
+{
+ COORD dwSize;
+} WINDOW_BUFFER_SIZE_RECORD;
-typedef struct _MENU_EVENT_RECORD {
+typedef struct _MENU_EVENT_RECORD
+{
UINT dwCommandId;
-} MENU_EVENT_RECORD, *PMENU_EVENT_RECORD;
-
-typedef struct _FOCUS_EVENT_RECORD {
- BOOL bSetFocus;
-} FOCUS_EVENT_RECORD;
-
-typedef struct _INPUT_RECORD {
- WORD EventType;
- union {
+} MENU_EVENT_RECORD, *PMENU_EVENT_RECORD;
+
+typedef struct _FOCUS_EVENT_RECORD
+{
+ BOOL bSetFocus;
+} FOCUS_EVENT_RECORD;
+
+typedef struct _INPUT_RECORD
+{
+ WORD EventType;
+ union
+ {
#ifndef __cplus_plus
/* this will be the wrong size in c++ */
- KEY_EVENT_RECORD KeyEvent;
+ KEY_EVENT_RECORD KeyEvent;
#endif
- MOUSE_EVENT_RECORD MouseEvent;
- WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent;
- MENU_EVENT_RECORD MenuEvent;
- FOCUS_EVENT_RECORD FocusEvent;
- } Event;
-} INPUT_RECORD, *PINPUT_RECORD;
+ MOUSE_EVENT_RECORD MouseEvent;
+ WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent;
+ MENU_EVENT_RECORD MenuEvent;
+ FOCUS_EVENT_RECORD FocusEvent;
+ } Event;
+} INPUT_RECORD, *PINPUT_RECORD;
/* Virtual Key codes */
#define VK_LBUTTON (1)
#define VK_INSERT (45)
#define VK_DELETE (46)
#define VK_HELP (47)
-#define VK_0 (48)
-#define VK_1 (49)
-#define VK_2 (50)
-#define VK_3 (51)
-#define VK_4 (52)
-#define VK_5 (53)
-#define VK_6 (54)
-#define VK_7 (55)
-#define VK_8 (56)
-#define VK_9 (57)
-#define VK_A (65)
-#define VK_B (66)
-#define VK_C (67)
-#define VK_D (68)
-#define VK_E (69)
-#define VK_F (70)
-#define VK_G (71)
-#define VK_H (72)
-#define VK_I (73)
-#define VK_J (74)
-#define VK_K (75)
-#define VK_L (76)
-#define VK_M (77)
-#define VK_N (78)
-#define VK_O (79)
-#define VK_P (80)
-#define VK_Q (81)
-#define VK_R (82)
-#define VK_S (83)
-#define VK_T (84)
-#define VK_U (85)
-#define VK_V (86)
-#define VK_W (87)
-#define VK_X (88)
-#define VK_Y (89)
-#define VK_Z (90)
#define VK_NUMPAD0 (96)
#define VK_NUMPAD1 (97)
#define VK_NUMPAD2 (98)
#define VK_RCONTROL (163)
#define VK_RMENU (165)
+#endif /* !__USE_W32API */
#endif /* __INCLUDE_KEYBOARD_H */