1 /**
2  * ae.ui.shell.events
3  *
4  * License:
5  *   This Source Code Form is subject to the terms of
6  *   the Mozilla Public License, v. 2.0. If a copy of
7  *   the MPL was not distributed with this file, You
8  *   can obtain one at http://mozilla.org/MPL/2.0/.
9  *
10  * Authors:
11  *   Vladimir Panteleev <ae@cy.md>
12  */
13 
14 module ae.ui.shell.events;
15 
16 /// Mouse button indices.
17 enum MouseButton : ubyte
18 {
19 	Left,       ///
20 	Right,      ///
21 	Middle,     ///
22 	WheelUp,    ///
23 	WheelDown,  ///
24 }
25 
26 /// Mouse button mask.
27 enum MouseButtons : ubyte
28 {
29 	None      =    0, ///
30 	Left      = 1<<0, ///
31 	Right     = 1<<1, ///
32 	Middle    = 1<<2, ///
33 	WheelUp   = 1<<3, ///
34 	WheelDown = 1<<4, ///
35 }
36 
37 /// A few key definitions.
38 enum Key
39 {
40 	unknown  , ///
41 	esc      , ///
42 	up       , ///
43 	down     , ///
44 	left     , ///
45 	right    , ///
46 	pageUp   , ///
47 	pageDown , ///
48 	home     , ///
49 	end      , ///
50 	space    , ///
51 }
52 
53 /// Joystick/D-pad directions.
54 enum JoystickHatState
55 {
56 	up    = 1, ///
57 	right = 2, ///
58 	down  = 4, ///
59 	left  = 8, ///
60 }