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 	Max
25 }
26 
27 /// Mouse button mask.
28 enum MouseButtons : ubyte
29 {
30 	None      =    0, ///
31 	Left      = 1<<0, ///
32 	Right     = 1<<1, ///
33 	Middle    = 1<<2, ///
34 	WheelUp   = 1<<3, ///
35 	WheelDown = 1<<4, ///
36 }
37 
38 /// A few key definitions.
39 enum Key
40 {
41 	unknown  , ///
42 	esc      , ///
43 	up       , ///
44 	down     , ///
45 	left     , ///
46 	right    , ///
47 	pageUp   , ///
48 	pageDown , ///
49 	home     , ///
50 	end      , ///
51 	space    , ///
52 }
53 
54 /// Joystick/D-pad directions.
55 enum JoystickHatState
56 {
57 	up    = 1, ///
58 	right = 2, ///
59 	down  = 4, ///
60 	left  = 8, ///
61 }