diff options
Diffstat (limited to 'Source/Kernel/DeviceManager')
-rw-r--r-- | Source/Kernel/DeviceManager/Kbd.ns.h | 85 |
1 files changed, 1 insertions, 84 deletions
diff --git a/Source/Kernel/DeviceManager/Kbd.ns.h b/Source/Kernel/DeviceManager/Kbd.ns.h index 2934474..2343d46 100644 --- a/Source/Kernel/DeviceManager/Kbd.ns.h +++ b/Source/Kernel/DeviceManager/Kbd.ns.h @@ -3,94 +3,11 @@ #include <common.h> #include <WChar.class.h> - -//Used by variable kbdstatus -#define STATUS_SCRL 0x40 -#define STATUS_NUM 0x20 -#define STATUS_CAPS 0x10 -#define STATUS_SHIFT 0x08 -#define STATUS_CTRL 0x04 -#define STATUS_ALT 0x02 -#define STATUS_ALTGR 0x01 - -//Used in control keys keymap. The ones > 100 are modifiers and are not supposed to be sent to applications. -#define KBDC_LEFTCTRL 101 -#define KBDC_RIGHTCTRL 102 -#define KBDC_ALT 103 -#define KBDC_ALTGR 104 -#define KBDC_LEFTSUP 5 //Super = windows -#define KBDC_RIGHTSUP 6 -#define KBDC_MENU 7 -#define KBDC_LEFTSHIFT 108 -#define KBDC_RIGHTSHIFT 109 -#define KBDC_CAPSLOCK 110 -#define KBDC_TAB 11 -#define KBDC_ENTER 12 -#define KBDC_BACKSPACE 13 - -#define KBDC_KPINSERT 14 //Key 0/insert -#define KBDC_KPEND 15 //Key 1/end -#define KBDC_KPDOWN 16 //Key 2/down -#define KBDC_KPPGDOWN 17 //Key 3/pgdown -#define KBDC_KPLEFT 18 //Key 4/left -#define KBDC_KP5 19 //Key 5 this is sent to receiving application, but must be ignored -#define KBDC_KPRIGHT 20 //Key 6/right -#define KBDC_KPHOME 21 //Key 7/home -#define KBDC_KPUP 22 //Key 8/up -#define KBDC_KPPGUP 23 //Key 9/pgup -#define KBDC_KPDEL 24 //Key ./del - -#define KBDC_HOME 25 -#define KBDC_END 26 -#define KBDC_INSERT 27 -#define KBDC_DEL 28 -#define KBDC_PGUP 29 -#define KBDC_PGDOWN 30 -#define KBDC_UP 31 -#define KBDC_DOWN 32 -#define KBDC_LEFT 33 -#define KBDC_RIGHT 34 - -#define KBDC_NUMLOCK 135 -#define KBDC_SCRLLOCK 136 -#define KBDC_PRTSCN 37 //Print screen -#define KBDC_SYSREQ 38 - -#define KBDC_ESCAPE 40 -#define KBDC_F1 41 -#define KBDC_F2 42 -#define KBDC_F3 43 -#define KBDC_F4 44 -#define KBDC_F5 45 -#define KBDC_F6 46 -#define KBDC_F7 47 -#define KBDC_F8 48 -#define KBDC_F9 49 -#define KBDC_F10 50 -#define KBDC_F11 51 -#define KBDC_F12 52 - -//This is a special case. Keycode is escaped, Keyboard:: will send a 0xB5 keycode, that must not be mixed up with 0x35 -#define KBDC_KPSLASH 53 +#include <Kbd.iface.h> class VirtualTerminal; namespace Kbd { - //== Possible cases for keypress_t : - // - hascmd && !haschar : this is a command key press/release (all grey keys except alt/ctrl/altgr/shift) - // - haschar && !hascmd : this is a character key press/release. Modifiers can haz STATUS_SHIFT or STATUS_ALTGR - // - haschar && hascmd : this is a character key press, but with ctrl and/or alt. See that in modifiers. - // - !haschar && !hascmd : invalid keypress - struct keypress_t { - bool pressed; - bool hascmd; - bool haschar; - u8int modifiers; - u8int command; - WChar character; //is 0 if !haschar - keypress_t() : hascmd(false), haschar(false), command(0), character('\0') {}; - }; - void setFocus(VirtualTerminal* vt); bool loadKeymap(String lang); void updateLeds(); |