vrshoot
diff src/input.h @ 0:b2f14e535253
initial commit
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Sat, 01 Feb 2014 19:58:19 +0200 |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/src/input.h Sat Feb 01 19:58:19 2014 +0200 1.3 @@ -0,0 +1,69 @@ 1.4 +#ifndef INPUT_H_ 1.5 +#define INPUT_H_ 1.6 + 1.7 +/// special (non-alpharithmetic/ascii) key enums 1.8 +enum { 1.9 + KEY_PAUSE = 0xff13, // XK_Pause 1.10 + KEY_SCRLOCK = 0xff14, // XK_Scroll_Lock 1.11 + KEY_PRINTSCR = 0xff15, // XK_Sys_Req 1.12 + 1.13 + KEY_HOME = 0xff50, // XK_Home 1.14 + KEY_LEFT = 0xff51, // XK_Left 1.15 + KEY_UP = 0xff52, // XK_Up 1.16 + KEY_RIGHT = 0xff53, // XK_Right 1.17 + KEY_DOWN = 0xff54, // XK_Down 1.18 + KEY_PGUP = 0xff55, // XK_Page_Up 1.19 + KEY_PGDOWN = 0xff56, // XK_Page_Down 1.20 + KEY_END = 0xff57, // XK_End 1.21 + 1.22 + KEY_INSERT = 0xff63, // XK_Insert 1.23 + 1.24 + KEY_F1 = 0xffbe, // XK_F1 1.25 + KEY_F2 = 0xffbf, // XK_F2 1.26 + KEY_F3 = 0xffc0, // XK_F3 1.27 + KEY_F4 = 0xffc1, // XK_F4 1.28 + KEY_F5 = 0xffc2, // XK_F5 1.29 + KEY_F6 = 0xffc3, // XK_F6 1.30 + KEY_F7 = 0xffc4, // XK_F7 1.31 + KEY_F8 = 0xffc5, // XK_F8 1.32 + KEY_F9 = 0xffc6, // XK_F9 1.33 + KEY_F10 = 0xffc7, // XK_F10 1.34 + KEY_F11 = 0xffc8, // XK_F11 1.35 + KEY_F12 = 0xffc9, // XK_F12 1.36 + 1.37 + KEY_LSHIFT = 0xffe1, // XK_Shift_L 1.38 + KEY_RSHIFT = 0xffe2, // XK_Shift_R 1.39 + KEY_LCTRL = 0xffe3, // XK_Control_L 1.40 + KEY_RCTRL = 0xffe4, // XK_Control_R 1.41 + KEY_CAPSLOCK = 0xffe5, // XK_Caps_Lock 1.42 + KEY_SHIFTLOCK = 0xffe6, // XK_Shift_Lock 1.43 + KEY_LMETA = 0xffe7, // XK_Meta_L 1.44 + KEY_RMETA = 0xffe8, // XK_Meta_R 1.45 + KEY_LALT = 0xffe9, // XK_Alt_L 1.46 + KEY_RALT = 0xffea, // XK_Alt_R 1.47 + 1.48 + KEY_DELETE = 0xffff // XK_Delete 1.49 +}; 1.50 + 1.51 +// aliases 1.52 +enum { 1.53 + KEY_ALT = KEY_LALT, 1.54 + KEY_CTRL = KEY_LCTRL, 1.55 + KEY_SHIFT = KEY_LSHIFT 1.56 +}; 1.57 + 1.58 +void set_key_state(int key, bool state); 1.59 +bool get_key_state(int key); 1.60 + 1.61 + 1.62 +void set_mouse_state(int x, int y, int bn = -1, bool state = false); 1.63 + 1.64 +bool mouse_button(int bn = 0); 1.65 + 1.66 +/// are we in the middle of a mouse-drag ? (pressed and moved) 1.67 +/// only valid between a mouse press and mouse release event 1.68 +bool mouse_dragging(int bn = 0); 1.69 + 1.70 +bool mouse_drag_origin(int bn, int *xorig, int *yorig); 1.71 + 1.72 +#endif // INPUT_H_