summaryrefslogtreecommitdiff
path: root/events_windows.go
blob: 9f47b266da6aec74d86302722a2e16b09b25f692 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
// 25 march 2014

package ui

// Virtual key codes.
const (
	// from winuser.h
	_VK_LBUTTON = 0x01
	_VK_RBUTTON = 0x02
	_VK_CANCEL = 0x03
	_VK_MBUTTON = 0x04
	_VK_XBUTTON1 = 0x05
	_VK_XBUTTON2 = 0x06
	_VK_BACK = 0x08
	_VK_TAB = 0x09
	_VK_CLEAR = 0x0C
	_VK_RETURN = 0x0D
	_VK_SHIFT = 0x10
	_VK_CONTROL = 0x11
	_VK_MENU = 0x12
	_VK_PAUSE = 0x13
	_VK_CAPITAL = 0x14
	_VK_KANA = 0x15
	_VK_HANGEUL = 0x15
	_VK_HANGUL = 0x15
	_VK_JUNJA = 0x17
	_VK_FINAL = 0x18
	_VK_HANJA = 0x19
	_VK_KANJI = 0x19
	_VK_ESCAPE = 0x1B
	_VK_CONVERT = 0x1C
	_VK_NONCONVERT = 0x1D
	_VK_ACCEPT = 0x1E
	_VK_MODECHANGE = 0x1F
	_VK_SPACE = 0x20
	_VK_PRIOR = 0x21
	_VK_NEXT = 0x22
	_VK_END = 0x23
	_VK_HOME = 0x24
	_VK_LEFT = 0x25
	_VK_UP = 0x26
	_VK_RIGHT = 0x27
	_VK_DOWN = 0x28
	_VK_SELECT = 0x29
	_VK_PRINT = 0x2A
	_VK_EXECUTE = 0x2B
	_VK_SNAPSHOT = 0x2C
	_VK_INSERT = 0x2D
	_VK_DELETE = 0x2E
	_VK_HELP = 0x2F
	_VK_LWIN = 0x5B
	_VK_RWIN = 0x5C
	_VK_APPS = 0x5D
	_VK_SLEEP = 0x5F
	_VK_NUMPAD0 = 0x60
	_VK_NUMPAD1 = 0x61
	_VK_NUMPAD2 = 0x62
	_VK_NUMPAD3 = 0x63
	_VK_NUMPAD4 = 0x64
	_VK_NUMPAD5 = 0x65
	_VK_NUMPAD6 = 0x66
	_VK_NUMPAD7 = 0x67
	_VK_NUMPAD8 = 0x68
	_VK_NUMPAD9 = 0x69
	_VK_MULTIPLY = 0x6A
	_VK_ADD = 0x6B
	_VK_SEPARATOR = 0x6C
	_VK_SUBTRACT = 0x6D
	_VK_DECIMAL = 0x6E
	_VK_DIVIDE = 0x6F
	_VK_F1 = 0x70
	_VK_F2 = 0x71
	_VK_F3 = 0x72
	_VK_F4 = 0x73
	_VK_F5 = 0x74
	_VK_F6 = 0x75
	_VK_F7 = 0x76
	_VK_F8 = 0x77
	_VK_F9 = 0x78
	_VK_F10 = 0x79
	_VK_F11 = 0x7A
	_VK_F12 = 0x7B
	_VK_F13 = 0x7C
	_VK_F14 = 0x7D
	_VK_F15 = 0x7E
	_VK_F16 = 0x7F
	_VK_F17 = 0x80
	_VK_F18 = 0x81
	_VK_F19 = 0x82
	_VK_F20 = 0x83
	_VK_F21 = 0x84
	_VK_F22 = 0x85
	_VK_F23 = 0x86
	_VK_F24 = 0x87
	_VK_NUMLOCK = 0x90
	_VK_SCROLL = 0x91
	_VK_OEM_NEC_EQUAL = 0x92
	_VK_OEM_FJ_JISHO = 0x92
	_VK_OEM_FJ_MASSHOU = 0x93
	_VK_OEM_FJ_TOUROKU = 0x94
	_VK_OEM_FJ_LOYA = 0x95
	_VK_OEM_FJ_ROYA = 0x96
	_VK_LSHIFT = 0xA0
	_VK_RSHIFT = 0xA1
	_VK_LCONTROL = 0xA2
	_VK_RCONTROL = 0xA3
	_VK_LMENU = 0xA4
	_VK_RMENU = 0xA5
	_VK_BROWSER_BACK = 0xA6
	_VK_BROWSER_FORWARD = 0xA7
	_VK_BROWSER_REFRESH = 0xA8
	_VK_BROWSER_STOP = 0xA9
	_VK_BROWSER_SEARCH = 0xAA
	_VK_BROWSER_FAVORITES = 0xAB
	_VK_BROWSER_HOME = 0xAC
	_VK_VOLUME_MUTE = 0xAD
	_VK_VOLUME_DOWN = 0xAE
	_VK_VOLUME_UP = 0xAF
	_VK_MEDIA_NEXT_TRACK = 0xB0
	_VK_MEDIA_PREV_TRACK = 0xB1
	_VK_MEDIA_STOP = 0xB2
	_VK_MEDIA_PLAY_PAUSE = 0xB3
	_VK_LAUNCH_MAIL = 0xB4
	_VK_LAUNCH_MEDIA_SELECT = 0xB5
	_VK_LAUNCH_APP1 = 0xB6
	_VK_LAUNCH_APP2 = 0xB7
	_VK_OEM_1 = 0xBA
	_VK_OEM_PLUS = 0xBB
	_VK_OEM_COMMA = 0xBC
	_VK_OEM_MINUS = 0xBD
	_VK_OEM_PERIOD = 0xBE
	_VK_OEM_2 = 0xBF
	_VK_OEM_3 = 0xC0
	_VK_OEM_4 = 0xDB
	_VK_OEM_5 = 0xDC
	_VK_OEM_6 = 0xDD
	_VK_OEM_7 = 0xDE
	_VK_OEM_8 = 0xDF
	_VK_OEM_AX = 0xE1
	_VK_OEM_102 = 0xE2
	_VK_ICO_HELP = 0xE3
	_VK_ICO_00 = 0xE4
	_VK_PROCESSKEY = 0xE5
	_VK_ICO_CLEAR = 0xE6
	_VK_PACKET = 0xE7
	_VK_OEM_RESET = 0xE9
	_VK_OEM_JUMP = 0xEA
	_VK_OEM_PA1 = 0xEB
	_VK_OEM_PA2 = 0xEC
	_VK_OEM_PA3 = 0xED
	_VK_OEM_WSCTRL = 0xEE
	_VK_OEM_CUSEL = 0xEF
	_VK_OEM_ATTN = 0xF0
	_VK_OEM_FINISH = 0xF1
	_VK_OEM_COPY = 0xF2
	_VK_OEM_AUTO = 0xF3
	_VK_OEM_ENLW = 0xF4
	_VK_OEM_BACKTAB = 0xF5
	_VK_ATTN = 0xF6
	_VK_CRSEL = 0xF7
	_VK_EXSEL = 0xF8
	_VK_EREOF = 0xF9
	_VK_PLAY = 0xFA
	_VK_ZOOM = 0xFB
	_VK_NONAME = 0xFC
	_VK_PA1 = 0xFD
	_VK_OEM_CLEAR = 0xFE
)

// Mouse event modifier masks.
const (
	// from winuser.h
	_MK_LBUTTON = 0x0001
	_MK_RBUTTON = 0x0002
	_MK_SHIFT = 0x0004
	_MK_CONTROL = 0x0008
	_MK_MBUTTON = 0x0010
	_MK_XBUTTON1 = 0x0020
	_MK_XBUTTON2 = 0x0040
)

// Window mouse event messages.
const (
	_WM_MOUSEACTIVATE = 0x0021

	// from winuser.h
	_WM_MOUSEFIRST = 0x0200
	_WM_MOUSEMOVE = 0x0200
	_WM_LBUTTONDOWN = 0x0201
	_WM_LBUTTONUP = 0x0202
	_WM_LBUTTONDBLCLK = 0x0203
	_WM_RBUTTONDOWN = 0x0204
	_WM_RBUTTONUP = 0x0205
	_WM_RBUTTONDBLCLK = 0x0206
	_WM_MBUTTONDOWN = 0x0207
	_WM_MBUTTONUP = 0x0208
	_WM_MBUTTONDBLCLK = 0x0209
	_WM_MOUSEWHEEL = 0x020A
	_WM_XBUTTONDOWN = 0x020B
	_WM_XBUTTONUP = 0x020C
	_WM_XBUTTONDBLCLK = 0x020D
)

// Window keyboard event messages and related constants.
const (
	// filed under keyboard events by MSDN
	_WM_ACTIVATE = 0x0006

	// from winuser.h
	_WM_KEYDOWN = 0x0100
	_WM_KEYUP = 0x0101
	_WM_CHAR = 0x0102
	_WM_DEADCHAR = 0x0103
	_WM_SYSKEYDOWN = 0x0104
	_WM_SYSKEYUP = 0x0105
	_WM_SYSCHAR = 0x0106
	_WM_SYSDEADCHAR = 0x0107
	_WM_UNICHAR = 0x0109
	_UNICODE_NOCHAR = 0xFFFF				// used by _WM_UNICHAR
)