Differences From Artifact [48b85ca4f30327f3]:
- File
src/win32/winuser.d
- 2011-02-23 12:53:16 - part of checkin [c2b7a98c21] on branch trunk - Initial import (user: kinaba) [annotate]
To Artifact [b45c73c216c900bc]:
- File
src/win32/winuser.d
- 2015-04-21 10:46:55 - part of checkin [4e2933c620] on branch trunk - Rebased to the latest verson dmd 2.067. Not yet verified the outcome. (user: kinaba) [annotate]
1 +/***********************************************************************\
2 +* winuser.d *
3 +* *
4 +* Windows API header module *
5 +* *
6 +* Translated from MinGW Windows headers *
7 +* *
8 +* Placed into public domain *
9 +\***********************************************************************/
1 10 module win32.winuser;
2 -
3 -// Translated from Microsoft Platform SDK August 2001 Edition
4 -// by Y.Tomino (demoonlit@inter7.jp)
5 -
6 -import win32.winbase, win32.wingdi;
7 -enum : uint {
8 - QS_POSTMESSAGE = 0x0008,
9 - QS_TIMER = 0x0010,
10 - QS_PAINT = 0x0020,
11 - QS_SENDMESSAGE = 0x0040,
12 - QS_HOTKEY = 0x0080,
13 - QS_INPUT = 0x0407
14 -}
15 -
16 -// #ifndef _WINUSER_
17 -// #define _WINUSER_
18 -
19 -// #if !defined(_USER32_)
20 -// #define WINUSERAPI DECLSPEC_IMPORT
21 -// #else
22 -// #...
23 -// #endif
24 -
25 -// #ifdef _MAC
26 -// #...
27 -// #endif
28 -
29 -// #ifdef __cplusplus
30 -// extern "C" {
31 -// #endif /* __cplusplus */
32 -
33 -// #ifndef WINVER
34 -// #...
35 -// #endif /* !WINVER */
36 -
37 -// #include <stdarg.h>
38 -
39 -// #ifndef NOUSER
40 -
11 +pragma(lib, "user32.lib");
12 +
13 +// Conversion Notes:
14 +// The following macros were for win16 only, and are not included in this file:
15 +//#define EnumTaskWindows(h, f, p) EnumThreadWindows((DWORD)h, f, p)
16 +//#define PostAppMessageA(t, m, w, l) PostThreadMessageA((DWORD)t, m, w, l)
17 +//#define PostAppMessageW(t, m, w, l) PostThreadMessageW((DWORD)t, m, w, l)
18 +//#define GetSysModalWindow() (NULL)
19 +//#define SetSysModalWindow(h) (NULL)
20 +//#define GetWindowTask(hWnd) ((HANDLE)GetWindowThreadProcessId(hWnd, NULL))
21 +//#define DefHookProc(c, p, lp, h) CallNextHookEx((HHOOK)*h, c, p, lp)
22 +
23 +private import win32.w32api, win32.winbase, win32.wingdi;
24 +private import win32.windef; // for HMONITOR
25 +
26 +// FIXME: clean up Windows version support
27 +
28 +template MAKEINTATOM_T(int i) {
29 + const LPTSTR MAKEINTATOM_T = cast(LPTSTR) i;
30 +}
31 +
32 +const WC_DIALOG = MAKEINTATOM_T!(0x8002);
33 +
34 +const FVIRTKEY = 1;
35 +const FNOINVERT = 2;
36 +const FSHIFT = 4;
37 +const FCONTROL = 8;
38 +const FALT = 16;
39 +
40 +const ATF_TIMEOUTON = 1;
41 +const ATF_ONOFFFEEDBACK = 2;
42 +const ATF_AVAILABLE = 4; // May be obsolete. Not in recent MS docs.
43 +
44 +const WH_MIN = -1;
45 +const WH_MSGFILTER = -1;
46 +const WH_JOURNALRECORD = 0;
47 +const WH_JOURNALPLAYBACK = 1;
48 +const WH_KEYBOARD = 2;
49 +const WH_GETMESSAGE = 3;
50 +const WH_CALLWNDPROC = 4;
51 +const WH_CBT = 5;
52 +const WH_SYSMSGFILTER = 6;
53 +const WH_MOUSE = 7;
54 +const WH_HARDWARE = 8;
55 +const WH_DEBUG = 9;
56 +const WH_SHELL = 10;
57 +const WH_FOREGROUNDIDLE = 11;
58 +const WH_CALLWNDPROCRET = 12;
59 +const WH_KEYBOARD_LL = 13;
60 +const WH_MOUSE_LL = 14;
61 +const WH_MAX = 14;
62 +const WH_MINHOOK = WH_MIN;
63 +const WH_MAXHOOK = WH_MAX;
64 +
65 +enum {
66 + HC_ACTION = 0,
67 + HC_GETNEXT,
68 + HC_SKIP,
69 + HC_NOREMOVE, // = 3
70 + HC_NOREM = HC_NOREMOVE,
71 + HC_SYSMODALON,
72 + HC_SYSMODALOFF
73 +}
74 +
75 +enum {
76 + HCBT_MOVESIZE = 0,
77 + HCBT_MINMAX,
78 + HCBT_QS,
79 + HCBT_CREATEWND,
80 + HCBT_DESTROYWND,
81 + HCBT_ACTIVATE,
82 + HCBT_CLICKSKIPPED,
83 + HCBT_KEYSKIPPED,
84 + HCBT_SYSCOMMAND,
85 + HCBT_SETFOCUS // = 9
86 +}
87 +
88 +enum {
89 + CF_TEXT = 1,
90 + CF_BITMAP,
91 + CF_METAFILEPICT,
92 + CF_SYLK,
93 + CF_DIF,
94 + CF_TIFF,
95 + CF_OEMTEXT,
96 + CF_DIB,
97 + CF_PALETTE,
98 + CF_PENDATA,
99 + CF_RIFF,
100 + CF_WAVE,
101 + CF_UNICODETEXT,
102 + CF_ENHMETAFILE,
103 + CF_HDROP,
104 + CF_LOCALE,
105 + CF_MAX, // = 17
106 + CF_OWNERDISPLAY = 128,
107 + CF_DSPTEXT,
108 + CF_DSPBITMAP,
109 + CF_DSPMETAFILEPICT, // = 131
110 + CF_DSPENHMETAFILE = 142,
111 + CF_PRIVATEFIRST = 512,
112 + CF_PRIVATELAST = 767,
113 + CF_GDIOBJFIRST = 768,
114 + CF_GDIOBJLAST = 1023
115 +}
116 +
117 +const HKL_PREV = 0;
118 +const HKL_NEXT = 1;
119 +
120 +const KLF_ACTIVATE = 1;
121 +const KLF_SUBSTITUTE_OK = 2;
122 +const KLF_UNLOADPREVIOUS = 4;
123 +const KLF_REORDER = 8;
124 +const KLF_REPLACELANG = 16;
125 +const KLF_NOTELLSHELL = 128;
126 +const KLF_SETFORPROCESS = 256;
127 +const KL_NAMELENGTH = 9;
128 +
129 +const MF_ENABLED = 0;
130 +const MF_GRAYED = 1;
131 +const MF_DISABLED = 2;
132 +const MF_BITMAP = 4;
133 +const MF_CHECKED = 8;
134 +const MF_MENUBARBREAK = 32;
135 +const MF_MENUBREAK = 64;
136 +const MF_OWNERDRAW = 256;
137 +const MF_POPUP = 16;
138 +const MF_SEPARATOR = 0x800;
139 +const MF_STRING = 0;
140 +const MF_UNCHECKED = 0;
141 +const MF_DEFAULT = 4096;
142 +const MF_SYSMENU = 0x2000;
143 +const MF_HELP = 0x4000;
144 +const MF_END = 128;
145 +const MF_RIGHTJUSTIFY = 0x4000;
146 +const MF_MOUSESELECT = 0x8000;
147 +const MF_INSERT = 0;
148 +const MF_CHANGE = 128;
149 +const MF_APPEND = 256;
150 +const MF_DELETE = 512;
151 +const MF_REMOVE = 4096;
152 +const MF_USECHECKBITMAPS = 512;
153 +const MF_UNHILITE = 0;
154 +const MF_HILITE = 128;
155 +
156 +// Also defined in dbt.h
157 +const BSM_ALLCOMPONENTS = 0;
158 +const BSM_VXDS = 1;
159 +const BSM_NETDRIVER = 2;
160 +const BSM_INSTALLABLEDRIVERS = 4;
161 +const BSM_APPLICATIONS = 8;
162 +const BSM_ALLDESKTOPS = 16;
163 +
164 +const BSF_QUERY = 0x00000001;
165 +const BSF_IGNORECURRENTTASK = 0x00000002;
166 +const BSF_FLUSHDISK = 0x00000004;
167 +const BSF_NOHANG = 0x00000008;
168 +const BSF_POSTMESSAGE = 0x00000010;
169 +const BSF_FORCEIFHUNG = 0x00000020;
170 +const BSF_NOTIMEOUTIFNOTHUNG = 0x00000040;
171 +
172 +static if (_WIN32_WINNT >= 0x500) {
173 + const BSF_ALLOWSFW = 0x00000080;
174 + const BSF_SENDNOTIFYMESSAGE = 0x00000100;
175 +}
176 +static if (_WIN32_WINNT >= 0x501) {
177 + const BSF_RETURNHDESK = 0x00000200;
178 + const BSF_LUID = 0x00000400;
179 +}
180 +
181 +const BROADCAST_QUERY_DENY = 1112363332;
182 +const DWORD ENUM_CURRENT_SETTINGS = -1;
183 +const DWORD ENUM_REGISTRY_SETTINGS = -2;
184 +
185 +const CDS_UPDATEREGISTRY = 1;
186 +const CDS_TEST = 2;
187 +const CDS_FULLSCREEN = 4;
188 +const CDS_GLOBAL = 8;
189 +const CDS_SET_PRIMARY = 16;
190 +const CDS_NORESET = 0x10000000;
191 +const CDS_SETRECT = 0x20000000;
192 +const CDS_RESET = 0x40000000;
193 +
194 +const DISP_CHANGE_RESTART = 1;
195 +const DISP_CHANGE_SUCCESSFUL = 0;
196 +const DISP_CHANGE_FAILED = -1;
197 +const DISP_CHANGE_BADMODE = -2;
198 +const DISP_CHANGE_NOTUPDATED = -3;
199 +const DISP_CHANGE_BADFLAGS = -4;
200 +const DISP_CHANGE_BADPARAM = -5;
201 +
202 +const BST_UNCHECKED = 0;
203 +const BST_CHECKED = 1;
204 +const BST_INDETERMINATE = 2;
205 +const BST_PUSHED = 4;
206 +const BST_FOCUS = 8;
207 +
208 +const MF_BYCOMMAND = 0;
209 +const MF_BYPOSITION = 1024;
210 +// [Redefined] MF_UNCHECKED=0
211 +// [Redefined] MF_HILITE=128
212 +// [Redefined] MF_UNHILITE=0
213 +
214 +const CWP_ALL = 0;
215 +const CWP_SKIPINVISIBLE = 1;
216 +const CWP_SKIPDISABLED = 2;
217 +const CWP_SKIPTRANSPARENT = 4;
218 +
219 +const IMAGE_BITMAP=0;
220 +const IMAGE_ICON=1;
221 +const IMAGE_CURSOR=2;
222 +const IMAGE_ENHMETAFILE=3;
223 +
224 +const DF_ALLOWOTHERACCOUNTHOOK = 1;
225 +
226 +const DESKTOP_READOBJECTS = 1;
227 +const DESKTOP_CREATEWINDOW = 2;
228 +const DESKTOP_CREATEMENU = 4;
229 +const DESKTOP_HOOKCONTROL = 8;
230 +const DESKTOP_JOURNALRECORD = 16;
231 +const DESKTOP_JOURNALPLAYBACK = 32;
232 +const DESKTOP_ENUMERATE = 64;
233 +const DESKTOP_WRITEOBJECTS = 128;
234 +const DESKTOP_SWITCHDESKTOP = 256;
235 +
236 +const CW_USEDEFAULT = 0x80000000;
237 +
238 +enum {
239 + WS_OVERLAPPED = 0,
240 + WS_TILED = WS_OVERLAPPED,
241 + WS_MAXIMIZEBOX = 0x00010000,
242 + WS_MINIMIZEBOX = 0x00020000,
243 + WS_TABSTOP = 0x00010000,
244 + WS_GROUP = 0x00020000,
245 + WS_THICKFRAME = 0x00040000,
246 + WS_SIZEBOX = WS_THICKFRAME,
247 + WS_SYSMENU = 0x00080000,
248 + WS_HSCROLL = 0x00100000,
249 + WS_VSCROLL = 0x00200000,
250 + WS_DLGFRAME = 0x00400000,
251 + WS_BORDER = 0x00800000,
252 + WS_CAPTION = 0x00c00000,
253 + WS_OVERLAPPEDWINDOW = WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_THICKFRAME|WS_MINIMIZEBOX|WS_MAXIMIZEBOX,
254 + WS_TILEDWINDOW = WS_OVERLAPPEDWINDOW,
255 + WS_MAXIMIZE = 0x01000000,
256 + WS_CLIPCHILDREN = 0x02000000,
257 + WS_CLIPSIBLINGS = 0x04000000,
258 + WS_DISABLED = 0x08000000,
259 + WS_VISIBLE = 0x10000000,
260 + WS_MINIMIZE = 0x20000000,
261 + WS_ICONIC = WS_MINIMIZE,
262 + WS_CHILD = 0x40000000,
263 + WS_CHILDWINDOW = 0x40000000,
264 + WS_POPUP = 0x80000000,
265 + WS_POPUPWINDOW = WS_POPUP|WS_BORDER|WS_SYSMENU,
266 +}
267 +
268 +const MDIS_ALLCHILDSTYLES = 1;
269 +
270 +const BS_3STATE = 5;
271 +const BS_AUTO3STATE = 6;
272 +const BS_AUTOCHECKBOX = 3;
273 +const BS_AUTORADIOBUTTON = 9;
274 +const BS_BITMAP = 128;
275 +const BS_BOTTOM = 0x800;
276 +const BS_CENTER = 0x300;
277 +const BS_CHECKBOX = 2;
278 +const BS_DEFPUSHBUTTON = 1;
279 +const BS_GROUPBOX = 7;
280 +const BS_ICON = 64;
281 +const BS_LEFT = 256;
282 +const BS_LEFTTEXT = 32;
283 +const BS_MULTILINE = 0x2000;
284 +const BS_NOTIFY = 0x4000;
285 +const BS_OWNERDRAW = 0xb;
286 +const BS_PUSHBUTTON = 0;
287 +const BS_PUSHLIKE = 4096;
288 +const BS_RADIOBUTTON = 4;
289 +const BS_RIGHT = 512;
290 +const BS_RIGHTBUTTON = 32;
291 +const BS_TEXT = 0;
292 +const BS_TOP = 0x400;
293 +const BS_USERBUTTON = 8;
294 +const BS_VCENTER = 0xc00;
295 +const BS_FLAT = 0x8000;
296 +
297 +const CBS_AUTOHSCROLL = 64;
298 +const CBS_DISABLENOSCROLL = 0x800;
299 +const CBS_DROPDOWN = 2;
300 +const CBS_DROPDOWNLIST = 3;
301 +const CBS_HASSTRINGS = 512;
302 +const CBS_LOWERCASE = 0x4000;
303 +const CBS_NOINTEGRALHEIGHT = 0x400;
304 +const CBS_OEMCONVERT = 128;
305 +const CBS_OWNERDRAWFIXED = 16;
306 +const CBS_OWNERDRAWVARIABLE = 32;
307 +const CBS_SIMPLE = 1;
308 +const CBS_SORT = 256;
309 +const CBS_UPPERCASE = 0x2000;
310 +
311 +const ES_AUTOHSCROLL = 128;
312 +const ES_AUTOVSCROLL = 64;
313 +const ES_CENTER = 1;
314 +const ES_LEFT = 0;
315 +const ES_LOWERCASE = 16;
316 +const ES_MULTILINE = 4;
317 +const ES_NOHIDESEL = 256;
318 +const ES_NUMBER = 0x2000;
319 +const ES_OEMCONVERT = 0x400;
320 +const ES_PASSWORD = 32;
321 +const ES_READONLY = 0x800;
322 +const ES_RIGHT = 2;
323 +const ES_UPPERCASE = 8;
324 +const ES_WANTRETURN = 4096;
325 +
326 +const LBS_DISABLENOSCROLL = 4096;
327 +const LBS_EXTENDEDSEL = 0x800;
328 +const LBS_HASSTRINGS = 64;
329 +const LBS_MULTICOLUMN = 512;
330 +const LBS_MULTIPLESEL = 8;
331 +const LBS_NODATA = 0x2000;
332 +const LBS_NOINTEGRALHEIGHT = 256;
333 +const LBS_NOREDRAW = 4;
334 +const LBS_NOSEL = 0x4000;
335 +const LBS_NOTIFY = 1;
336 +const LBS_OWNERDRAWFIXED = 16;
337 +const LBS_OWNERDRAWVARIABLE = 32;
338 +const LBS_SORT = 2;
339 +const LBS_STANDARD = 0xa00003;
340 +const LBS_USETABSTOPS = 128;
341 +const LBS_WANTKEYBOARDINPUT = 0x400;
342 +
343 +const SBS_BOTTOMALIGN = 4;
344 +const SBS_HORZ = 0;
345 +const SBS_LEFTALIGN = 2;
346 +const SBS_RIGHTALIGN = 4;
347 +const SBS_SIZEBOX = 8;
348 +const SBS_SIZEBOXBOTTOMRIGHTALIGN = 4;
349 +const SBS_SIZEBOXTOPLEFTALIGN = 2;
350 +const SBS_SIZEGRIP = 16;
351 +const SBS_TOPALIGN = 2;
352 +const SBS_VERT = 1;
353 +
354 +const SS_BITMAP = 14;
355 +const SS_BLACKFRAME = 7;
356 +const SS_BLACKRECT = 4;
357 +const SS_CENTER = 1;
358 +const SS_CENTERIMAGE = 512;
359 +const SS_ENHMETAFILE = 15;
360 +const SS_ETCHEDFRAME = 18;
361 +const SS_ETCHEDHORZ = 16;
362 +const SS_ETCHEDVERT = 17;
363 +const SS_GRAYFRAME = 8;
364 +const SS_GRAYRECT = 5;
365 +const SS_ICON = 3;
366 +const SS_LEFT = 0;
367 +const SS_LEFTNOWORDWRAP = 0xc;
368 +const SS_NOPREFIX = 128;
369 +const SS_NOTIFY = 256;
370 +const SS_OWNERDRAW = 0xd;
371 +const SS_REALSIZEIMAGE = 0x800;
372 +const SS_RIGHT = 2;
373 +const SS_RIGHTJUST = 0x400;
374 +const SS_SIMPLE = 11;
375 +const SS_SUNKEN = 4096;
376 +const SS_WHITEFRAME = 9;
377 +const SS_WHITERECT = 6;
378 +const SS_USERITEM = 10;
379 +const SS_TYPEMASK = 0x0000001FL;
380 +const SS_ENDELLIPSIS = 0x00004000L;
381 +const SS_PATHELLIPSIS = 0x00008000L;
382 +const SS_WORDELLIPSIS = 0x0000C000L;
383 +const SS_ELLIPSISMASK = 0x0000C000L;
384 +
385 +const DS_ABSALIGN = 0x0001;
386 +const DS_3DLOOK = 0x0004;
387 +const DS_SYSMODAL = 0x0002;
388 +const DS_FIXEDSYS = 0x0008;
389 +const DS_NOFAILCREATE = 0x0010;
390 +const DS_LOCALEDIT = 0x0020;
391 +const DS_SETFONT = 0x0040;
392 +const DS_MODALFRAME = 0x0080;
393 +const DS_NOIDLEMSG = 0x0100;
394 +const DS_SETFOREGROUND = 0x0200;
395 +const DS_CONTROL = 0x0400;
396 +const DS_CENTER = 0x0800;
397 +const DS_CENTERMOUSE = 0x1000;
398 +const DS_CONTEXTHELP = 0x2000;
399 +const DS_SHELLFONT = DS_SETFONT | DS_FIXEDSYS;
400 +
401 +const WS_EX_ACCEPTFILES = 16;
402 +const WS_EX_APPWINDOW = 0x40000;
403 +const WS_EX_CLIENTEDGE = 512;
404 +const WS_EX_COMPOSITED = 0x2000000; // XP
405 +const WS_EX_CONTEXTHELP = 0x400;
406 +const WS_EX_CONTROLPARENT = 0x10000;
407 +const WS_EX_DLGMODALFRAME = 1;
408 +const WS_EX_LAYERED = 0x80000; // w2k
409 +const WS_EX_LAYOUTRTL = 0x400000; // w98, w2k
410 +const WS_EX_LEFT = 0;
411 +const WS_EX_LEFTSCROLLBAR = 0x4000;
412 +const WS_EX_LTRREADING = 0;
413 +const WS_EX_MDICHILD = 64;
414 +const WS_EX_NOACTIVATE = 0x8000000; // w2k
415 +const WS_EX_NOINHERITLAYOUT = 0x100000; // w2k
416 +const WS_EX_NOPARENTNOTIFY = 4;
417 +const WS_EX_OVERLAPPEDWINDOW = 0x300;
418 +const WS_EX_PALETTEWINDOW = 0x188;
419 +const WS_EX_RIGHT = 0x1000;
420 +const WS_EX_RIGHTSCROLLBAR = 0;
421 +const WS_EX_RTLREADING = 0x2000;
422 +const WS_EX_STATICEDGE = 0x20000;
423 +const WS_EX_TOOLWINDOW = 128;
424 +const WS_EX_TOPMOST = 8;
425 +const WS_EX_TRANSPARENT = 32;
426 +const WS_EX_WINDOWEDGE = 256;
427 +
428 +const WINSTA_ENUMDESKTOPS = 1;
429 +const WINSTA_READATTRIBUTES = 2;
430 +const WINSTA_ACCESSCLIPBOARD = 4;
431 +const WINSTA_CREATEDESKTOP = 8;
432 +const WINSTA_WRITEATTRIBUTES = 16;
433 +const WINSTA_ACCESSGLOBALATOMS = 32;
434 +const WINSTA_EXITWINDOWS = 64;
435 +const WINSTA_ENUMERATE = 256;
436 +const WINSTA_READSCREEN = 512;
437 +
438 +const DDL_READWRITE = 0;
439 +const DDL_READONLY = 1;
440 +const DDL_HIDDEN = 2;
441 +const DDL_SYSTEM = 4;
442 +const DDL_DIRECTORY = 16;
443 +const DDL_ARCHIVE = 32;
444 +const DDL_POSTMSGS = 8192;
445 +const DDL_DRIVES = 16384;
446 +const DDL_EXCLUSIVE = 32768;
447 +
448 +const DC_ACTIVE = 0x00000001;
449 +const DC_SMALLCAP = 0x00000002;
450 +const DC_ICON = 0x00000004;
451 +const DC_TEXT = 0x00000008;
452 +const DC_INBUTTON = 0x00000010;
453 +
454 +static if (WINVER >= 0x500) {
455 +const DC_GRADIENT=0x00000020;
456 +}
457 +static if (_WIN32_WINNT >= 0x501) {
458 +const DC_BUTTONS=0x00001000;
459 +}
460 +
461 +// Where are these documented?
462 +//const DC_CAPTION = DC_ICON|DC_TEXT|DC_BUTTONS;
463 +//const DC_NC = DC_CAPTION|DC_FRAME;
464 +
465 +const BDR_RAISEDOUTER = 1;
466 +const BDR_SUNKENOUTER = 2;
467 +const BDR_RAISEDINNER = 4;
468 +const BDR_SUNKENINNER = 8;
469 +const BDR_OUTER = 3;
470 +const BDR_INNER = 0xc;
471 +const BDR_RAISED = 5;
472 +const BDR_SUNKEN = 10;
473 +
474 +const EDGE_RAISED = BDR_RAISEDOUTER|BDR_RAISEDINNER;
475 +const EDGE_SUNKEN = BDR_SUNKENOUTER|BDR_SUNKENINNER;
476 +const EDGE_ETCHED = BDR_SUNKENOUTER|BDR_RAISEDINNER;
477 +const EDGE_BUMP = BDR_RAISEDOUTER|BDR_SUNKENINNER;
478 +
479 +const BF_LEFT = 1;
480 +const BF_TOP = 2;
481 +const BF_RIGHT = 4;
482 +const BF_BOTTOM = 8;
483 +const BF_TOPLEFT = BF_TOP|BF_LEFT;
484 +const BF_TOPRIGHT = BF_TOP|BF_RIGHT;
485 +const BF_BOTTOMLEFT = BF_BOTTOM|BF_LEFT;
486 +const BF_BOTTOMRIGHT = BF_BOTTOM|BF_RIGHT;
487 +const BF_RECT = BF_LEFT|BF_TOP|BF_RIGHT|BF_BOTTOM ;
488 +const BF_DIAGONAL = 16;
489 +const BF_DIAGONAL_ENDTOPRIGHT = BF_DIAGONAL|BF_TOP|BF_RIGHT;
490 +const BF_DIAGONAL_ENDTOPLEFT = BF_DIAGONAL|BF_TOP|BF_LEFT;
491 +const BF_DIAGONAL_ENDBOTTOMLEFT = BF_DIAGONAL|BF_BOTTOM|BF_LEFT;
492 +const BF_DIAGONAL_ENDBOTTOMRIGHT = BF_DIAGONAL|BF_BOTTOM|BF_RIGHT;
493 +const BF_MIDDLE = 0x800;
494 +const BF_SOFT = 0x1000;
495 +const BF_ADJUST = 0x2000;
496 +const BF_FLAT = 0x4000;
497 +const BF_MONO = 0x8000;
498 +
499 +const DFC_CAPTION=1;
500 +const DFC_MENU=2;
501 +const DFC_SCROLL=3;
502 +const DFC_BUTTON=4;
503 +static if (WINVER >= 0x500) {
504 +const DFC_POPUPMENU=5;
505 +}// WINVER >= 0x500
506 +
507 +const DFCS_CAPTIONCLOSE = 0;
508 +const DFCS_CAPTIONMIN = 1;
509 +const DFCS_CAPTIONMAX = 2;
510 +const DFCS_CAPTIONRESTORE = 3;
511 +const DFCS_CAPTIONHELP = 4;
512 +
513 +const DFCS_MENUARROW = 0;
514 +const DFCS_MENUCHECK = 1;
515 +const DFCS_MENUBULLET = 2;
516 +const DFCS_MENUARROWRIGHT = 4;
517 +
518 +const DFCS_SCROLLUP = 0;
519 +const DFCS_SCROLLDOWN = 1;
520 +const DFCS_SCROLLLEFT = 2;
521 +const DFCS_SCROLLRIGHT = 3;
522 +const DFCS_SCROLLCOMBOBOX = 5;
523 +const DFCS_SCROLLSIZEGRIP = 8;
524 +const DFCS_SCROLLSIZEGRIPRIGHT = 16;
525 +
526 +const DFCS_BUTTONCHECK = 0;
527 +const DFCS_BUTTONRADIOIMAGE = 1;
528 +const DFCS_BUTTONRADIOMASK = 2;
529 +const DFCS_BUTTONRADIO = 4;
530 +const DFCS_BUTTON3STATE = 8;
531 +const DFCS_BUTTONPUSH = 16;
532 +const DFCS_INACTIVE = 256;
533 +const DFCS_PUSHED = 512;
534 +const DFCS_CHECKED = 1024;
535 +static if (WINVER >= 0x500) {
536 +const DFCS_TRANSPARENT = 0x800;
537 +const DFCS_HOT = 0x1000;
538 +}
539 +const DFCS_ADJUSTRECT = 0x2000;
540 +const DFCS_FLAT = 0x4000;
541 +const DFCS_MONO = 0x8000;
542 +
543 +enum {
544 + DST_COMPLEX = 0,
545 + DST_TEXT,
546 + DST_PREFIXTEXT,
547 + DST_ICON,
548 + DST_BITMAP // = 4
549 +}
550 +
551 +const DSS_NORMAL = 0;
552 +const DSS_UNION = 16;
553 +const DSS_DISABLED = 32;
554 +const DSS_MONO = 128;
555 +const DSS_RIGHT = 0x8000;
556 +
557 +const DT_BOTTOM = 8;
558 +const DT_CALCRECT = 1024;
559 +const DT_CENTER = 1;
560 +const DT_EDITCONTROL = 8192;
561 +const DT_END_ELLIPSIS = 32768;
562 +const DT_PATH_ELLIPSIS = 16384;
563 +const DT_WORD_ELLIPSIS = 0x40000;
564 +const DT_EXPANDTABS = 64;
565 +const DT_EXTERNALLEADING = 512;
566 +const DT_LEFT = 0;
567 +const DT_MODIFYSTRING = 65536;
568 +const DT_NOCLIP = 256;
569 +const DT_NOPREFIX = 2048;
570 +const DT_RIGHT = 2;
571 +const DT_RTLREADING = 131072;
572 +const DT_SINGLELINE = 32;
573 +const DT_TABSTOP = 128;
574 +const DT_TOP = 0;
575 +const DT_VCENTER = 4;
576 +const DT_WORDBREAK = 16;
577 +const DT_INTERNAL = 4096;
578 +
579 +const WB_ISDELIMITER = 2;
580 +const WB_LEFT = 0;
581 +const WB_RIGHT = 1;
582 +
583 +const SB_HORZ = 0;
584 +const SB_VERT = 1;
585 +const SB_CTL = 2;
586 +const SB_BOTH = 3;
587 +
588 +const ESB_DISABLE_BOTH = 3;
589 +const ESB_DISABLE_DOWN = 2;
590 +const ESB_DISABLE_LEFT = 1;
591 +const ESB_DISABLE_LTUP = 1;
592 +const ESB_DISABLE_RIGHT = 2;
593 +const ESB_DISABLE_RTDN = 2;
594 +const ESB_DISABLE_UP = 1;
595 +const ESB_ENABLE_BOTH = 0;
596 +
597 +const SB_LINEUP = 0;
598 +const SB_LINEDOWN = 1;
599 +const SB_LINELEFT = 0;
600 +const SB_LINERIGHT = 1;
601 +const SB_PAGEUP = 2;
602 +const SB_PAGEDOWN = 3;
603 +const SB_PAGELEFT = 2;
604 +const SB_PAGERIGHT = 3;
605 +const SB_THUMBPOSITION = 4;
606 +const SB_THUMBTRACK = 5;
607 +const SB_ENDSCROLL = 8;
608 +const SB_LEFT = 6;
609 +const SB_RIGHT = 7;
610 +const SB_BOTTOM = 7;
611 +const SB_TOP = 6;
612 +
613 +//MACRO #define IS_INTRESOURCE(i) (((ULONG_PTR)(i) >> 16) == 0)
614 +
615 +template MAKEINTRESOURCE_T (WORD i)
616 +{
617 + const LPTSTR MAKEINTRESOURCE_T = cast(LPTSTR)(i);
618 +}
619 +
620 +LPSTR MAKEINTRESOURCEA(WORD i)
621 +{
622 + return cast(LPSTR)(i);
623 +}
624 +
625 +LPWSTR MAKEINTRESOURCEW(WORD i)
626 +{
627 + return cast(LPWSTR)(i);
628 +}
629 +
630 +const RT_CURSOR = MAKEINTRESOURCE_T!(1);
631 +const RT_BITMAP = MAKEINTRESOURCE_T!(2);
632 +const RT_ICON = MAKEINTRESOURCE_T!(3);
633 +const RT_MENU = MAKEINTRESOURCE_T!(4);
634 +const RT_DIALOG = MAKEINTRESOURCE_T!(5);
635 +const RT_STRING = MAKEINTRESOURCE_T!(6);
636 +const RT_FONTDIR = MAKEINTRESOURCE_T!(7);
637 +const RT_FONT = MAKEINTRESOURCE_T!(8);
638 +const RT_ACCELERATOR = MAKEINTRESOURCE_T!(9);
639 +const RT_RCDATA = MAKEINTRESOURCE_T!(10);
640 +const RT_MESSAGETABLE = MAKEINTRESOURCE_T!(11);
641 +
642 +const RT_GROUP_CURSOR = MAKEINTRESOURCE_T!(12);
643 +const RT_GROUP_ICON = MAKEINTRESOURCE_T!(14);
644 +const RT_VERSION = MAKEINTRESOURCE_T!(16);
645 +const RT_DLGINCLUDE = MAKEINTRESOURCE_T!(17);
646 +const RT_PLUGPLAY = MAKEINTRESOURCE_T!(19);
647 +const RT_VXD = MAKEINTRESOURCE_T!(20);
648 +const RT_ANICURSOR = MAKEINTRESOURCE_T!(21);
649 +const RT_ANIICON = MAKEINTRESOURCE_T!(22);
650 +const RT_HTML = MAKEINTRESOURCE_T!(23);
651 +const RT_MANIFEST = MAKEINTRESOURCE_T!(24);
652 +
653 +const CREATEPROCESS_MANIFEST_RESOURCE_ID = MAKEINTRESOURCE_T!(1);
654 +const ISOLATIONAWARE_MANIFEST_RESOURCE_ID = MAKEINTRESOURCE_T!(2);
655 +const ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID = MAKEINTRESOURCE_T!(3);
656 +
657 +const EWX_LOGOFF = 0;
658 +const EWX_SHUTDOWN = 1;
659 +const EWX_REBOOT = 2;
660 +const EWX_FORCE = 4;
661 +const EWX_POWEROFF = 8;
662 +static if (_WIN32_WINNT >= 0x500) {
663 +const EWX_FORCEIFHUNG = 16;
664 +}
665 +
666 +const CS_BYTEALIGNCLIENT = 4096;
667 +const CS_BYTEALIGNWINDOW = 8192;
668 +const CS_KEYCVTWINDOW = 4;
669 +const CS_NOKEYCVT = 256;
670 +const CS_CLASSDC = 64;
671 +const CS_DBLCLKS = 8;
672 +const CS_GLOBALCLASS = 16384;
673 +const CS_HREDRAW = 2;
674 +const CS_NOCLOSE = 512;
675 +const CS_OWNDC = 32;
676 +const CS_PARENTDC = 128;
677 +const CS_SAVEBITS = 2048;
678 +const CS_VREDRAW = 1;
679 +const CS_IME = 0x10000;
680 +
681 +const GCW_ATOM = -32;
682 +const GCL_CBCLSEXTRA = -20;
683 +const GCL_CBWNDEXTRA = -18;
684 +const GCL_HBRBACKGROUND = -10;
685 +const GCL_HCURSOR = -12;
686 +const GCL_HICON = -14;
687 +const GCL_HICONSM = -34;
688 +const GCL_HMODULE = -16;
689 +const GCL_MENUNAME = -8;
690 +const GCL_STYLE = -26;
691 +const GCL_WNDPROC = -24;
692 +
693 +alias GCL_HICONSM GCLP_HICONSM;
694 +alias GCL_HICON GCLP_HICON;
695 +alias GCL_HCURSOR GCLP_HCURSOR;
696 +alias GCL_HBRBACKGROUND GCLP_HBRBACKGROUND;
697 +alias GCL_HMODULE GCLP_HMODULE;
698 +alias GCL_MENUNAME GCLP_MENUNAME;
699 +alias GCL_WNDPROC GCLP_WNDPROC;
700 +
701 +const IDC_ARROW = MAKEINTRESOURCE_T!(32512);
702 +const IDC_IBEAM = MAKEINTRESOURCE_T!(32513);
703 +const IDC_WAIT = MAKEINTRESOURCE_T!(32514);
704 +const IDC_CROSS = MAKEINTRESOURCE_T!(32515);
705 +const IDC_UPARROW = MAKEINTRESOURCE_T!(32516);
706 +const IDC_SIZENWSE = MAKEINTRESOURCE_T!(32642);
707 +const IDC_SIZENESW = MAKEINTRESOURCE_T!(32643);
708 +const IDC_SIZEWE = MAKEINTRESOURCE_T!(32644);
709 +const IDC_SIZENS = MAKEINTRESOURCE_T!(32645);
710 +const IDC_SIZEALL = MAKEINTRESOURCE_T!(32646);
711 +const IDC_NO = MAKEINTRESOURCE_T!(32648);
712 +const IDC_HAND = MAKEINTRESOURCE_T!(32649);
713 +const IDC_APPSTARTING = MAKEINTRESOURCE_T!(32650);
714 +const IDC_HELP = MAKEINTRESOURCE_T!(32651);
715 +const IDC_ICON = MAKEINTRESOURCE_T!(32641);
716 +const IDC_SIZE = MAKEINTRESOURCE_T!(32640);
717 +const IDI_APPLICATION = MAKEINTRESOURCE_T!(32512);
718 +const IDI_HAND = MAKEINTRESOURCE_T!(32513);
719 +const IDI_QUESTION = MAKEINTRESOURCE_T!(32514);
720 +const IDI_EXCLAMATION = MAKEINTRESOURCE_T!(32515);
721 +const IDI_ASTERISK = MAKEINTRESOURCE_T!(32516);
722 +const IDI_WINLOGO = MAKEINTRESOURCE_T!(32517);
723 +const IDI_WARNING = IDI_EXCLAMATION;
724 +const IDI_ERROR = IDI_HAND;
725 +const IDI_INFORMATION = IDI_ASTERISK;
726 +
727 +const MIIM_STATE = 1;
728 +const MIIM_ID = 2;
729 +const MIIM_SUBMENU = 4;
730 +const MIIM_CHECKMARKS = 8;
731 +const MIIM_TYPE = 16;
732 +const MIIM_DATA = 32;
733 +const MIIM_STRING = 64;
734 +const MIIM_BITMAP = 128;
735 +const MIIM_FTYPE = 256;
736 +
737 +static if (WINVER >= 0x500) {
738 +
739 +const MIM_MAXHEIGHT = 1;
740 +const MIM_BACKGROUND = 2;
741 +const MIM_HELPID = 4;
742 +const MIM_MENUDATA = 8;
743 +const MIM_STYLE = 16;
744 +const MIM_APPLYTOSUBMENUS = 0x80000000L;
745 +
746 +const MNS_NOCHECK = 0x80000000;
747 +const MNS_MODELESS = 0x40000000;
748 +const MNS_DRAGDROP = 0x20000000;
749 +const MNS_AUTODISMISS = 0x10000000;
750 +const MNS_NOTIFYBYPOS = 0x08000000;
751 +const MNS_CHECKORBMP = 0x04000000;
752 +
753 +}
754 +
755 +const MFT_BITMAP = 4;
756 +const MFT_MENUBARBREAK = 32;
757 +const MFT_MENUBREAK = 64;
758 +const MFT_OWNERDRAW = 256;
759 +const MFT_RADIOCHECK = 512;
760 +const MFT_RIGHTJUSTIFY = 0x4000;
761 +const MFT_SEPARATOR = 0x800;
762 +const MFT_RIGHTORDER = 0x2000L;
763 +const MFT_STRING = 0;
764 +
765 +const MFS_CHECKED = 8;
766 +const MFS_DEFAULT = 4096;
767 +const MFS_DISABLED = 3;
768 +const MFS_ENABLED = 0;
769 +const MFS_GRAYED = 3;
770 +const MFS_HILITE = 128;
771 +const MFS_UNCHECKED = 0;
772 +const MFS_UNHILITE = 0;
773 +
774 +const GW_HWNDNEXT = 2;
775 +const GW_HWNDPREV = 3;
776 +const GW_CHILD = 5;
777 +const GW_HWNDFIRST = 0;
778 +const GW_HWNDLAST = 1;
779 +const GW_OWNER = 4;
780 +
781 +const SW_HIDE = 0;
782 +const SW_NORMAL = 1;
783 +const SW_SHOWNORMAL = 1;
784 +const SW_SHOWMINIMIZED = 2;
785 +const SW_MAXIMIZE = 3;
786 +const SW_SHOWMAXIMIZED = 3;
787 +const SW_SHOWNOACTIVATE = 4;
788 +const SW_SHOW = 5;
789 +const SW_MINIMIZE = 6;
790 +const SW_SHOWMINNOACTIVE = 7;
791 +const SW_SHOWNA = 8;
792 +const SW_RESTORE = 9;
793 +const SW_SHOWDEFAULT = 10;
794 +const SW_FORCEMINIMIZE = 11;
795 +const SW_MAX = 11;
796 +
797 +const MB_USERICON = 128;
798 +const MB_ICONASTERISK = 64;
799 +const MB_ICONEXCLAMATION = 0x30;
800 +const MB_ICONWARNING = 0x30;
801 +const MB_ICONERROR = 16;
802 +const MB_ICONHAND = 16;
803 +const MB_ICONQUESTION = 32;
804 +const MB_OK = 0;
805 +const MB_ABORTRETRYIGNORE = 2;
806 +const MB_APPLMODAL = 0;
807 +const MB_DEFAULT_DESKTOP_ONLY = 0x20000;
808 +const MB_HELP = 0x4000;
809 +const MB_RIGHT = 0x80000;
810 +const MB_RTLREADING = 0x100000;
811 +const MB_TOPMOST = 0x40000;
812 +const MB_DEFBUTTON1 = 0;
813 +const MB_DEFBUTTON2 = 256;
814 +const MB_DEFBUTTON3 = 512;
815 +const MB_DEFBUTTON4 = 0x300;
816 +const MB_ICONINFORMATION = 64;
817 +const MB_ICONSTOP = 16;
818 +const MB_OKCANCEL = 1;
819 +const MB_RETRYCANCEL = 5;
820 +
821 +static if (_WIN32_WINNT_ONLY) {
822 + static if (_WIN32_WINNT >= 0x400) {
823 + const MB_SERVICE_NOTIFICATION = 0x00200000;
824 + } else {
825 + const MB_SERVICE_NOTIFICATION = 0x00040000;
826 + }
827 + const MB_SERVICE_NOTIFICATION_NT3X = 0x00040000;
828 +}
829 +
830 +const MB_SETFOREGROUND = 0x10000;
831 +const MB_SYSTEMMODAL = 4096;
832 +const MB_TASKMODAL = 0x2000;
833 +const MB_YESNO = 4;
834 +const MB_YESNOCANCEL = 3;
835 +const MB_ICONMASK = 240;
836 +const MB_DEFMASK = 3840;
837 +const MB_MODEMASK = 0x00003000;
838 +const MB_MISCMASK = 0x0000C000;
839 +const MB_NOFOCUS = 0x00008000;
840 +const MB_TYPEMASK = 15;
841 +// [Redefined] MB_TOPMOST=0x40000
842 +static if (WINVER >= 0x500) {
843 + const MB_CANCELTRYCONTINUE=6;
844 +}
845 +
846 +const IDOK = 1;
847 +const IDCANCEL = 2;
848 +const IDABORT = 3;
849 +const IDRETRY = 4;
850 +const IDIGNORE = 5;
851 +const IDYES = 6;
852 +const IDNO = 7;
853 +static if (WINVER >= 0x400) {
854 +const IDCLOSE = 8;
855 +const IDHELP = 9;
856 +}
857 +static if (WINVER >= 0x500) {
858 +const IDTRYAGAIN = 10;
859 +const IDCONTINUE = 11;
860 +}
861 +
862 +const GWL_EXSTYLE = -20;
863 +const GWL_STYLE = -16;
864 +const GWL_WNDPROC = -4;
865 +const GWLP_WNDPROC = -4;
866 +const GWL_HINSTANCE = -6;
867 +const GWLP_HINSTANCE = -6;
868 +const GWL_HWNDPARENT = -8;
869 +const GWLP_HWNDPARENT = -8;
870 +const GWL_ID = -12;
871 +const GWLP_ID = -12;
872 +const GWL_USERDATA = -21;
873 +const GWLP_USERDATA = -21;
874 +
875 +const DWL_DLGPROC = 4;
876 +const DWLP_DLGPROC = 4;
877 +const DWL_MSGRESULT = 0;
878 +const DWLP_MSGRESULT = 0;
879 +const DWL_USER = 8;
880 +const DWLP_USER = 8;
881 +
882 +const QS_KEY = 1;
883 +const QS_MOUSEMOVE = 2;
884 +const QS_MOUSEBUTTON = 4;
885 +const QS_MOUSE = 6;
886 +const QS_POSTMESSAGE = 8;
887 +const QS_TIMER = 16;
888 +const QS_PAINT = 32;
889 +const QS_SENDMESSAGE = 64;
890 +const QS_HOTKEY = 128;
891 +const QS_ALLPOSTMESSAGE = 256;
892 +static if (_WIN32_WINNT >= 0x501) {
893 +const QS_RAWINPUT = 1024;
894 +const QS_INPUT = 1031;
895 +const QS_ALLEVENTS = 1215;
896 +const QS_ALLINPUT = 1279;
897 +} else {
898 +const QS_INPUT = 7;
899 +const QS_ALLEVENTS = 191;
900 +const QS_ALLINPUT = 255;
901 +}
902 +
903 +const MWMO_WAITALL = 1;
904 +const MWMO_ALERTABLE = 2;
905 +const MWMO_INPUTAVAILABLE = 4;
906 +
907 +const COLOR_3DDKSHADOW=21;
908 +const COLOR_3DFACE=15;
909 +const COLOR_3DHILIGHT=20;
910 +const COLOR_3DHIGHLIGHT=20;
911 +const COLOR_3DLIGHT=22;
912 +const COLOR_BTNHILIGHT=20;
913 +const COLOR_3DSHADOW=16;
914 +const COLOR_ACTIVEBORDER=10;
915 +const COLOR_ACTIVECAPTION=2;
916 +const COLOR_APPWORKSPACE=12;
917 +const COLOR_BACKGROUND=1;
918 +const COLOR_DESKTOP=1;
919 +const COLOR_BTNFACE=15;
920 +const COLOR_BTNHIGHLIGHT=20;
921 +const COLOR_BTNSHADOW=16;
922 +const COLOR_BTNTEXT=18;
923 +const COLOR_CAPTIONTEXT=9;
924 +const COLOR_GRAYTEXT=17;
925 +const COLOR_HIGHLIGHT=13;
926 +const COLOR_HIGHLIGHTTEXT=14;
927 +const COLOR_INACTIVEBORDER=11;
928 +const COLOR_INACTIVECAPTION=3;
929 +const COLOR_INACTIVECAPTIONTEXT=19;
930 +const COLOR_INFOBK=24;
931 +const COLOR_INFOTEXT=23;
932 +const COLOR_MENU=4;
933 +const COLOR_MENUTEXT=7;
934 +const COLOR_SCROLLBAR=0;
935 +const COLOR_WINDOW=5;
936 +const COLOR_WINDOWFRAME=6;
937 +const COLOR_WINDOWTEXT=8;
938 +const COLOR_HOTLIGHT=26;
939 +const COLOR_GRADIENTACTIVECAPTION=27;
940 +const COLOR_GRADIENTINACTIVECAPTION=28;
941 +
942 +const CTLCOLOR_MSGBOX=0;
943 +const CTLCOLOR_EDIT=1;
944 +const CTLCOLOR_LISTBOX=2;
945 +const CTLCOLOR_BTN=3;
946 +const CTLCOLOR_DLG=4;
947 +const CTLCOLOR_SCROLLBAR=5;
948 +const CTLCOLOR_STATIC=6;
949 +const CTLCOLOR_MAX=7;
950 +
951 +// For GetSystemMetrics()
952 +enum : int {
953 + SM_CXSCREEN = 0,
954 + SM_CYSCREEN,
955 + SM_CXVSCROLL,
956 + SM_CYHSCROLL,
957 + SM_CYCAPTION,
958 + SM_CXBORDER,
959 + SM_CYBORDER,
960 + SM_CXDLGFRAME, // = 7,
961 + SM_CXFIXEDFRAME = SM_CXDLGFRAME,
962 + SM_CYDLGFRAME, // =8,
963 + SM_CYFIXEDFRAME = SM_CYDLGFRAME,
964 + SM_CYVTHUMB = 9,
965 + SM_CXHTHUMB,
966 + SM_CXICON,
967 + SM_CYICON,
968 + SM_CXCURSOR,
969 + SM_CYCURSOR,
970 + SM_CYMENU,
971 + SM_CXFULLSCREEN,
972 + SM_CYFULLSCREEN,
973 + SM_CYKANJIWINDOW,
974 + SM_MOUSEPRESENT,
975 + SM_CYVSCROLL,
976 + SM_CXHSCROLL,
977 + SM_DEBUG,
978 + SM_SWAPBUTTON,
979 + SM_RESERVED1,
980 + SM_RESERVED2,
981 + SM_RESERVED3,
982 + SM_RESERVED4,
983 + SM_CXMIN,
984 + SM_CYMIN,
985 + SM_CXSIZE,
986 + SM_CYSIZE,
987 + SM_CXSIZEFRAME, // = 32,
988 + SM_CXFRAME = SM_CXSIZEFRAME,
989 + SM_CYSIZEFRAME, // = 33
990 + SM_CYFRAME = SM_CYSIZEFRAME,
991 + SM_CXMINTRACK,
992 + SM_CYMINTRACK,
993 + SM_CXDOUBLECLK,
994 + SM_CYDOUBLECLK,
995 + SM_CXICONSPACING,
996 + SM_CYICONSPACING,
997 + SM_MENUDROPALIGNMENT,
998 + SM_PENWINDOWS,
999 + SM_DBCSENABLED,
1000 + SM_CMOUSEBUTTONS,
1001 + SM_SECURE,
1002 + SM_CXEDGE,
1003 + SM_CYEDGE,
1004 + SM_CXMINSPACING,
1005 + SM_CYMINSPACING,
1006 + SM_CXSMICON,
1007 + SM_CYSMICON,
1008 + SM_CYSMCAPTION,
1009 + SM_CXSMSIZE,
1010 + SM_CYSMSIZE,
1011 + SM_CXMENUSIZE,
1012 + SM_CYMENUSIZE,
1013 + SM_ARRANGE,
1014 + SM_CXMINIMIZED,
1015 + SM_CYMINIMIZED,
1016 + SM_CXMAXTRACK,
1017 + SM_CYMAXTRACK,
1018 + SM_CXMAXIMIZED,
1019 + SM_CYMAXIMIZED,
1020 + SM_NETWORK, // = 63
1021 + SM_CLEANBOOT = 67,
1022 + SM_CXDRAG,
1023 + SM_CYDRAG,
1024 + SM_SHOWSOUNDS,
1025 + SM_CXMENUCHECK,
1026 + SM_CYMENUCHECK,
1027 + SM_SLOWMACHINE,
1028 + SM_MIDEASTENABLED,
1029 + // The next values aren't supported in Win95.
1030 + SM_MOUSEWHEELPRESENT,
1031 + SM_XVIRTUALSCREEN,
1032 + SM_YVIRTUALSCREEN,
1033 + SM_CXVIRTUALSCREEN,
1034 + SM_CYVIRTUALSCREEN,
1035 + SM_CMONITORS,
1036 + SM_SAMEDISPLAYFORMAT,
1037 + SM_IMMENABLED,
1038 + SM_CXFOCUSBORDER,
1039 + SM_CYFOCUSBORDER, // = 84
1040 + SM_TABLETPC = 86,
1041 + SM_MEDIACENTER = 87,
1042 + SM_REMOTESESSION = 0x1000,
1043 + // These are only for WinXP and later
1044 + SM_SHUTTINGDOWN = 0x2000,
1045 + SM_REMOTECONTROL = 0x2001
1046 +}
1047 +
1048 +const ARW_BOTTOMLEFT=0;
1049 +const ARW_BOTTOMRIGHT=1;
1050 +const ARW_HIDE=8;
1051 +const ARW_TOPLEFT=2;
1052 +const ARW_TOPRIGHT=3;
1053 +const ARW_DOWN=4;
1054 +const ARW_LEFT=0;
1055 +const ARW_RIGHT=0;
1056 +const ARW_UP=4;
1057 +
1058 +const UOI_FLAGS=1;
1059 +const UOI_NAME=2;
1060 +const UOI_TYPE=3;
1061 +const UOI_USER_SID=4;
1062 +
1063 +// For the fuLoad parameter of LoadImage()
1064 +enum : UINT {
1065 + LR_DEFAULTCOLOR = 0,
1066 + LR_MONOCHROME = 1,
1067 + LR_COLOR = 2,
1068 + LR_COPYRETURNORG = 4,
1069 + LR_COPYDELETEORG = 8,
1070 + LR_LOADFROMFILE = 16,
1071 + LR_LOADTRANSPARENT = 32,
1072 + LR_DEFAULTSIZE = 64,
1073 + LR_LOADREALSIZE = 128,
1074 + LR_LOADMAP3DCOLORS = 4096,
1075 + LR_CREATEDIBSECTION = 8192,
1076 + LR_COPYFROMRESOURCE = 16384,
1077 + LR_SHARED = 32768
1078 +}
1079 +
1080 +const KEYEVENTF_EXTENDEDKEY = 0x00000001;
1081 +const KEYEVENTF_KEYUP = 00000002;
1082 +static if (_WIN32_WINNT >= 0x500) {
1083 +const KEYEVENTF_UNICODE = 0x00000004;
1084 +const KEYEVENTF_SCANCODE = 0x00000008;
1085 +}
1086 +
1087 +const OBM_BTNCORNERS = 32758;
1088 +const OBM_BTSIZE = 32761;
1089 +const OBM_CHECK = 32760;
1090 +const OBM_CHECKBOXES = 32759;
1091 +const OBM_CLOSE = 32754;
1092 +const OBM_COMBO = 32738;
1093 +const OBM_DNARROW = 32752;
1094 +const OBM_DNARROWD = 32742;
1095 +const OBM_DNARROWI = 32736;
1096 +const OBM_LFARROW = 32750;
1097 +const OBM_LFARROWI = 32734;
1098 +const OBM_LFARROWD = 32740;
1099 +const OBM_MNARROW = 32739;
1100 +const OBM_OLD_CLOSE = 32767;
1101 +const OBM_OLD_DNARROW = 32764;
1102 +const OBM_OLD_LFARROW = 32762;
1103 +const OBM_OLD_REDUCE = 32757;
1104 +const OBM_OLD_RESTORE = 32755;
1105 +const OBM_OLD_RGARROW = 32763;
1106 +const OBM_OLD_UPARROW = 32765;
1107 +const OBM_OLD_ZOOM = 32756;
1108 +const OBM_REDUCE = 32749;
1109 +const OBM_REDUCED = 32746;
1110 +const OBM_RESTORE = 32747;
1111 +const OBM_RESTORED = 32744;
1112 +const OBM_RGARROW = 32751;
1113 +const OBM_RGARROWD = 32741;
1114 +const OBM_RGARROWI = 32735;
1115 +const OBM_SIZE = 32766;
1116 +const OBM_UPARROW = 32753;
1117 +const OBM_UPARROWD = 32743;
1118 +const OBM_UPARROWI = 32737;
1119 +const OBM_ZOOM = 32748;
1120 +const OBM_ZOOMD = 32745;
1121 +
1122 +const OCR_NORMAL = 32512;
1123 +const OCR_IBEAM = 32513;
1124 +const OCR_WAIT = 32514;
1125 +const OCR_CROSS = 32515;
1126 +const OCR_UP = 32516;
1127 +const OCR_SIZE = 32640;
1128 +const OCR_ICON = 32641;
1129 +const OCR_SIZENWSE = 32642;
1130 +const OCR_SIZENESW = 32643;
1131 +const OCR_SIZEWE = 32644;
1132 +const OCR_SIZENS = 32645;
1133 +const OCR_SIZEALL = 32646;
1134 +const OCR_NO = 32648;
1135 +const OCR_APPSTARTING = 32650;
1136 +
1137 +const OIC_SAMPLE = 32512;
1138 +const OIC_HAND = 32513;
1139 +const OIC_QUES = 32514;
1140 +const OIC_BANG = 32515;
1141 +const OIC_NOTE = 32516;
1142 +const OIC_WINLOGO = 32517;
1143 +const OIC_WARNING = OIC_BANG;
1144 +const OIC_ERROR = OIC_HAND;
1145 +const OIC_INFORMATION = OIC_NOTE;
1146 +
1147 +const HELPINFO_MENUITEM = 2;
1148 +const HELPINFO_WINDOW = 1;
1149 +
1150 +const MSGF_DIALOGBOX = 0;
1151 +const MSGF_MESSAGEBOX = 1;
1152 +const MSGF_MENU = 2;
1153 +const MSGF_MOVE = 3;
1154 +const MSGF_SIZE = 4;
1155 +const MSGF_SCROLLBAR = 5;
1156 +const MSGF_NEXTWINDOW = 6;
1157 +const MSGF_MAINLOOP = 8;
1158 +const MSGF_USER = 4096;
1159 +
1160 +const MOUSEEVENTF_MOVE = 1;
1161 +const MOUSEEVENTF_LEFTDOWN = 2;
1162 +const MOUSEEVENTF_LEFTUP = 4;
1163 +const MOUSEEVENTF_RIGHTDOWN = 8;
1164 +const MOUSEEVENTF_RIGHTUP = 16;
1165 +const MOUSEEVENTF_MIDDLEDOWN = 32;
1166 +const MOUSEEVENTF_MIDDLEUP = 64;
1167 +const MOUSEEVENTF_WHEEL = 0x0800;
1168 +const MOUSEEVENTF_ABSOLUTE = 32768;
1169 +
1170 +const PM_NOREMOVE = 0;
1171 +const PM_REMOVE = 1;
1172 +const PM_NOYIELD = 2;
1173 +
1174 +static if (WINVER >= 0x500) {
1175 +const PM_QS_INPUT = (QS_INPUT << 16);
1176 +const PM_QS_POSTMESSAGE = ((QS_POSTMESSAGE|QS_HOTKEY|QS_TIMER) << 16);
1177 +const PM_QS_PAINT = (QS_PAINT << 16);
1178 +const PM_QS_SENDMESSAGE = (QS_SENDMESSAGE << 16);
1179 +}
1180 +const HWND
1181 + HWND_BROADCAST = cast(HWND)0xffff,
1182 + HWND_BOTTOM = cast(HWND)1,
1183 + HWND_NOTOPMOST = cast(HWND)(-2),
1184 + HWND_TOP = cast(HWND)0,
1185 + HWND_TOPMOST = cast(HWND)(-1),
1186 + HWND_DESKTOP = cast(HWND)0,
1187 + HWND_MESSAGE = cast(HWND)(-3);// w2k
1188 +
1189 +const RDW_INVALIDATE = 1;
1190 +const RDW_INTERNALPAINT = 2;
1191 +const RDW_ERASE = 4;
1192 +const RDW_VALIDATE = 8;
1193 +const RDW_NOINTERNALPAINT = 16;
1194 +const RDW_NOERASE = 32;
1195 +const RDW_NOCHILDREN = 64;
1196 +const RDW_ALLCHILDREN = 128;
1197 +const RDW_UPDATENOW = 256;
1198 +const RDW_ERASENOW = 512;
1199 +const RDW_FRAME = 1024;
1200 +const RDW_NOFRAME = 2048;
1201 +
1202 +const SMTO_NORMAL = 0;
1203 +const SMTO_BLOCK = 1;
1204 +const SMTO_ABORTIFHUNG = 2;
1205 +
1206 +const SIF_ALL = 23;
1207 +const SIF_PAGE = 2;
1208 +const SIF_POS = 4;
1209 +const SIF_RANGE = 1;
1210 +const SIF_DISABLENOSCROLL = 8;
1211 +const SIF_TRACKPOS = 16;
1212 +
1213 +const SWP_DRAWFRAME = 32;
1214 +const SWP_FRAMECHANGED = 32;
1215 +const SWP_HIDEWINDOW = 128;
1216 +const SWP_NOACTIVATE = 16;
1217 +const SWP_NOCOPYBITS = 256;
1218 +const SWP_NOMOVE = 2;
1219 +const SWP_NOSIZE = 1;
1220 +const SWP_NOREDRAW = 8;
1221 +const SWP_NOZORDER = 4;
1222 +const SWP_SHOWWINDOW = 64;
1223 +const SWP_NOOWNERZORDER = 512;
1224 +const SWP_NOREPOSITION = 512;
1225 +const SWP_NOSENDCHANGING = 1024;
1226 +const SWP_DEFERERASE = 8192;
1227 +const SWP_ASYNCWINDOWPOS = 16384;
1228 +
1229 +const HSHELL_ACTIVATESHELLWINDOW = 3;
1230 +const HSHELL_GETMINRECT = 5;
1231 +const HSHELL_LANGUAGE = 8;
1232 +const HSHELL_REDRAW = 6;
1233 +const HSHELL_TASKMAN = 7;
1234 +const HSHELL_WINDOWACTIVATED = 4;
1235 +const HSHELL_WINDOWCREATED = 1;
1236 +const HSHELL_WINDOWDESTROYED = 2;
1237 +const HSHELL_FLASH = 32774;
1238 +
1239 +static if (WINVER >= 0x500) {
1240 +const SPI_SETFOREGROUNDLOCKTIMEOUT=0x2001;
1241 +const SPI_GETFOREGROUNDLOCKTIMEOUT=0x2000;
1242 +}
1243 +
1244 +const SPI_GETACCESSTIMEOUT=60;
1245 +const SPI_GETACTIVEWNDTRKTIMEOUT=8194;
1246 +const SPI_GETANIMATION=72;
1247 +const SPI_GETBEEP=1;
1248 +const SPI_GETBORDER=5;
1249 +const SPI_GETDEFAULTINPUTLANG=89;
1250 +const SPI_GETDRAGFULLWINDOWS=38;
1251 +const SPI_GETFASTTASKSWITCH=35;
1252 +const SPI_GETFILTERKEYS=50;
1253 +const SPI_GETFONTSMOOTHING=74;
1254 +const SPI_GETGRIDGRANULARITY=18;
1255 +const SPI_GETHIGHCONTRAST=66;
1256 +const SPI_GETICONMETRICS=45;
1257 +const SPI_GETICONTITLELOGFONT=31;
1258 +const SPI_GETICONTITLEWRAP=25;
1259 +const SPI_GETKEYBOARDDELAY=22;
1260 +const SPI_GETKEYBOARDPREF=68;
1261 +const SPI_GETKEYBOARDSPEED=10;
1262 +const SPI_GETLOWPOWERACTIVE=83;
1263 +const SPI_GETLOWPOWERTIMEOUT=79;
1264 +const SPI_GETMENUDROPALIGNMENT=27;
1265 +const SPI_GETMINIMIZEDMETRICS=43;
1266 +const SPI_GETMOUSE=3;
1267 +const SPI_GETMOUSEKEYS=54;
1268 +const SPI_GETMOUSETRAILS=94;
1269 +const SPI_GETNONCLIENTMETRICS=41;
1270 +const SPI_GETPOWEROFFACTIVE=84;
1271 +const SPI_GETPOWEROFFTIMEOUT=80;
1272 +const SPI_GETSCREENREADER=70;
1273 +const SPI_GETSCREENSAVEACTIVE=16;
1274 +const SPI_GETSCREENSAVETIMEOUT=14;
1275 +const SPI_GETSERIALKEYS=62;
1276 +const SPI_GETSHOWSOUNDS=56;
1277 +const SPI_GETSOUNDSENTRY=64;
1278 +const SPI_GETSTICKYKEYS=58;
1279 +const SPI_GETTOGGLEKEYS=52;
1280 +const SPI_GETWHEELSCROLLLINES=104;
1281 +const SPI_GETWINDOWSEXTENSION=92;
1282 +const SPI_GETWORKAREA=48;
1283 +const SPI_ICONHORIZONTALSPACING=13;
1284 +const SPI_ICONVERTICALSPACING=24;
1285 +const SPI_LANGDRIVER=12;
1286 +const SPI_SCREENSAVERRUNNING=97;
1287 +const SPI_SETACCESSTIMEOUT=61;
1288 +const SPI_SETACTIVEWNDTRKTIMEOUT=8195;
1289 +const SPI_SETANIMATION=73;
1290 +const SPI_SETBEEP=2;
1291 +const SPI_SETBORDER=6;
1292 +const SPI_SETDEFAULTINPUTLANG=90;
1293 +const SPI_SETDESKPATTERN=21;
1294 +const SPI_SETDESKWALLPAPER=20;
1295 +const SPI_SETDOUBLECLICKTIME=32;
1296 +const SPI_SETDOUBLECLKHEIGHT=30;
1297 +const SPI_SETDOUBLECLKWIDTH=29;
1298 +const SPI_SETDRAGFULLWINDOWS=37;
1299 +const SPI_SETDRAGHEIGHT=77;
1300 +const SPI_SETDRAGWIDTH=76;
1301 +const SPI_SETFASTTASKSWITCH=36;
1302 +const SPI_SETFILTERKEYS=51;
1303 +const SPI_SETFONTSMOOTHING=75;
1304 +const SPI_SETGRIDGRANULARITY=19;
1305 +const SPI_SETHANDHELD=78;
1306 +const SPI_SETHIGHCONTRAST=67;
1307 +const SPI_SETICONMETRICS=46;
1308 +const SPI_SETICONTITLELOGFONT=34;
1309 +const SPI_SETICONTITLEWRAP=26;
1310 +const SPI_SETKEYBOARDDELAY=23;
1311 +const SPI_SETKEYBOARDPREF=69;
1312 +const SPI_SETKEYBOARDSPEED=11;
1313 +const SPI_SETLANGTOGGLE=91;
1314 +const SPI_SETLOWPOWERACTIVE=85;
1315 +const SPI_SETLOWPOWERTIMEOUT=81;
1316 +const SPI_SETMENUDROPALIGNMENT=28;
1317 +const SPI_SETMINIMIZEDMETRICS=44;
1318 +const SPI_SETMOUSE=4;
1319 +const SPI_SETMOUSEBUTTONSWAP=33;
1320 +const SPI_SETMOUSEKEYS=55;
1321 +const SPI_SETMOUSETRAILS=93;
1322 +const SPI_SETNONCLIENTMETRICS=42;
1323 +const SPI_SETPENWINDOWS=49;
1324 +const SPI_SETPOWEROFFACTIVE=86;
1325 +const SPI_SETPOWEROFFTIMEOUT=82;
1326 +const SPI_SETSCREENREADER=71;
1327 +const SPI_SETSCREENSAVEACTIVE=17;
1328 +const SPI_SETSCREENSAVERRUNNING=97;
1329 +const SPI_SETSCREENSAVETIMEOUT=15;
1330 +const SPI_SETSERIALKEYS=63;
1331 +const SPI_SETSHOWSOUNDS=57;
1332 +const SPI_SETSOUNDSENTRY=65;
1333 +const SPI_SETSTICKYKEYS=59;
1334 +const SPI_SETTOGGLEKEYS=53;
1335 +const SPI_SETWHEELSCROLLLINES=105;
1336 +const SPI_SETWORKAREA=47;
1337 +
1338 +static if (WINVER >= 0x500) {
1339 +const SPI_GETDESKWALLPAPER=115;
1340 +const SPI_GETMOUSESPEED=112;
1341 +const SPI_GETSCREENSAVERRUNNING=114;
1342 +const SPI_GETACTIVEWINDOWTRACKING=0x1000;
1343 +const SPI_GETACTIVEWNDTRKZORDER=0x100C;
1344 +const SPI_GETCOMBOBOXANIMATION=0x1004;
1345 +const SPI_GETCURSORSHADOW=0x101A;
1346 +const SPI_GETGRADIENTCAPTIONS=0x1008;
1347 +const SPI_GETHOTTRACKING=0x100E;
1348 +const SPI_GETKEYBOARDCUES=0x100A;
1349 +const SPI_GETLISTBOXSMOOTHSCROLLING=0x1006;
1350 +const SPI_GETMENUANIMATION=0x1002;
1351 +const SPI_GETMENUFADE=0x1012;
1352 +const SPI_GETMENUUNDERLINES=0x100A;
1353 +const SPI_GETSELECTIONFADE=0x1014;
1354 +const SPI_GETTOOLTIPANIMATION=0x1016;
1355 +const SPI_GETTOOLTIPFADE=0x1018;
1356 +const SPI_SETACTIVEWINDOWTRACKING=0x1001;
1357 +const SPI_SETACTIVEWNDTRKZORDER=0x100D;
1358 +const SPI_SETCOMBOBOXANIMATION=0x1005;
1359 +const SPI_SETCURSORSHADOW=0x101B;
1360 +const SPI_SETGRADIENTCAPTIONS=0x1009;
1361 +const SPI_SETHOTTRACKING=0x100F;
1362 +const SPI_SETKEYBOARDCUES=0x100B;
1363 +const SPI_SETLISTBOXSMOOTHSCROLLING=0x1007;
1364 +const SPI_SETMENUANIMATION=0x1003;
1365 +const SPI_SETMENUFADE=0x1013;
1366 +const SPI_SETMENUUNDERLINES=0x100B;
1367 +const SPI_SETMOUSESPEED=113;
1368 +const SPI_SETSELECTIONFADE=0x1015;
1369 +const SPI_SETTOOLTIPANIMATION=0x1017;
1370 +const SPI_SETTOOLTIPFADE=0x1019;
1371 +}
1372 +
1373 +const SPIF_UPDATEINIFILE=1;
1374 +const SPIF_SENDWININICHANGE=2;
1375 +const SPIF_SENDCHANGE=2;
1376 +// [Redefined] ATF_ONOFFFEEDBACK=2
1377 +// [Redefined] ATF_TIMEOUTON=1
1378 +const WM_APP=32768;
1379 +const WM_ACTIVATE=6;
1380 +const WM_ACTIVATEAPP=28;
1381 +// FIXME/CHECK: Are WM_AFX {FIRST, LAST} valid for WINVER < 0x400?
1382 +const WM_AFXFIRST=864;
1383 +const WM_AFXLAST=895;
1384 +const WM_ASKCBFORMATNAME=780;
1385 +const WM_CANCELJOURNAL=75;
1386 +const WM_CANCELMODE=31;
1387 +const WM_CAPTURECHANGED=533;
1388 +const WM_CHANGECBCHAIN=781;
1389 +const WM_CHAR=258;
1390 +const WM_CHARTOITEM=47;
1391 +const WM_CHILDACTIVATE=34;
1392 +const WM_CLEAR=771;
1393 +const WM_CLOSE=16;
1394 +const WM_COMMAND=273;
1395 +const WM_COMMNOTIFY=68; // obsolete
1396 +const WM_COMPACTING=65;
1397 +const WM_COMPAREITEM=57;
1398 +const WM_CONTEXTMENU=123;
1399 +const WM_COPY=769;
1400 +const WM_COPYDATA=74;
1401 +const WM_CREATE=1;
1402 +const WM_CTLCOLORBTN=309;
1403 +const WM_CTLCOLORDLG=310;
1404 +const WM_CTLCOLOREDIT=307;
1405 +const WM_CTLCOLORLISTBOX=308;
1406 +const WM_CTLCOLORMSGBOX=306;
1407 +const WM_CTLCOLORSCROLLBAR=311;
1408 +const WM_CTLCOLORSTATIC=312;
1409 +const WM_CUT=768;
1410 +const WM_DEADCHAR=259;
1411 +const WM_DELETEITEM=45;
1412 +const WM_DESTROY=2;
1413 +const WM_DESTROYCLIPBOARD=775;
1414 +const WM_DEVICECHANGE=537;
1415 +const WM_DEVMODECHANGE=27;
1416 +const WM_DISPLAYCHANGE=126;
1417 +const WM_DRAWCLIPBOARD=776;
1418 +const WM_DRAWITEM=43;
1419 +const WM_DROPFILES=563;
1420 +const WM_ENABLE=10;
1421 +const WM_ENDSESSION=22;
1422 +const WM_ENTERIDLE=289;
1423 +const WM_ENTERMENULOOP=529;
1424 +const WM_ENTERSIZEMOVE=561;
1425 +const WM_ERASEBKGND=20;
1426 +const WM_EXITMENULOOP=530;
1427 +const WM_EXITSIZEMOVE=562;
1428 +const WM_FONTCHANGE=29;
1429 +const WM_GETDLGCODE=135;
1430 +const WM_GETFONT=49;
1431 +const WM_GETHOTKEY=51;
1432 +const WM_GETICON=127;
1433 +const WM_GETMINMAXINFO=36;
1434 +const WM_GETTEXT=13;
1435 +const WM_GETTEXTLENGTH=14;
1436 +const WM_HANDHELDFIRST=856;
1437 +const WM_HANDHELDLAST=863;
1438 +const WM_HELP=83;
1439 +const WM_HOTKEY=786;
1440 +const WM_HSCROLL=276;
1441 +const WM_HSCROLLCLIPBOARD=782;
1442 +const WM_ICONERASEBKGND=39;
1443 +const WM_INITDIALOG=272;
1444 +const WM_INITMENU=278;
1445 +const WM_INITMENUPOPUP=279;
1446 +const WM_INPUTLANGCHANGE=81;
1447 +const WM_INPUTLANGCHANGEREQUEST=80;
1448 +const WM_KEYDOWN=256;
1449 +const WM_KEYUP=257;
1450 +const WM_KILLFOCUS=8;
1451 +const WM_MDIACTIVATE=546;
1452 +const WM_MDICASCADE=551;
1453 +const WM_MDICREATE=544;
1454 +const WM_MDIDESTROY=545;
1455 +const WM_MDIGETACTIVE=553;
1456 +const WM_MDIICONARRANGE=552;
1457 +const WM_MDIMAXIMIZE=549;
1458 +const WM_MDINEXT=548;
1459 +const WM_MDIREFRESHMENU=564;
1460 +const WM_MDIRESTORE=547;
1461 +const WM_MDISETMENU=560;
1462 +const WM_MDITILE=550;
1463 +const WM_MEASUREITEM=44;
1464 +static if (WINVER >= 0x500) {
1465 +const WM_UNINITMENUPOPUP=0x0125;
1466 +const WM_MENURBUTTONUP=290;
1467 +const WM_MENUCOMMAND=0x0126;
1468 +const WM_MENUGETOBJECT=0x0124;
1469 +const WM_MENUDRAG=0x0123;
1470 +}
1471 +
1472 +static if (_WIN32_WINNT >= 0x500) {
1473 +
1474 + enum {
1475 + WM_CHANGEUISTATE = 0x0127,
1476 + WM_UPDATEUISTATE = 0x0128,
1477 + WM_QUERYUISTATE = 0x0129
1478 + }
1479 +
1480 + // LOWORD(wParam) values in WM_*UISTATE*
1481 + enum {
1482 + UIS_SET = 1,
1483 + UIS_CLEAR = 2,
1484 + UIS_INITIALIZE = 3
1485 + }
1486 +
1487 + // HIWORD(wParam) values in WM_*UISTATE*
1488 + enum {
1489 + UISF_HIDEFOCUS = 0x1,
1490 + UISF_HIDEACCEL = 0x2
1491 + }
1492 +
1493 +}
1494 +
1495 +static if (_WIN32_WINNT >= 0x501) {
1496 +
1497 + // HIWORD(wParam) values in WM_*UISTATE*
1498 + enum {
1499 + UISF_ACTIVE = 0x4
1500 + }
1501 +
1502 +}
1503 +
1504 +const WM_MENUCHAR=288;
1505 +const WM_MENUSELECT=287;
1506 +const WM_MOVE=3;
1507 +const WM_MOVING=534;
1508 +const WM_NCACTIVATE=134;
1509 +const WM_NCCALCSIZE=131;
1510 +const WM_NCCREATE=129;
1511 +const WM_NCDESTROY=130;
1512 +const WM_NCHITTEST=132;
1513 +const WM_NCLBUTTONDBLCLK=163;
1514 +const WM_NCLBUTTONDOWN=161;
1515 +const WM_NCLBUTTONUP=162;
1516 +const WM_NCMBUTTONDBLCLK=169;
1517 +const WM_NCMBUTTONDOWN=167;
1518 +const WM_NCMBUTTONUP=168;
1519 +static if (_WIN32_WINNT >= 0x500) {
1520 +const WM_NCXBUTTONDOWN=171;
1521 +const WM_NCXBUTTONUP=172;
1522 +const WM_NCXBUTTONDBLCLK=173;
1523 +const WM_NCMOUSEHOVER=0x02A0;
1524 +const WM_NCMOUSELEAVE=0x02A2;
1525 +}
1526 +const WM_NCMOUSEMOVE=160;
1527 +const WM_NCPAINT=133;
1528 +const WM_NCRBUTTONDBLCLK=166;
1529 +const WM_NCRBUTTONDOWN=164;
1530 +const WM_NCRBUTTONUP=165;
1531 +const WM_NEXTDLGCTL=40;
1532 +const WM_NEXTMENU=531;
1533 +const WM_NOTIFY=78;
1534 +const WM_NOTIFYFORMAT=85;
1535 +const WM_NULL=0;
1536 +const WM_PAINT=15;
1537 +const WM_PAINTCLIPBOARD=777;
1538 +const WM_PAINTICON=38;
1539 +const WM_PALETTECHANGED=785;
1540 +const WM_PALETTEISCHANGING=784;
1541 +const WM_PARENTNOTIFY=528;
1542 +const WM_PASTE=770;
1543 +const WM_PENWINFIRST=896;
1544 +const WM_PENWINLAST=911;
1545 +const WM_POWER=72;
1546 +const WM_POWERBROADCAST=536;
1547 +const WM_PRINT=791;
1548 +const WM_PRINTCLIENT=792;
1549 +const WM_APPCOMMAND = 0x0319;
1550 +const WM_QUERYDRAGICON=55;
1551 +const WM_QUERYENDSESSION=17;
1552 +const WM_QUERYNEWPALETTE=783;
1553 +const WM_QUERYOPEN=19;
1554 +const WM_QUEUESYNC=35;
1555 +const WM_QUIT=18;
1556 +const WM_RENDERALLFORMATS=774;
1557 +const WM_RENDERFORMAT=773;
1558 +const WM_SETCURSOR=32;
1559 +const WM_SETFOCUS=7;
1560 +const WM_SETFONT=48;
1561 +const WM_SETHOTKEY=50;
1562 +const WM_SETICON=128;
1563 +const WM_SETREDRAW=11;
1564 +const WM_SETTEXT=12;
1565 +const WM_SETTINGCHANGE=26;
1566 +const WM_SHOWWINDOW=24;
1567 +const WM_SIZE=5;
1568 +const WM_SIZECLIPBOARD=779;
1569 +const WM_SIZING=532;
1570 +const WM_SPOOLERSTATUS=42;
1571 +const WM_STYLECHANGED=125;
1572 +const WM_STYLECHANGING=124;
1573 +const WM_SYSCHAR=262;
1574 +const WM_SYSCOLORCHANGE=21;
1575 +const WM_SYSCOMMAND=274;
1576 +const WM_SYSDEADCHAR=263;
1577 +const WM_SYSKEYDOWN=260;
1578 +const WM_SYSKEYUP=261;
1579 +const WM_TCARD=82;
1580 +const WM_THEMECHANGED=794;
1581 +const WM_TIMECHANGE=30;
1582 +const WM_TIMER=275;
1583 +const WM_UNDO=772;
1584 +const WM_USER=1024;
1585 +const WM_USERCHANGED=84;
1586 +const WM_VKEYTOITEM=46;
1587 +const WM_VSCROLL=277;
1588 +const WM_VSCROLLCLIPBOARD=778;
1589 +const WM_WINDOWPOSCHANGED=71;
1590 +const WM_WINDOWPOSCHANGING=70;
1591 +const WM_WININICHANGE=26;
1592 +const WM_INPUT=255;
1593 +const WM_KEYFIRST=256;
1594 +const WM_KEYLAST=264;
1595 +const WM_SYNCPAINT=136;
1596 +const WM_MOUSEACTIVATE=33;
1597 +const WM_MOUSEMOVE=512;
1598 +const WM_LBUTTONDOWN=513;
1599 +const WM_LBUTTONUP=514;
1600 +const WM_LBUTTONDBLCLK=515;
1601 +const WM_RBUTTONDOWN=516;
1602 +const WM_RBUTTONUP=517;
1603 +const WM_RBUTTONDBLCLK=518;
1604 +const WM_MBUTTONDOWN=519;
1605 +const WM_MBUTTONUP=520;
1606 +const WM_MBUTTONDBLCLK=521;
1607 +const WM_MOUSEWHEEL=522;
1608 +const WM_MOUSEFIRST=512;
1609 +static if (_WIN32_WINNT >= 0x500) {
1610 +const WM_XBUTTONDOWN=523;
1611 +const WM_XBUTTONUP=524;
1612 +const WM_XBUTTONDBLCLK=525;
1613 +const WM_MOUSELAST=525;
1614 +} else {
1615 +const WM_MOUSELAST=522;
1616 +}
1617 +const WM_MOUSEHOVER=0x2A1;
1618 +const WM_MOUSELEAVE=0x2A3;
1619 +static if (_WIN32_WINNT >= 0x400) {
1620 +const WHEEL_DELTA=120;
1621 +
1622 +SHORT GET_WHEEL_DELTA_WPARAM(WPARAM wparam)
1623 +{
1624 +return cast(SHORT) HIWORD(wparam);
1625 +}
1626 +
1627 +const WHEEL_PAGESCROLL = uint.max;
1628 +}
1629 +const BM_CLICK=245;
1630 +const BM_GETCHECK=240;
1631 +const BM_GETIMAGE=246;
1632 +const BM_GETSTATE=242;
1633 +const BM_SETCHECK=241;
1634 +const BM_SETIMAGE=247;
1635 +const BM_SETSTATE=243;
1636 +const BM_SETSTYLE=244;
1637 +const BN_CLICKED=0;
1638 +const BN_DBLCLK=5;
1639 +const BN_DISABLE=4;
1640 +const BN_DOUBLECLICKED=5;
1641 +const BN_HILITE=2;
1642 +const BN_KILLFOCUS=7;
1643 +const BN_PAINT=1;
1644 +const BN_PUSHED=2;
1645 +const BN_SETFOCUS=6;
1646 +const BN_UNHILITE=3;
1647 +const BN_UNPUSHED=3;
1648 +const CB_ADDSTRING=323;
1649 +const CB_DELETESTRING=324;
1650 +const CB_DIR=325;
1651 +const CB_FINDSTRING=332;
1652 +const CB_FINDSTRINGEXACT=344;
1653 +const CB_GETCOUNT=326;
1654 +const CB_GETCURSEL=327;
1655 +const CB_GETDROPPEDCONTROLRECT=338;
1656 +const CB_GETDROPPEDSTATE=343;
1657 +const CB_GETDROPPEDWIDTH=351;
1658 +const CB_GETEDITSEL=320;
1659 +const CB_GETEXTENDEDUI=342;
1660 +const CB_GETHORIZONTALEXTENT=349;
1661 +const CB_GETITEMDATA=336;
1662 +const CB_GETITEMHEIGHT=340;
1663 +const CB_GETLBTEXT=328;
1664 +const CB_GETLBTEXTLEN=329;
1665 +const CB_GETLOCALE=346;
1666 +const CB_GETTOPINDEX=347;
1667 +const CB_INITSTORAGE=353;
1668 +const CB_INSERTSTRING=330;
1669 +const CB_LIMITTEXT=321;
1670 +const CB_RESETCONTENT=331;
1671 +const CB_SELECTSTRING=333;
1672 +const CB_SETCURSEL=334;
1673 +const CB_SETDROPPEDWIDTH=352;
1674 +const CB_SETEDITSEL=322;
1675 +const CB_SETEXTENDEDUI=341;
1676 +const CB_SETHORIZONTALEXTENT=350;
1677 +const CB_SETITEMDATA=337;
1678 +const CB_SETITEMHEIGHT=339;
1679 +const CB_SETLOCALE=345;
1680 +const CB_SETTOPINDEX=348;
1681 +const CB_SHOWDROPDOWN=335;
1682 +
1683 +const CBN_CLOSEUP=8;
1684 +const CBN_DBLCLK=2;
1685 +const CBN_DROPDOWN=7;
1686 +const CBN_EDITCHANGE=5;
1687 +const CBN_EDITUPDATE=6;
1688 +const CBN_ERRSPACE=(-1);
1689 +const CBN_KILLFOCUS=4;
1690 +const CBN_SELCHANGE=1;
1691 +const CBN_SELENDCANCEL=10;
1692 +const CBN_SELENDOK=9;
1693 +const CBN_SETFOCUS=3;
1694 +
1695 +const EM_CANUNDO=198;
1696 +const EM_CHARFROMPOS=215;
1697 +const EM_EMPTYUNDOBUFFER=205;
1698 +const EM_FMTLINES=200;
1699 +const EM_GETFIRSTVISIBLELINE=206;
1700 +const EM_GETHANDLE=189;
1701 +const EM_GETLIMITTEXT=213;
1702 +const EM_GETLINE=196;
1703 +const EM_GETLINECOUNT=186;
1704 +const EM_GETMARGINS=212;
1705 +const EM_GETMODIFY=184;
1706 +const EM_GETPASSWORDCHAR=210;
1707 +const EM_GETRECT=178;
1708 +const EM_GETSEL=176;
1709 +const EM_GETTHUMB=190;
1710 +const EM_GETWORDBREAKPROC=209;
1711 +const EM_LIMITTEXT=197;
1712 +const EM_LINEFROMCHAR=201;
1713 +const EM_LINEINDEX=187;
1714 +const EM_LINELENGTH=193;
1715 +const EM_LINESCROLL=182;
1716 +const EM_POSFROMCHAR=214;
1717 +const EM_REPLACESEL=194;
1718 +const EM_SCROLL=181;
1719 +const EM_SCROLLCARET=183;
1720 +const EM_SETHANDLE=188;
1721 +const EM_SETLIMITTEXT=197;
1722 +const EM_SETMARGINS=211;
1723 +const EM_SETMODIFY=185;
1724 +const EM_SETPASSWORDCHAR=204;
1725 +const EM_SETREADONLY=207;
1726 +const EM_SETRECT=179;
1727 +const EM_SETRECTNP=180;
1728 +const EM_SETSEL=177;
1729 +const EM_SETTABSTOPS=203;
1730 +const EM_SETWORDBREAKPROC=208;
1731 +const EM_UNDO=199;
1732 +
1733 +const EN_CHANGE=768;
1734 +const EN_ERRSPACE=1280;
1735 +const EN_HSCROLL=1537;
1736 +const EN_KILLFOCUS=512;
1737 +const EN_MAXTEXT=1281;
1738 +const EN_SETFOCUS=256;
1739 +const EN_UPDATE=1024;
1740 +const EN_VSCROLL=1538;
1741 +
1742 +const LB_ADDFILE=406;
1743 +const LB_ADDSTRING=384;
1744 +const LB_DELETESTRING=386;
1745 +const LB_DIR=397;
1746 +const LB_FINDSTRING=399;
1747 +const LB_FINDSTRINGEXACT=418;
1748 +const LB_GETANCHORINDEX=413;
1749 +const LB_GETCARETINDEX=415;
1750 +const LB_GETCOUNT=395;
1751 +const LB_GETCURSEL=392;
1752 +const LB_GETHORIZONTALEXTENT=403;
1753 +const LB_GETITEMDATA=409;
1754 +const LB_GETITEMHEIGHT=417;
1755 +const LB_GETITEMRECT=408;
1756 +const LB_GETLOCALE=422;
1757 +const LB_GETSEL=391;
1758 +const LB_GETSELCOUNT=400;
1759 +const LB_GETSELITEMS=401;
1760 +const LB_GETTEXT=393;
1761 +const LB_GETTEXTLEN=394;
1762 +const LB_GETTOPINDEX=398;
1763 +const LB_INITSTORAGE=424;
1764 +const LB_INSERTSTRING=385;
1765 +const LB_ITEMFROMPOINT=425;
1766 +const LB_RESETCONTENT=388;
1767 +const LB_SELECTSTRING=396;
1768 +const LB_SELITEMRANGE=411;
1769 +const LB_SELITEMRANGEEX=387;
1770 +const LB_SETANCHORINDEX=412;
1771 +const LB_SETCARETINDEX=414;
1772 +const LB_SETCOLUMNWIDTH=405;
1773 +const LB_SETCOUNT=423;
1774 +const LB_SETCURSEL=390;
1775 +const LB_SETHORIZONTALEXTENT=404;
1776 +const LB_SETITEMDATA=410;
1777 +const LB_SETITEMHEIGHT=416;
1778 +const LB_SETLOCALE=421;
1779 +const LB_SETSEL=389;
1780 +const LB_SETTABSTOPS=402;
1781 +const LB_SETTOPINDEX=407;
1782 +
1783 +const LBN_DBLCLK=2;
1784 +const LBN_ERRSPACE=-2;
1785 +const LBN_KILLFOCUS=5;
1786 +const LBN_SELCANCEL=3;
1787 +const LBN_SELCHANGE=1;
1788 +const LBN_SETFOCUS=4;
1789 +
1790 +const SBM_ENABLE_ARROWS=228;
1791 +const SBM_GETPOS=225;
1792 +const SBM_GETRANGE=227;
1793 +const SBM_GETSCROLLINFO=234;
1794 +const SBM_SETPOS=224;
1795 +const SBM_SETRANGE=226;
1796 +const SBM_SETRANGEREDRAW=230;
1797 +const SBM_SETSCROLLINFO=233;
1798 +const STM_GETICON=369;
1799 +const STM_GETIMAGE=371;
1800 +const STM_SETICON=368;
1801 +const STM_SETIMAGE=370;
1802 +const STN_CLICKED=0;
1803 +const STN_DBLCLK=1;
1804 +const STN_DISABLE=3;
1805 +const STN_ENABLE=2;
1806 +
1807 +const DM_GETDEFID = WM_USER;
1808 +const DM_SETDEFID = WM_USER+1;
1809 +const DM_REPOSITION = WM_USER+2;
1810 +
1811 +const PSM_PAGEINFO = WM_USER+100;
1812 +const PSM_SHEETINFO = WM_USER+101;
1813 +
1814 +const PSI_SETACTIVE=1;
1815 +const PSI_KILLACTIVE=2;
1816 +const PSI_APPLY=3;
1817 +const PSI_RESET=4;
1818 +const PSI_HASHELP=5;
1819 +const PSI_HELP=6;
1820 +const PSI_CHANGED=1;
1821 +const PSI_GUISTART=2;
1822 +const PSI_REBOOT=3;
1823 +const PSI_GETSIBLINGS=4;
1824 +
1825 +const DCX_WINDOW=1;
1826 +const DCX_CACHE=2;
1827 +const DCX_PARENTCLIP=32;
1828 +const DCX_CLIPSIBLINGS=16;
1829 +const DCX_CLIPCHILDREN=8;
1830 +const DCX_NORESETATTRS=4;
1831 +const DCX_INTERSECTUPDATE=0x200;
1832 +const DCX_LOCKWINDOWUPDATE=0x400;
1833 +const DCX_EXCLUDERGN=64;
1834 +const DCX_INTERSECTRGN=128;
1835 +const DCX_VALIDATE=0x200000;
1836 +
1837 +const GMDI_GOINTOPOPUPS=2;
1838 +const GMDI_USEDISABLED=1;
1839 +const FKF_AVAILABLE=2;
1840 +const FKF_CLICKON=64;
1841 +const FKF_FILTERKEYSON=1;
1842 +const FKF_HOTKEYACTIVE=4;
1843 +const FKF_HOTKEYSOUND=16;
1844 +const FKF_CONFIRMHOTKEY=8;
1845 +const FKF_INDICATOR=32;
1846 +const HCF_HIGHCONTRASTON=1;
1847 +const HCF_AVAILABLE=2;
1848 +const HCF_HOTKEYACTIVE=4;
1849 +const HCF_CONFIRMHOTKEY=8;
1850 +const HCF_HOTKEYSOUND=16;
1851 +const HCF_INDICATOR=32;
1852 +const HCF_HOTKEYAVAILABLE=64;
1853 +const MKF_AVAILABLE=2;
1854 +const MKF_CONFIRMHOTKEY=8;
1855 +const MKF_HOTKEYACTIVE=4;
1856 +const MKF_HOTKEYSOUND=16;
1857 +const MKF_INDICATOR=32;
1858 +const MKF_MOUSEKEYSON=1;
1859 +const MKF_MODIFIERS=64;
1860 +const MKF_REPLACENUMBERS=128;
1861 +const SERKF_ACTIVE=8; // May be obsolete. Not in recent MS docs.
1862 +const SERKF_AVAILABLE=2;
1863 +const SERKF_INDICATOR=4;
1864 +const SERKF_SERIALKEYSON=1;
1865 +const SSF_AVAILABLE=2;
1866 +const SSF_SOUNDSENTRYON=1;
1867 +const SSTF_BORDER=2;
1868 +const SSTF_CHARS=1;
1869 +const SSTF_DISPLAY=3;
1870 +const SSTF_NONE=0;
1871 +const SSGF_DISPLAY=3;
1872 +const SSGF_NONE=0;
1873 +const SSWF_CUSTOM=4;
1874 +const SSWF_DISPLAY=3;
1875 +const SSWF_NONE=0;
1876 +const SSWF_TITLE=1;
1877 +const SSWF_WINDOW=2;
1878 +const SKF_AUDIBLEFEEDBACK=64;
1879 +const SKF_AVAILABLE=2;
1880 +const SKF_CONFIRMHOTKEY=8;
1881 +const SKF_HOTKEYACTIVE=4;
1882 +const SKF_HOTKEYSOUND=16;
1883 +const SKF_INDICATOR=32;
1884 +const SKF_STICKYKEYSON=1;
1885 +const SKF_TRISTATE=128;
1886 +const SKF_TWOKEYSOFF=256;
1887 +const TKF_AVAILABLE=2;
1888 +const TKF_CONFIRMHOTKEY=8;
1889 +const TKF_HOTKEYACTIVE=4;
1890 +const TKF_HOTKEYSOUND=16;
1891 +const TKF_TOGGLEKEYSON=1;
1892 +const MDITILE_SKIPDISABLED=2;
1893 +const MDITILE_HORIZONTAL=1;
1894 +const MDITILE_VERTICAL=0;
1895 +
1896 +enum {
1897 + VK_LBUTTON = 0x01,
1898 + VK_RBUTTON = 0x02,
1899 + VK_CANCEL = 0x03,
1900 + VK_MBUTTON = 0x04,
1901 + //static if (_WIN32_WINNT > = 0x500) {
1902 + VK_XBUTTON1 = 0x05,
1903 + VK_XBUTTON2 = 0x06,
1904 + //}
1905 + VK_BACK = 0x08,
1906 + VK_TAB = 0x09,
1907 + VK_CLEAR = 0x0C,
1908 + VK_RETURN = 0x0D,
1909 + VK_SHIFT = 0x10,
1910 + VK_CONTROL = 0x11,
1911 + VK_MENU = 0x12,
1912 + VK_PAUSE = 0x13,
1913 + VK_CAPITAL = 0x14,
1914 + VK_KANA = 0x15,
1915 + VK_HANGEUL = 0x15,
1916 + VK_HANGUL = 0x15,
1917 + VK_JUNJA = 0x17,
1918 + VK_FINAL = 0x18,
1919 + VK_HANJA = 0x19,
1920 + VK_KANJI = 0x19,
1921 + VK_ESCAPE = 0x1B,
1922 + VK_CONVERT = 0x1C,
1923 + VK_NONCONVERT = 0x1D,
1924 + VK_ACCEPT = 0x1E,
1925 + VK_MODECHANGE = 0x1F,
1926 + VK_SPACE = 0x20,
1927 + VK_PRIOR = 0x21,
1928 + VK_NEXT = 0x22,
1929 + VK_END = 0x23,
1930 + VK_HOME = 0x24,
1931 + VK_LEFT = 0x25,
1932 + VK_UP = 0x26,
1933 + VK_RIGHT = 0x27,
1934 + VK_DOWN = 0x28,
1935 + VK_SELECT = 0x29,
1936 + VK_PRINT = 0x2A,
1937 + VK_EXECUTE = 0x2B,
1938 + VK_SNAPSHOT = 0x2C,
1939 + VK_INSERT = 0x2D,
1940 + VK_DELETE = 0x2E,
1941 + VK_HELP = 0x2F,
1942 + VK_LWIN = 0x5B,
1943 + VK_RWIN = 0x5C,
1944 + VK_APPS = 0x5D,
1945 + VK_SLEEP = 0x5F,
1946 + VK_NUMPAD0 = 0x60,
1947 + VK_NUMPAD1 = 0x61,
1948 + VK_NUMPAD2 = 0x62,
1949 + VK_NUMPAD3 = 0x63,
1950 + VK_NUMPAD4 = 0x64,
1951 + VK_NUMPAD5 = 0x65,
1952 + VK_NUMPAD6 = 0x66,
1953 + VK_NUMPAD7 = 0x67,
1954 + VK_NUMPAD8 = 0x68,
1955 + VK_NUMPAD9 = 0x69,
1956 + VK_MULTIPLY = 0x6A,
1957 + VK_ADD = 0x6B,
1958 + VK_SEPARATOR = 0x6C,
1959 + VK_SUBTRACT = 0x6D,
1960 + VK_DECIMAL = 0x6E,
1961 + VK_DIVIDE = 0x6F,
1962 + VK_F1 = 0x70,
1963 + VK_F2 = 0x71,
1964 + VK_F3 = 0x72,
1965 + VK_F4 = 0x73,
1966 + VK_F5 = 0x74,
1967 + VK_F6 = 0x75,
1968 + VK_F7 = 0x76,
1969 + VK_F8 = 0x77,
1970 + VK_F9 = 0x78,
1971 + VK_F10 = 0x79,
1972 + VK_F11 = 0x7A,
1973 + VK_F12 = 0x7B,
1974 + VK_F13 = 0x7C,
1975 + VK_F14 = 0x7D,
1976 + VK_F15 = 0x7E,
1977 + VK_F16 = 0x7F,
1978 + VK_F17 = 0x80,
1979 + VK_F18 = 0x81,
1980 + VK_F19 = 0x82,
1981 + VK_F20 = 0x83,
1982 + VK_F21 = 0x84,
1983 + VK_F22 = 0x85,
1984 + VK_F23 = 0x86,
1985 + VK_F24 = 0x87,
1986 + VK_NUMLOCK = 0x90,
1987 + VK_SCROLL = 0x91,
1988 + VK_LSHIFT = 0xA0,
1989 + VK_RSHIFT = 0xA1,
1990 + VK_LCONTROL = 0xA2,
1991 + VK_RCONTROL = 0xA3,
1992 + VK_LMENU = 0xA4,
1993 + VK_RMENU = 0xA5,
1994 + //static if (_WIN32_WINNT > = 0x500) {
1995 + VK_BROWSER_BACK = 0xA6,
1996 + VK_BROWSER_FORWARD = 0xA7,
1997 + VK_BROWSER_REFRESH = 0xA8,
1998 + VK_BROWSER_STOP = 0xA9,
1999 + VK_BROWSER_SEARCH = 0xAA,
2000 + VK_BROWSER_FAVORITES = 0xAB,
2001 + VK_BROWSER_HOME = 0xAC,
2002 + VK_VOLUME_MUTE = 0xAD,
2003 + VK_VOLUME_DOWN = 0xAE,
2004 + VK_VOLUME_UP = 0xAF,
2005 + VK_MEDIA_NEXT_TRACK = 0xB0,
2006 + VK_MEDIA_PREV_TRACK = 0xB1,
2007 + VK_MEDIA_STOP = 0xB2,
2008 + VK_MEDIA_PLAY_PAUSE = 0xB3,
2009 + VK_LAUNCH_MAIL = 0xB4,
2010 + VK_LAUNCH_MEDIA_SELECT = 0xB5,
2011 + VK_LAUNCH_APP1 = 0xB6,
2012 + VK_LAUNCH_APP2 = 0xB7,
2013 + //}
2014 + VK_OEM_1 = 0xBA,
2015 + //static if (_WIN32_WINNT > = 0x500) {
2016 + VK_OEM_PLUS = 0xBB,
2017 + VK_OEM_COMMA = 0xBC,
2018 + VK_OEM_MINUS = 0xBD,
2019 + VK_OEM_PERIOD = 0xBE,
2020 + //}
2021 + VK_OEM_2 = 0xBF,
2022 + VK_OEM_3 = 0xC0,
2023 + VK_OEM_4 = 0xDB,
2024 + VK_OEM_5 = 0xDC,
2025 + VK_OEM_6 = 0xDD,
2026 + VK_OEM_7 = 0xDE,
2027 + VK_OEM_8 = 0xDF,
2028 + //static if (_WIN32_WINNT > = 0x500) {
2029 + VK_OEM_102 = 0xE2,
2030 + //}
2031 + VK_PROCESSKEY = 0xE5,
2032 + //static if (_WIN32_WINNT > = 0x500) {
2033 + VK_PACKET = 0xE7,
2034 + //}
2035 + VK_ATTN = 0xF6,
2036 + VK_CRSEL = 0xF7,
2037 + VK_EXSEL = 0xF8,
2038 + VK_EREOF = 0xF9,
2039 + VK_PLAY = 0xFA,
2040 + VK_ZOOM = 0xFB,
2041 + VK_NONAME = 0xFC,
2042 + VK_PA1 = 0xFD,
2043 + VK_OEM_CLEAR = 0xFE,
2044 +}
2045 +
2046 +const TME_HOVER=1;
2047 +const TME_LEAVE=2;
2048 +const TME_QUERY=0x40000000;
2049 +const TME_CANCEL=0x80000000;
2050 +
2051 +const HOVER_DEFAULT=0xFFFFFFFF;
2052 +
2053 +const MK_LBUTTON=1;
2054 +const MK_RBUTTON=2;
2055 +const MK_SHIFT=4;
2056 +const MK_CONTROL=8;
2057 +const MK_MBUTTON=16;
2058 +static if (_WIN32_WINNT >= 0x500) {
2059 +const MK_XBUTTON1=32;
2060 +const MK_XBUTTON2=64;
2061 +}
2062 +const TPM_CENTERALIGN=4;
2063 +const TPM_LEFTALIGN=0;
2064 +const TPM_RIGHTALIGN=8;
2065 +const TPM_LEFTBUTTON=0;
2066 +const TPM_RIGHTBUTTON=2;
2067 +const TPM_HORIZONTAL=0;
2068 +const TPM_VERTICAL=64;
2069 +const TPM_TOPALIGN=0;
2070 +const TPM_VCENTERALIGN=16;
2071 +const TPM_BOTTOMALIGN=32;
2072 +const TPM_NONOTIFY=128;
2073 +const TPM_RETURNCMD=256;
2074 +static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
2075 +const TPM_RECURSE=1;
2076 +}
2077 +
2078 +const HELP_COMMAND=0x102;
2079 +const HELP_CONTENTS=3;
2080 +const HELP_CONTEXT=1;
2081 +const HELP_CONTEXTPOPUP=8;
2082 +const HELP_FORCEFILE=9;
2083 +const HELP_HELPONHELP=4;
2084 +const HELP_INDEX=3;
2085 +const HELP_KEY=0x101;
2086 +const HELP_MULTIKEY=0x201;
2087 +const HELP_PARTIALKEY=0x105;
2088 +const HELP_QUIT=2;
2089 +const HELP_SETCONTENTS=5;
2090 +const HELP_SETINDEX=5;
2091 +const HELP_SETWINPOS=0x203;
2092 +const HELP_CONTEXTMENU=0xa;
2093 +const HELP_FINDER=0xb;
2094 +const HELP_WM_HELP=0xc;
2095 +const HELP_TCARD=0x8000;
2096 +const HELP_TCARD_DATA=16;
2097 +const HELP_TCARD_OTHER_CALLER=0x11;
2098 +
2099 +const IDH_NO_HELP=28440;
2100 +const IDH_MISSING_CONTEXT=28441;
2101 +const IDH_GENERIC_HELP_BUTTON=28442;
2102 +const IDH_OK=28443;
2103 +const IDH_CANCEL=28444;
2104 +const IDH_HELP=28445;
2105 +
2106 +const LB_CTLCODE=0;
2107 +const LB_OKAY=0;
2108 +const LB_ERR=-1;
2109 +const LB_ERRSPACE=-2;
2110 +
2111 +const CB_OKAY=0;
2112 +const CB_ERR=-1;
2113 +const CB_ERRSPACE=-2;
2114 +
2115 +const HIDE_WINDOW=0;
2116 +
2117 +const SHOW_OPENWINDOW=1;
2118 +const SHOW_ICONWINDOW=2;
2119 +const SHOW_FULLSCREEN=3;
2120 +const SHOW_OPENNOACTIVATE=4;
2121 +
2122 +const SW_PARENTCLOSING=1;
2123 +const SW_OTHERZOOM=2;
2124 +const SW_PARENTOPENING=3;
2125 +const SW_OTHERUNZOOM=4;
2126 +
2127 +const KF_EXTENDED=256;
2128 +const KF_DLGMODE=2048;
2129 +const KF_MENUMODE=4096;
2130 +const KF_ALTDOWN=8192;
2131 +const KF_REPEAT=16384;
2132 +const KF_UP=32768;
2133 +
2134 +const WSF_VISIBLE=1;
2135 +
2136 +const PWR_OK=1;
2137 +const PWR_FAIL=-1;
2138 +const PWR_SUSPENDREQUEST=1;
2139 +const PWR_SUSPENDRESUME=2;
2140 +const PWR_CRITICALRESUME=3;
2141 +
2142 +const NFR_ANSI=1;
2143 +const NFR_UNICODE=2;
2144 +const NF_QUERY=3;
2145 +const NF_REQUERY=4;
2146 +
2147 +const MENULOOP_WINDOW=0;
2148 +const MENULOOP_POPUP=1;
2149 +
2150 +const WMSZ_LEFT=1;
2151 +const WMSZ_RIGHT=2;
2152 +const WMSZ_TOP=3;
2153 +const WMSZ_TOPLEFT=4;
2154 +const WMSZ_TOPRIGHT=5;
2155 +const WMSZ_BOTTOM=6;
2156 +const WMSZ_BOTTOMLEFT=7;
2157 +const WMSZ_BOTTOMRIGHT=8;
2158 +
2159 +const HTERROR=-2;
2160 +const HTTRANSPARENT=-1;
2161 +const HTNOWHERE=0;
2162 +const HTCLIENT=1;
2163 +const HTCAPTION=2;
2164 +const HTSYSMENU=3;
2165 +const HTGROWBOX=4;
2166 +const HTSIZE=4;
2167 +const HTMENU=5;
2168 +const HTHSCROLL=6;
2169 +const HTVSCROLL=7;
2170 +const HTMINBUTTON=8;
2171 +const HTMAXBUTTON=9;
2172 +const HTREDUCE=8;
2173 +const HTZOOM=9;
2174 +const HTLEFT=10;
2175 +const HTSIZEFIRST=10;
2176 +const HTRIGHT=11;
2177 +const HTTOP=12;
2178 +const HTTOPLEFT=13;
2179 +const HTTOPRIGHT=14;
2180 +const HTBOTTOM=15;
2181 +const HTBOTTOMLEFT=16;
2182 +const HTBOTTOMRIGHT=17;
2183 +const HTSIZELAST=17;
2184 +const HTBORDER=18;
2185 +const HTOBJECT=19;
2186 +const HTCLOSE=20;
2187 +const HTHELP=21;
2188 +
2189 +const MA_ACTIVATE=1;
2190 +const MA_ACTIVATEANDEAT=2;
2191 +const MA_NOACTIVATE=3;
2192 +const MA_NOACTIVATEANDEAT=4;
2193 +
2194 +const SIZE_RESTORED=0;
2195 +const SIZE_MINIMIZED=1;
2196 +const SIZE_MAXIMIZED=2;
2197 +const SIZE_MAXSHOW=3;
2198 +const SIZE_MAXHIDE=4;
2199 +
2200 +const SIZENORMAL=0;
2201 +const SIZEICONIC=1;
2202 +const SIZEFULLSCREEN=2;
2203 +const SIZEZOOMSHOW=3;
2204 +const SIZEZOOMHIDE=4;
2205 +
2206 +const WVR_ALIGNTOP=16;
2207 +const WVR_ALIGNLEFT=32;
2208 +const WVR_ALIGNBOTTOM=64;
2209 +const WVR_ALIGNRIGHT=128;
2210 +const WVR_HREDRAW=256;
2211 +const WVR_VREDRAW=512;
2212 +const WVR_REDRAW=(WVR_HREDRAW|WVR_VREDRAW);
2213 +const WVR_VALIDRECTS=1024;
2214 +
2215 +const PRF_CHECKVISIBLE=1;
2216 +const PRF_NONCLIENT=2;
2217 +const PRF_CLIENT=4;
2218 +const PRF_ERASEBKGND=8;
2219 +const PRF_CHILDREN=16;
2220 +const PRF_OWNED=32;
2221 +
2222 +const IDANI_OPEN=1;
2223 +const IDANI_CLOSE=2;
2224 +const IDANI_CAPTION=3;
2225 +
2226 +const WPF_RESTORETOMAXIMIZED=2;
2227 +const WPF_SETMINPOSITION=1;
2228 +
2229 +const ODT_MENU=1;
2230 +const ODT_LISTBOX=2;
2231 +const ODT_COMBOBOX=3;
2232 +const ODT_BUTTON=4;
2233 +const ODT_STATIC=5;
2234 +const ODA_DRAWENTIRE=1;
2235 +const ODA_SELECT=2;
2236 +const ODA_FOCUS=4;
2237 +const ODS_SELECTED=1;
2238 +const ODS_GRAYED=2;
2239 +const ODS_DISABLED=4;
2240 +const ODS_CHECKED=8;
2241 +const ODS_FOCUS=16;
2242 +const ODS_DEFAULT=32;
2243 +const ODS_COMBOBOXEDIT=4096;
2244 +
2245 +const IDHOT_SNAPWINDOW=-1;
2246 +const IDHOT_SNAPDESKTOP=-2;
2247 +
2248 +const DBWF_LPARAMPOINTER=0x8000;
2249 +const DLGWINDOWEXTRA=30;
2250 +const MNC_IGNORE=0;
2251 +const MNC_CLOSE=1;
2252 +const MNC_EXECUTE=2;
2253 +const MNC_SELECT=3;
2254 +const DOF_EXECUTABLE=0x8001;
2255 +const DOF_DOCUMENT=0x8002;
2256 +const DOF_DIRECTORY=0x8003;
2257 +const DOF_MULTIPLE=0x8004;
2258 +const DOF_PROGMAN=1;
2259 +const DOF_SHELLDATA=2;
2260 +const DO_DROPFILE=0x454C4946;
2261 +const DO_PRINTFILE=0x544E5250;
2262 +
2263 +const SW_SCROLLCHILDREN=1;
2264 +const SW_INVALIDATE=2;
2265 +const SW_ERASE=4;
2266 +
2267 +const SC_SIZE=0xF000;
2268 +const SC_MOVE=0xF010;
2269 +const SC_MINIMIZE=0xF020;
2270 +const SC_ICON=0xf020;
2271 +const SC_MAXIMIZE=0xF030;
2272 +const SC_ZOOM=0xF030;
2273 +const SC_NEXTWINDOW=0xF040;
2274 +const SC_PREVWINDOW=0xF050;
2275 +const SC_CLOSE=0xF060;
2276 +const SC_VSCROLL=0xF070;
2277 +const SC_HSCROLL=0xF080;
2278 +const SC_MOUSEMENU=0xF090;
2279 +const SC_KEYMENU=0xF100;
2280 +const SC_ARRANGE=0xF110;
2281 +const SC_RESTORE=0xF120;
2282 +const SC_TASKLIST=0xF130;
2283 +const SC_SCREENSAVE=0xF140;
2284 +const SC_HOTKEY=0xF150;
2285 +const SC_DEFAULT=0xF160;
2286 +const SC_MONITORPOWER=0xF170;
2287 +const SC_CONTEXTHELP=0xF180;
2288 +const SC_SEPARATOR=0xF00F;
2289 +
2290 +const EC_LEFTMARGIN=1;
2291 +const EC_RIGHTMARGIN=2;
2292 +const EC_USEFONTINFO=0xffff;
2293 +
2294 +const DC_HASDEFID=0x534B;
2295 +
2296 +const DLGC_WANTARROWS=1;
2297 +const DLGC_WANTTAB=2;
2298 +const DLGC_WANTALLKEYS=4;
2299 +const DLGC_WANTMESSAGE=4;
2300 +const DLGC_HASSETSEL=8;
2301 +const DLGC_DEFPUSHBUTTON=16;
2302 +const DLGC_UNDEFPUSHBUTTON=32;
2303 +const DLGC_RADIOBUTTON=64;
2304 +const DLGC_WANTCHARS=128;
2305 +const DLGC_STATIC=256;
2306 +const DLGC_BUTTON=0x2000;
2307 +
2308 +const WA_INACTIVE=0;
2309 +const WA_ACTIVE=1;
2310 +const WA_CLICKACTIVE=2;
2311 +
2312 +const ICON_SMALL=0;
2313 +const ICON_BIG=1;
2314 +static if (_WIN32_WINNT >= 0x501) {
2315 +const ICON_SMALL2=2;
2316 +}
2317 +
2318 +const HBITMAP
2319 + HBMMENU_CALLBACK = cast(HBITMAP)-1,
2320 + HBMMENU_SYSTEM = cast(HBITMAP)1,
2321 + HBMMENU_MBAR_RESTORE = cast(HBITMAP)2,
2322 + HBMMENU_MBAR_MINIMIZE = cast(HBITMAP)3,
2323 + HBMMENU_MBAR_CLOSE = cast(HBITMAP)5,
2324 + HBMMENU_MBAR_CLOSE_D = cast(HBITMAP)6,
2325 + HBMMENU_MBAR_MINIMIZE_D = cast(HBITMAP)7,
2326 + HBMMENU_POPUP_CLOSE = cast(HBITMAP)8,
2327 + HBMMENU_POPUP_RESTORE = cast(HBITMAP)9,
2328 + HBMMENU_POPUP_MAXIMIZE = cast(HBITMAP)10,
2329 + HBMMENU_POPUP_MINIMIZE = cast(HBITMAP)11;
2330 +
2331 +const MOD_ALT=1;
2332 +const MOD_CONTROL=2;
2333 +const MOD_SHIFT=4;
2334 +const MOD_WIN=8;
2335 +const MOD_IGNORE_ALL_MODIFIER=1024;
2336 +const MOD_ON_KEYUP=2048;
2337 +const MOD_RIGHT=16384;
2338 +const MOD_LEFT=32768;
2339 +
2340 +const LLKHF_EXTENDED=(KF_EXTENDED >> 8);
2341 +const LLKHF_INJECTED=0x00000010;
2342 +const LLKHF_ALTDOWN=(KF_ALTDOWN >> 8);
2343 +const LLKHF_UP=(KF_UP >> 8);
2344 +
2345 +static if (WINVER >= 0x500) {
2346 +const FLASHW_STOP=0;
2347 +const FLASHW_CAPTION=1;
2348 +const FLASHW_TRAY=2;
2349 +const FLASHW_ALL=(FLASHW_CAPTION|FLASHW_TRAY);
2350 +const FLASHW_TIMER=4;
2351 +const FLASHW_TIMERNOFG=12;
2352 +}
2353 +
2354 +const CURSOR_SHOWING=0x00000001;
2355 +const WS_ACTIVECAPTION=0x00000001;
2356 +static if (_WIN32_WINNT >= 0x403) {
2357 +const INPUT_MOUSE=0x00000000;
2358 +const INPUT_KEYBOARD=0x00000001;
2359 +const INPUT_HARDWARE=0x00000002;
2360 +}
2361 +static if (WINVER >= 0x400) {
2362 +const ENDSESSION_LOGOFF = 0x80000000;
2363 +}
2364 +
2365 +static if (WINVER >= 0x500) {
2366 +const CHILDID_SELF = 0;
2367 +const OBJID_WINDOW = 0x00000000;
2368 +const OBJID_SYSMENU = 0xFFFFFFFF;
2369 +const OBJID_TITLEBAR = 0xFFFFFFFE;
2370 +const OBJID_MENU = 0xFFFFFFFD;
2371 +const OBJID_CLIENT = 0xFFFFFFFC;
2372 +const OBJID_VSCROLL = 0xFFFFFFFB;
2373 +const OBJID_HSCROLL = 0xFFFFFFFA;
2374 +const OBJID_SIZEGRIP = 0xFFFFFFF9;
2375 +const OBJID_CARET = 0xFFFFFFF8;
2376 +const OBJID_CURSOR = 0xFFFFFFF7;
2377 +const OBJID_ALERT = 0xFFFFFFF6;
2378 +const OBJID_SOUND = 0xFFFFFFF5;
2379 +
2380 +const GUI_CARETBLINKING = 0x00000001;
2381 +const GUI_INMOVESIZE = 0x00000002;
2382 +const GUI_INMENUMODE = 0x00000004;
2383 +const GUI_SYSTEMMENUMODE = 0x00000008;
2384 +const GUI_POPUPMENUMODE = 0x00000010;
2385 +
2386 +static if (_WIN32_WINNT >= 0x501) {
2387 +const GUI_16BITTASK = 0x00000020;
2388 +}
2389 +const WINEVENT_OUTOFCONTEXT=0x0000;
2390 +const WINEVENT_SKIPOWNTHREAD=0x0001;
2391 +const WINEVENT_SKIPOWNPROCESS=0x0002;
2392 +const WINEVENT_INCONTEXT=0x0004;
2393 +const AW_HOR_POSITIVE=0x00000001;
2394 +const AW_HOR_NEGATIVE=0x00000002;
2395 +const AW_VER_POSITIVE=0x00000004;
2396 +const AW_VER_NEGATIVE=0x00000008;
2397 +const AW_CENTER=0x00000010;
2398 +const AW_HIDE=0x00010000;
2399 +const AW_ACTIVATE=0x00020000;
2400 +const AW_SLIDE=0x00040000;
2401 +const AW_BLEND=0x00080000;
2402 +const DEVICE_NOTIFY_WINDOW_HANDLE=0x00000000;
2403 +const DEVICE_NOTIFY_SERVICE_HANDLE=0x00000001;
2404 +
2405 +static if (_WIN32_WINNT >= 0x501) {
2406 +const DEVICE_NOTIFY_ALL_INTERFACE_CLASSES=0x00000004;
2407 +}
2408 +
2409 +const EVENT_MIN = 0x00000001;
2410 +const EVENT_SYSTEM_SOUND = 0x00000001;
2411 +const EVENT_SYSTEM_ALERT = 0x00000002;
2412 +const EVENT_SYSTEM_FOREGROUND = 0x00000003;
2413 +const EVENT_SYSTEM_MENUSTART = 0x00000004;
2414 +const EVENT_SYSTEM_MENUEND = 0x00000005;
2415 +const EVENT_SYSTEM_MENUPOPUPSTART = 0x00000006;
2416 +const EVENT_SYSTEM_MENUPOPUPEND = 0x00000007;
2417 +const EVENT_SYSTEM_CAPTURESTART = 0x00000008;
2418 +const EVENT_SYSTEM_CAPTUREEND = 0x00000009;
2419 +const EVENT_SYSTEM_MOVESIZESTART = 0x0000000a;
2420 +const EVENT_SYSTEM_MOVESIZEEND = 0x0000000b;
2421 +const EVENT_SYSTEM_CONTEXTHELPSTART = 0x0000000c;
2422 +const EVENT_SYSTEM_CONTEXTHELPEND = 0x0000000d;
2423 +const EVENT_SYSTEM_DRAGDROPSTART = 0x0000000e;
2424 +const EVENT_SYSTEM_DRAGDROPEND = 0x0000000f;
2425 +const EVENT_SYSTEM_DIALOGSTART = 0x00000010;
2426 +const EVENT_SYSTEM_DIALOGEND = 0x00000011;
2427 +const EVENT_SYSTEM_SCROLLINGSTART = 0x00000012;
2428 +const EVENT_SYSTEM_SCROLLINGEND = 0x00000013;
2429 +const EVENT_SYSTEM_SWITCHSTART = 0x00000014;
2430 +const EVENT_SYSTEM_SWITCHEND = 0x00000015;
2431 +const EVENT_SYSTEM_MINIMIZESTART = 0x00000016;
2432 +const EVENT_SYSTEM_MINIMIZEEND = 0x00000017;
2433 +
2434 +const EVENT_OBJECT_CREATE = 0x00008000;
2435 +const EVENT_OBJECT_DESTROY = 0x00008001;
2436 +const EVENT_OBJECT_SHOW = 0x00008002;
2437 +const EVENT_OBJECT_HIDE = 0x00008003;
2438 +const EVENT_OBJECT_REORDER = 0x00008004;
2439 +const EVENT_OBJECT_FOCUS = 0x00008005;
2440 +const EVENT_OBJECT_SELECTION = 0x00008006;
2441 +const EVENT_OBJECT_SELECTIONADD = 0x00008007;
2442 +const EVENT_OBJECT_SELECTIONREMOVE = 0x00008008;
2443 +const EVENT_OBJECT_SELECTIONWITHIN = 0x00008009;
2444 +const EVENT_OBJECT_STATECHANGE = 0x0000800a;
2445 +const EVENT_OBJECT_LOCATIONCHANGE = 0x0000800b;
2446 +const EVENT_OBJECT_NAMECHANGE = 0x0000800c;
2447 +const EVENT_OBJECT_DESCRIPTIONCHANGE = 0x0000800d;
2448 +const EVENT_OBJECT_VALUECHANGE = 0x0000800e;
2449 +const EVENT_OBJECT_PARENTCHANGE = 0x0000800f;
2450 +const EVENT_OBJECT_HELPCHANGE = 0x00008010;
2451 +const EVENT_OBJECT_DEFACTIONCHANGE = 0x00008011;
2452 +const EVENT_OBJECT_ACCELERATORCHANGE = 0x00008012;
2453 +
2454 +static if (_WIN32_WINNT >= 0x501) {
2455 +const EVENT_CONSOLE_CARET = 0x00004001;
2456 +const EVENT_CONSOLE_UPDATE_REGION = 0x00004002;
2457 +const EVENT_CONSOLE_UPDATE_SIMPLE = 0x00004003;
2458 +const EVENT_CONSOLE_UPDATE_SCROLL = 0x00004004;
2459 +const EVENT_CONSOLE_LAYOUT = 0x00004005;
2460 +const EVENT_CONSOLE_START_APPLICATION = 0x00004006;
2461 +const EVENT_CONSOLE_END_APPLICATION = 0x00004007;
2462 +
2463 +const CONSOLE_CARET_SELECTION = 0x00000001;
2464 +const CONSOLE_CARET_VISIBLE = 0x00000002;
2465 +
2466 +const CONSOLE_APPLICATION_16BIT = 0x00000001;
2467 +
2468 +}
2469 +const EVENT_MAX=0x7fffffff;
2470 +
2471 +}//(WINVER >= 0x500)
2472 +
2473 +static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) {
2474 +const DWORD ASFW_ANY = -1;
2475 +const LSFW_LOCK = 1;
2476 +const LSFW_UNLOCK = 2;
2477 +}
2478 +
2479 +static if (_WIN32_WINNT >= 0x500) {
2480 +const LWA_COLORKEY=0x01;
2481 +const LWA_ALPHA=0x02;
2482 +const ULW_COLORKEY=0x01;
2483 +const ULW_ALPHA=0x02;
2484 +const ULW_OPAQUE=0x04;
2485 +}
2486 +
2487 +const GA_PARENT = 1;
2488 +const GA_ROOT = 2;
2489 +const GA_ROOTOWNER = 3;
2490 +
2491 +static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
2492 +
2493 +const MONITOR_DEFAULTTONULL = 0;
2494 +const MONITOR_DEFAULTTOPRIMARY = 1;
2495 +const MONITOR_DEFAULTTONEAREST = 2;
2496 +const MONITORINFOF_PRIMARY = 1;
2497 +
2498 +const EDS_RAWMODE = 0x00000002;
2499 +
2500 +const ISMEX_NOSEND = 0x00000000;
2501 +const ISMEX_SEND = 0x00000001;
2502 +const ISMEX_NOTIFY = 0x00000002;
2503 +const ISMEX_CALLBACK = 0x00000004;
2504 +const ISMEX_REPLIED = 0x00000008;
2505 +}
2506 +
2507 +static if (_WIN32_WINNT >= 0x500) {
2508 +const GR_GDIOBJECTS = 0;
2509 +const GR_USEROBJECTS = 1;
2510 +}
2511 +
2512 +static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) {
2513 +const GMMP_USE_DISPLAY_POINTS = 1;
2514 +const GMMP_USE_HIGH_RESOLUTION_POINTS = 2;
2515 +}
2516 +
2517 +static if (_WIN32_WINNT >= 0x501) {
2518 +const PW_CLIENTONLY = 0x00000001;
2519 +const RIM_INPUT = 0x00000000;
2520 +const RIM_INPUTSINK = 0x00000001;
2521 +const RIM_TYPEMOUSE = 0x00000000;
2522 +const RIM_TYPEKEYBOARD = 0x00000001;
2523 +const RIM_TYPEHID = 0x00000002;
2524 +const MOUSE_MOVE_RELATIVE = 0x00000000;
2525 +const MOUSE_MOVE_ABSOLUTE = 0x00000001;
2526 +const MOUSE_VIRTUAL_DESKTOP = 0x00000002;
2527 +const MOUSE_ATTRIBUTES_CHANGED = 0x00000004;
2528 +const RI_MOUSE_LEFT_BUTTON_DOWN = 0x0001;
2529 +const RI_MOUSE_LEFT_BUTTON_UP = 0x0002;
2530 +const RI_MOUSE_RIGHT_BUTTON_DOWN = 0x0004;
2531 +const RI_MOUSE_RIGHT_BUTTON_UP = 0x0008;
2532 +const RI_MOUSE_MIDDLE_BUTTON_DOWN = 0x0010;
2533 +const RI_MOUSE_MIDDLE_BUTTON_UP = 0x0020;
2534 +const RI_MOUSE_BUTTON_1_DOWN = RI_MOUSE_LEFT_BUTTON_DOWN;
2535 +const RI_MOUSE_BUTTON_1_UP = RI_MOUSE_LEFT_BUTTON_UP;
2536 +const RI_MOUSE_BUTTON_2_DOWN = RI_MOUSE_RIGHT_BUTTON_DOWN;
2537 +const RI_MOUSE_BUTTON_2_UP = RI_MOUSE_RIGHT_BUTTON_UP;
2538 +const RI_MOUSE_BUTTON_3_DOWN = RI_MOUSE_MIDDLE_BUTTON_DOWN;
2539 +const RI_MOUSE_BUTTON_3_UP = RI_MOUSE_MIDDLE_BUTTON_UP;
2540 +const RI_MOUSE_BUTTON_4_DOWN = 0x0040;
2541 +const RI_MOUSE_BUTTON_4_UP = 0x0080;
2542 +const RI_MOUSE_BUTTON_5_DOWN = 0x0100;
2543 +const RI_MOUSE_BUTTON_5_UP = 0x0200;
2544 +const RI_MOUSE_WHEEL = 0x0400;
2545 +const KEYBOARD_OVERRUN_MAKE_CODE = 0x00ff;
2546 +const RI_KEY_MAKE = 0x0000;
2547 +const RI_KEY_BREAK = 0x0001;
2548 +const RI_KEY_E0 = 0x0002;
2549 +const RI_KEY_E1 = 0x0004;
2550 +const RI_KEY_TERMSRV_SET_LED = 0x0008;
2551 +const RI_KEY_TERMSRV_SHADOW = 0x0010;
2552 +
2553 +const RID_INPUT = 0x10000003;
2554 +const RID_HEADER = 0x10000005;
2555 +
2556 +const RIDI_PREPARSEDDATA = 0x20000005;
2557 +const RIDI_DEVICENAME = 0x20000007;
2558 +const RIDI_DEVICEINFO = 0x2000000b;
2559 +
2560 +const RIDEV_REMOVE = 0x00000001;
2561 +const RIDEV_EXCLUDE = 0x00000010;
2562 +const RIDEV_PAGEONLY = 0x00000020;
2563 +const RIDEV_NOLEGACY = 0x00000030;
2564 +const RIDEV_INPUTSINK = 0x00000100;
2565 +const RIDEV_CAPTUREMOUSE = 0x00000200;
2566 +const RIDEV_NOHOTKEYS = 0x00000200;
2567 +const RIDEV_APPKEYS = 0x00000400;
2568 +}
2569 +
2570 +// Callbacks
2571 +// ---------
2572 +extern (Windows) {
2573 + alias BOOL function (HWND, UINT, WPARAM, LPARAM) DLGPROC;
2574 + alias void function (HWND, UINT, UINT, DWORD) TIMERPROC;
2575 + alias BOOL function (HDC, LPARAM, int) GRAYSTRINGPROC;
2576 + alias LRESULT function (int, WPARAM, LPARAM) HOOKPROC;
2577 + alias BOOL function (HWND, LPCSTR, HANDLE) PROPENUMPROCA;
2578 + alias BOOL function (HWND, LPCWSTR, HANDLE) PROPENUMPROCW;
2579 + alias BOOL function (HWND, LPSTR, HANDLE, DWORD) PROPENUMPROCEXA;
2580 + alias BOOL function (HWND, LPWSTR, HANDLE, DWORD) PROPENUMPROCEXW;
2581 + alias int function (LPSTR, int, int, int) EDITWORDBREAKPROCA;
2582 + alias int function (LPWSTR, int, int, int) EDITWORDBREAKPROCW;
2583 + alias LRESULT function (HWND, UINT, WPARAM, LPARAM) WNDPROC;
2584 + alias BOOL function (HDC, LPARAM, WPARAM, int, int) DRAWSTATEPROC;
2585 + alias BOOL function (HWND, LPARAM) WNDENUMPROC;
2586 + alias BOOL function (HWND, LPARAM) ENUMWINDOWSPROC;
2587 + alias void function (LPHELPINFO) MSGBOXCALLBACK;
2588 +
2589 + static if (WINVER >= 0x410) {
2590 + alias BOOL function (HMONITOR, HDC, LPRECT, LPARAM) MONITORENUMPROC;
2591 + }
2592 + alias BOOL function (LPSTR, LPARAM) NAMEENUMPROCA;
2593 + alias BOOL function (LPWSTR, LPARAM) NAMEENUMPROCW;
2594 + alias void function (HWND, UINT, DWORD, LRESULT) SENDASYNCPROC;
2595 +
2596 + alias NAMEENUMPROCA DESKTOPENUMPROCA;
2597 + alias NAMEENUMPROCW DESKTOPENUMPROCW;
2598 + alias NAMEENUMPROCA WINSTAENUMPROCA;
2599 + alias NAMEENUMPROCW WINSTAENUMPROCW;
2600 +}
2601 +
2602 +alias HANDLE HHOOK;
41 2603 alias HANDLE HDWP;
42 -alias VOID MENUTEMPLATEA;
43 -alias VOID MENUTEMPLATEW;
44 -// #ifdef UNICODE
45 -alias MENUTEMPLATEW MENUTEMPLATE;
46 -// #else
47 -// ...
48 -// #endif // UNICODE
49 -alias PVOID LPMENUTEMPLATEA;
50 -alias PVOID LPMENUTEMPLATEW;
51 -// #ifdef UNICODE
52 -alias LPMENUTEMPLATEW LPMENUTEMPLATE;
53 -// #else
54 -// ...
55 -// #endif // UNICODE
56 -
57 -extern(Windows) alias LRESULT function(HWND, UINT, WPARAM, LPARAM) WNDPROC;
58 -
59 -// #ifdef STRICT
60 -
61 -extern(Windows) alias INT_PTR function(HWND, UINT, WPARAM, LPARAM) DLGPROC;
62 -extern(Windows) alias VOID function(HWND, UINT, UINT_PTR, DWORD) TIMERPROC;
63 -extern(Windows) alias BOOL function(HDC, LPARAM, int) GRAYSTRINGPROC;
64 -extern(Windows) alias BOOL function(HWND, LPARAM) WNDENUMPROC;
65 -extern(Windows) alias LRESULT function(int code, WPARAM wParam, LPARAM lParam) HOOKPROC;
66 -extern(Windows) alias VOID function(HWND, UINT, ULONG_PTR, LRESULT) SENDASYNCPROC;
67 -
68 -extern(Windows) alias BOOL function(HWND, LPCSTR, HANDLE) PROPENUMPROCA;
69 -extern(Windows) alias BOOL function(HWND, LPCWSTR, HANDLE) PROPENUMPROCW;
70 -
71 -extern(Windows) alias BOOL function(HWND, LPSTR, HANDLE, ULONG_PTR) PROPENUMPROCEXA;
72 -extern(Windows) alias BOOL function(HWND, LPWSTR, HANDLE, ULONG_PTR) PROPENUMPROCEXW;
73 -
74 -extern(Windows) alias int function(LPSTR lpch, int ichCurrent, int cch, int code) EDITWORDBREAKPROCA;
75 -extern(Windows) alias int function(LPWSTR lpch, int ichCurrent, int cch, int code) EDITWORDBREAKPROCW;
76 -
77 -// #if(WINVER >= 0x0400)
78 -extern(Windows) alias BOOL function(HDC hdc, LPARAM lData, WPARAM wData, int cx, int cy) DRAWSTATEPROC;
79 -// #endif /* WINVER >= 0x0400 */
80 -// #else /* !STRICT */
81 -
82 -// ...
83 -
84 -// ...
85 -
86 -// ...
87 -
88 -// ...
89 -
90 -// #if(WINVER >= 0x0400)
91 -// ...
92 -// #endif /* WINVER >= 0x0400 */
93 -// #endif /* !STRICT */
94 -
95 -// #ifdef UNICODE
96 -alias PROPENUMPROCW PROPENUMPROC;
97 -alias PROPENUMPROCEXW PROPENUMPROCEX;
98 -alias EDITWORDBREAKPROCW EDITWORDBREAKPROC;
99 -// #else /* !UNICODE */
100 -// ...
101 -// #endif /* UNICODE */
102 -
103 -// #ifdef STRICT
104 -
105 -extern(Windows) alias BOOL function(LPSTR, LPARAM) NAMEENUMPROCA;
106 -extern(Windows) alias BOOL function(LPWSTR, LPARAM) NAMEENUMPROCW;
107 -
108 -alias NAMEENUMPROCA WINSTAENUMPROCA;
109 -alias NAMEENUMPROCA DESKTOPENUMPROCA;
110 -alias NAMEENUMPROCW WINSTAENUMPROCW;
111 -alias NAMEENUMPROCW DESKTOPENUMPROCW;
112 -
113 -// #else /* !STRICT */
114 -
115 -// ...
116 -
117 -// #endif /* !STRICT */
118 -
119 -// #ifdef UNICODE
120 -alias WINSTAENUMPROCW WINSTAENUMPROC;
121 -alias DESKTOPENUMPROCW DESKTOPENUMPROC;
122 -
123 -// #else /* !UNICODE */
124 -// ...
125 -
126 -// #endif /* UNICODE */
127 -
128 -bit IS_INTRESOURCE(LPTSTR _r){ return ((cast(ULONG_PTR)(_r) >> 16) == 0); }
129 -LPSTR MAKEINTRESOURCEA(WORD i){ return cast(LPSTR)(cast(ULONG_PTR)(cast(WORD)(i))); }
130 -LPWSTR MAKEINTRESOURCEW(WORD i){ return cast(LPWSTR)(cast(ULONG_PTR)(cast(WORD)(i))); }
131 -// #ifdef UNICODE
132 -alias MAKEINTRESOURCEW MAKEINTRESOURCE;
133 -// #else
134 -// #...
135 -// #endif // !UNICODE
136 -
137 -// #ifndef NORESOURCE
138 -
139 -const LPTSTR RT_CURSOR = cast(LPTSTR)(1);
140 -const LPTSTR RT_BITMAP = cast(LPTSTR)(2);
141 -const LPTSTR RT_ICON = cast(LPTSTR)(3);
142 -const LPTSTR RT_MENU = cast(LPTSTR)(4);
143 -const LPTSTR RT_DIALOG = cast(LPTSTR)(5);
144 -const LPTSTR RT_STRING = cast(LPTSTR)(6);
145 -const LPTSTR RT_FONTDIR = cast(LPTSTR)(7);
146 -const LPTSTR RT_FONT = cast(LPTSTR)(8);
147 -const LPTSTR RT_ACCELERATOR = cast(LPTSTR)(9);
148 -const LPTSTR RT_RCDATA = cast(LPTSTR)(10);
149 -const LPTSTR RT_MESSAGETABLE = cast(LPTSTR)(11);
150 -
151 -enum : uint { DIFFERENCE = 11 }
152 -const LPTSTR RT_GROUP_CURSOR = cast(LPTSTR)(cast(ULONG_PTR)RT_CURSOR + DIFFERENCE);
153 -const LPTSTR RT_GROUP_ICON = cast(LPTSTR)(cast(ULONG_PTR)RT_ICON + DIFFERENCE);
154 -const LPTSTR RT_VERSION = cast(LPTSTR)(16);
155 -const LPTSTR RT_DLGINCLUDE = cast(LPTSTR)(17);
156 -// #if(WINVER >= 0x0400)
157 -const LPTSTR RT_PLUGPLAY = cast(LPTSTR)(19);
158 -const LPTSTR RT_VXD = cast(LPTSTR)(20);
159 -const LPTSTR RT_ANICURSOR = cast(LPTSTR)(21);
160 -const LPTSTR RT_ANIICON = cast(LPTSTR)(22);
161 -// #endif /* WINVER >= 0x0400 */
162 -const LPTSTR RT_HTML = cast(LPTSTR)(23);
163 -// #ifdef RC_INVOKED
164 -// #...
165 -// #...
166 -// #...
167 -// #...
168 -// #...
169 -// #...
170 -// #else /* RC_INVOKED */
171 -const LPTSTR RT_MANIFEST = cast(LPTSTR)(24);
172 -const LPTSTR CREATEPROCESS_MANIFEST_RESOURCE_ID = cast(LPTSTR)( 1);
173 -const LPTSTR ISOLATIONAWARE_MANIFEST_RESOURCE_ID = cast(LPTSTR)(2);
174 -const LPTSTR ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID = cast(LPTSTR)(3);
175 -const LPTSTR MINIMUM_RESERVED_MANIFEST_RESOURCE_ID = cast(LPTSTR)( 1 );
176 -const LPTSTR MAXIMUM_RESERVED_MANIFEST_RESOURCE_ID = cast(LPTSTR)(16 );
177 -// #endif /* RC_INVOKED */
178 -
179 -// #endif /* !NORESOURCE */
180 -
181 -extern(Windows) export int wvsprintfA(
182 - LPSTR,
183 - LPCSTR,
184 - va_list arglist);
185 -extern(Windows) export int wvsprintfW(
186 - LPWSTR,
187 - LPCWSTR,
188 - va_list arglist);
189 -// #ifdef UNICODE
190 -alias wvsprintfW wvsprintf;
191 -// #else
192 -// #...
193 -// #endif // !UNICODE
194 -
195 -extern(C) export int wsprintfA(
196 - LPSTR,
197 - LPCSTR,
198 - ...);
199 -extern(C) export int wsprintfW(
200 - LPWSTR,
201 - LPCWSTR,
202 - ...);
203 -// #ifdef UNICODE
204 -alias wsprintfW wsprintf;
205 -// #else
206 -// #...
207 -// #endif // !UNICODE
208 -
209 -const LPWSTR SETWALLPAPER_DEFAULT = cast(LPWSTR)-1;
210 -
211 -// #ifndef NOSCROLL
212 -
213 -enum : uint { SB_HORZ = 0 }
214 -enum : uint { SB_VERT = 1 }
215 -enum : uint { SB_CTL = 2 }
216 -enum : uint { SB_BOTH = 3 }
217 -
218 -enum : uint { SB_LINEUP = 0 }
219 -enum : uint { SB_LINELEFT = 0 }
220 -enum : uint { SB_LINEDOWN = 1 }
221 -enum : uint { SB_LINERIGHT = 1 }
222 -enum : uint { SB_PAGEUP = 2 }
223 -enum : uint { SB_PAGELEFT = 2 }
224 -enum : uint { SB_PAGEDOWN = 3 }
225 -enum : uint { SB_PAGERIGHT = 3 }
226 -enum : uint { SB_THUMBPOSITION = 4 }
227 -enum : uint { SB_THUMBTRACK = 5 }
228 -enum : uint { SB_TOP = 6 }
229 -enum : uint { SB_LEFT = 6 }
230 -enum : uint { SB_BOTTOM = 7 }
231 -enum : uint { SB_RIGHT = 7 }
232 -enum : uint { SB_ENDSCROLL = 8 }
233 -
234 -// #endif /* !NOSCROLL */
235 -
236 -// #ifndef NOSHOWWINDOW
237 -
238 -enum : uint { SW_HIDE = 0 }
239 -enum : uint { SW_SHOWNORMAL = 1 }
240 -enum : uint { SW_NORMAL = 1 }
241 -enum : uint { SW_SHOWMINIMIZED = 2 }
242 -enum : uint { SW_SHOWMAXIMIZED = 3 }
243 -enum : uint { SW_MAXIMIZE = 3 }
244 -enum : uint { SW_SHOWNOACTIVATE = 4 }
245 -enum : uint { SW_SHOW = 5 }
246 -enum : uint { SW_MINIMIZE = 6 }
247 -enum : uint { SW_SHOWMINNOACTIVE = 7 }
248 -enum : uint { SW_SHOWNA = 8 }
249 -enum : uint { SW_RESTORE = 9 }
250 -enum : uint { SW_SHOWDEFAULT = 10 }
251 -enum : uint { SW_FORCEMINIMIZE = 11 }
252 -enum : uint { SW_MAX = 11 }
253 -
254 -enum : uint { HIDE_WINDOW = 0 }
255 -enum : uint { SHOW_OPENWINDOW = 1 }
256 -enum : uint { SHOW_ICONWINDOW = 2 }
257 -enum : uint { SHOW_FULLSCREEN = 3 }
258 -enum : uint { SHOW_OPENNOACTIVATE = 4 }
259 -
260 -enum : uint { SW_PARENTCLOSING = 1 }
261 -enum : uint { SW_OTHERZOOM = 2 }
262 -enum : uint { SW_PARENTOPENING = 3 }
263 -enum : uint { SW_OTHERUNZOOM = 4 }
264 -
265 -// #endif /* !NOSHOWWINDOW */
266 -
267 -// #if(WINVER >= 0x0500)
268 -
269 -enum : uint { AW_HOR_POSITIVE = 0x00000001 }
270 -enum : uint { AW_HOR_NEGATIVE = 0x00000002 }
271 -enum : uint { AW_VER_POSITIVE = 0x00000004 }
272 -enum : uint { AW_VER_NEGATIVE = 0x00000008 }
273 -enum : uint { AW_CENTER = 0x00000010 }
274 -enum : uint { AW_HIDE = 0x00010000 }
275 -enum : uint { AW_ACTIVATE = 0x00020000 }
276 -enum : uint { AW_SLIDE = 0x00040000 }
277 -enum : uint { AW_BLEND = 0x00080000 }
278 -
279 -// #endif /* WINVER >= 0x0500 */
280 -
281 -enum : uint { KF_EXTENDED = 0x0100 }
282 -enum : uint { KF_DLGMODE = 0x0800 }
283 -enum : uint { KF_MENUMODE = 0x1000 }
284 -enum : uint { KF_ALTDOWN = 0x2000 }
285 -enum : uint { KF_REPEAT = 0x4000 }
286 -enum : uint { KF_UP = 0x8000 }
287 -
288 -// #ifndef NOVIRTUALKEYCODES
289 -
290 -enum : uint { VK_LBUTTON = 0x01 }
291 -enum : uint { VK_RBUTTON = 0x02 }
292 -enum : uint { VK_CANCEL = 0x03 }
293 -enum : uint { VK_MBUTTON = 0x04 }
294 -
295 -// #if(_WIN32_WINNT >= 0x0500)
296 -enum : uint { VK_XBUTTON1 = 0x05 }
297 -enum : uint { VK_XBUTTON2 = 0x06 }
298 -// #endif /* _WIN32_WINNT >= 0x0500 */
299 -
300 -enum : uint { VK_BACK = 0x08 }
301 -enum : uint { VK_TAB = 0x09 }
302 -
303 -enum : uint { VK_CLEAR = 0x0C }
304 -enum : uint { VK_RETURN = 0x0D }
305 -
306 -enum : uint { VK_SHIFT = 0x10 }
307 -enum : uint { VK_CONTROL = 0x11 }
308 -enum : uint { VK_MENU = 0x12 }
309 -enum : uint { VK_PAUSE = 0x13 }
310 -enum : uint { VK_CAPITAL = 0x14 }
311 -
312 -enum : uint { VK_KANA = 0x15 }
313 -enum : uint { VK_HANGEUL = 0x15 }
314 -enum : uint { VK_HANGUL = 0x15 }
315 -enum : uint { VK_JUNJA = 0x17 }
316 -enum : uint { VK_FINAL = 0x18 }
317 -enum : uint { VK_HANJA = 0x19 }
318 -enum : uint { VK_KANJI = 0x19 }
319 -
320 -enum : uint { VK_ESCAPE = 0x1B }
321 -
322 -enum : uint { VK_CONVERT = 0x1C }
323 -enum : uint { VK_NONCONVERT = 0x1D }
324 -enum : uint { VK_ACCEPT = 0x1E }
325 -enum : uint { VK_MODECHANGE = 0x1F }
326 -
327 -enum : uint { VK_SPACE = 0x20 }
328 -enum : uint { VK_PRIOR = 0x21 }
329 -enum : uint { VK_NEXT = 0x22 }
330 -enum : uint { VK_END = 0x23 }
331 -enum : uint { VK_HOME = 0x24 }
332 -enum : uint { VK_LEFT = 0x25 }
333 -enum : uint { VK_UP = 0x26 }
334 -enum : uint { VK_RIGHT = 0x27 }
335 -enum : uint { VK_DOWN = 0x28 }
336 -enum : uint { VK_SELECT = 0x29 }
337 -enum : uint { VK_PRINT = 0x2A }
338 -enum : uint { VK_EXECUTE = 0x2B }
339 -enum : uint { VK_SNAPSHOT = 0x2C }
340 -enum : uint { VK_INSERT = 0x2D }
341 -enum : uint { VK_DELETE = 0x2E }
342 -enum : uint { VK_HELP = 0x2F }
343 -
344 -enum : uint { VK_LWIN = 0x5B }
345 -enum : uint { VK_RWIN = 0x5C }
346 -enum : uint { VK_APPS = 0x5D }
347 -
348 -enum : uint { VK_SLEEP = 0x5F }
349 -
350 -enum : uint { VK_NUMPAD0 = 0x60 }
351 -enum : uint { VK_NUMPAD1 = 0x61 }
352 -enum : uint { VK_NUMPAD2 = 0x62 }
353 -enum : uint { VK_NUMPAD3 = 0x63 }
354 -enum : uint { VK_NUMPAD4 = 0x64 }
355 -enum : uint { VK_NUMPAD5 = 0x65 }
356 -enum : uint { VK_NUMPAD6 = 0x66 }
357 -enum : uint { VK_NUMPAD7 = 0x67 }
358 -enum : uint { VK_NUMPAD8 = 0x68 }
359 -enum : uint { VK_NUMPAD9 = 0x69 }
360 -enum : uint { VK_MULTIPLY = 0x6A }
361 -enum : uint { VK_ADD = 0x6B }
362 -enum : uint { VK_SEPARATOR = 0x6C }
363 -enum : uint { VK_SUBTRACT = 0x6D }
364 -enum : uint { VK_DECIMAL = 0x6E }
365 -enum : uint { VK_DIVIDE = 0x6F }
366 -enum : uint { VK_F1 = 0x70 }
367 -enum : uint { VK_F2 = 0x71 }
368 -enum : uint { VK_F3 = 0x72 }
369 -enum : uint { VK_F4 = 0x73 }
370 -enum : uint { VK_F5 = 0x74 }
371 -enum : uint { VK_F6 = 0x75 }
372 -enum : uint { VK_F7 = 0x76 }
373 -enum : uint { VK_F8 = 0x77 }
374 -enum : uint { VK_F9 = 0x78 }
375 -enum : uint { VK_F10 = 0x79 }
376 -enum : uint { VK_F11 = 0x7A }
377 -enum : uint { VK_F12 = 0x7B }
378 -enum : uint { VK_F13 = 0x7C }
379 -enum : uint { VK_F14 = 0x7D }
380 -enum : uint { VK_F15 = 0x7E }
381 -enum : uint { VK_F16 = 0x7F }
382 -enum : uint { VK_F17 = 0x80 }
383 -enum : uint { VK_F18 = 0x81 }
384 -enum : uint { VK_F19 = 0x82 }
385 -enum : uint { VK_F20 = 0x83 }
386 -enum : uint { VK_F21 = 0x84 }
387 -enum : uint { VK_F22 = 0x85 }
388 -enum : uint { VK_F23 = 0x86 }
389 -enum : uint { VK_F24 = 0x87 }
390 -
391 -enum : uint { VK_NUMLOCK = 0x90 }
392 -enum : uint { VK_SCROLL = 0x91 }
393 -
394 -enum : uint { VK_OEM_NEC_EQUAL = 0x92 }
395 -
396 -enum : uint { VK_OEM_FJ_JISHO = 0x92 }
397 -enum : uint { VK_OEM_FJ_MASSHOU = 0x93 }
398 -enum : uint { VK_OEM_FJ_TOUROKU = 0x94 }
399 -enum : uint { VK_OEM_FJ_LOYA = 0x95 }
400 -enum : uint { VK_OEM_FJ_ROYA = 0x96 }
401 -
402 -enum : uint { VK_LSHIFT = 0xA0 }
403 -enum : uint { VK_RSHIFT = 0xA1 }
404 -enum : uint { VK_LCONTROL = 0xA2 }
405 -enum : uint { VK_RCONTROL = 0xA3 }
406 -enum : uint { VK_LMENU = 0xA4 }
407 -enum : uint { VK_RMENU = 0xA5 }
408 -
409 -// #if(_WIN32_WINNT >= 0x0500)
410 -enum : uint { VK_BROWSER_BACK = 0xA6 }
411 -enum : uint { VK_BROWSER_FORWARD = 0xA7 }
412 -enum : uint { VK_BROWSER_REFRESH = 0xA8 }
413 -enum : uint { VK_BROWSER_STOP = 0xA9 }
414 -enum : uint { VK_BROWSER_SEARCH = 0xAA }
415 -enum : uint { VK_BROWSER_FAVORITES = 0xAB }
416 -enum : uint { VK_BROWSER_HOME = 0xAC }
417 -
418 -enum : uint { VK_VOLUME_MUTE = 0xAD }
419 -enum : uint { VK_VOLUME_DOWN = 0xAE }
420 -enum : uint { VK_VOLUME_UP = 0xAF }
421 -enum : uint { VK_MEDIA_NEXT_TRACK = 0xB0 }
422 -enum : uint { VK_MEDIA_PREV_TRACK = 0xB1 }
423 -enum : uint { VK_MEDIA_STOP = 0xB2 }
424 -enum : uint { VK_MEDIA_PLAY_PAUSE = 0xB3 }
425 -enum : uint { VK_LAUNCH_MAIL = 0xB4 }
426 -enum : uint { VK_LAUNCH_MEDIA_SELECT = 0xB5 }
427 -enum : uint { VK_LAUNCH_APP1 = 0xB6 }
428 -enum : uint { VK_LAUNCH_APP2 = 0xB7 }
429 -
430 -// #endif /* _WIN32_WINNT >= 0x0500 */
431 -
432 -enum : uint { VK_OEM_1 = 0xBA }
433 -enum : uint { VK_OEM_PLUS = 0xBB }
434 -enum : uint { VK_OEM_COMMA = 0xBC }
435 -enum : uint { VK_OEM_MINUS = 0xBD }
436 -enum : uint { VK_OEM_PERIOD = 0xBE }
437 -enum : uint { VK_OEM_2 = 0xBF }
438 -enum : uint { VK_OEM_3 = 0xC0 }
439 -
440 -enum : uint { VK_OEM_4 = 0xDB }
441 -enum : uint { VK_OEM_5 = 0xDC }
442 -enum : uint { VK_OEM_6 = 0xDD }
443 -enum : uint { VK_OEM_7 = 0xDE }
444 -enum : uint { VK_OEM_8 = 0xDF }
445 -
446 -enum : uint { VK_OEM_AX = 0xE1 }
447 -enum : uint { VK_OEM_102 = 0xE2 }
448 -enum : uint { VK_ICO_HELP = 0xE3 }
449 -enum : uint { VK_ICO_00 = 0xE4 }
450 -
451 -// #if(WINVER >= 0x0400)
452 -enum : uint { VK_PROCESSKEY = 0xE5 }
453 -// #endif /* WINVER >= 0x0400 */
454 -
455 -enum : uint { VK_ICO_CLEAR = 0xE6 }
456 -
457 -// #if(_WIN32_WINNT >= 0x0500)
458 -enum : uint { VK_PACKET = 0xE7 }
459 -// #endif /* _WIN32_WINNT >= 0x0500 */
460 -
461 -enum : uint { VK_OEM_RESET = 0xE9 }
462 -enum : uint { VK_OEM_JUMP = 0xEA }
463 -enum : uint { VK_OEM_PA1 = 0xEB }
464 -enum : uint { VK_OEM_PA2 = 0xEC }
465 -enum : uint { VK_OEM_PA3 = 0xED }
466 -enum : uint { VK_OEM_WSCTRL = 0xEE }
467 -enum : uint { VK_OEM_CUSEL = 0xEF }
468 -enum : uint { VK_OEM_ATTN = 0xF0 }
469 -enum : uint { VK_OEM_FINISH = 0xF1 }
470 -enum : uint { VK_OEM_COPY = 0xF2 }
471 -enum : uint { VK_OEM_AUTO = 0xF3 }
472 -enum : uint { VK_OEM_ENLW = 0xF4 }
473 -enum : uint { VK_OEM_BACKTAB = 0xF5 }
474 -
475 -enum : uint { VK_ATTN = 0xF6 }
476 -enum : uint { VK_CRSEL = 0xF7 }
477 -enum : uint { VK_EXSEL = 0xF8 }
478 -enum : uint { VK_EREOF = 0xF9 }
479 -enum : uint { VK_PLAY = 0xFA }
480 -enum : uint { VK_ZOOM = 0xFB }
481 -enum : uint { VK_NONAME = 0xFC }
482 -enum : uint { VK_PA1 = 0xFD }
483 -enum : uint { VK_OEM_CLEAR = 0xFE }
484 -
485 -// #endif /* !NOVIRTUALKEYCODES */
486 -
487 -// #ifndef NOWH
488 -
489 -enum { WH_MIN = -1 }
490 -enum { WH_MSGFILTER = -1 }
491 -enum : uint { WH_JOURNALRECORD = 0 }
492 -enum : uint { WH_JOURNALPLAYBACK = 1 }
493 -enum : uint { WH_KEYBOARD = 2 }
494 -enum : uint { WH_GETMESSAGE = 3 }
495 -enum : uint { WH_CALLWNDPROC = 4 }
496 -enum : uint { WH_CBT = 5 }
497 -enum : uint { WH_SYSMSGFILTER = 6 }
498 -enum : uint { WH_MOUSE = 7 }
499 -// #if defined(_WIN32_WINDOWS)
500 -// #...
501 -// #endif
502 -enum : uint { WH_DEBUG = 9 }
503 -enum : uint { WH_SHELL = 10 }
504 -enum : uint { WH_FOREGROUNDIDLE = 11 }
505 -// #if(WINVER >= 0x0400)
506 -enum : uint { WH_CALLWNDPROCRET = 12 }
507 -// #endif /* WINVER >= 0x0400 */
508 -
509 -// #if (_WIN32_WINNT >= 0x0400)
510 -enum : uint { WH_KEYBOARD_LL = 13 }
511 -enum : uint { WH_MOUSE_LL = 14 }
512 -// #endif // (_WIN32_WINNT >= 0x0400)
513 -
514 -// #if(WINVER >= 0x0400)
515 -// #if (_WIN32_WINNT >= 0x0400)
516 -enum : uint { WH_MAX = 14 }
517 -// #else
518 -// #...
519 -// #endif // (_WIN32_WINNT >= 0x0400)
520 -// #else
521 -// #...
522 -// #endif
523 -
524 -alias WH_MIN WH_MINHOOK;
525 -alias WH_MAX WH_MAXHOOK;
526 -
527 -enum : uint { HC_ACTION = 0 }
528 -enum : uint { HC_GETNEXT = 1 }
529 -enum : uint { HC_SKIP = 2 }
530 -enum : uint { HC_NOREMOVE = 3 }
531 -alias HC_NOREMOVE HC_NOREM;
532 -enum : uint { HC_SYSMODALON = 4 }
533 -enum : uint { HC_SYSMODALOFF = 5 }
534 -
535 -enum : uint { HCBT_MOVESIZE = 0 }
536 -enum : uint { HCBT_MINMAX = 1 }
537 -enum : uint { HCBT_QS = 2 }
538 -enum : uint { HCBT_CREATEWND = 3 }
539 -enum : uint { HCBT_DESTROYWND = 4 }
540 -enum : uint { HCBT_ACTIVATE = 5 }
541 -enum : uint { HCBT_CLICKSKIPPED = 6 }
542 -enum : uint { HCBT_KEYSKIPPED = 7 }
543 -enum : uint { HCBT_SYSCOMMAND = 8 }
544 -enum : uint { HCBT_SETFOCUS = 9 }
545 -
546 -struct tagCBT_CREATEWNDA {
547 - tagCREATESTRUCTA *lpcs;
548 - HWND hwndInsertAfter;
549 -}
550 -alias tagCBT_CREATEWNDA CBT_CREATEWNDA;
551 -alias tagCBT_CREATEWNDA* LPCBT_CREATEWNDA;
552 -
553 -struct tagCBT_CREATEWNDW {
554 - tagCREATESTRUCTW *lpcs;
555 - HWND hwndInsertAfter;
556 -}
557 -alias tagCBT_CREATEWNDW CBT_CREATEWNDW;
558 -alias tagCBT_CREATEWNDW* LPCBT_CREATEWNDW;
559 -
560 -// #ifdef UNICODE
561 -alias CBT_CREATEWNDW CBT_CREATEWND;
562 -alias LPCBT_CREATEWNDW LPCBT_CREATEWND;
563 -// #else
564 -// ...
565 -// #endif // UNICODE
566 -
567 -struct tagCBTACTIVATESTRUCT {
568 - BOOL fMouse;
569 - HWND hWndActive;
570 -}
571 -alias tagCBTACTIVATESTRUCT CBTACTIVATESTRUCT;
572 -alias tagCBTACTIVATESTRUCT* LPCBTACTIVATESTRUCT;
573 -
574 -// #if(_WIN32_WINNT >= 0x0501)
575 -
576 -struct tagWTSSESSION_NOTIFICATION {
577 - DWORD cbSize;
578 - DWORD dwSessionId;
579 -}
580 -alias tagWTSSESSION_NOTIFICATION WTSSESSION_NOTIFICATION;
581 -alias tagWTSSESSION_NOTIFICATION* PWTSSESSION_NOTIFICATION;
582 -
583 -enum : uint { WTS_CONSOLE_CONNECT = 0x1 }
584 -enum : uint { WTS_CONSOLE_DISCONNECT = 0x2 }
585 -enum : uint { WTS_REMOTE_CONNECT = 0x3 }
586 -enum : uint { WTS_REMOTE_DISCONNECT = 0x4 }
587 -enum : uint { WTS_SESSION_LOGON = 0x5 }
588 -enum : uint { WTS_SESSION_LOGOFF = 0x6 }
589 -enum : uint { WTS_SESSION_LOCK = 0x7 }
590 -enum : uint { WTS_SESSION_UNLOCK = 0x8 }
591 -
592 -// #endif /* _WIN32_WINNT >= 0x0501 */
593 -
594 -enum : uint { MSGF_DIALOGBOX = 0 }
595 -enum : uint { MSGF_MESSAGEBOX = 1 }
596 -enum : uint { MSGF_MENU = 2 }
597 -enum : uint { MSGF_SCROLLBAR = 5 }
598 -enum : uint { MSGF_NEXTWINDOW = 6 }
599 -enum : uint { MSGF_MAX = 8 }
600 -enum : uint { MSGF_USER = 4096 }
601 -
602 -enum : uint { HSHELL_WINDOWCREATED = 1 }
603 -enum : uint { HSHELL_WINDOWDESTROYED = 2 }
604 -enum : uint { HSHELL_ACTIVATESHELLWINDOW = 3 }
605 -
606 -// #if(WINVER >= 0x0400)
607 -enum : uint { HSHELL_WINDOWACTIVATED = 4 }
608 -enum : uint { HSHELL_GETMINRECT = 5 }
609 -enum : uint { HSHELL_REDRAW = 6 }
610 -enum : uint { HSHELL_TASKMAN = 7 }
611 -enum : uint { HSHELL_LANGUAGE = 8 }
612 -// #endif /* WINVER >= 0x0400 */
613 -// #if(_WIN32_WINNT >= 0x0500)
614 -enum : uint { HSHELL_ACCESSIBILITYSTATE = 11 }
615 -enum : uint { HSHELL_APPCOMMAND = 12 }
616 -// #endif /* _WIN32_WINNT >= 0x0500 */
617 -
618 -// #if(_WIN32_WINNT >= 0x0501)
619 -enum : uint { HSHELL_WINDOWREPLACED = 13 }
620 -// #endif /* _WIN32_WINNT >= 0x0501 */
621 -
622 -// #if(_WIN32_WINNT >= 0x0500)
623 -
624 -enum : uint { ACCESS_STICKYKEYS = 0x0001 }
625 -enum : uint { ACCESS_FILTERKEYS = 0x0002 }
626 -enum : uint { ACCESS_MOUSEKEYS = 0x0003 }
627 -
628 -enum : uint { APPCOMMAND_BROWSER_BACKWARD = 1 }
629 -enum : uint { APPCOMMAND_BROWSER_FORWARD = 2 }
630 -enum : uint { APPCOMMAND_BROWSER_REFRESH = 3 }
631 -enum : uint { APPCOMMAND_BROWSER_STOP = 4 }
632 -enum : uint { APPCOMMAND_BROWSER_SEARCH = 5 }
633 -enum : uint { APPCOMMAND_BROWSER_FAVORITES = 6 }
634 -enum : uint { APPCOMMAND_BROWSER_HOME = 7 }
635 -enum : uint { APPCOMMAND_VOLUME_MUTE = 8 }
636 -enum : uint { APPCOMMAND_VOLUME_DOWN = 9 }
637 -enum : uint { APPCOMMAND_VOLUME_UP = 10 }
638 -enum : uint { APPCOMMAND_MEDIA_NEXTTRACK = 11 }
639 -enum : uint { APPCOMMAND_MEDIA_PREVIOUSTRACK = 12 }
640 -enum : uint { APPCOMMAND_MEDIA_STOP = 13 }
641 -enum : uint { APPCOMMAND_MEDIA_PLAY_PAUSE = 14 }
642 -enum : uint { APPCOMMAND_LAUNCH_MAIL = 15 }
643 -enum : uint { APPCOMMAND_LAUNCH_MEDIA_SELECT = 16 }
644 -enum : uint { APPCOMMAND_LAUNCH_APP1 = 17 }
645 -enum : uint { APPCOMMAND_LAUNCH_APP2 = 18 }
646 -enum : uint { APPCOMMAND_BASS_DOWN = 19 }
647 -enum : uint { APPCOMMAND_BASS_BOOST = 20 }
648 -enum : uint { APPCOMMAND_BASS_UP = 21 }
649 -enum : uint { APPCOMMAND_TREBLE_DOWN = 22 }
650 -enum : uint { APPCOMMAND_TREBLE_UP = 23 }
651 -// #if(_WIN32_WINNT >= 0x0501)
652 -enum : uint { APPCOMMAND_MICROPHONE_VOLUME_MUTE = 24 }
653 -enum : uint { APPCOMMAND_MICROPHONE_VOLUME_DOWN = 25 }
654 -enum : uint { APPCOMMAND_MICROPHONE_VOLUME_UP = 26 }
655 -enum : uint { APPCOMMAND_HELP = 27 }
656 -enum : uint { APPCOMMAND_FIND = 28 }
657 -enum : uint { APPCOMMAND_NEW = 29 }
658 -enum : uint { APPCOMMAND_OPEN = 30 }
659 -enum : uint { APPCOMMAND_CLOSE = 31 }
660 -enum : uint { APPCOMMAND_SAVE = 32 }
661 -enum : uint { APPCOMMAND_PRINT = 33 }
662 -enum : uint { APPCOMMAND_UNDO = 34 }
663 -enum : uint { APPCOMMAND_REDO = 35 }
664 -enum : uint { APPCOMMAND_COPY = 36 }
665 -enum : uint { APPCOMMAND_CUT = 37 }
666 -enum : uint { APPCOMMAND_PASTE = 38 }
667 -enum : uint { APPCOMMAND_REPLY_TO_MAIL = 39 }
668 -enum : uint { APPCOMMAND_FORWARD_MAIL = 40 }
669 -enum : uint { APPCOMMAND_SEND_MAIL = 41 }
670 -enum : uint { APPCOMMAND_SPELL_CHECK = 42 }
671 -enum : uint { APPCOMMAND_DICTATE_OR_COMMAND_CONTROL_TOGGLE = 43 }
672 -enum : uint { APPCOMMAND_MIC_ON_OFF_TOGGLE = 44 }
673 -enum : uint { APPCOMMAND_CORRECTION_LIST = 45 }
674 -// #endif /* _WIN32_WINNT >= 0x0501 */
675 -
676 -enum : uint { FAPPCOMMAND_MOUSE = 0x8000 }
677 -enum : uint { FAPPCOMMAND_KEY = 0 }
678 -enum : uint { FAPPCOMMAND_OEM = 0x1000 }
679 -enum : uint { FAPPCOMMAND_MASK = 0xF000 }
680 -
681 -// #define GET_APPCOMMAND_LPARAM(lParam) ((short)(HIWORD(lParam) & ~FAPPCOMMAND_MASK))
682 -// #define GET_DEVICE_LPARAM(lParam) ((WORD)(HIWORD(lParam) & FAPPCOMMAND_MASK))
683 -// #define GET_MOUSEORKEY_LPARAM GET_DEVICE_LPARAM
684 -// #define GET_FLAGS_LPARAM(lParam) (LOWORD(lParam))
685 -// #define GET_KEYSTATE_LPARAM(lParam) GET_FLAGS_LPARAM(lParam)
686 -// #endif /* _WIN32_WINNT >= 0x0500 */
687 -
688 -struct tagEVENTMSG {
689 - UINT message;
690 - UINT paramL;
691 - UINT paramH;
692 - DWORD time;
693 - HWND hwnd;
694 -}
695 -alias tagEVENTMSG EVENTMSG;
696 -alias tagEVENTMSG* PEVENTMSGMSG;
697 -alias tagEVENTMSG* NPEVENTMSGMSG;
698 -alias tagEVENTMSG* LPEVENTMSGMSG;
699 -
700 -alias tagEVENTMSG* PEVENTMSG;
701 -alias tagEVENTMSG* NPEVENTMSG;
702 -alias tagEVENTMSG* LPEVENTMSG;
703 -
704 -struct tagCWPSTRUCT {
705 - LPARAM lParam;
706 - WPARAM wParam;
707 - UINT message;
708 - HWND hwnd;
709 -}
710 -alias tagCWPSTRUCT CWPSTRUCT;
711 -alias tagCWPSTRUCT* PCWPSTRUCT;
712 -alias tagCWPSTRUCT* NPCWPSTRUCT;
713 -alias tagCWPSTRUCT* LPCWPSTRUCT;
714 -
715 -// #if(WINVER >= 0x0400)
716 -
717 -struct tagCWPRETSTRUCT {
718 - LRESULT lResult;
719 - LPARAM lParam;
720 - WPARAM wParam;
721 - UINT message;
722 - HWND hwnd;
723 -}
724 -alias tagCWPRETSTRUCT CWPRETSTRUCT;
725 -alias tagCWPRETSTRUCT* PCWPRETSTRUCT;
726 -alias tagCWPRETSTRUCT* NPCWPRETSTRUCT;
727 -alias tagCWPRETSTRUCT* LPCWPRETSTRUCT;
728 -
729 -// #endif /* WINVER >= 0x0400 */
730 -
731 -// #if (_WIN32_WINNT >= 0x0400)
732 -
733 -enum : uint { LLKHF_EXTENDED = KF_EXTENDED >> 8 }
734 -enum : uint { LLKHF_INJECTED = 0x00000010 }
735 -enum : uint { LLKHF_ALTDOWN = KF_ALTDOWN >> 8 }
736 -enum : uint { LLKHF_UP = KF_UP >> 8 }
737 -
738 -enum : uint { LLMHF_INJECTED = 0x00000001 }
739 -
740 -struct tagKBDLLHOOKSTRUCT {
741 - DWORD vkCode;
742 - DWORD scanCode;
743 - DWORD flags;
744 - DWORD time;
745 - ULONG_PTR dwExtraInfo;
746 -}
747 -alias tagKBDLLHOOKSTRUCT KBDLLHOOKSTRUCT;
748 -alias tagKBDLLHOOKSTRUCT* LPKBDLLHOOKSTRUCT;
749 -alias tagKBDLLHOOKSTRUCT* PKBDLLHOOKSTRUCT;
750 -
751 -struct tagMSLLHOOKSTRUCT {
752 - POINT pt;
753 - DWORD mouseData;
754 - DWORD flags;
755 - DWORD time;
756 - ULONG_PTR dwExtraInfo;
757 -}
758 -alias tagMSLLHOOKSTRUCT MSLLHOOKSTRUCT;
759 -alias tagMSLLHOOKSTRUCT* LPMSLLHOOKSTRUCT;
760 -alias tagMSLLHOOKSTRUCT* PMSLLHOOKSTRUCT;
761 -
762 -// #endif // (_WIN32_WINNT >= 0x0400)
763 -
764 -struct tagDEBUGHOOKINFO {
765 - DWORD idThread;
766 - DWORD idThreadInstaller;
767 - LPARAM lParam;
768 - WPARAM wParam;
769 - int code;
770 -}
771 -alias tagDEBUGHOOKINFO DEBUGHOOKINFO;
772 -alias tagDEBUGHOOKINFO* PDEBUGHOOKINFO;
773 -alias tagDEBUGHOOKINFO* NPDEBUGHOOKINFO;
774 -alias tagDEBUGHOOKINFO* LPDEBUGHOOKINFO;
775 -
776 -struct tagMOUSEHOOKSTRUCT {
777 - POINT pt;
778 - HWND hwnd;
779 - UINT wHitTestCode;
780 - ULONG_PTR dwExtraInfo;
781 -}
782 -alias tagMOUSEHOOKSTRUCT MOUSEHOOKSTRUCT;
783 -alias tagMOUSEHOOKSTRUCT* LPMOUSEHOOKSTRUCT;
784 -alias tagMOUSEHOOKSTRUCT* PMOUSEHOOKSTRUCT;
785 -
786 -// #if(_WIN32_WINNT >= 0x0500)
787 -// #ifdef __cplusplus
788 -struct tagMOUSEHOOKSTRUCTEX {
789 - POINT pt;
790 - HWND hwnd;
791 - UINT wHitTestCode;
792 - ULONG_PTR dwExtraInfo;
793 - DWORD mouseData;
794 -}
795 -alias tagMOUSEHOOKSTRUCTEX MOUSEHOOKSTRUCTEX;
796 -alias tagMOUSEHOOKSTRUCTEX* LPMOUSEHOOKSTRUCTEX;
797 -alias tagMOUSEHOOKSTRUCTEX* PMOUSEHOOKSTRUCTEX;
798 -
799 -// #else // ndef __cplusplus
800 -// ...
801 -// #endif
802 -// #endif /* _WIN32_WINNT >= 0x0500 */
803 -
804 -// #if(WINVER >= 0x0400)
805 -
806 -struct tagHARDWAREHOOKSTRUCT {
807 - HWND hwnd;
808 - UINT message;
809 - WPARAM wParam;
810 - LPARAM lParam;
811 -}
812 -alias tagHARDWAREHOOKSTRUCT HARDWAREHOOKSTRUCT;
813 -alias tagHARDWAREHOOKSTRUCT* LPHARDWAREHOOKSTRUCT;
814 -alias tagHARDWAREHOOKSTRUCT* PHARDWAREHOOKSTRUCT;
815 -
816 -// #endif /* WINVER >= 0x0400 */
817 -// #endif /* !NOWH */
818 -
819 -enum : uint { HKL_PREV = 0 }
820 -enum : uint { HKL_NEXT = 1 }
821 -
822 -enum : uint { KLF_ACTIVATE = 0x00000001 }
823 -enum : uint { KLF_SUBSTITUTE_OK = 0x00000002 }
824 -enum : uint { KLF_REORDER = 0x00000008 }
825 -// #if(WINVER >= 0x0400)
826 -enum : uint { KLF_REPLACELANG = 0x00000010 }
827 -enum : uint { KLF_NOTELLSHELL = 0x00000080 }
828 -// #endif /* WINVER >= 0x0400 */
829 -enum : uint { KLF_SETFORPROCESS = 0x00000100 }
830 -// #if(_WIN32_WINNT >= 0x0500)
831 -enum : uint { KLF_SHIFTLOCK = 0x00010000 }
832 -enum : uint { KLF_RESET = 0x40000000 }
833 -// #endif /* _WIN32_WINNT >= 0x0500 */
834 -
835 -// #if(WINVER >= 0x0500)
836 -
837 -enum : uint { INPUTLANGCHANGE_SYSCHARSET = 0x0001 }
838 -enum : uint { INPUTLANGCHANGE_FORWARD = 0x0002 }
839 -enum : uint { INPUTLANGCHANGE_BACKWARD = 0x0004 }
840 -// #endif /* WINVER >= 0x0500 */
841 -
842 -enum : uint { KL_NAMELENGTH = 9 }
843 -
844 -extern(Windows) export HKL LoadKeyboardLayoutA(
845 - LPCSTR pwszKLID,
846 - UINT Flags);
847 -extern(Windows) export HKL LoadKeyboardLayoutW(
848 - LPCWSTR pwszKLID,
849 - UINT Flags);
850 -// #ifdef UNICODE
851 -alias LoadKeyboardLayoutW LoadKeyboardLayout;
852 -// #else
853 -// #...
854 -// #endif // !UNICODE
855 -
856 -// #if(WINVER >= 0x0400)
857 -extern(Windows) export HKL ActivateKeyboardLayout(
858 - HKL hkl,
859 - UINT Flags);
860 -// #else
861 -// ...
862 -// #endif /* WINVER >= 0x0400 */
863 -
864 -// #if(WINVER >= 0x0400)
865 -extern(Windows) export int ToUnicodeEx(
866 - UINT wVirtKey,
867 - UINT wScanCode,
868 - BYTE *lpKeyState,
869 - LPWSTR pwszBuff,
870 - int cchBuff,
871 - UINT wFlags,
872 - HKL dwhkl);
873 -// #endif /* WINVER >= 0x0400 */
874 -
875 -extern(Windows) export BOOL UnloadKeyboardLayout(
876 - HKL hkl);
877 -
878 -extern(Windows) export BOOL GetKeyboardLayoutNameA(
879 - LPSTR pwszKLID);
880 -extern(Windows) export BOOL GetKeyboardLayoutNameW(
881 - LPWSTR pwszKLID);
882 -// #ifdef UNICODE
883 -alias GetKeyboardLayoutNameW GetKeyboardLayoutName;
884 -// #else
885 -// #...
886 -// #endif // !UNICODE
887 -
888 -// #if(WINVER >= 0x0400)
889 -extern(Windows) export int GetKeyboardLayoutList(
890 - int nBuff,
891 - HKL *lpList);
892 -
893 -extern(Windows) export HKL GetKeyboardLayout(
894 - DWORD idThread
895 -);
896 -// #endif /* WINVER >= 0x0400 */
897 -
898 -// #if(WINVER >= 0x0500)
899 -
900 -struct tagMOUSEMOVEPOINT {
901 - int x;
902 - int y;
903 - DWORD time;
904 - ULONG_PTR dwExtraInfo;
905 -}
906 -alias tagMOUSEMOVEPOINT MOUSEMOVEPOINT;
907 -alias tagMOUSEMOVEPOINT* PMOUSEMOVEPOINT;
908 -alias tagMOUSEMOVEPOINT* LPMOUSEMOVEPOINT;
909 -
910 -enum : uint { GMMP_USE_DISPLAY_POINTS = 1 }
911 -enum : uint { GMMP_USE_HIGH_RESOLUTION_POINTS = 2 }
912 -
913 -extern(Windows) export int GetMouseMovePointsEx(
914 - UINT cbSize,
915 - LPMOUSEMOVEPOINT lppt,
916 - LPMOUSEMOVEPOINT lpptBuf,
917 - int nBufPoints,
918 - DWORD resolution
919 -);
920 -
921 -// #endif /* WINVER >= 0x0500 */
922 -
923 -// #ifndef NODESKTOP
924 -
925 -enum : uint { DESKTOP_READOBJECTS = 0x0001 }
926 -enum : uint { DESKTOP_CREATEWINDOW = 0x0002 }
927 -enum : uint { DESKTOP_CREATEMENU = 0x0004 }
928 -enum : uint { DESKTOP_HOOKCONTROL = 0x0008 }
929 -enum : uint { DESKTOP_JOURNALRECORD = 0x0010 }
930 -enum : uint { DESKTOP_JOURNALPLAYBACK = 0x0020 }
931 -enum : uint { DESKTOP_ENUMERATE = 0x0040 }
932 -enum : uint { DESKTOP_WRITEOBJECTS = 0x0080 }
933 -enum : uint { DESKTOP_SWITCHDESKTOP = 0x0100 }
934 -
935 -enum : uint { DF_ALLOWOTHERACCOUNTHOOK = 0x0001 }
936 -
937 -// #ifdef _WINGDI_
938 -// #ifndef NOGDI
939 -
940 -// ...
941 -// #ifdef UNICODE
942 -// #...
943 -// #else
944 -// #...
945 -// #endif // !UNICODE
946 -
947 -// #endif /* NOGDI */
948 -// #endif /* _WINGDI_ */
949 -
950 -extern(Windows) export HDESK OpenDesktopA(
951 - LPCSTR lpszDesktop,
952 - DWORD dwFlags,
953 - BOOL fInherit,
954 - ACCESS_MASK dwDesiredAccess);
955 -extern(Windows) export HDESK OpenDesktopW(
956 - LPCWSTR lpszDesktop,
957 - DWORD dwFlags,
958 - BOOL fInherit,
959 - ACCESS_MASK dwDesiredAccess);
960 -// #ifdef UNICODE
961 -alias OpenDesktopW OpenDesktop;
962 -// #else
963 -// #...
964 -// #endif // !UNICODE
965 -
966 -extern(Windows) export HDESK OpenInputDesktop(
967 - DWORD dwFlags,
968 - BOOL fInherit,
969 - ACCESS_MASK dwDesiredAccess);
970 -
971 -extern(Windows) export BOOL EnumDesktopsA(
972 - HWINSTA hwinsta,
973 - DESKTOPENUMPROCA lpEnumFunc,
974 - LPARAM lParam);
975 -extern(Windows) export BOOL EnumDesktopsW(
976 - HWINSTA hwinsta,
977 - DESKTOPENUMPROCW lpEnumFunc,
978 - LPARAM lParam);
979 -// #ifdef UNICODE
980 -alias EnumDesktopsW EnumDesktops;
981 -// #else
982 -// #...
983 -// #endif // !UNICODE
984 -
985 -extern(Windows) export BOOL EnumDesktopWindows(
986 - HDESK hDesktop,
987 - WNDENUMPROC lpfn,
988 - LPARAM lParam);
989 -
990 -extern(Windows) export BOOL SwitchDesktop(
991 - HDESK hDesktop);
992 -
993 -extern(Windows) export BOOL SetThreadDesktop(
994 - HDESK hDesktop);
995 -
996 -extern(Windows) export BOOL CloseDesktop(
997 - HDESK hDesktop);
998 -
999 -extern(Windows) export HDESK GetThreadDesktop(
1000 - DWORD dwThreadId);
1001 -// #endif /* !NODESKTOP */
1002 -
1003 -// #ifndef NOWINDOWSTATION
1004 -
1005 -enum : uint { WINSTA_ENUMDESKTOPS = 0x0001 }
1006 -enum : uint { WINSTA_READATTRIBUTES = 0x0002 }
1007 -enum : uint { WINSTA_ACCESSCLIPBOARD = 0x0004 }
1008 -enum : uint { WINSTA_CREATEDESKTOP = 0x0008 }
1009 -enum : uint { WINSTA_WRITEATTRIBUTES = 0x0010 }
1010 -enum : uint { WINSTA_ACCESSGLOBALATOMS = 0x0020 }
1011 -enum : uint { WINSTA_EXITWINDOWS = 0x0040 }
1012 -enum : uint { WINSTA_ENUMERATE = 0x0100 }
1013 -enum : uint { WINSTA_READSCREEN = 0x0200 }
1014 -
1015 -enum : uint { WSF_VISIBLE = 0x0001 }
1016 -
1017 -extern(Windows) export HWINSTA CreateWindowStationA(
1018 - LPCSTR lpwinsta,
1019 - DWORD dwReserved,
1020 - ACCESS_MASK dwDesiredAccess,
1021 - LPSECURITY_ATTRIBUTES lpsa);
1022 -extern(Windows) export HWINSTA CreateWindowStationW(
1023 - LPCWSTR lpwinsta,
1024 - DWORD dwReserved,
1025 - ACCESS_MASK dwDesiredAccess,
1026 - LPSECURITY_ATTRIBUTES lpsa);
1027 -// #ifdef UNICODE
1028 -alias CreateWindowStationW CreateWindowStation;
1029 -// #else
1030 -// #...
1031 -// #endif // !UNICODE
1032 -
1033 -extern(Windows) export HWINSTA OpenWindowStationA(
1034 - LPCSTR lpszWinSta,
1035 - BOOL fInherit,
1036 - ACCESS_MASK dwDesiredAccess);
1037 -extern(Windows) export HWINSTA OpenWindowStationW(
1038 - LPCWSTR lpszWinSta,
1039 - BOOL fInherit,
1040 - ACCESS_MASK dwDesiredAccess);
1041 -// #ifdef UNICODE
1042 -alias OpenWindowStationW OpenWindowStation;
1043 -// #else
1044 -// #...
1045 -// #endif // !UNICODE
1046 -
1047 -extern(Windows) export BOOL EnumWindowStationsA(
1048 - WINSTAENUMPROCA lpEnumFunc,
1049 - LPARAM lParam);
1050 -extern(Windows) export BOOL EnumWindowStationsW(
1051 - WINSTAENUMPROCW lpEnumFunc,
1052 - LPARAM lParam);
1053 -// #ifdef UNICODE
1054 -alias EnumWindowStationsW EnumWindowStations;
1055 -// #else
1056 -// #...
1057 -// #endif // !UNICODE
1058 -
1059 -extern(Windows) export BOOL CloseWindowStation(
1060 - HWINSTA hWinSta);
1061 -
1062 -extern(Windows) export BOOL SetProcessWindowStation(
1063 - HWINSTA hWinSta);
1064 -
1065 -extern(Windows) export HWINSTA GetProcessWindowStation();
1066 -// #endif /* !NOWINDOWSTATION */
1067 -
1068 -// #ifndef NOSECURITY
1069 -
1070 -extern(Windows) export BOOL SetUserObjectSecurity(
1071 - HANDLE hObj,
1072 - PSECURITY_INFORMATION pSIRequested,
1073 - PSECURITY_DESCRIPTOR pSID);
1074 -
1075 -extern(Windows) export BOOL GetUserObjectSecurity(
1076 - HANDLE hObj,
1077 - PSECURITY_INFORMATION pSIRequested,
1078 - PSECURITY_DESCRIPTOR pSID,
1079 - DWORD nLength,
1080 - LPDWORD lpnLengthNeeded);
1081 -
1082 -enum : uint { UOI_FLAGS = 1 }
1083 -enum : uint { UOI_NAME = 2 }
1084 -enum : uint { UOI_TYPE = 3 }
1085 -enum : uint { UOI_USER_SID = 4 }
1086 -
1087 -struct tagUSEROBJECTFLAGS {
1088 - BOOL fInherit;
1089 - BOOL fReserved;
1090 - DWORD dwFlags;
1091 -}
1092 -alias tagUSEROBJECTFLAGS USEROBJECTFLAGS;
1093 -alias tagUSEROBJECTFLAGS* PUSEROBJECTFLAGS;
1094 -
1095 -extern(Windows) export BOOL GetUserObjectInformationA(
1096 - HANDLE hObj,
1097 - int nIndex,
1098 - PVOID pvInfo,
1099 - DWORD nLength,
1100 - LPDWORD lpnLengthNeeded);
1101 -extern(Windows) export BOOL GetUserObjectInformationW(
1102 - HANDLE hObj,
1103 - int nIndex,
1104 - PVOID pvInfo,
1105 - DWORD nLength,
1106 - LPDWORD lpnLengthNeeded);
1107 -// #ifdef UNICODE
1108 -alias GetUserObjectInformationW GetUserObjectInformation;
1109 -// #else
1110 -// #...
1111 -// #endif // !UNICODE
1112 -
1113 -extern(Windows) export BOOL SetUserObjectInformationA(
1114 - HANDLE hObj,
1115 - int nIndex,
1116 - PVOID pvInfo,
1117 - DWORD nLength);
1118 -extern(Windows) export BOOL SetUserObjectInformationW(
1119 - HANDLE hObj,
1120 - int nIndex,
1121 - PVOID pvInfo,
1122 - DWORD nLength);
1123 -// #ifdef UNICODE
1124 -alias SetUserObjectInformationW SetUserObjectInformation;
1125 -// #else
1126 -// #...
1127 -// #endif // !UNICODE
1128 -
1129 -// #endif /* !NOSECURITY */
1130 -
1131 -// #if(WINVER >= 0x0400)
1132 -struct tagWNDCLASSEXA {
1133 - UINT cbSize;
1134 - UINT style;
1135 - WNDPROC lpfnWndProc;
1136 - int cbClsExtra;
1137 - int cbWndExtra;
1138 - HINSTANCE hInstance;
1139 - HICON hIcon;
1140 - HCURSOR hCursor;
1141 - HBRUSH hbrBackground;
1142 - LPCSTR lpszMenuName;
1143 - LPCSTR lpszClassName;
1144 - HICON hIconSm;
1145 -}
1146 -alias tagWNDCLASSEXA WNDCLASSEXA;
1147 -alias tagWNDCLASSEXA* PWNDCLASSEXA;
1148 -alias tagWNDCLASSEXA* NPWNDCLASSEXA;
1149 -alias tagWNDCLASSEXA* LPWNDCLASSEXA;
1150 -
1151 -struct tagWNDCLASSEXW {
1152 - UINT cbSize;
1153 - UINT style;
1154 - WNDPROC lpfnWndProc;
1155 - int cbClsExtra;
1156 - int cbWndExtra;
1157 - HINSTANCE hInstance;
1158 - HICON hIcon;
1159 - HCURSOR hCursor;
1160 - HBRUSH hbrBackground;
1161 - LPCWSTR lpszMenuName;
1162 - LPCWSTR lpszClassName;
1163 - HICON hIconSm;
1164 -}
1165 -alias tagWNDCLASSEXW WNDCLASSEXW;
1166 -alias tagWNDCLASSEXW* PWNDCLASSEXW;
1167 -alias tagWNDCLASSEXW* NPWNDCLASSEXW;
1168 -alias tagWNDCLASSEXW* LPWNDCLASSEXW;
1169 -
1170 -// #ifdef UNICODE
1171 -alias WNDCLASSEXW WNDCLASSEX;
1172 -alias PWNDCLASSEXW PWNDCLASSEX;
1173 -alias NPWNDCLASSEXW NPWNDCLASSEX;
1174 -alias LPWNDCLASSEXW LPWNDCLASSEX;
1175 -// #else
1176 -// ...
1177 -// #endif // UNICODE
1178 -// #endif /* WINVER >= 0x0400 */
1179 -
1180 -struct tagWNDCLASSA {
1181 - UINT style;
1182 - WNDPROC lpfnWndProc;
1183 - int cbClsExtra;
1184 - int cbWndExtra;
1185 - HINSTANCE hInstance;
1186 - HICON hIcon;
1187 - HCURSOR hCursor;
1188 - HBRUSH hbrBackground;
1189 - LPCSTR lpszMenuName;
1190 - LPCSTR lpszClassName;
1191 -}
1192 -alias tagWNDCLASSA WNDCLASSA;
1193 -alias tagWNDCLASSA* PWNDCLASSA;
1194 -alias tagWNDCLASSA* NPWNDCLASSA;
1195 -alias tagWNDCLASSA* LPWNDCLASSA;
1196 -
1197 -struct tagWNDCLASSW {
1198 - UINT style;
1199 - WNDPROC lpfnWndProc;
1200 - int cbClsExtra;
1201 - int cbWndExtra;
1202 - HINSTANCE hInstance;
1203 - HICON hIcon;
1204 - HCURSOR hCursor;
1205 - HBRUSH hbrBackground;
1206 - LPCWSTR lpszMenuName;
1207 - LPCWSTR lpszClassName;
1208 -}
1209 -alias tagWNDCLASSW WNDCLASSW;
1210 -alias tagWNDCLASSW* PWNDCLASSW;
1211 -alias tagWNDCLASSW* NPWNDCLASSW;
1212 -alias tagWNDCLASSW* LPWNDCLASSW;
1213 -
1214 -// #ifdef UNICODE
1215 -alias WNDCLASSW WNDCLASS;
1216 -alias PWNDCLASSW PWNDCLASS;
1217 -alias NPWNDCLASSW NPWNDCLASS;
1218 -alias LPWNDCLASSW LPWNDCLASS;
1219 -// #else
1220 -// ...
1221 -// #endif // UNICODE
1222 -
1223 -// #ifndef NOMSG
1224 -
1225 -struct tagMSG {
1226 - HWND hwnd;
1227 - UINT message;
1228 - WPARAM wParam;
1229 - LPARAM lParam;
1230 - DWORD time;
1231 - POINT pt;
1232 -// #ifdef _MAC
1233 -// ...
1234 -// #endif
1235 -}
1236 -alias tagMSG MSG;
1237 -alias tagMSG* PMSG;
1238 -alias tagMSG* NPMSG;
1239 -alias tagMSG* LPMSG;
1240 -
1241 -// #define POINTSTOPOINT(pt, pts) { (pt).x = (LONG)(SHORT)LOWORD(*(LONG*)&pts); (pt).y = (LONG)(SHORT)HIWORD(*(LONG*)&pts); }
1242 -
1243 -// #define POINTTOPOINTS(pt) (MAKELONG((short)((pt).x), (short)((pt).y)))
1244 -alias MAKELONG MAKEWPARAM;
1245 -alias MAKELONG MAKELPARAM;
1246 -alias MAKELONG MAKELRESULT;
1247 -
1248 -// #endif /* !NOMSG */
1249 -
1250 -// #ifndef NOWINOFFSETS
1251 -
1252 -enum { GWL_WNDPROC = -4 }
1253 -enum { GWL_HINSTANCE = -6 }
1254 -enum { GWL_HWNDPARENT = -8 }
1255 -enum { GWL_STYLE = -16 }
1256 -enum { GWL_EXSTYLE = -20 }
1257 -enum { GWL_USERDATA = -21 }
1258 -enum { GWL_ID = -12 }
1259 -
1260 -// #ifdef _WIN64
1261 -
1262 -// #...
1263 -// #...
1264 -// #...
1265 -// #...
1266 -
1267 -// #endif /* _WIN64 */
1268 -
1269 -enum { GWLP_WNDPROC = -4 }
1270 -enum { GWLP_HINSTANCE = -6 }
1271 -enum { GWLP_HWNDPARENT = -8 }
1272 -enum { GWLP_USERDATA = -21 }
1273 -enum { GWLP_ID = -12 }
1274 -
1275 -enum { GCL_MENUNAME = -8 }
1276 -enum { GCL_HBRBACKGROUND = -10 }
1277 -enum { GCL_HCURSOR = -12 }
1278 -enum { GCL_HICON = -14 }
1279 -enum { GCL_HMODULE = -16 }
1280 -enum { GCL_CBWNDEXTRA = -18 }
1281 -enum { GCL_CBCLSEXTRA = -20 }
1282 -enum { GCL_WNDPROC = -24 }
1283 -enum { GCL_STYLE = -26 }
1284 -enum { GCW_ATOM = -32 }
1285 -
1286 -// #if(WINVER >= 0x0400)
1287 -enum { GCL_HICONSM = -34 }
1288 -// #endif /* WINVER >= 0x0400 */
1289 -
1290 -// #ifdef _WIN64
1291 -
1292 -// #...
1293 -// #...
1294 -// #...
1295 -// #...
1296 -// #...
1297 -// #...
1298 -// #...
1299 -
1300 -// #endif /* _WIN64 */
1301 -
1302 -enum { GCLP_MENUNAME = -8 }
1303 -enum { GCLP_HBRBACKGROUND = -10 }
1304 -enum { GCLP_HCURSOR = -12 }
1305 -enum { GCLP_HICON = -14 }
1306 -enum { GCLP_HMODULE = -16 }
1307 -enum { GCLP_WNDPROC = -24 }
1308 -enum { GCLP_HICONSM = -34 }
1309 -
1310 -// #endif /* !NOWINOFFSETS */
1311 -
1312 -// #ifndef NOWINMESSAGES
1313 -
1314 -enum : uint { WM_NULL = 0x0000 }
1315 -enum : uint { WM_CREATE = 0x0001 }
1316 -enum : uint { WM_DESTROY = 0x0002 }
1317 -enum : uint { WM_MOVE = 0x0003 }
1318 -enum : uint { WM_SIZE = 0x0005 }
1319 -
1320 -enum : uint { WM_ACTIVATE = 0x0006 }
1321 -
1322 -enum : uint { WA_INACTIVE = 0 }
1323 -enum : uint { WA_ACTIVE = 1 }
1324 -enum : uint { WA_CLICKACTIVE = 2 }
1325 -
1326 -enum : uint { WM_SETFOCUS = 0x0007 }
1327 -enum : uint { WM_KILLFOCUS = 0x0008 }
1328 -enum : uint { WM_ENABLE = 0x000A }
1329 -enum : uint { WM_SETREDRAW = 0x000B }
1330 -enum : uint { WM_SETTEXT = 0x000C }
1331 -enum : uint { WM_GETTEXT = 0x000D }
1332 -enum : uint { WM_GETTEXTLENGTH = 0x000E }
1333 -enum : uint { WM_PAINT = 0x000F }
1334 -enum : uint { WM_CLOSE = 0x0010 }
1335 -// #ifndef _WIN32_WCE
1336 -enum : uint { WM_QUERYENDSESSION = 0x0011 }
1337 -enum : uint { WM_QUERYOPEN = 0x0013 }
1338 -enum : uint { WM_ENDSESSION = 0x0016 }
1339 -// #endif
1340 -enum : uint { WM_QUIT = 0x0012 }
1341 -enum : uint { WM_ERASEBKGND = 0x0014 }
1342 -enum : uint { WM_SYSCOLORCHANGE = 0x0015 }
1343 -enum : uint { WM_SHOWWINDOW = 0x0018 }
1344 -enum : uint { WM_WININICHANGE = 0x001A }
1345 -// #if(WINVER >= 0x0400)
1346 -alias WM_WININICHANGE WM_SETTINGCHANGE;
1347 -// #endif /* WINVER >= 0x0400 */
1348 -
1349 -enum : uint { WM_DEVMODECHANGE = 0x001B }
1350 -enum : uint { WM_ACTIVATEAPP = 0x001C }
1351 -enum : uint { WM_FONTCHANGE = 0x001D }
1352 -enum : uint { WM_TIMECHANGE = 0x001E }
1353 -enum : uint { WM_CANCELMODE = 0x001F }
1354 -enum : uint { WM_SETCURSOR = 0x0020 }
1355 -enum : uint { WM_MOUSEACTIVATE = 0x0021 }
1356 -enum : uint { WM_CHILDACTIVATE = 0x0022 }
1357 -enum : uint { WM_QUEUESYNC = 0x0023 }
1358 -
1359 -enum : uint { WM_GETMINMAXINFO = 0x0024 }
1360 -
1361 -struct tagMINMAXINFO {
1362 - POINT ptReserved;
1363 - POINT ptMaxSize;
1364 - POINT ptMaxPosition;
1365 - POINT ptMinTrackSize;
1366 - POINT ptMaxTrackSize;
1367 -}
1368 -alias tagMINMAXINFO MINMAXINFO;
1369 -alias tagMINMAXINFO* PMINMAXINFO;
1370 -alias tagMINMAXINFO* LPMINMAXINFO;
1371 -
1372 -enum : uint { WM_PAINTICON = 0x0026 }
1373 -enum : uint { WM_ICONERASEBKGND = 0x0027 }
1374 -enum : uint { WM_NEXTDLGCTL = 0x0028 }
1375 -enum : uint { WM_SPOOLERSTATUS = 0x002A }
1376 -enum : uint { WM_DRAWITEM = 0x002B }
1377 -enum : uint { WM_MEASUREITEM = 0x002C }
1378 -enum : uint { WM_DELETEITEM = 0x002D }
1379 -enum : uint { WM_VKEYTOITEM = 0x002E }
1380 -enum : uint { WM_CHARTOITEM = 0x002F }
1381 -enum : uint { WM_SETFONT = 0x0030 }
1382 -enum : uint { WM_GETFONT = 0x0031 }
1383 -enum : uint { WM_SETHOTKEY = 0x0032 }
1384 -enum : uint { WM_GETHOTKEY = 0x0033 }
1385 -enum : uint { WM_QUERYDRAGICON = 0x0037 }
1386 -enum : uint { WM_COMPAREITEM = 0x0039 }
1387 -// #if(WINVER >= 0x0500)
1388 -// #ifndef _WIN32_WCE
1389 -enum : uint { WM_GETOBJECT = 0x003D }
1390 -// #endif
1391 -// #endif /* WINVER >= 0x0500 */
1392 -enum : uint { WM_COMPACTING = 0x0041 }
1393 -enum : uint { WM_COMMNOTIFY = 0x0044 }
1394 -enum : uint { WM_WINDOWPOSCHANGING = 0x0046 }
1395 -enum : uint { WM_WINDOWPOSCHANGED = 0x0047 }
1396 -
1397 -enum : uint { WM_POWER = 0x0048 }
1398 -
1399 -enum : uint { PWR_OK = 1 }
1400 -enum { PWR_FAIL = -1 }
1401 -enum : uint { PWR_SUSPENDREQUEST = 1 }
1402 -enum : uint { PWR_SUSPENDRESUME = 2 }
1403 -enum : uint { PWR_CRITICALRESUME = 3 }
1404 -
1405 -enum : uint { WM_COPYDATA = 0x004A }
1406 -enum : uint { WM_CANCELJOURNAL = 0x004B }
1407 -
1408 -struct tagCOPYDATASTRUCT {
1409 - ULONG_PTR dwData;
1410 - DWORD cbData;
1411 - PVOID lpData;
1412 -}
1413 -alias tagCOPYDATASTRUCT COPYDATASTRUCT;
1414 -alias tagCOPYDATASTRUCT* PCOPYDATASTRUCT;
1415 -
1416 -// #if(WINVER >= 0x0400)
1417 -struct tagMDINEXTMENU {
1418 - HMENU hmenuIn;
1419 - HMENU hmenuNext;
1420 - HWND hwndNext;
1421 -}
1422 -alias tagMDINEXTMENU MDINEXTMENU;
1423 -alias tagMDINEXTMENU* PMDINEXTMENU;
1424 -alias tagMDINEXTMENU* LPMDINEXTMENU;
1425 -
1426 -// #endif /* WINVER >= 0x0400 */
1427 -
1428 -// #if(WINVER >= 0x0400)
1429 -enum : uint { WM_NOTIFY = 0x004E }
1430 -enum : uint { WM_INPUTLANGCHANGEREQUEST = 0x0050 }
1431 -enum : uint { WM_INPUTLANGCHANGE = 0x0051 }
1432 -enum : uint { WM_TCARD = 0x0052 }
1433 -enum : uint { WM_HELP = 0x0053 }
1434 -enum : uint { WM_USERCHANGED = 0x0054 }
1435 -enum : uint { WM_NOTIFYFORMAT = 0x0055 }
1436 -
1437 -enum : uint { NFR_ANSI = 1 }
1438 -enum : uint { NFR_UNICODE = 2 }
1439 -enum : uint { NF_QUERY = 3 }
1440 -enum : uint { NF_REQUERY = 4 }
1441 -
1442 -enum : uint { WM_CONTEXTMENU = 0x007B }
1443 -enum : uint { WM_STYLECHANGING = 0x007C }
1444 -enum : uint { WM_STYLECHANGED = 0x007D }
1445 -enum : uint { WM_DISPLAYCHANGE = 0x007E }
1446 -enum : uint { WM_GETICON = 0x007F }
1447 -enum : uint { WM_SETICON = 0x0080 }
1448 -// #endif /* WINVER >= 0x0400 */
1449 -
1450 -enum : uint { WM_NCCREATE = 0x0081 }
1451 -enum : uint { WM_NCDESTROY = 0x0082 }
1452 -enum : uint { WM_NCCALCSIZE = 0x0083 }
1453 -enum : uint { WM_NCHITTEST = 0x0084 }
1454 -enum : uint { WM_NCPAINT = 0x0085 }
1455 -enum : uint { WM_NCACTIVATE = 0x0086 }
1456 -enum : uint { WM_GETDLGCODE = 0x0087 }
1457 -// #ifndef _WIN32_WCE
1458 -enum : uint { WM_SYNCPAINT = 0x0088 }
1459 -// #endif
1460 -enum : uint { WM_NCMOUSEMOVE = 0x00A0 }
1461 -enum : uint { WM_NCLBUTTONDOWN = 0x00A1 }
1462 -enum : uint { WM_NCLBUTTONUP = 0x00A2 }
1463 -enum : uint { WM_NCLBUTTONDBLCLK = 0x00A3 }
1464 -enum : uint { WM_NCRBUTTONDOWN = 0x00A4 }
1465 -enum : uint { WM_NCRBUTTONUP = 0x00A5 }
1466 -enum : uint { WM_NCRBUTTONDBLCLK = 0x00A6 }
1467 -enum : uint { WM_NCMBUTTONDOWN = 0x00A7 }
1468 -enum : uint { WM_NCMBUTTONUP = 0x00A8 }
1469 -enum : uint { WM_NCMBUTTONDBLCLK = 0x00A9 }
1470 -
1471 -// #if(_WIN32_WINNT >= 0x0500)
1472 -enum : uint { WM_NCXBUTTONDOWN = 0x00AB }
1473 -enum : uint { WM_NCXBUTTONUP = 0x00AC }
1474 -enum : uint { WM_NCXBUTTONDBLCLK = 0x00AD }
1475 -// #endif /* _WIN32_WINNT >= 0x0500 */
1476 -
1477 -// #if(_WIN32_WINNT >= 0x0501)
1478 -enum : uint { WM_INPUT = 0x00FF }
1479 -// #endif /* _WIN32_WINNT >= 0x0501 */
1480 -
1481 -enum : uint { WM_KEYFIRST = 0x0100 }
1482 -enum : uint { WM_KEYDOWN = 0x0100 }
1483 -enum : uint { WM_KEYUP = 0x0101 }
1484 -enum : uint { WM_CHAR = 0x0102 }
1485 -enum : uint { WM_DEADCHAR = 0x0103 }
1486 -enum : uint { WM_SYSKEYDOWN = 0x0104 }
1487 -enum : uint { WM_SYSKEYUP = 0x0105 }
1488 -enum : uint { WM_SYSCHAR = 0x0106 }
1489 -enum : uint { WM_SYSDEADCHAR = 0x0107 }
1490 -// #if(_WIN32_WINNT >= 0x0501)
1491 -enum : uint { WM_UNICHAR = 0x0109 }
1492 -enum : uint { WM_KEYLAST = 0x0109 }
1493 -enum : uint { UNICODE_NOCHAR = 0xFFFF }
1494 -// #else
1495 -// #...
1496 -// #endif /* _WIN32_WINNT >= 0x0501 */
1497 -
1498 -// #if(WINVER >= 0x0400)
1499 -enum : uint { WM_IME_STARTCOMPOSITION = 0x010D }
1500 -enum : uint { WM_IME_ENDCOMPOSITION = 0x010E }
1501 -enum : uint { WM_IME_COMPOSITION = 0x010F }
1502 -enum : uint { WM_IME_KEYLAST = 0x010F }
1503 -// #endif /* WINVER >= 0x0400 */
1504 -
1505 -enum : uint { WM_INITDIALOG = 0x0110 }
1506 -enum : uint { WM_COMMAND = 0x0111 }
1507 -enum : uint { WM_SYSCOMMAND = 0x0112 }
1508 -enum : uint { WM_TIMER = 0x0113 }
1509 -enum : uint { WM_HSCROLL = 0x0114 }
1510 -enum : uint { WM_VSCROLL = 0x0115 }
1511 -enum : uint { WM_INITMENU = 0x0116 }
1512 -enum : uint { WM_INITMENUPOPUP = 0x0117 }
1513 -enum : uint { WM_MENUSELECT = 0x011F }
1514 -enum : uint { WM_MENUCHAR = 0x0120 }
1515 -enum : uint { WM_ENTERIDLE = 0x0121 }
1516 -// #if(WINVER >= 0x0500)
1517 -// #ifndef _WIN32_WCE
1518 -enum : uint { WM_MENURBUTTONUP = 0x0122 }
1519 -enum : uint { WM_MENUDRAG = 0x0123 }
1520 -enum : uint { WM_MENUGETOBJECT = 0x0124 }
1521 -enum : uint { WM_UNINITMENUPOPUP = 0x0125 }
1522 -enum : uint { WM_MENUCOMMAND = 0x0126 }
1523 -
1524 -// #ifndef _WIN32_WCE
1525 -// #if(_WIN32_WINNT >= 0x0500)
1526 -enum : uint { WM_CHANGEUISTATE = 0x0127 }
1527 -enum : uint { WM_UPDATEUISTATE = 0x0128 }
1528 -enum : uint { WM_QUERYUISTATE = 0x0129 }
1529 -
1530 -enum : uint { UIS_SET = 1 }
1531 -enum : uint { UIS_CLEAR = 2 }
1532 -enum : uint { UIS_INITIALIZE = 3 }
1533 -
1534 -enum : uint { UISF_HIDEFOCUS = 0x1 }
1535 -enum : uint { UISF_HIDEACCEL = 0x2 }
1536 -// #if(_WIN32_WINNT >= 0x0501)
1537 -enum : uint { UISF_ACTIVE = 0x4 }
1538 -// #endif /* _WIN32_WINNT >= 0x0501 */
1539 -// #endif /* _WIN32_WINNT >= 0x0500 */
1540 -// #endif
1541 -
1542 -// #endif
1543 -// #endif /* WINVER >= 0x0500 */
1544 -
1545 -enum : uint { WM_CTLCOLORMSGBOX = 0x0132 }
1546 -enum : uint { WM_CTLCOLOREDIT = 0x0133 }
1547 -enum : uint { WM_CTLCOLORLISTBOX = 0x0134 }
1548 -enum : uint { WM_CTLCOLORBTN = 0x0135 }
1549 -enum : uint { WM_CTLCOLORDLG = 0x0136 }
1550 -enum : uint { WM_CTLCOLORSCROLLBAR = 0x0137 }
1551 -enum : uint { WM_CTLCOLORSTATIC = 0x0138 }
1552 -
1553 -enum : uint { WM_MOUSEFIRST = 0x0200 }
1554 -enum : uint { WM_MOUSEMOVE = 0x0200 }
1555 -enum : uint { WM_LBUTTONDOWN = 0x0201 }
1556 -enum : uint { WM_LBUTTONUP = 0x0202 }
1557 -enum : uint { WM_LBUTTONDBLCLK = 0x0203 }
1558 -enum : uint { WM_RBUTTONDOWN = 0x0204 }
1559 -enum : uint { WM_RBUTTONUP = 0x0205 }
1560 -enum : uint { WM_RBUTTONDBLCLK = 0x0206 }
1561 -enum : uint { WM_MBUTTONDOWN = 0x0207 }
1562 -enum : uint { WM_MBUTTONUP = 0x0208 }
1563 -enum : uint { WM_MBUTTONDBLCLK = 0x0209 }
1564 -// #if (_WIN32_WINNT >= 0x0400) || (_WIN32_WINDOWS > 0x0400)
1565 -enum : uint { WM_MOUSEWHEEL = 0x020A }
1566 -// #endif
1567 -// #if (_WIN32_WINNT >= 0x0500)
1568 -enum : uint { WM_XBUTTONDOWN = 0x020B }
1569 -enum : uint { WM_XBUTTONUP = 0x020C }
1570 -enum : uint { WM_XBUTTONDBLCLK = 0x020D }
1571 -// #endif
1572 -// #if (_WIN32_WINNT >= 0x0500)
1573 -enum : uint { WM_MOUSELAST = 0x020D }
1574 -// #elif (_WIN32_WINNT >= 0x0400) || (_WIN32_WINDOWS > 0x0400)
1575 -// #...
1576 -// #else
1577 -// #...
1578 -// #endif /* (_WIN32_WINNT >= 0x0500) */
1579 -
1580 -// #if(_WIN32_WINNT >= 0x0400)
1581 -
1582 -enum : uint { WHEEL_DELTA = 120 }
1583 -// #define GET_WHEEL_DELTA_WPARAM(wParam) ((short)HIWORD(wParam))
1584 -
1585 -enum : uint { WHEEL_PAGESCROLL = UINT_MAX }
1586 -// #endif /* _WIN32_WINNT >= 0x0400 */
1587 -
1588 -// #if(_WIN32_WINNT >= 0x0500)
1589 -// #define GET_KEYSTATE_WPARAM(wParam) (LOWORD(wParam))
1590 -// #define GET_NCHITTEST_WPARAM(wParam) ((short)LOWORD(wParam))
1591 -// #define GET_XBUTTON_WPARAM(wParam) (HIWORD(wParam))
1592 -
1593 -enum : uint { XBUTTON1 = 0x0001 }
1594 -enum : uint { XBUTTON2 = 0x0002 }
1595 -
1596 -// #endif /* _WIN32_WINNT >= 0x0500 */
1597 -
1598 -enum : uint { WM_PARENTNOTIFY = 0x0210 }
1599 -enum : uint { WM_ENTERMENULOOP = 0x0211 }
1600 -enum : uint { WM_EXITMENULOOP = 0x0212 }
1601 -
1602 -// #if(WINVER >= 0x0400)
1603 -enum : uint { WM_NEXTMENU = 0x0213 }
1604 -enum : uint { WM_SIZING = 0x0214 }
1605 -enum : uint { WM_CAPTURECHANGED = 0x0215 }
1606 -enum : uint { WM_MOVING = 0x0216 }
1607 -// #endif /* WINVER >= 0x0400 */
1608 -
1609 -// #if(WINVER >= 0x0400)
1610 -
1611 -enum : uint { WM_POWERBROADCAST = 0x0218 }
1612 -
1613 -// #ifndef _WIN32_WCE
1614 -enum : uint { PBT_APMQUERYSUSPEND = 0x0000 }
1615 -enum : uint { PBT_APMQUERYSTANDBY = 0x0001 }
1616 -
1617 -enum : uint { PBT_APMQUERYSUSPENDFAILED = 0x0002 }
1618 -enum : uint { PBT_APMQUERYSTANDBYFAILED = 0x0003 }
1619 -
1620 -enum : uint { PBT_APMSUSPEND = 0x0004 }
1621 -enum : uint { PBT_APMSTANDBY = 0x0005 }
1622 -
1623 -enum : uint { PBT_APMRESUMECRITICAL = 0x0006 }
1624 -enum : uint { PBT_APMRESUMESUSPEND = 0x0007 }
1625 -enum : uint { PBT_APMRESUMESTANDBY = 0x0008 }
1626 -
1627 -enum : uint { PBTF_APMRESUMEFROMFAILURE = 0x00000001 }
1628 -
1629 -enum : uint { PBT_APMBATTERYLOW = 0x0009 }
1630 -enum : uint { PBT_APMPOWERSTATUSCHANGE = 0x000A }
1631 -
1632 -enum : uint { PBT_APMOEMEVENT = 0x000B }
1633 -enum : uint { PBT_APMRESUMEAUTOMATIC = 0x0012 }
1634 -// #endif
1635 -
1636 -// #endif /* WINVER >= 0x0400 */
1637 -
1638 -// #if(WINVER >= 0x0400)
1639 -enum : uint { WM_DEVICECHANGE = 0x0219 }
1640 -// #endif /* WINVER >= 0x0400 */
1641 -
1642 -enum : uint { WM_MDICREATE = 0x0220 }
1643 -enum : uint { WM_MDIDESTROY = 0x0221 }
1644 -enum : uint { WM_MDIACTIVATE = 0x0222 }
1645 -enum : uint { WM_MDIRESTORE = 0x0223 }
1646 -enum : uint { WM_MDINEXT = 0x0224 }
1647 -enum : uint { WM_MDIMAXIMIZE = 0x0225 }
1648 -enum : uint { WM_MDITILE = 0x0226 }
1649 -enum : uint { WM_MDICASCADE = 0x0227 }
1650 -enum : uint { WM_MDIICONARRANGE = 0x0228 }
1651 -enum : uint { WM_MDIGETACTIVE = 0x0229 }
1652 -
1653 -enum : uint { WM_MDISETMENU = 0x0230 }
1654 -enum : uint { WM_ENTERSIZEMOVE = 0x0231 }
1655 -enum : uint { WM_EXITSIZEMOVE = 0x0232 }
1656 -enum : uint { WM_DROPFILES = 0x0233 }
1657 -enum : uint { WM_MDIREFRESHMENU = 0x0234 }
1658 -
1659 -// #if(WINVER >= 0x0400)
1660 -enum : uint { WM_IME_SETCONTEXT = 0x0281 }
1661 -enum : uint { WM_IME_NOTIFY = 0x0282 }
1662 -enum : uint { WM_IME_CONTROL = 0x0283 }
1663 -enum : uint { WM_IME_COMPOSITIONFULL = 0x0284 }
1664 -enum : uint { WM_IME_SELECT = 0x0285 }
1665 -enum : uint { WM_IME_CHAR = 0x0286 }
1666 -// #endif /* WINVER >= 0x0400 */
1667 -// #if(WINVER >= 0x0500)
1668 -enum : uint { WM_IME_REQUEST = 0x0288 }
1669 -// #endif /* WINVER >= 0x0500 */
1670 -// #if(WINVER >= 0x0400)
1671 -enum : uint { WM_IME_KEYDOWN = 0x0290 }
1672 -enum : uint { WM_IME_KEYUP = 0x0291 }
1673 -// #endif /* WINVER >= 0x0400 */
1674 -
1675 -// #if((_WIN32_WINNT >= 0x0400) || (WINVER >= 0x0500))
1676 -enum : uint { WM_MOUSEHOVER = 0x02A1 }
1677 -enum : uint { WM_MOUSELEAVE = 0x02A3 }
1678 -// #endif
1679 -// #if(WINVER >= 0x0500)
1680 -enum : uint { WM_NCMOUSEHOVER = 0x02A0 }
1681 -enum : uint { WM_NCMOUSELEAVE = 0x02A2 }
1682 -// #endif /* WINVER >= 0x0500 */
1683 -
1684 -// #if(_WIN32_WINNT >= 0x0501)
1685 -enum : uint { WM_WTSSESSION_CHANGE = 0x02B1 }
1686 -
1687 -enum : uint { WM_TABLET_FIRST = 0x02c0 }
1688 -enum : uint { WM_TABLET_LAST = 0x02df }
1689 -// #endif /* _WIN32_WINNT >= 0x0501 */
1690 -
1691 -enum : uint { WM_CUT = 0x0300 }
1692 -enum : uint { WM_COPY = 0x0301 }
1693 -enum : uint { WM_PASTE = 0x0302 }
1694 -enum : uint { WM_CLEAR = 0x0303 }
1695 -enum : uint { WM_UNDO = 0x0304 }
1696 -enum : uint { WM_RENDERFORMAT = 0x0305 }
1697 -enum : uint { WM_RENDERALLFORMATS = 0x0306 }
1698 -enum : uint { WM_DESTROYCLIPBOARD = 0x0307 }
1699 -enum : uint { WM_DRAWCLIPBOARD = 0x0308 }
1700 -enum : uint { WM_PAINTCLIPBOARD = 0x0309 }
1701 -enum : uint { WM_VSCROLLCLIPBOARD = 0x030A }
1702 -enum : uint { WM_SIZECLIPBOARD = 0x030B }
1703 -enum : uint { WM_ASKCBFORMATNAME = 0x030C }
1704 -enum : uint { WM_CHANGECBCHAIN = 0x030D }
1705 -enum : uint { WM_HSCROLLCLIPBOARD = 0x030E }
1706 -enum : uint { WM_QUERYNEWPALETTE = 0x030F }
1707 -enum : uint { WM_PALETTEISCHANGING = 0x0310 }
1708 -enum : uint { WM_PALETTECHANGED = 0x0311 }
1709 -enum : uint { WM_HOTKEY = 0x0312 }
1710 -
1711 -// #if(WINVER >= 0x0400)
1712 -enum : uint { WM_PRINT = 0x0317 }
1713 -enum : uint { WM_PRINTCLIENT = 0x0318 }
1714 -// #endif /* WINVER >= 0x0400 */
1715 -
1716 -// #if(_WIN32_WINNT >= 0x0500)
1717 -enum : uint { WM_APPCOMMAND = 0x0319 }
1718 -// #endif /* _WIN32_WINNT >= 0x0500 */
1719 -
1720 -// #if(_WIN32_WINNT >= 0x0501)
1721 -enum : uint { WM_THEMECHANGED = 0x031A }
1722 -// #endif /* _WIN32_WINNT >= 0x0501 */
1723 -
1724 -// #if(WINVER >= 0x0400)
1725 -
1726 -enum : uint { WM_HANDHELDFIRST = 0x0358 }
1727 -enum : uint { WM_HANDHELDLAST = 0x035F }
1728 -
1729 -enum : uint { WM_AFXFIRST = 0x0360 }
1730 -enum : uint { WM_AFXLAST = 0x037F }
1731 -// #endif /* WINVER >= 0x0400 */
1732 -
1733 -enum : uint { WM_PENWINFIRST = 0x0380 }
1734 -enum : uint { WM_PENWINLAST = 0x038F }
1735 -
1736 -// #if(WINVER >= 0x0400)
1737 -enum : uint { WM_APP = 0x8000 }
1738 -// #endif /* WINVER >= 0x0400 */
1739 -
1740 -enum : uint { WM_USER = 0x0400 }
1741 -
1742 -// #if(WINVER >= 0x0400)
1743 -
1744 -enum : uint { WMSZ_LEFT = 1 }
1745 -enum : uint { WMSZ_RIGHT = 2 }
1746 -enum : uint { WMSZ_TOP = 3 }
1747 -enum : uint { WMSZ_TOPLEFT = 4 }
1748 -enum : uint { WMSZ_TOPRIGHT = 5 }
1749 -enum : uint { WMSZ_BOTTOM = 6 }
1750 -enum : uint { WMSZ_BOTTOMLEFT = 7 }
1751 -enum : uint { WMSZ_BOTTOMRIGHT = 8 }
1752 -// #endif /* WINVER >= 0x0400 */
1753 -
1754 -// #ifndef NONCMESSAGES
1755 -
1756 -enum { HTERROR = -2 }
1757 -enum { HTTRANSPARENT = -1 }
1758 -enum : uint { HTNOWHERE = 0 }
1759 -enum : uint { HTCLIENT = 1 }
1760 -enum : uint { HTCAPTION = 2 }
1761 -enum : uint { HTSYSMENU = 3 }
1762 -enum : uint { HTGROWBOX = 4 }
1763 -alias HTGROWBOX HTSIZE;
1764 -enum : uint { HTMENU = 5 }
1765 -enum : uint { HTHSCROLL = 6 }
1766 -enum : uint { HTVSCROLL = 7 }
1767 -enum : uint { HTMINBUTTON = 8 }
1768 -enum : uint { HTMAXBUTTON = 9 }
1769 -enum : uint { HTLEFT = 10 }
1770 -enum : uint { HTRIGHT = 11 }
1771 -enum : uint { HTTOP = 12 }
1772 -enum : uint { HTTOPLEFT = 13 }
1773 -enum : uint { HTTOPRIGHT = 14 }
1774 -enum : uint { HTBOTTOM = 15 }
1775 -enum : uint { HTBOTTOMLEFT = 16 }
1776 -enum : uint { HTBOTTOMRIGHT = 17 }
1777 -enum : uint { HTBORDER = 18 }
1778 -alias HTMINBUTTON HTREDUCE;
1779 -alias HTMAXBUTTON HTZOOM;
1780 -alias HTLEFT HTSIZEFIRST;
1781 -alias HTBOTTOMRIGHT HTSIZELAST;
1782 -// #if(WINVER >= 0x0400)
1783 -enum : uint { HTOBJECT = 19 }
1784 -enum : uint { HTCLOSE = 20 }
1785 -enum : uint { HTHELP = 21 }
1786 -// #endif /* WINVER >= 0x0400 */
1787 -
1788 -enum : uint { SMTO_NORMAL = 0x0000 }
1789 -enum : uint { SMTO_BLOCK = 0x0001 }
1790 -enum : uint { SMTO_ABORTIFHUNG = 0x0002 }
1791 -// #if(WINVER >= 0x0500)
1792 -enum : uint { SMTO_NOTIMEOUTIFNOTHUNG = 0x0008 }
1793 -// #endif /* WINVER >= 0x0500 */
1794 -// #endif /* !NONCMESSAGES */
1795 -
1796 -enum : uint { MA_ACTIVATE = 1 }
1797 -enum : uint { MA_ACTIVATEANDEAT = 2 }
1798 -enum : uint { MA_NOACTIVATE = 3 }
1799 -enum : uint { MA_NOACTIVATEANDEAT = 4 }
1800 -
1801 -enum : uint { ICON_SMALL = 0 }
1802 -enum : uint { ICON_BIG = 1 }
1803 -// #if(_WIN32_WINNT >= 0x0501)
1804 -enum : uint { ICON_SMALL2 = 2 }
1805 -// #endif /* _WIN32_WINNT >= 0x0501 */
1806 -
1807 -extern(Windows) export UINT RegisterWindowMessageA(
1808 - LPCSTR lpString);
1809 -extern(Windows) export UINT RegisterWindowMessageW(
1810 - LPCWSTR lpString);
1811 -// #ifdef UNICODE
1812 -alias RegisterWindowMessageW RegisterWindowMessage;
1813 -// #else
1814 -// #...
1815 -// #endif // !UNICODE
1816 -
1817 -enum : uint { SIZE_RESTORED = 0 }
1818 -enum : uint { SIZE_MINIMIZED = 1 }
1819 -enum : uint { SIZE_MAXIMIZED = 2 }
1820 -enum : uint { SIZE_MAXSHOW = 3 }
1821 -enum : uint { SIZE_MAXHIDE = 4 }
1822 -
1823 -alias SIZE_RESTORED SIZENORMAL;
1824 -alias SIZE_MINIMIZED SIZEICONIC;
1825 -alias SIZE_MAXIMIZED SIZEFULLSCREEN;
1826 -alias SIZE_MAXSHOW SIZEZOOMSHOW;
1827 -alias SIZE_MAXHIDE SIZEZOOMHIDE;
1828 -
1829 -struct tagWINDOWPOS {
1830 - HWND hwnd;
1831 - HWND hwndInsertAfter;
1832 - int x;
1833 - int y;
1834 - int cx;
1835 - int cy;
1836 - UINT flags;
1837 -}
1838 -alias tagWINDOWPOS WINDOWPOS;
1839 -alias tagWINDOWPOS* LPWINDOWPOS;
1840 -alias tagWINDOWPOS* PWINDOWPOS;
1841 -
1842 -struct tagNCCALCSIZE_PARAMS {
1843 - RECT rgrc[3];
1844 - PWINDOWPOS lppos;
1845 -}
1846 -alias tagNCCALCSIZE_PARAMS NCCALCSIZE_PARAMS;
1847 -alias tagNCCALCSIZE_PARAMS* LPNCCALCSIZE_PARAMS;
1848 -
1849 -enum : uint { WVR_ALIGNTOP = 0x0010 }
1850 -enum : uint { WVR_ALIGNLEFT = 0x0020 }
1851 -enum : uint { WVR_ALIGNBOTTOM = 0x0040 }
1852 -enum : uint { WVR_ALIGNRIGHT = 0x0080 }
1853 -enum : uint { WVR_HREDRAW = 0x0100 }
1854 -enum : uint { WVR_VREDRAW = 0x0200 }
1855 -enum : uint { WVR_REDRAW = WVR_HREDRAW | WVR_VREDRAW }
1856 -enum : uint { WVR_VALIDRECTS = 0x0400 }
1857 -
1858 -// #ifndef NOKEYSTATES
1859 -
1860 -enum : uint { MK_LBUTTON = 0x0001 }
1861 -enum : uint { MK_RBUTTON = 0x0002 }
1862 -enum : uint { MK_SHIFT = 0x0004 }
1863 -enum : uint { MK_CONTROL = 0x0008 }
1864 -enum : uint { MK_MBUTTON = 0x0010 }
1865 -// #if(_WIN32_WINNT >= 0x0500)
1866 -enum : uint { MK_XBUTTON1 = 0x0020 }
1867 -enum : uint { MK_XBUTTON2 = 0x0040 }
1868 -// #endif /* _WIN32_WINNT >= 0x0500 */
1869 -
1870 -// #endif /* !NOKEYSTATES */
1871 -
1872 -// #if(_WIN32_WINNT >= 0x0400)
1873 -// #ifndef NOTRACKMOUSEEVENT
1874 -
1875 -enum : uint { TME_HOVER = 0x00000001 }
1876 -enum : uint { TME_LEAVE = 0x00000002 }
1877 -// #if(WINVER >= 0x0500)
1878 -enum : uint { TME_NONCLIENT = 0x00000010 }
1879 -// #endif /* WINVER >= 0x0500 */
1880 -enum : uint { TME_QUERY = 0x40000000 }
1881 -enum : uint { TME_CANCEL = 0x80000000 }
1882 -
1883 -enum : uint { HOVER_DEFAULT = 0xFFFFFFFF }
1884 -// #endif /* _WIN32_WINNT >= 0x0400 */
1885 -
1886 -// #if(_WIN32_WINNT >= 0x0400)
1887 -struct tagTRACKMOUSEEVENT {
1888 - DWORD cbSize;
1889 - DWORD dwFlags;
1890 - HWND hwndTrack;
1891 - DWORD dwHoverTime;
1892 -}
1893 -alias tagTRACKMOUSEEVENT TRACKMOUSEEVENT;
1894 -alias tagTRACKMOUSEEVENT* LPTRACKMOUSEEVENT;
1895 -
1896 -extern(Windows) export BOOL TrackMouseEvent(
1897 - LPTRACKMOUSEEVENT lpEventTrack);
1898 -// #endif /* _WIN32_WINNT >= 0x0400 */
1899 -
1900 -// #if(_WIN32_WINNT >= 0x0400)
1901 -
1902 -// #endif /* !NOTRACKMOUSEEVENT */
1903 -// #endif /* _WIN32_WINNT >= 0x0400 */
1904 -
1905 -// #endif /* !NOWINMESSAGES */
1906 -
1907 -// #ifndef NOWINSTYLES
1908 -
1909 -enum : uint { WS_OVERLAPPED = 0x00000000 }
1910 -enum : uint { WS_POPUP = 0x80000000 }
1911 -enum : uint { WS_CHILD = 0x40000000 }
1912 -enum : uint { WS_MINIMIZE = 0x20000000 }
1913 -enum : uint { WS_VISIBLE = 0x10000000 }
1914 -enum : uint { WS_DISABLED = 0x08000000 }
1915 -enum : uint { WS_CLIPSIBLINGS = 0x04000000 }
1916 -enum : uint { WS_CLIPCHILDREN = 0x02000000 }
1917 -enum : uint { WS_MAXIMIZE = 0x01000000 }
1918 -enum : uint { WS_CAPTION = 0x00C00000 }
1919 -enum : uint { WS_BORDER = 0x00800000 }
1920 -enum : uint { WS_DLGFRAME = 0x00400000 }
1921 -enum : uint { WS_VSCROLL = 0x00200000 }
1922 -enum : uint { WS_HSCROLL = 0x00100000 }
1923 -enum : uint { WS_SYSMENU = 0x00080000 }
1924 -enum : uint { WS_THICKFRAME = 0x00040000 }
1925 -enum : uint { WS_GROUP = 0x00020000 }
1926 -enum : uint { WS_TABSTOP = 0x00010000 }
1927 -
1928 -enum : uint { WS_MINIMIZEBOX = 0x00020000 }
1929 -enum : uint { WS_MAXIMIZEBOX = 0x00010000 }
1930 -
1931 -alias WS_OVERLAPPED WS_TILED;
1932 -alias WS_MINIMIZE WS_ICONIC;
1933 -alias WS_THICKFRAME WS_SIZEBOX;
1934 -// #define WS_TILEDWINDOW WS_OVERLAPPEDWINDOW
1935 -
1936 -enum : uint { WS_OVERLAPPEDWINDOW = WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX }
1937 -
1938 -enum : uint { WS_POPUPWINDOW = WS_POPUP | WS_BORDER | WS_SYSMENU }
1939 -
1940 -enum : uint { WS_CHILDWINDOW = WS_CHILD }
1941 -
1942 -enum : uint { WS_EX_DLGMODALFRAME = 0x00000001 }
1943 -enum : uint { WS_EX_NOPARENTNOTIFY = 0x00000004 }
1944 -enum : uint { WS_EX_TOPMOST = 0x00000008 }
1945 -enum : uint { WS_EX_ACCEPTFILES = 0x00000010 }
1946 -enum : uint { WS_EX_TRANSPARENT = 0x00000020 }
1947 -// #if(WINVER >= 0x0400)
1948 -enum : uint { WS_EX_MDICHILD = 0x00000040 }
1949 -enum : uint { WS_EX_TOOLWINDOW = 0x00000080 }
1950 -enum : uint { WS_EX_WINDOWEDGE = 0x00000100 }
1951 -enum : uint { WS_EX_CLIENTEDGE = 0x00000200 }
1952 -enum : uint { WS_EX_CONTEXTHELP = 0x00000400 }
1953 -
1954 -// #endif /* WINVER >= 0x0400 */
1955 -// #if(WINVER >= 0x0400)
1956 -
1957 -enum : uint { WS_EX_RIGHT = 0x00001000 }
1958 -enum : uint { WS_EX_LEFT = 0x00000000 }
1959 -enum : uint { WS_EX_RTLREADING = 0x00002000 }
1960 -enum : uint { WS_EX_LTRREADING = 0x00000000 }
1961 -enum : uint { WS_EX_LEFTSCROLLBAR = 0x00004000 }
1962 -enum : uint { WS_EX_RIGHTSCROLLBAR = 0x00000000 }
1963 -
1964 -enum : uint { WS_EX_CONTROLPARENT = 0x00010000 }
1965 -enum : uint { WS_EX_STATICEDGE = 0x00020000 }
1966 -enum : uint { WS_EX_APPWINDOW = 0x00040000 }
1967 -
1968 -enum : uint { WS_EX_OVERLAPPEDWINDOW = WS_EX_WINDOWEDGE | WS_EX_CLIENTEDGE }
1969 -enum : uint { WS_EX_PALETTEWINDOW = WS_EX_WINDOWEDGE | WS_EX_TOOLWINDOW | WS_EX_TOPMOST }
1970 -
1971 -// #endif /* WINVER >= 0x0400 */
1972 -
1973 -// #if(_WIN32_WINNT >= 0x0500)
1974 -enum : uint { WS_EX_LAYERED = 0x00080000 }
1975 -
1976 -// #endif /* _WIN32_WINNT >= 0x0500 */
1977 -
1978 -// #if(WINVER >= 0x0500)
1979 -enum : uint { WS_EX_NOINHERITLAYOUT = 0x00100000 }
1980 -enum : uint { WS_EX_LAYOUTRTL = 0x00400000 }
1981 -// #endif /* WINVER >= 0x0500 */
1982 -
1983 -// #if(_WIN32_WINNT >= 0x0501)
1984 -enum : uint { WS_EX_COMPOSITED = 0x02000000 }
1985 -// #endif /* _WIN32_WINNT >= 0x0501 */
1986 -// #if(_WIN32_WINNT >= 0x0500)
1987 -enum : uint { WS_EX_NOACTIVATE = 0x08000000 }
1988 -// #endif /* _WIN32_WINNT >= 0x0500 */
1989 -
1990 -enum : uint { CS_VREDRAW = 0x0001 }
1991 -enum : uint { CS_HREDRAW = 0x0002 }
1992 -enum : uint { CS_DBLCLKS = 0x0008 }
1993 -enum : uint { CS_OWNDC = 0x0020 }
1994 -enum : uint { CS_CLASSDC = 0x0040 }
1995 -enum : uint { CS_PARENTDC = 0x0080 }
1996 -enum : uint { CS_NOCLOSE = 0x0200 }
1997 -enum : uint { CS_SAVEBITS = 0x0800 }
1998 -enum : uint { CS_BYTEALIGNCLIENT = 0x1000 }
1999 -enum : uint { CS_BYTEALIGNWINDOW = 0x2000 }
2000 -enum : uint { CS_GLOBALCLASS = 0x4000 }
2001 -
2002 -enum : uint { CS_IME = 0x00010000 }
2003 -// #if(_WIN32_WINNT >= 0x0501)
2004 -enum : uint { CS_DROPSHADOW = 0x00020000 }
2005 -// #endif /* _WIN32_WINNT >= 0x0501 */
2006 -
2007 -// #endif /* !NOWINSTYLES */
2008 -// #if(WINVER >= 0x0400)
2009 -
2010 -enum : uint { PRF_CHECKVISIBLE = 0x00000001 }
2011 -enum : uint { PRF_NONCLIENT = 0x00000002 }
2012 -enum : uint { PRF_CLIENT = 0x00000004 }
2013 -enum : uint { PRF_ERASEBKGND = 0x00000008 }
2014 -enum : uint { PRF_CHILDREN = 0x00000010 }
2015 -enum : uint { PRF_OWNED = 0x00000020 }
2016 -
2017 -enum : uint { BDR_RAISEDOUTER = 0x0001 }
2018 -enum : uint { BDR_SUNKENOUTER = 0x0002 }
2019 -enum : uint { BDR_RAISEDINNER = 0x0004 }
2020 -enum : uint { BDR_SUNKENINNER = 0x0008 }
2021 -
2022 -enum : uint { BDR_OUTER = BDR_RAISEDOUTER | BDR_SUNKENOUTER }
2023 -enum : uint { BDR_INNER = BDR_RAISEDINNER | BDR_SUNKENINNER }
2024 -enum : uint { BDR_RAISED = BDR_RAISEDOUTER | BDR_RAISEDINNER }
2025 -enum : uint { BDR_SUNKEN = BDR_SUNKENOUTER | BDR_SUNKENINNER }
2026 -
2027 -enum : uint { EDGE_RAISED = BDR_RAISEDOUTER | BDR_RAISEDINNER }
2028 -enum : uint { EDGE_SUNKEN = BDR_SUNKENOUTER | BDR_SUNKENINNER }
2029 -enum : uint { EDGE_ETCHED = BDR_SUNKENOUTER | BDR_RAISEDINNER }
2030 -enum : uint { EDGE_BUMP = BDR_RAISEDOUTER | BDR_SUNKENINNER }
2031 -
2032 -enum : uint { BF_LEFT = 0x0001 }
2033 -enum : uint { BF_TOP = 0x0002 }
2034 -enum : uint { BF_RIGHT = 0x0004 }
2035 -enum : uint { BF_BOTTOM = 0x0008 }
2036 -
2037 -enum : uint { BF_TOPLEFT = BF_TOP | BF_LEFT }
2038 -enum : uint { BF_TOPRIGHT = BF_TOP | BF_RIGHT }
2039 -enum : uint { BF_BOTTOMLEFT = BF_BOTTOM | BF_LEFT }
2040 -enum : uint { BF_BOTTOMRIGHT = BF_BOTTOM | BF_RIGHT }
2041 -enum : uint { BF_RECT = BF_LEFT | BF_TOP | BF_RIGHT | BF_BOTTOM }
2042 -
2043 -enum : uint { BF_DIAGONAL = 0x0010 }
2044 -
2045 -enum : uint { BF_DIAGONAL_ENDTOPRIGHT = BF_DIAGONAL | BF_TOP | BF_RIGHT }
2046 -enum : uint { BF_DIAGONAL_ENDTOPLEFT = BF_DIAGONAL | BF_TOP | BF_LEFT }
2047 -enum : uint { BF_DIAGONAL_ENDBOTTOMLEFT = BF_DIAGONAL | BF_BOTTOM | BF_LEFT }
2048 -enum : uint { BF_DIAGONAL_ENDBOTTOMRIGHT = BF_DIAGONAL | BF_BOTTOM | BF_RIGHT }
2049 -
2050 -enum : uint { BF_MIDDLE = 0x0800 }
2051 -enum : uint { BF_SOFT = 0x1000 }
2052 -enum : uint { BF_ADJUST = 0x2000 }
2053 -enum : uint { BF_FLAT = 0x4000 }
2054 -enum : uint { BF_MONO = 0x8000 }
2055 -
2056 -extern(Windows) export BOOL DrawEdge(
2057 - HDC hdc,
2058 - LPRECT qrc,
2059 - UINT edge,
2060 - UINT grfFlags);
2061 -
2062 -enum : uint { DFC_CAPTION = 1 }
2063 -enum : uint { DFC_MENU = 2 }
2064 -enum : uint { DFC_SCROLL = 3 }
2065 -enum : uint { DFC_BUTTON = 4 }
2066 -// #if(WINVER >= 0x0500)
2067 -enum : uint { DFC_POPUPMENU = 5 }
2068 -// #endif /* WINVER >= 0x0500 */
2069 -
2070 -enum : uint { DFCS_CAPTIONCLOSE = 0x0000 }
2071 -enum : uint { DFCS_CAPTIONMIN = 0x0001 }
2072 -enum : uint { DFCS_CAPTIONMAX = 0x0002 }
2073 -enum : uint { DFCS_CAPTIONRESTORE = 0x0003 }
2074 -enum : uint { DFCS_CAPTIONHELP = 0x0004 }
2075 -
2076 -enum : uint { DFCS_MENUARROW = 0x0000 }
2077 -enum : uint { DFCS_MENUCHECK = 0x0001 }
2078 -enum : uint { DFCS_MENUBULLET = 0x0002 }
2079 -enum : uint { DFCS_MENUARROWRIGHT = 0x0004 }
2080 -enum : uint { DFCS_SCROLLUP = 0x0000 }
2081 -enum : uint { DFCS_SCROLLDOWN = 0x0001 }
2082 -enum : uint { DFCS_SCROLLLEFT = 0x0002 }
2083 -enum : uint { DFCS_SCROLLRIGHT = 0x0003 }
2084 -enum : uint { DFCS_SCROLLCOMBOBOX = 0x0005 }
2085 -enum : uint { DFCS_SCROLLSIZEGRIP = 0x0008 }
2086 -enum : uint { DFCS_SCROLLSIZEGRIPRIGHT = 0x0010 }
2087 -
2088 -enum : uint { DFCS_BUTTONCHECK = 0x0000 }
2089 -enum : uint { DFCS_BUTTONRADIOIMAGE = 0x0001 }
2090 -enum : uint { DFCS_BUTTONRADIOMASK = 0x0002 }
2091 -enum : uint { DFCS_BUTTONRADIO = 0x0004 }
2092 -enum : uint { DFCS_BUTTON3STATE = 0x0008 }
2093 -enum : uint { DFCS_BUTTONPUSH = 0x0010 }
2094 -
2095 -enum : uint { DFCS_INACTIVE = 0x0100 }
2096 -enum : uint { DFCS_PUSHED = 0x0200 }
2097 -enum : uint { DFCS_CHECKED = 0x0400 }
2098 -
2099 -// #if(WINVER >= 0x0500)
2100 -enum : uint { DFCS_TRANSPARENT = 0x0800 }
2101 -enum : uint { DFCS_HOT = 0x1000 }
2102 -// #endif /* WINVER >= 0x0500 */
2103 -
2104 -enum : uint { DFCS_ADJUSTRECT = 0x2000 }
2105 -enum : uint { DFCS_FLAT = 0x4000 }
2106 -enum : uint { DFCS_MONO = 0x8000 }
2107 -
2108 -extern(Windows) export BOOL DrawFrameControl(
2109 - HDC,
2110 - LPRECT,
2111 - UINT,
2112 - UINT);
2113 -
2114 -enum : uint { DC_ACTIVE = 0x0001 }
2115 -enum : uint { DC_SMALLCAP = 0x0002 }
2116 -enum : uint { DC_ICON = 0x0004 }
2117 -enum : uint { DC_TEXT = 0x0008 }
2118 -enum : uint { DC_INBUTTON = 0x0010 }
2119 -// #if(WINVER >= 0x0500)
2120 -enum : uint { DC_GRADIENT = 0x0020 }
2121 -// #endif /* WINVER >= 0x0500 */
2122 -// #if(_WIN32_WINNT >= 0x0501)
2123 -enum : uint { DC_BUTTONS = 0x1000 }
2124 -// #endif /* _WIN32_WINNT >= 0x0501 */
2125 -
2126 -extern(Windows) export BOOL DrawCaption(HWND, HDC, RECT *, UINT);
2127 -
2128 -enum : uint { IDANI_OPEN = 1 }
2129 -enum : uint { IDANI_CAPTION = 3 }
2130 -
2131 -extern(Windows) export BOOL DrawAnimatedRects(
2132 - HWND hwnd,
2133 - int idAni,
2134 - RECT * lprcFrom,
2135 - RECT * lprcTo);
2136 -
2137 -// #endif /* WINVER >= 0x0400 */
2138 -
2139 -// #ifndef NOCLIPBOARD
2140 -
2141 -enum : uint { CF_TEXT = 1 }
2142 -enum : uint { CF_BITMAP = 2 }
2143 -enum : uint { CF_METAFILEPICT = 3 }
2144 -enum : uint { CF_SYLK = 4 }
2145 -enum : uint { CF_DIF = 5 }
2146 -enum : uint { CF_TIFF = 6 }
2147 -enum : uint { CF_OEMTEXT = 7 }
2148 -enum : uint { CF_DIB = 8 }
2149 -enum : uint { CF_PALETTE = 9 }
2150 -enum : uint { CF_PENDATA = 10 }
2151 -enum : uint { CF_RIFF = 11 }
2152 -enum : uint { CF_WAVE = 12 }
2153 -enum : uint { CF_UNICODETEXT = 13 }
2154 -enum : uint { CF_ENHMETAFILE = 14 }
2155 -// #if(WINVER >= 0x0400)
2156 -enum : uint { CF_HDROP = 15 }
2157 -enum : uint { CF_LOCALE = 16 }
2158 -// #endif /* WINVER >= 0x0400 */
2159 -// #if(WINVER >= 0x0500)
2160 -enum : uint { CF_DIBV5 = 17 }
2161 -// #endif /* WINVER >= 0x0500 */
2162 -
2163 -// #if(WINVER >= 0x0500)
2164 -enum : uint { CF_MAX = 18 }
2165 -// #elif(WINVER >= 0x0400)
2166 -// #...
2167 -// #else
2168 -// #...
2169 -// #endif
2170 -
2171 -enum : uint { CF_OWNERDISPLAY = 0x0080 }
2172 -enum : uint { CF_DSPTEXT = 0x0081 }
2173 -enum : uint { CF_DSPBITMAP = 0x0082 }
2174 -enum : uint { CF_DSPMETAFILEPICT = 0x0083 }
2175 -enum : uint { CF_DSPENHMETAFILE = 0x008E }
2176 -
2177 -enum : uint { CF_PRIVATEFIRST = 0x0200 }
2178 -enum : uint { CF_PRIVATELAST = 0x02FF }
2179 -
2180 -enum : uint { CF_GDIOBJFIRST = 0x0300 }
2181 -enum : uint { CF_GDIOBJLAST = 0x03FF }
2182 -
2183 -// #endif /* !NOCLIPBOARD */
2184 -
2185 -alias TRUE FVIRTKEY;
2186 -enum : uint { FNOINVERT = 0x02 }
2187 -enum : uint { FSHIFT = 0x04 }
2188 -enum : uint { FCONTROL = 0x08 }
2189 -enum : uint { FALT = 0x10 }
2190 -
2191 -struct tagACCEL {
2192 -// #ifndef _MAC
2193 - BYTE fVirt;
2194 - WORD key;
2195 - WORD cmd;
2196 -// #else
2197 -// ...
2198 -// #endif
2199 -}
2200 -alias tagACCEL ACCEL;
2201 -alias tagACCEL* LPACCEL;
2202 -
2203 -struct tagPAINTSTRUCT {
2204 - HDC hdc;
2205 - BOOL fErase;
2206 - RECT rcPaint;
2207 - BOOL fRestore;
2208 - BOOL fIncUpdate;
2209 - BYTE rgbReserved[32];
2210 -}
2211 -alias tagPAINTSTRUCT PAINTSTRUCT;
2212 -alias tagPAINTSTRUCT* PPAINTSTRUCT;
2213 -alias tagPAINTSTRUCT* NPPAINTSTRUCT;
2214 -alias tagPAINTSTRUCT* LPPAINTSTRUCT;
2215 -
2216 -struct tagCREATESTRUCTA {
2217 - LPVOID lpCreateParams;
2218 - HINSTANCE hInstance;
2219 - HMENU hMenu;
2220 - HWND hwndParent;
2221 - int cy;
2222 - int cx;
2223 - int y;
2224 - int x;
2225 - LONG style;
2226 - LPCSTR lpszName;
2227 - LPCSTR lpszClass;
2228 - DWORD dwExStyle;
2229 -}
2230 -alias tagCREATESTRUCTA CREATESTRUCTA;
2231 -alias tagCREATESTRUCTA* LPCREATESTRUCTA;
2232 -
2233 -struct tagCREATESTRUCTW {
2234 - LPVOID lpCreateParams;
2235 - HINSTANCE hInstance;
2236 - HMENU hMenu;
2237 - HWND hwndParent;
2238 - int cy;
2239 - int cx;
2240 - int y;
2241 - int x;
2242 - LONG style;
2243 - LPCWSTR lpszName;
2244 - LPCWSTR lpszClass;
2245 - DWORD dwExStyle;
2246 -}
2247 -alias tagCREATESTRUCTW CREATESTRUCTW;
2248 -alias tagCREATESTRUCTW* LPCREATESTRUCTW;
2249 -
2250 -// #ifdef UNICODE
2251 -alias CREATESTRUCTW CREATESTRUCT;
2252 -alias LPCREATESTRUCTW LPCREATESTRUCT;
2253 -// #else
2254 -// ...
2255 -// #endif // UNICODE
2256 -
2257 -struct tagWINDOWPLACEMENT {
2258 - UINT length;
2259 - UINT flags;
2260 - UINT showCmd;
2261 - POINT ptMinPosition;
2262 - POINT ptMaxPosition;
2263 - RECT rcNormalPosition;
2264 -// #ifdef _MAC
2265 -// ...
2266 -// #endif
2267 -}
2268 -alias tagWINDOWPLACEMENT WINDOWPLACEMENT;
2269 -
2270 -alias WINDOWPLACEMENT* PWINDOWPLACEMENT;
2271 -alias WINDOWPLACEMENT* LPWINDOWPLACEMENT;
2272 -
2273 -enum : uint { WPF_SETMINPOSITION = 0x0001 }
2274 -enum : uint { WPF_RESTORETOMAXIMIZED = 0x0002 }
2275 -// #if(_WIN32_WINNT >= 0x0500)
2276 -enum : uint { WPF_ASYNCWINDOWPLACEMENT = 0x0004 }
2277 -// #endif /* _WIN32_WINNT >= 0x0500 */
2278 -
2279 -// #if(WINVER >= 0x0400)
2280 -struct tagNMHDR {
2281 - HWND hwndFrom;
2282 - UINT_PTR idFrom;
2283 - UINT code;
2284 -}
2285 -alias tagNMHDR NMHDR;
2286 -
2604 +alias HANDLE HDEVNOTIFY;
2605 +
2606 +struct ACCEL {
2607 + BYTE fVirt;
2608 + WORD key;
2609 + WORD cmd;
2610 +}
2611 +alias ACCEL* LPACCEL;
2612 +
2613 +struct ACCESSTIMEOUT {
2614 + UINT cbSize = ACCESSTIMEOUT.sizeof;
2615 + DWORD dwFlags;
2616 + DWORD iTimeOutMSec;
2617 +}
2618 +alias ACCESSTIMEOUT* LPACCESSTIMEOUT;
2619 +
2620 +struct ANIMATIONINFO {
2621 + UINT cbSize = ANIMATIONINFO.sizeof;
2622 + int iMinAnimate;
2623 +}
2624 +alias ANIMATIONINFO* LPANIMATIONINFO;
2625 +
2626 +struct CREATESTRUCTA {
2627 + LPVOID lpCreateParams;
2628 + HINSTANCE hInstance;
2629 + HMENU hMenu;
2630 + HWND hwndParent;
2631 + int cy;
2632 + int cx;
2633 + int y;
2634 + int x;
2635 + LONG style;
2636 + LPCSTR lpszName;
2637 + LPCSTR lpszClass;
2638 + DWORD dwExStyle;
2639 +}
2640 +alias CREATESTRUCTA* LPCREATESTRUCTA;
2641 +
2642 +struct CREATESTRUCTW {
2643 + LPVOID lpCreateParams;
2644 + HINSTANCE hInstance;
2645 + HMENU hMenu;
2646 + HWND hwndParent;
2647 + int cy;
2648 + int cx;
2649 + int y;
2650 + int x;
2651 + LONG style;
2652 + LPCWSTR lpszName;
2653 + LPCWSTR lpszClass;
2654 + DWORD dwExStyle;
2655 +}
2656 +alias CREATESTRUCTW* LPCREATESTRUCTW;
2657 +
2658 +struct CBT_CREATEWNDA {
2659 + LPCREATESTRUCTA lpcs;
2660 + HWND hwndInsertAfter;
2661 +}
2662 +alias CBT_CREATEWNDA* LPCBT_CREATEWNDA;
2663 +
2664 +struct CBT_CREATEWNDW {
2665 + LPCREATESTRUCTW lpcs;
2666 + HWND hwndInsertAfter;
2667 +}
2668 +alias CBT_CREATEWNDW* LPCBT_CREATEWNDW;
2669 +
2670 +struct CBTACTIVATESTRUCT {
2671 + BOOL fMouse;
2672 + HWND hWndActive;
2673 +}
2674 +alias CBTACTIVATESTRUCT* LPCBTACTIVATESTRUCT;
2675 +
2676 +struct CLIENTCREATESTRUCT {
2677 + HANDLE hWindowMenu;
2678 + UINT idFirstChild;
2679 +}
2680 +alias CLIENTCREATESTRUCT* LPCLIENTCREATESTRUCT;
2681 +
2682 +struct COMPAREITEMSTRUCT {
2683 + UINT CtlType;
2684 + UINT CtlID;
2685 + HWND hwndItem;
2686 + UINT itemID1;
2687 + DWORD itemData1;
2688 + UINT itemID2;
2689 + DWORD itemData2;
2690 + DWORD dwLocaleId;
2691 +}
2692 +alias COMPAREITEMSTRUCT* LPCOMPAREITEMSTRUCT;
2693 +
2694 +struct COPYDATASTRUCT {
2695 + DWORD dwData;
2696 + DWORD cbData;
2697 + PVOID lpData;
2698 +}
2699 +alias COPYDATASTRUCT* PCOPYDATASTRUCT;
2700 +
2701 +struct CURSORSHAPE {
2702 + int xHotSpot;
2703 + int yHotSpot;
2704 + int cx;
2705 + int cy;
2706 + int cbWidth;
2707 + BYTE Planes;
2708 + BYTE BitsPixel;
2709 +}
2710 +alias CURSORSHAPE* LPCURSORSHAPE;
2711 +
2712 +struct CWPRETSTRUCT {
2713 + LRESULT lResult;
2714 + LPARAM lParam;
2715 + WPARAM wParam;
2716 + DWORD message;
2717 + HWND hwnd;
2718 +}
2719 +
2720 +struct CWPSTRUCT {
2721 + LPARAM lParam;
2722 + WPARAM wParam;
2723 + UINT message;
2724 + HWND hwnd;
2725 +}
2726 +alias CWPSTRUCT* PCWPSTRUCT;
2727 +
2728 +struct DEBUGHOOKINFO {
2729 + DWORD idThread;
2730 + DWORD idThreadInstaller;
2731 + LPARAM lParam;
2732 + WPARAM wParam;
2733 + int code;
2734 +}
2735 +alias DEBUGHOOKINFO* PDEBUGHOOKINFO, LPDEBUGHOOKINFO;
2736 +
2737 +struct DELETEITEMSTRUCT {
2738 + UINT CtlType;
2739 + UINT CtlID;
2740 + UINT itemID;
2741 + HWND hwndItem;
2742 + UINT itemData;
2743 +}
2744 +alias DELETEITEMSTRUCT* PDELETEITEMSTRUCT, LPDELETEITEMSTRUCT;
2745 +
2746 +align(2):
2747 +struct DLGITEMTEMPLATE {
2748 + DWORD style;
2749 + DWORD dwExtendedStyle;
2750 + short x;
2751 + short y;
2752 + short cx;
2753 + short cy;
2754 + WORD id;
2755 +}
2756 +alias DLGITEMTEMPLATE* LPDLGITEMTEMPLATE;
2757 +
2758 +struct DLGTEMPLATE {
2759 + DWORD style;
2760 + DWORD dwExtendedStyle;
2761 + WORD cdit;
2762 + short x;
2763 + short y;
2764 + short cx;
2765 + short cy;
2766 +}
2767 +alias DLGTEMPLATE* LPDLGTEMPLATE, LPDLGTEMPLATEA, LPDLGTEMPLATEW;
2768 +alias CPtr!(DLGTEMPLATE) LPCDLGTEMPLATE;
2769 +
2770 +align:
2771 +
2772 +struct DRAWITEMSTRUCT {
2773 + UINT CtlType;
2774 + UINT CtlID;
2775 + UINT itemID;
2776 + UINT itemAction;
2777 + UINT itemState;
2778 + HWND hwndItem;
2779 + HDC hDC;
2780 + RECT rcItem;
2781 + DWORD itemData;
2782 +}
2783 +alias DRAWITEMSTRUCT* LPDRAWITEMSTRUCT, PDRAWITEMSTRUCT;
2784 +
2785 +struct DRAWTEXTPARAMS {
2786 + UINT cbSize = DRAWTEXTPARAMS.sizeof;
2787 + int iTabLength;
2788 + int iLeftMargin;
2789 + int iRightMargin;
2790 + UINT uiLengthDrawn;
2791 +}
2792 +alias DRAWTEXTPARAMS* LPDRAWTEXTPARAMS;
2793 +
2794 +struct PAINTSTRUCT {
2795 + HDC hdc;
2796 + BOOL fErase;
2797 + RECT rcPaint;
2798 + BOOL fRestore;
2799 + BOOL fIncUpdate;
2800 + BYTE[32] rgbReserved;
2801 +}
2802 +alias PAINTSTRUCT* LPPAINTSTRUCT;
2803 +
2804 +struct MSG {
2805 + HWND hwnd;
2806 + UINT message;
2807 + WPARAM wParam;
2808 + LPARAM lParam;
2809 + DWORD time;
2810 + POINT pt;
2811 +}
2812 +alias MSG* LPMSG, PMSG;
2813 +
2814 +struct ICONINFO {
2815 + BOOL fIcon;
2816 + DWORD xHotspot;
2817 + DWORD yHotspot;
2818 + HBITMAP hbmMask;
2819 + HBITMAP hbmColor;
2820 +}
2821 +alias ICONINFO* PICONINFO;
2822 +
2823 +struct NMHDR {
2824 + HWND hwndFrom;
2825 + UINT idFrom;
2826 + UINT code;
2827 +}
2287 2828 alias NMHDR* LPNMHDR;
2288 2829
2289 -struct tagSTYLESTRUCT {
2290 - DWORD styleOld;
2291 - DWORD styleNew;
2292 -}
2293 -alias tagSTYLESTRUCT STYLESTRUCT;
2294 -alias tagSTYLESTRUCT* LPSTYLESTRUCT;
2295 -
2296 -// #endif /* WINVER >= 0x0400 */
2297 -
2298 -enum : uint { ODT_MENU = 1 }
2299 -enum : uint { ODT_LISTBOX = 2 }
2300 -enum : uint { ODT_COMBOBOX = 3 }
2301 -enum : uint { ODT_BUTTON = 4 }
2302 -// #if(WINVER >= 0x0400)
2303 -enum : uint { ODT_STATIC = 5 }
2304 -// #endif /* WINVER >= 0x0400 */
2305 -
2306 -enum : uint { ODA_DRAWENTIRE = 0x0001 }
2307 -enum : uint { ODA_SELECT = 0x0002 }
2308 -enum : uint { ODA_FOCUS = 0x0004 }
2309 -
2310 -enum : uint { ODS_SELECTED = 0x0001 }
2311 -enum : uint { ODS_GRAYED = 0x0002 }
2312 -enum : uint { ODS_DISABLED = 0x0004 }
2313 -enum : uint { ODS_CHECKED = 0x0008 }
2314 -enum : uint { ODS_FOCUS = 0x0010 }
2315 -// #if(WINVER >= 0x0400)
2316 -enum : uint { ODS_DEFAULT = 0x0020 }
2317 -enum : uint { ODS_COMBOBOXEDIT = 0x1000 }
2318 -// #endif /* WINVER >= 0x0400 */
2319 -// #if(WINVER >= 0x0500)
2320 -enum : uint { ODS_HOTLIGHT = 0x0040 }
2321 -enum : uint { ODS_INACTIVE = 0x0080 }
2322 -// #if(_WIN32_WINNT >= 0x0500)
2323 -enum : uint { ODS_NOACCEL = 0x0100 }
2324 -enum : uint { ODS_NOFOCUSRECT = 0x0200 }
2325 -// #endif /* _WIN32_WINNT >= 0x0500 */
2326 -// #endif /* WINVER >= 0x0500 */
2327 -
2328 -struct tagMEASUREITEMSTRUCT {
2329 - UINT CtlType;
2330 - UINT CtlID;
2331 - UINT itemID;
2332 - UINT itemWidth;
2333 - UINT itemHeight;
2334 - ULONG_PTR itemData;
2335 -}
2336 -alias tagMEASUREITEMSTRUCT MEASUREITEMSTRUCT;
2337 -alias tagMEASUREITEMSTRUCT* PMEASUREITEMSTRUCT;
2338 -alias tagMEASUREITEMSTRUCT* LPMEASUREITEMSTRUCT;
2339 -
2340 -struct tagDRAWITEMSTRUCT {
2341 - UINT CtlType;
2342 - UINT CtlID;
2343 - UINT itemID;
2344 - UINT itemAction;
2345 - UINT itemState;
2346 - HWND hwndItem;
2347 - HDC hDC;
2348 - RECT rcItem;
2349 - ULONG_PTR itemData;
2350 -}
2351 -alias tagDRAWITEMSTRUCT DRAWITEMSTRUCT;
2352 -alias tagDRAWITEMSTRUCT* PDRAWITEMSTRUCT;
2353 -alias tagDRAWITEMSTRUCT* LPDRAWITEMSTRUCT;
2354 -
2355 -struct tagDELETEITEMSTRUCT {
2356 - UINT CtlType;
2357 - UINT CtlID;
2358 - UINT itemID;
2359 - HWND hwndItem;
2360 - ULONG_PTR itemData;
2361 -}
2362 -alias tagDELETEITEMSTRUCT DELETEITEMSTRUCT;
2363 -alias tagDELETEITEMSTRUCT* PDELETEITEMSTRUCT;
2364 -alias tagDELETEITEMSTRUCT* LPDELETEITEMSTRUCT;
2365 -
2366 -struct tagCOMPAREITEMSTRUCT {
2367 - UINT CtlType;
2368 - UINT CtlID;
2369 - HWND hwndItem;
2370 - UINT itemID1;
2371 - ULONG_PTR itemData1;
2372 - UINT itemID2;
2373 - ULONG_PTR itemData2;
2374 - DWORD dwLocaleId;
2375 -}
2376 -alias tagCOMPAREITEMSTRUCT COMPAREITEMSTRUCT;
2377 -alias tagCOMPAREITEMSTRUCT* PCOMPAREITEMSTRUCT;
2378 -alias tagCOMPAREITEMSTRUCT* LPCOMPAREITEMSTRUCT;
2379 -
2380 -// #ifndef NOMSG
2381 -
2382 -extern(Windows) export BOOL GetMessageA(
2383 - LPMSG lpMsg,
2384 - HWND hWnd,
2385 - UINT wMsgFilterMin,
2386 - UINT wMsgFilterMax);
2387 -extern(Windows) export BOOL GetMessageW(
2388 - LPMSG lpMsg,
2389 - HWND hWnd,
2390 - UINT wMsgFilterMin,
2391 - UINT wMsgFilterMax);
2392 -// #ifdef UNICODE
2393 -alias GetMessageW GetMessage;
2394 -// #else
2395 -// #...
2396 -// #endif // !UNICODE
2397 -
2398 -extern(Windows) export BOOL TranslateMessage(
2399 - MSG *lpMsg);
2400 -
2401 -extern(Windows) export LRESULT DispatchMessageA(
2402 - MSG *lpMsg);
2403 -extern(Windows) export LRESULT DispatchMessageW(
2404 - MSG *lpMsg);
2405 -// #ifdef UNICODE
2406 -alias DispatchMessageW DispatchMessage;
2407 -// #else
2408 -// #...
2409 -// #endif // !UNICODE
2410 -
2411 -extern(Windows) export BOOL SetMessageQueue(
2412 - int cMessagesMax);
2413 -
2414 -extern(Windows) export BOOL PeekMessageA(
2415 - LPMSG lpMsg,
2416 - HWND hWnd,
2417 - UINT wMsgFilterMin,
2418 - UINT wMsgFilterMax,
2419 - UINT wRemoveMsg);
2420 -extern(Windows) export BOOL PeekMessageW(
2421 - LPMSG lpMsg,
2422 - HWND hWnd,
2423 - UINT wMsgFilterMin,
2424 - UINT wMsgFilterMax,
2425 - UINT wRemoveMsg);
2426 -// #ifdef UNICODE
2427 -alias PeekMessageW PeekMessage;
2428 -// #else
2429 -// #...
2430 -// #endif // !UNICODE
2431 -
2432 -enum : uint { PM_NOREMOVE = 0x0000 }
2433 -enum : uint { PM_REMOVE = 0x0001 }
2434 -enum : uint { PM_NOYIELD = 0x0002 }
2435 -// #if(WINVER >= 0x0500)
2436 -enum : uint { PM_QS_INPUT = QS_INPUT << 16 }
2437 -enum : uint { PM_QS_POSTMESSAGE = (QS_POSTMESSAGE | QS_HOTKEY | QS_TIMER) << 16 }
2438 -enum : uint { PM_QS_PAINT = QS_PAINT << 16 }
2439 -enum : uint { PM_QS_SENDMESSAGE = QS_SENDMESSAGE << 16 }
2440 -// #endif /* WINVER >= 0x0500 */
2441 -
2442 -// #endif /* !NOMSG */
2443 -
2444 -extern(Windows) export BOOL RegisterHotKey(
2445 - HWND hWnd,
2446 - int id,
2447 - UINT fsModifiers,
2448 - UINT vk);
2449 -
2450 -extern(Windows) export BOOL UnregisterHotKey(
2451 - HWND hWnd,
2452 - int id);
2453 -
2454 -enum : uint { MOD_ALT = 0x0001 }
2455 -enum : uint { MOD_CONTROL = 0x0002 }
2456 -enum : uint { MOD_SHIFT = 0x0004 }
2457 -enum : uint { MOD_WIN = 0x0008 }
2458 -
2459 -enum { IDHOT_SNAPWINDOW = -1 }
2460 -enum { IDHOT_SNAPDESKTOP = -2 }
2461 -
2462 -// #ifdef WIN_INTERNAL
2463 -// #ifndef LSTRING
2464 -// #...
2465 -// #endif /* LSTRING */
2466 -// #ifndef LFILEIO
2467 -// #...
2468 -// #endif /* LFILEIO */
2469 -// #endif /* WIN_INTERNAL */
2470 -
2471 -// #if(WINVER >= 0x0400)
2472 -
2473 -enum : uint { ENDSESSION_LOGOFF = 0x80000000 }
2474 -// #endif /* WINVER >= 0x0400 */
2475 -
2476 -enum : uint { EWX_LOGOFF = 0 }
2477 -enum : uint { EWX_SHUTDOWN = 0x00000001 }
2478 -enum : uint { EWX_REBOOT = 0x00000002 }
2479 -enum : uint { EWX_FORCE = 0x00000004 }
2480 -enum : uint { EWX_POWEROFF = 0x00000008 }
2481 -// #if(_WIN32_WINNT >= 0x0500)
2482 -enum : uint { EWX_FORCEIFHUNG = 0x00000010 }
2483 -// #endif /* _WIN32_WINNT >= 0x0500 */
2484 -
2485 -BOOL ExitWindows(DWORD dwReserved, UINT Code){ return ExitWindowsEx(EWX_LOGOFF, 0xFFFFFFFF); }
2486 -
2487 -extern(Windows) export BOOL ExitWindowsEx(
2488 - UINT uFlags,
2489 - DWORD dwReserved);
2490 -
2491 -extern(Windows) export BOOL SwapMouseButton(
2492 - BOOL fSwap);
2493 -
2494 -extern(Windows) export DWORD GetMessagePos();
2495 -
2496 -extern(Windows) export LONG GetMessageTime();
2497 -
2498 -extern(Windows) export LPARAM GetMessageExtraInfo();
2499 -
2500 -// #if(WINVER >= 0x0400)
2501 -extern(Windows) export LPARAM SetMessageExtraInfo(
2502 - LPARAM lParam);
2503 -// #endif /* WINVER >= 0x0400 */
2504 -
2505 -extern(Windows) export LRESULT SendMessageA(
2506 - HWND hWnd,
2507 - UINT Msg,
2508 - WPARAM wParam,
2509 - LPARAM lParam);
2510 -extern(Windows) export LRESULT SendMessageW(
2511 - HWND hWnd,
2512 - UINT Msg,
2513 - WPARAM wParam,
2514 - LPARAM lParam);
2515 -// #ifdef UNICODE
2516 -alias SendMessageW SendMessage;
2517 -// #else
2518 -// #...
2519 -// #endif // !UNICODE
2520 -
2521 -extern(Windows) export LRESULT SendMessageTimeoutA(
2522 - HWND hWnd,
2523 - UINT Msg,
2524 - WPARAM wParam,
2525 - LPARAM lParam,
2526 - UINT fuFlags,
2527 - UINT uTimeout,
2528 - PDWORD_PTR lpdwResult);
2529 -extern(Windows) export LRESULT SendMessageTimeoutW(
2530 - HWND hWnd,
2531 - UINT Msg,
2532 - WPARAM wParam,
2533 - LPARAM lParam,
2534 - UINT fuFlags,
2535 - UINT uTimeout,
2536 - PDWORD_PTR lpdwResult);
2537 -// #ifdef UNICODE
2538 -alias SendMessageTimeoutW SendMessageTimeout;
2539 -// #else
2540 -// #...
2541 -// #endif // !UNICODE
2542 -
2543 -extern(Windows) export BOOL SendNotifyMessageA(
2544 - HWND hWnd,
2545 - UINT Msg,
2546 - WPARAM wParam,
2547 - LPARAM lParam);
2548 -extern(Windows) export BOOL SendNotifyMessageW(
2549 - HWND hWnd,
2550 - UINT Msg,
2551 - WPARAM wParam,
2552 - LPARAM lParam);
2553 -// #ifdef UNICODE
2554 -alias SendNotifyMessageW SendNotifyMessage;
2555 -// #else
2556 -// #...
2557 -// #endif // !UNICODE
2558 -
2559 -extern(Windows) export BOOL SendMessageCallbackA(
2560 - HWND hWnd,
2561 - UINT Msg,
2562 - WPARAM wParam,
2563 - LPARAM lParam,
2564 - SENDASYNCPROC lpResultCallBack,
2565 - ULONG_PTR dwData);
2566 -extern(Windows) export BOOL SendMessageCallbackW(
2567 - HWND hWnd,
2568 - UINT Msg,
2569 - WPARAM wParam,
2570 - LPARAM lParam,
2571 - SENDASYNCPROC lpResultCallBack,
2572 - ULONG_PTR dwData);
2573 -// #ifdef UNICODE
2574 -alias SendMessageCallbackW SendMessageCallback;
2575 -// #else
2576 -// #...
2577 -// #endif // !UNICODE
2578 -
2579 -// #if(_WIN32_WINNT >= 0x0501)
2580 -struct _0 {
2581 - UINT cbSize;
2582 - HDESK hdesk;
2583 - HWND hwnd;
2584 - LUID luid;
2585 -}
2586 -alias _0 BSMINFO;
2587 -alias _0* PBSMINFO;
2588 -
2589 -extern(Windows) export int BroadcastSystemMessageExA(
2590 - DWORD,
2591 - LPDWORD,
2592 - UINT,
2593 - WPARAM,
2594 - LPARAM,
2595 - PBSMINFO);
2596 -extern(Windows) export int BroadcastSystemMessageExW(
2597 - DWORD,
2598 - LPDWORD,
2599 - UINT,
2600 - WPARAM,
2601 - LPARAM,
2602 - PBSMINFO);
2603 -// #ifdef UNICODE
2604 -alias BroadcastSystemMessageExW BroadcastSystemMessageEx;
2605 -// #else
2606 -// #...
2607 -// #endif // !UNICODE
2608 -// #endif /* _WIN32_WINNT >= 0x0501 */
2609 -
2610 -// #if(WINVER >= 0x0400)
2611 -
2612 -// #if defined(_WIN32_WINNT)
2613 -extern(Windows) export int BroadcastSystemMessageA(
2614 - DWORD,
2615 - LPDWORD,
2616 - UINT,
2617 - WPARAM,
2618 - LPARAM);
2619 -extern(Windows) export int BroadcastSystemMessageW(
2620 - DWORD,
2621 - LPDWORD,
2622 - UINT,
2623 - WPARAM,
2624 - LPARAM);
2625 -// #ifdef UNICODE
2626 -alias BroadcastSystemMessageW BroadcastSystemMessage;
2627 -// #else
2628 -// #...
2629 -// #endif // !UNICODE
2630 -// #elif defined(_WIN32_WINDOWS)
2631 -
2632 -// ...
2633 -
2634 -// #endif
2635 -
2636 -enum : uint { BSM_ALLCOMPONENTS = 0x00000000 }
2637 -enum : uint { BSM_VXDS = 0x00000001 }
2638 -enum : uint { BSM_NETDRIVER = 0x00000002 }
2639 -enum : uint { BSM_INSTALLABLEDRIVERS = 0x00000004 }
2640 -enum : uint { BSM_APPLICATIONS = 0x00000008 }
2641 -enum : uint { BSM_ALLDESKTOPS = 0x00000010 }
2642 -
2643 -enum : uint { BSF_QUERY = 0x00000001 }
2644 -enum : uint { BSF_IGNORECURRENTTASK = 0x00000002 }
2645 -enum : uint { BSF_FLUSHDISK = 0x00000004 }
2646 -enum : uint { BSF_NOHANG = 0x00000008 }
2647 -enum : uint { BSF_POSTMESSAGE = 0x00000010 }
2648 -enum : uint { BSF_FORCEIFHUNG = 0x00000020 }
2649 -enum : uint { BSF_NOTIMEOUTIFNOTHUNG = 0x00000040 }
2650 -// #if(_WIN32_WINNT >= 0x0500)
2651 -enum : uint { BSF_ALLOWSFW = 0x00000080 }
2652 -enum : uint { BSF_SENDNOTIFYMESSAGE = 0x00000100 }
2653 -// #endif /* _WIN32_WINNT >= 0x0500 */
2654 -// #if(_WIN32_WINNT >= 0x0501)
2655 -enum : uint { BSF_RETURNHDESK = 0x00000200 }
2656 -enum : uint { BSF_LUID = 0x00000400 }
2657 -// #endif /* _WIN32_WINNT >= 0x0501 */
2658 -
2659 -enum : uint { BROADCAST_QUERY_DENY = 0x424D5144 }
2660 -// #endif /* WINVER >= 0x0400 */
2661 -
2662 -// #if(WINVER >= 0x0500)
2663 -alias PVOID HDEVNOTIFY;
2664 -alias HDEVNOTIFY* PHDEVNOTIFY;
2665 -
2666 -enum : uint { DEVICE_NOTIFY_WINDOW_HANDLE = 0x00000000 }
2667 -enum : uint { DEVICE_NOTIFY_SERVICE_HANDLE = 0x00000001 }
2668 -// #if(_WIN32_WINNT >= 0x0501)
2669 -enum : uint { DEVICE_NOTIFY_ALL_INTERFACE_CLASSES = 0x00000004 }
2670 -// #endif /* _WIN32_WINNT >= 0x0501 */
2671 -
2672 -extern(Windows) export HDEVNOTIFY RegisterDeviceNotificationA(
2673 - HANDLE hRecipient,
2674 - LPVOID NotificationFilter,
2675 - DWORD Flags);
2676 -extern(Windows) export HDEVNOTIFY RegisterDeviceNotificationW(
2677 - HANDLE hRecipient,
2678 - LPVOID NotificationFilter,
2679 - DWORD Flags);
2680 -// #ifdef UNICODE
2681 -alias RegisterDeviceNotificationW RegisterDeviceNotification;
2682 -// #else
2683 -// #...
2684 -// #endif // !UNICODE
2685 -
2686 -extern(Windows) export BOOL UnregisterDeviceNotification(
2687 - HDEVNOTIFY Handle);
2688 -// #endif /* WINVER >= 0x0500 */
2689 -
2690 -extern(Windows) export BOOL PostMessageA(
2691 - HWND hWnd,
2692 - UINT Msg,
2693 - WPARAM wParam,
2694 - LPARAM lParam);
2695 -extern(Windows) export BOOL PostMessageW(
2696 - HWND hWnd,
2697 - UINT Msg,
2698 - WPARAM wParam,
2699 - LPARAM lParam);
2700 -// #ifdef UNICODE
2701 -alias PostMessageW PostMessage;
2702 -// #else
2703 -// #...
2704 -// #endif // !UNICODE
2705 -
2706 -extern(Windows) export BOOL PostThreadMessageA(
2707 - DWORD idThread,
2708 - UINT Msg,
2709 - WPARAM wParam,
2710 - LPARAM lParam);
2711 -extern(Windows) export BOOL PostThreadMessageW(
2712 - DWORD idThread,
2713 - UINT Msg,
2714 - WPARAM wParam,
2715 - LPARAM lParam);
2716 -// #ifdef UNICODE
2717 -alias PostThreadMessageW PostThreadMessage;
2718 -// #else
2719 -// #...
2720 -// #endif // !UNICODE
2721 -
2722 -alias PostThreadMessageA PostAppMessageA;
2723 -alias PostThreadMessageW PostAppMessageW;
2724 -// #ifdef UNICODE
2725 -alias PostAppMessageW PostAppMessage;
2726 -// #else
2727 -// #...
2728 -// #endif // !UNICODE
2729 -
2730 -const HWND HWND_BROADCAST = cast(HWND)0xffff;
2731 -
2732 -// #if(WINVER >= 0x0500)
2733 -const HWND HWND_MESSAGE = cast(HWND)-3;
2734 -// #endif /* WINVER >= 0x0500 */
2735 -
2736 -extern(Windows) export BOOL AttachThreadInput(
2737 - DWORD idAttach,
2738 - DWORD idAttachTo,
2739 - BOOL fAttach);
2740 -
2741 -extern(Windows) export BOOL ReplyMessage(
2742 - LRESULT lResult);
2743 -
2744 -extern(Windows) export BOOL WaitMessage();
2745 -
2746 -extern(Windows) export DWORD WaitForInputIdle(
2747 - HANDLE hProcess,
2748 - DWORD dwMilliseconds);
2749 -
2750 -extern(Windows) export LRESULT DefWindowProcA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
2751 -extern(Windows) export LRESULT DefWindowProcW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
2752 -// #ifdef UNICODE
2753 -alias DefWindowProcW DefWindowProc;
2754 -// #else
2755 -// #...
2756 -// #endif // !UNICODE
2757 -
2758 -extern(Windows) export VOID PostQuitMessage(
2759 - int nExitCode);
2760 -
2761 -// #ifdef STRICT
2762 -
2763 -extern(Windows) export LRESULT CallWindowProcA(
2764 - WNDPROC lpPrevWndFunc,
2765 - HWND hWnd,
2766 - UINT Msg,
2767 - WPARAM wParam,
2768 - LPARAM lParam);
2769 -extern(Windows) export LRESULT CallWindowProcW(
2770 - WNDPROC lpPrevWndFunc,
2771 - HWND hWnd,
2772 - UINT Msg,
2773 - WPARAM wParam,
2774 - LPARAM lParam);
2775 -// #ifdef UNICODE
2776 -alias CallWindowProcW CallWindowProc;
2777 -// #else
2778 -// #...
2779 -// #endif // !UNICODE
2780 -
2781 -// #else /* !STRICT */
2782 -
2783 -// ...
2784 -// #ifdef UNICODE
2785 -// #...
2786 -// #else
2787 -// #...
2788 -// #endif // !UNICODE
2789 -
2790 -// #endif /* !STRICT */
2791 -
2792 -extern(Windows) export BOOL InSendMessage();
2793 -
2794 -// #if(WINVER >= 0x0500)
2795 -extern(Windows) export DWORD InSendMessageEx(
2796 - LPVOID lpReserved);
2797 -
2798 -enum : uint { ISMEX_NOSEND = 0x00000000 }
2799 -enum : uint { ISMEX_SEND = 0x00000001 }
2800 -enum : uint { ISMEX_NOTIFY = 0x00000002 }
2801 -enum : uint { ISMEX_CALLBACK = 0x00000004 }
2802 -enum : uint { ISMEX_REPLIED = 0x00000008 }
2803 -// #endif /* WINVER >= 0x0500 */
2804 -
2805 -extern(Windows) export UINT GetDoubleClickTime();
2806 -
2807 -extern(Windows) export BOOL SetDoubleClickTime(
2808 - UINT);
2809 -
2810 -extern(Windows) export ATOM RegisterClassA(
2811 - WNDCLASSA *lpWndClass);
2812 -extern(Windows) export ATOM RegisterClassW(
2813 - WNDCLASSW *lpWndClass);
2814 -// #ifdef UNICODE
2815 -alias RegisterClassW RegisterClass;
2816 -// #else
2817 -// #...
2818 -// #endif // !UNICODE
2819 -
2820 -extern(Windows) export BOOL UnregisterClassA(
2821 - LPCSTR lpClassName,
2822 - HINSTANCE hInstance);
2823 -extern(Windows) export BOOL UnregisterClassW(
2824 - LPCWSTR lpClassName,
2825 - HINSTANCE hInstance);
2826 -// #ifdef UNICODE
2827 -alias UnregisterClassW UnregisterClass;
2828 -// #else
2829 -// #...
2830 -// #endif // !UNICODE
2831 -
2832 -extern(Windows) export BOOL GetClassInfoA(
2833 - HINSTANCE hInstance,
2834 - LPCSTR lpClassName,
2835 - LPWNDCLASSA lpWndClass);
2836 -extern(Windows) export BOOL GetClassInfoW(
2837 - HINSTANCE hInstance,
2838 - LPCWSTR lpClassName,
2839 - LPWNDCLASSW lpWndClass);
2840 -// #ifdef UNICODE
2841 -alias GetClassInfoW GetClassInfo;
2842 -// #else
2843 -// #...
2844 -// #endif // !UNICODE
2845 -
2846 -// #if(WINVER >= 0x0400)
2847 -extern(Windows) export ATOM RegisterClassExA(
2848 - WNDCLASSEXA *);
2849 -extern(Windows) export ATOM RegisterClassExW(
2850 - WNDCLASSEXW *);
2851 -// #ifdef UNICODE
2852 -alias RegisterClassExW RegisterClassEx;
2853 -// #else
2854 -// #...
2855 -// #endif // !UNICODE
2856 -
2857 -extern(Windows) export BOOL GetClassInfoExA(
2858 - HINSTANCE,
2859 - LPCSTR,
2860 - LPWNDCLASSEXA);
2861 -extern(Windows) export BOOL GetClassInfoExW(
2862 - HINSTANCE,
2863 - LPCWSTR,
2864 - LPWNDCLASSEXW);
2865 -// #ifdef UNICODE
2866 -alias GetClassInfoExW GetClassInfoEx;
2867 -// #else
2868 -// #...
2869 -// #endif // !UNICODE
2870 -
2871 -// #endif /* WINVER >= 0x0400 */
2872 -
2873 -enum { CW_USEDEFAULT = int.min }
2874 -
2875 -const HWND HWND_DESKTOP = cast(HWND)0;
2876 -
2877 -// #if(_WIN32_WINNT >= 0x0501)
2878 -extern(Windows) alias BOOLEAN function(LPCWSTR) PREGISTERCLASSNAMEW;
2879 -// #endif /* _WIN32_WINNT >= 0x0501 */
2880 -
2881 -extern(Windows) export HWND CreateWindowExA(
2882 - DWORD dwExStyle,
2883 - LPCSTR lpClassName,
2884 - LPCSTR lpWindowName,
2885 - DWORD dwStyle,
2886 - int X,
2887 - int Y,
2888 - int nWidth,
2889 - int nHeight,
2890 - HWND hWndParent,
2891 - HMENU hMenu,
2892 - HINSTANCE hInstance,
2893 - LPVOID lpParam);
2894 -extern(Windows) export HWND CreateWindowExW(
2895 - DWORD dwExStyle,
2896 - LPCWSTR lpClassName,
2897 - LPCWSTR lpWindowName,
2898 - DWORD dwStyle,
2899 - int X,
2900 - int Y,
2901 - int nWidth,
2902 - int nHeight,
2903 - HWND hWndParent,
2904 - HMENU hMenu,
2905 - HINSTANCE hInstance,
2906 - LPVOID lpParam);
2907 -// #ifdef UNICODE
2908 -alias CreateWindowExW CreateWindowEx;
2909 -// #else
2910 -// #...
2911 -// #endif // !UNICODE
2912 -
2913 -HWND CreateWindowA(LPCSTR lpClassName, LPCSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam){ return CreateWindowExA(0L, lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam); }
2914 -HWND CreateWindowW(LPCWSTR lpClassName, LPCWSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam){ return CreateWindowExW(0L, lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam); }
2915 -// #ifdef UNICODE
2916 -alias CreateWindowW CreateWindow;
2917 -// #else
2918 -// #...
2919 -// #endif // !UNICODE
2920 -
2921 -extern(Windows) export BOOL IsWindow(
2922 - HWND hWnd);
2923 -
2924 -extern(Windows) export BOOL IsMenu(
2925 - HMENU hMenu);
2926 -
2927 -extern(Windows) export BOOL IsChild(
2928 - HWND hWndParent,
2929 - HWND hWnd);
2930 -
2931 -extern(Windows) export BOOL DestroyWindow(
2932 - HWND hWnd);
2933 -
2934 -extern(Windows) export BOOL ShowWindow(
2935 - HWND hWnd,
2936 - int nCmdShow);
2937 -
2938 -// #if(WINVER >= 0x0500)
2939 -extern(Windows) export BOOL AnimateWindow(
2940 - HWND hWnd,
2941 - DWORD dwTime,
2942 - DWORD dwFlags);
2943 -// #endif /* WINVER >= 0x0500 */
2944 -
2945 -// #if(_WIN32_WINNT >= 0x0500)
2946 -// #if defined(_WINGDI_) && !defined (NOGDI)
2947 -
2948 -// ...
2949 -// #endif
2950 -
2951 -// #if(_WIN32_WINNT >= 0x0501)
2952 -extern(Windows) export BOOL GetLayeredWindowAttributes(
2953 - HWND hwnd,
2954 - COLORREF *pcrKey,
2955 - BYTE *pbAlpha,
2956 - DWORD *pdwFlags);
2957 -
2958 -enum : uint { PW_CLIENTONLY = 0x00000001 }
2959 -
2960 -extern(Windows) export BOOL PrintWindow(
2961 - HWND hwnd,
2962 - HDC hdcBlt,
2963 - UINT nFlags);
2964 -
2965 -// #endif /* _WIN32_WINNT >= 0x0501 */
2966 -
2967 -extern(Windows) export BOOL SetLayeredWindowAttributes(
2968 - HWND hwnd,
2969 - COLORREF crKey,
2970 - BYTE bAlpha,
2971 - DWORD dwFlags);
2972 -
2973 -enum : uint { LWA_COLORKEY = 0x00000001 }
2974 -enum : uint { LWA_ALPHA = 0x00000002 }
2975 -
2976 -enum : uint { ULW_COLORKEY = 0x00000001 }
2977 -enum : uint { ULW_ALPHA = 0x00000002 }
2978 -enum : uint { ULW_OPAQUE = 0x00000004 }
2979 -
2980 -// #endif /* _WIN32_WINNT >= 0x0500 */
2981 -
2982 -// #if(WINVER >= 0x0400)
2983 -extern(Windows) export BOOL ShowWindowAsync(
2984 - HWND hWnd,
2985 - int nCmdShow);
2986 -// #endif /* WINVER >= 0x0400 */
2987 -
2988 -extern(Windows) export BOOL FlashWindow(
2989 - HWND hWnd,
2990 - BOOL bInvert);
2991 -
2992 -// #if(WINVER >= 0x0500)
2993 -struct _1 {
2994 - UINT cbSize;
2995 - HWND hwnd;
2996 - DWORD dwFlags;
2997 - UINT uCount;
2998 - DWORD dwTimeout;
2999 -}
3000 -alias _1 FLASHWINFO;
3001 -alias _1* PFLASHWINFO;
3002 -
3003 -extern(Windows) export BOOL FlashWindowEx(
3004 - PFLASHWINFO pfwi);
3005 -
3006 -enum : uint { FLASHW_STOP = 0 }
3007 -enum : uint { FLASHW_CAPTION = 0x00000001 }
3008 -enum : uint { FLASHW_TRAY = 0x00000002 }
3009 -enum : uint { FLASHW_ALL = FLASHW_CAPTION | FLASHW_TRAY }
3010 -enum : uint { FLASHW_TIMER = 0x00000004 }
3011 -enum : uint { FLASHW_TIMERNOFG = 0x0000000C }
3012 -
3013 -// #endif /* WINVER >= 0x0500 */
3014 -
3015 -extern(Windows) export BOOL ShowOwnedPopups(
3016 - HWND hWnd,
3017 - BOOL fShow);
3018 -
3019 -extern(Windows) export BOOL OpenIcon(
3020 - HWND hWnd);
3021 -
3022 -extern(Windows) export BOOL CloseWindow(
3023 - HWND hWnd);
3024 -
3025 -extern(Windows) export BOOL MoveWindow(
3026 - HWND hWnd,
3027 - int X,
3028 - int Y,
3029 - int nWidth,
3030 - int nHeight,
3031 - BOOL bRepaint);
3032 -
3033 -extern(Windows) export BOOL SetWindowPos(
3034 - HWND hWnd,
3035 - HWND hWndInsertAfter,
3036 - int X,
3037 - int Y,
3038 - int cx,
3039 - int cy,
3040 - UINT uFlags);
3041 -
3042 -extern(Windows) export BOOL GetWindowPlacement(
3043 - HWND hWnd,
3044 - WINDOWPLACEMENT *lpwndpl);
3045 -
3046 -extern(Windows) export BOOL SetWindowPlacement(
3047 - HWND hWnd,
3048 - WINDOWPLACEMENT *lpwndpl);
3049 -
3050 -// #ifndef NODEFERWINDOWPOS
3051 -
3052 -extern(Windows) export HDWP BeginDeferWindowPos(
3053 - int nNumWindows);
3054 -
3055 -extern(Windows) export HDWP DeferWindowPos(
3056 - HDWP hWinPosInfo,
3057 - HWND hWnd,
3058 - HWND hWndInsertAfter,
3059 - int x,
3060 - int y,
3061 - int cx,
3062 - int cy,
3063 - UINT uFlags);
3064 -
3065 -extern(Windows) export BOOL EndDeferWindowPos(
3066 - HDWP hWinPosInfo);
3067 -
3068 -// #endif /* !NODEFERWINDOWPOS */
3069 -
3070 -extern(Windows) export BOOL IsWindowVisible(
3071 - HWND hWnd);
3072 -
3073 -extern(Windows) export BOOL IsIconic(
3074 - HWND hWnd);
3075 -
3076 -extern(Windows) export BOOL AnyPopup();
3077 -
3078 -extern(Windows) export BOOL BringWindowToTop(
3079 - HWND hWnd);
3080 -
3081 -extern(Windows) export BOOL IsZoomed(
3082 - HWND hWnd);
3083 -
3084 -enum : uint { SWP_NOSIZE = 0x0001 }
3085 -enum : uint { SWP_NOMOVE = 0x0002 }
3086 -enum : uint { SWP_NOZORDER = 0x0004 }
3087 -enum : uint { SWP_NOREDRAW = 0x0008 }
3088 -enum : uint { SWP_NOACTIVATE = 0x0010 }
3089 -enum : uint { SWP_FRAMECHANGED = 0x0020 }
3090 -enum : uint { SWP_SHOWWINDOW = 0x0040 }
3091 -enum : uint { SWP_HIDEWINDOW = 0x0080 }
3092 -enum : uint { SWP_NOCOPYBITS = 0x0100 }
3093 -enum : uint { SWP_NOOWNERZORDER = 0x0200 }
3094 -enum : uint { SWP_NOSENDCHANGING = 0x0400 }
3095 -
3096 -alias SWP_FRAMECHANGED SWP_DRAWFRAME;
3097 -alias SWP_NOOWNERZORDER SWP_NOREPOSITION;
3098 -
3099 -// #if(WINVER >= 0x0400)
3100 -enum : uint { SWP_DEFERERASE = 0x2000 }
3101 -enum : uint { SWP_ASYNCWINDOWPOS = 0x4000 }
3102 -// #endif /* WINVER >= 0x0400 */
3103 -
3104 -const HWND HWND_TOP = cast(HWND)0;
3105 -const HWND HWND_BOTTOM = cast(HWND)1;
3106 -const HWND HWND_TOPMOST = cast(HWND)-1;
3107 -const HWND HWND_NOTOPMOST = cast(HWND)-2;
3108 -
3109 -// #ifndef NOCTLMGR
3110 -
3111 -align(2):
3112 -
3113 -struct _2 {
3114 - DWORD style;
3115 - DWORD dwExtendedStyle;
3116 - WORD cdit;
3117 - short x;
3118 - short y;
3119 - short cx;
3120 - short cy;
3121 -}
3122 -alias _2 DLGTEMPLATE;
3123 -
3124 -alias DLGTEMPLATE* LPDLGTEMPLATEA;
3125 -alias DLGTEMPLATE* LPDLGTEMPLATEW;
3126 -// #ifdef UNICODE
3127 -alias LPDLGTEMPLATEW LPDLGTEMPLATE;
3128 -// #else
3129 -// ...
3130 -// #endif // UNICODE
3131 -alias DLGTEMPLATE* LPCDLGTEMPLATEA;
3132 -alias DLGTEMPLATE* LPCDLGTEMPLATEW;
3133 -// #ifdef UNICODE
3134 -alias LPCDLGTEMPLATEW LPCDLGTEMPLATE;
3135 -// #else
3136 -// ...
3137 -// #endif // UNICODE
3138 -
3139 -struct _3 {
3140 - DWORD style;
3141 - DWORD dwExtendedStyle;
3142 - short x;
3143 - short y;
3144 - short cx;
3145 - short cy;
3146 - WORD id;
3147 -}
3148 -alias _3 DLGITEMTEMPLATE;
3149 -
3150 -alias DLGITEMTEMPLATE* PDLGITEMTEMPLATEA;
3151 -alias DLGITEMTEMPLATE* PDLGITEMTEMPLATEW;
3152 -// #ifdef UNICODE
3153 -alias PDLGITEMTEMPLATEW PDLGITEMTEMPLATE;
3154 -// #else
3155 -// ...
3156 -// #endif // UNICODE
3157 -alias DLGITEMTEMPLATE* LPDLGITEMTEMPLATEA;
3158 -alias DLGITEMTEMPLATE* LPDLGITEMTEMPLATEW;
3159 -// #ifdef UNICODE
3160 -alias LPDLGITEMTEMPLATEW LPDLGITEMTEMPLATE;
3161 -// #else
3162 -// ...
3163 -// #endif // UNICODE
3164 -
3165 -align:
3166 -
3167 -extern(Windows) export HWND CreateDialogParamA(
3168 - HINSTANCE hInstance,
3169 - LPCSTR lpTemplateName,
3170 - HWND hWndParent,
3171 - DLGPROC lpDialogFunc,
3172 - LPARAM dwInitParam);
3173 -extern(Windows) export HWND CreateDialogParamW(
3174 - HINSTANCE hInstance,
3175 - LPCWSTR lpTemplateName,
3176 - HWND hWndParent,
3177 - DLGPROC lpDialogFunc,
3178 - LPARAM dwInitParam);
3179 -// #ifdef UNICODE
3180 -alias CreateDialogParamW CreateDialogParam;
3181 -// #else
3182 -// #...
3183 -// #endif // !UNICODE
3184 -
3185 -extern(Windows) export HWND CreateDialogIndirectParamA(
3186 - HINSTANCE hInstance,
3187 - LPCDLGTEMPLATEA lpTemplate,
3188 - HWND hWndParent,
3189 - DLGPROC lpDialogFunc,
3190 - LPARAM dwInitParam);
3191 -extern(Windows) export HWND CreateDialogIndirectParamW(
3192 - HINSTANCE hInstance,
3193 - LPCDLGTEMPLATEW lpTemplate,
3194 - HWND hWndParent,
3195 - DLGPROC lpDialogFunc,
3196 - LPARAM dwInitParam);
3197 -// #ifdef UNICODE
3198 -alias CreateDialogIndirectParamW CreateDialogIndirectParam;
3199 -// #else
3200 -// #...
3201 -// #endif // !UNICODE
3202 -
3203 -HWND CreateDialogA(HINSTANCE hInstance, LPCSTR lpName, HWND hWndParent, DLGPROC lpDialogFunc){ return CreateDialogParamA(hInstance, lpName, hWndParent, lpDialogFunc, 0L); }
3204 -HWND CreateDialogW(HINSTANCE hInstance, LPCWSTR lpName, HWND hWndParent, DLGPROC lpDialogFunc){ return CreateDialogParamW(hInstance, lpName, hWndParent, lpDialogFunc, 0L); }
3205 -// #ifdef UNICODE
3206 -alias CreateDialogW CreateDialog;
3207 -// #else
3208 -// #...
3209 -// #endif // !UNICODE
3210 -
3211 -HWND CreateDialogIndirectA(HINSTANCE hInstance, LPCDLGTEMPLATE lpTemplate, HWND hWndParent, DLGPROC lpDialogFunc){ return CreateDialogIndirectParamA(hInstance, lpTemplate, hWndParent, lpDialogFunc, 0L); }
3212 -HWND CreateDialogIndirectW(HINSTANCE hInstance, LPCDLGTEMPLATE lpTemplate, HWND hWndParent, DLGPROC lpDialogFunc){ return CreateDialogIndirectParamW(hInstance, lpTemplate, hWndParent, lpDialogFunc, 0L); }
3213 -// #ifdef UNICODE
3214 -alias CreateDialogIndirectW CreateDialogIndirect;
3215 -// #else
3216 -// #...
3217 -// #endif // !UNICODE
3218 -
3219 -extern(Windows) export INT_PTR DialogBoxParamA(
3220 - HINSTANCE hInstance,
3221 - LPCSTR lpTemplateName,
3222 - HWND hWndParent,
3223 - DLGPROC lpDialogFunc,
3224 - LPARAM dwInitParam);
3225 -extern(Windows) export INT_PTR DialogBoxParamW(
3226 - HINSTANCE hInstance,
3227 - LPCWSTR lpTemplateName,
3228 - HWND hWndParent,
3229 - DLGPROC lpDialogFunc,
3230 - LPARAM dwInitParam);
3231 -// #ifdef UNICODE
3232 -alias DialogBoxParamW DialogBoxParam;
3233 -// #else
3234 -// #...
3235 -// #endif // !UNICODE
3236 -
3237 -extern(Windows) export INT_PTR DialogBoxIndirectParamA(
3238 - HINSTANCE hInstance,
3239 - LPCDLGTEMPLATEA hDialogTemplate,
3240 - HWND hWndParent,
3241 - DLGPROC lpDialogFunc,
3242 - LPARAM dwInitParam);
3243 -extern(Windows) export INT_PTR DialogBoxIndirectParamW(
3244 - HINSTANCE hInstance,
3245 - LPCDLGTEMPLATEW hDialogTemplate,
3246 - HWND hWndParent,
3247 - DLGPROC lpDialogFunc,
3248 - LPARAM dwInitParam);
3249 -// #ifdef UNICODE
3250 -alias DialogBoxIndirectParamW DialogBoxIndirectParam;
3251 -// #else
3252 -// #...
3253 -// #endif // !UNICODE
3254 -
3255 -// #define DialogBoxA(hInstance, lpTemplate, hWndParent, lpDialogFunc) DialogBoxParamA(hInstance, lpTemplate, hWndParent, lpDialogFunc, 0L)
3256 -// #define DialogBoxW(hInstance, lpTemplate, hWndParent, lpDialogFunc) DialogBoxParamW(hInstance, lpTemplate, hWndParent, lpDialogFunc, 0L)
3257 -// #ifdef UNICODE
3258 -// #define DialogBox DialogBoxW
3259 -// #else
3260 -// #...
3261 -// #endif // !UNICODE
3262 -
3263 -// #define DialogBoxIndirectA(hInstance, lpTemplate, hWndParent, lpDialogFunc) DialogBoxIndirectParamA(hInstance, lpTemplate, hWndParent, lpDialogFunc, 0L)
3264 -// #define DialogBoxIndirectW(hInstance, lpTemplate, hWndParent, lpDialogFunc) DialogBoxIndirectParamW(hInstance, lpTemplate, hWndParent, lpDialogFunc, 0L)
3265 -// #ifdef UNICODE
3266 -// #define DialogBoxIndirect DialogBoxIndirectW
3267 -// #else
3268 -// #...
3269 -// #endif // !UNICODE
3270 -
3271 -extern(Windows) export BOOL EndDialog(
3272 - HWND hDlg,
3273 - INT_PTR nResult);
3274 -
3275 -extern(Windows) export HWND GetDlgItem(
3276 - HWND hDlg,
3277 - int nIDDlgItem);
3278 -
3279 -extern(Windows) export BOOL SetDlgItemInt(
3280 - HWND hDlg,
3281 - int nIDDlgItem,
3282 - UINT uValue,
3283 - BOOL bSigned);
3284 -
3285 -extern(Windows) export UINT GetDlgItemInt(
3286 - HWND hDlg,
3287 - int nIDDlgItem,
3288 - BOOL *lpTranslated,
3289 - BOOL bSigned);
3290 -
3291 -extern(Windows) export BOOL SetDlgItemTextA(
3292 - HWND hDlg,
3293 - int nIDDlgItem,
3294 - LPCSTR lpString);
3295 -extern(Windows) export BOOL SetDlgItemTextW(
3296 - HWND hDlg,
3297 - int nIDDlgItem,
3298 - LPCWSTR lpString);
3299 -// #ifdef UNICODE
3300 -alias SetDlgItemTextW SetDlgItemText;
3301 -// #else
3302 -// #...
3303 -// #endif // !UNICODE
3304 -
3305 -extern(Windows) export UINT GetDlgItemTextA(
3306 - HWND hDlg,
3307 - int nIDDlgItem,
3308 - LPSTR lpString,
3309 - int nMaxCount);
3310 -extern(Windows) export UINT GetDlgItemTextW(
3311 - HWND hDlg,
3312 - int nIDDlgItem,
3313 - LPWSTR lpString,
3314 - int nMaxCount);
3315 -// #ifdef UNICODE
3316 -alias GetDlgItemTextW GetDlgItemText;
3317 -// #else
3318 -// #...
3319 -// #endif // !UNICODE
3320 -
3321 -extern(Windows) export BOOL CheckDlgButton(
3322 - HWND hDlg,
3323 - int nIDButton,
3324 - UINT uCheck);
3325 -
3326 -extern(Windows) export BOOL CheckRadioButton(
3327 - HWND hDlg,
3328 - int nIDFirstButton,
3329 - int nIDLastButton,
3330 - int nIDCheckButton);
3331 -
3332 -extern(Windows) export UINT IsDlgButtonChecked(
3333 - HWND hDlg,
3334 - int nIDButton);
3335 -
3336 -extern(Windows) export LRESULT SendDlgItemMessageA(
3337 - HWND hDlg,
3338 - int nIDDlgItem,
3339 - UINT Msg,
3340 - WPARAM wParam,
3341 - LPARAM lParam);
3342 -extern(Windows) export LRESULT SendDlgItemMessageW(
3343 - HWND hDlg,
3344 - int nIDDlgItem,
3345 - UINT Msg,
3346 - WPARAM wParam,
3347 - LPARAM lParam);
3348 -// #ifdef UNICODE
3349 -alias SendDlgItemMessageW SendDlgItemMessage;
3350 -// #else
3351 -// #...
3352 -// #endif // !UNICODE
3353 -
3354 -extern(Windows) export HWND GetNextDlgGroupItem(
3355 - HWND hDlg,
3356 - HWND hCtl,
3357 - BOOL bPrevious);
3358 -
3359 -extern(Windows) export HWND GetNextDlgTabItem(
3360 - HWND hDlg,
3361 - HWND hCtl,
3362 - BOOL bPrevious);
3363 -
3364 -extern(Windows) export int GetDlgCtrlID(
3365 - HWND hWnd);
3366 -
3367 -extern(Windows) export int GetDialogBaseUnits();
3368 -
3369 -extern(Windows) export LRESULT DefDlgProcA(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam);
3370 -extern(Windows) export LRESULT DefDlgProcW(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam);
3371 -// #ifdef UNICODE
3372 -alias DefDlgProcW DefDlgProc;
3373 -// #else
3374 -// #...
3375 -// #endif // !UNICODE
3376 -
3377 -// #ifndef _MAC
3378 -enum : uint { DLGWINDOWEXTRA = 30 }
3379 -// #else
3380 -// #...
3381 -// #endif
3382 -
3383 -// #endif /* !NOCTLMGR */
3384 -
3385 -// #ifndef NOMSG
3386 -
3387 -extern(Windows) export BOOL CallMsgFilterA(
3388 - LPMSG lpMsg,
3389 - int nCode);
3390 -extern(Windows) export BOOL CallMsgFilterW(
3391 - LPMSG lpMsg,
3392 - int nCode);
3393 -// #ifdef UNICODE
3394 -alias CallMsgFilterW CallMsgFilter;
3395 -// #else
3396 -// #...
3397 -// #endif // !UNICODE
3398 -
3399 -// #endif /* !NOMSG */
3400 -
3401 -// #ifndef NOCLIPBOARD
3402 -
3403 -extern(Windows) export BOOL OpenClipboard(
3404 - HWND hWndNewOwner);
3405 -
3406 -extern(Windows) export BOOL CloseClipboard();
3407 -
3408 -// #if(WINVER >= 0x0500)
3409 -
3410 -extern(Windows) export DWORD GetClipboardSequenceNumber();
3411 -
3412 -// #endif /* WINVER >= 0x0500 */
3413 -
3414 -extern(Windows) export HWND GetClipboardOwner();
3415 -
3416 -extern(Windows) export HWND SetClipboardViewer(
3417 - HWND hWndNewViewer);
3418 -
3419 -extern(Windows) export HWND GetClipboardViewer();
3420 -
3421 -extern(Windows) export BOOL ChangeClipboardChain(
3422 - HWND hWndRemove,
3423 - HWND hWndNewNext);
3424 -
3425 -extern(Windows) export HANDLE SetClipboardData(
3426 - UINT uFormat,
3427 - HANDLE hMem);
3428 -
3429 -extern(Windows) export HANDLE GetClipboardData(
3430 - UINT uFormat);
3431 -
3432 -extern(Windows) export UINT RegisterClipboardFormatA(
3433 - LPCSTR lpszFormat);
3434 -extern(Windows) export UINT RegisterClipboardFormatW(
3435 - LPCWSTR lpszFormat);
3436 -// #ifdef UNICODE
3437 -alias RegisterClipboardFormatW RegisterClipboardFormat;
3438 -// #else
3439 -// #...
3440 -// #endif // !UNICODE
3441 -
3442 -extern(Windows) export int CountClipboardFormats();
3443 -
3444 -extern(Windows) export UINT EnumClipboardFormats(
3445 - UINT format);
3446 -
3447 -extern(Windows) export int GetClipboardFormatNameA(
3448 - UINT format,
3449 - LPSTR lpszFormatName,
3450 - int cchMaxCount);
3451 -extern(Windows) export int GetClipboardFormatNameW(
3452 - UINT format,
3453 - LPWSTR lpszFormatName,
3454 - int cchMaxCount);
3455 -// #ifdef UNICODE
3456 -alias GetClipboardFormatNameW GetClipboardFormatName;
3457 -// #else
3458 -// #...
3459 -// #endif // !UNICODE
3460 -
3461 -extern(Windows) export BOOL EmptyClipboard();
3462 -
3463 -extern(Windows) export BOOL IsClipboardFormatAvailable(
3464 - UINT format);
3465 -
3466 -extern(Windows) export int GetPriorityClipboardFormat(
3467 - UINT *paFormatPriorityList,
3468 - int cFormats);
3469 -
3470 -extern(Windows) export HWND GetOpenClipboardWindow();
3471 -
3472 -// #endif /* !NOCLIPBOARD */
3473 -
3474 -extern(Windows) export BOOL CharToOemA(
3475 - LPCSTR lpszSrc,
3476 - LPSTR lpszDst);
3477 -extern(Windows) export BOOL CharToOemW(
3478 - LPCWSTR lpszSrc,
3479 - LPSTR lpszDst);
3480 -// #ifdef UNICODE
3481 -alias CharToOemW CharToOem;
3482 -// #else
3483 -// #...
3484 -// #endif // !UNICODE
3485 -
3486 -extern(Windows) export BOOL OemToCharA(
3487 - LPCSTR lpszSrc,
3488 - LPSTR lpszDst);
3489 -extern(Windows) export BOOL OemToCharW(
3490 - LPCSTR lpszSrc,
3491 - LPWSTR lpszDst);
3492 -// #ifdef UNICODE
3493 -alias OemToCharW OemToChar;
3494 -// #else
3495 -// #...
3496 -// #endif // !UNICODE
3497 -
3498 -extern(Windows) export BOOL CharToOemBuffA(
3499 - LPCSTR lpszSrc,
3500 - LPSTR lpszDst,
3501 - DWORD cchDstLength);
3502 -extern(Windows) export BOOL CharToOemBuffW(
3503 - LPCWSTR lpszSrc,
3504 - LPSTR lpszDst,
3505 - DWORD cchDstLength);
3506 -// #ifdef UNICODE
3507 -alias CharToOemBuffW CharToOemBuff;
3508 -// #else
3509 -// #...
3510 -// #endif // !UNICODE
3511 -
3512 -extern(Windows) export BOOL OemToCharBuffA(
3513 - LPCSTR lpszSrc,
3514 - LPSTR lpszDst,
3515 - DWORD cchDstLength);
3516 -extern(Windows) export BOOL OemToCharBuffW(
3517 - LPCSTR lpszSrc,
3518 - LPWSTR lpszDst,
3519 - DWORD cchDstLength);
3520 -// #ifdef UNICODE
3521 -alias OemToCharBuffW OemToCharBuff;
3522 -// #else
3523 -// #...
3524 -// #endif // !UNICODE
3525 -
3526 -extern(Windows) export LPSTR CharUpperA(
3527 - LPSTR lpsz);
3528 -extern(Windows) export LPWSTR CharUpperW(
3529 - LPWSTR lpsz);
3530 -// #ifdef UNICODE
3531 -alias CharUpperW CharUpper;
3532 -// #else
3533 -// #...
3534 -// #endif // !UNICODE
3535 -
3536 -extern(Windows) export DWORD CharUpperBuffA(
3537 - LPSTR lpsz,
3538 - DWORD cchLength);
3539 -extern(Windows) export DWORD CharUpperBuffW(
3540 - LPWSTR lpsz,
3541 - DWORD cchLength);
3542 -// #ifdef UNICODE
3543 -alias CharUpperBuffW CharUpperBuff;
3544 -// #else
3545 -// #...
3546 -// #endif // !UNICODE
3547 -
3548 -extern(Windows) export LPSTR CharLowerA(
3549 - LPSTR lpsz);
3550 -extern(Windows) export LPWSTR CharLowerW(
3551 - LPWSTR lpsz);
3552 -// #ifdef UNICODE
3553 -alias CharLowerW CharLower;
3554 -// #else
3555 -// #...
3556 -// #endif // !UNICODE
3557 -
3558 -extern(Windows) export DWORD CharLowerBuffA(
3559 - LPSTR lpsz,
3560 - DWORD cchLength);
3561 -extern(Windows) export DWORD CharLowerBuffW(
3562 - LPWSTR lpsz,
3563 - DWORD cchLength);
3564 -// #ifdef UNICODE
3565 -alias CharLowerBuffW CharLowerBuff;
3566 -// #else
3567 -// #...
3568 -// #endif // !UNICODE
3569 -
3570 -extern(Windows) export LPSTR CharNextA(
3571 - LPCSTR lpsz);
3572 -extern(Windows) export LPWSTR CharNextW(
3573 - LPCWSTR lpsz);
3574 -// #ifdef UNICODE
3575 -alias CharNextW CharNext;
3576 -// #else
3577 -// #...
3578 -// #endif // !UNICODE
3579 -
3580 -extern(Windows) export LPSTR CharPrevA(
3581 - LPCSTR lpszStart,
3582 - LPCSTR lpszCurrent);
3583 -extern(Windows) export LPWSTR CharPrevW(
3584 - LPCWSTR lpszStart,
3585 - LPCWSTR lpszCurrent);
3586 -// #ifdef UNICODE
3587 -alias CharPrevW CharPrev;
3588 -// #else
3589 -// #...
3590 -// #endif // !UNICODE
3591 -
3592 -// #if(WINVER >= 0x0400)
3593 -extern(Windows) export LPSTR CharNextExA(
3594 - WORD CodePage,
3595 - LPCSTR lpCurrentChar,
3596 - DWORD dwFlags);
3597 -
3598 -extern(Windows) export LPSTR CharPrevExA(
3599 - WORD CodePage,
3600 - LPCSTR lpStart,
3601 - LPCSTR lpCurrentChar,
3602 - DWORD dwFlags);
3603 -// #endif /* WINVER >= 0x0400 */
2830 +struct WNDCLASSA {
2831 + UINT style;
2832 + WNDPROC lpfnWndProc;
2833 + int cbClsExtra;
2834 + int cbWndExtra;
2835 + HINSTANCE hInstance;
2836 + HICON hIcon;
2837 + HCURSOR hCursor;
2838 + HBRUSH hbrBackground;
2839 + LPCSTR lpszMenuName;
2840 + LPCSTR lpszClassName;
2841 +}
2842 +alias WNDCLASSA* LPWNDCLASSA, PWNDCLASSA;
2843 +
2844 +struct WNDCLASSW {
2845 + UINT style;
2846 + WNDPROC lpfnWndProc;
2847 + int cbClsExtra;
2848 + int cbWndExtra;
2849 + HINSTANCE hInstance;
2850 + HICON hIcon;
2851 + HCURSOR hCursor;
2852 + HBRUSH hbrBackground;
2853 + LPCWSTR lpszMenuName;
2854 + LPCWSTR lpszClassName;
2855 +}
2856 +alias WNDCLASSW* LPWNDCLASSW, PWNDCLASSW;
2857 +
2858 +struct WNDCLASSEXA {
2859 + UINT cbSize = WNDCLASSEXA.sizeof;
2860 + UINT style;
2861 + WNDPROC lpfnWndProc;
2862 + int cbClsExtra;
2863 + int cbWndExtra;
2864 + HINSTANCE hInstance;
2865 + HICON hIcon;
2866 + HCURSOR hCursor;
2867 + HBRUSH hbrBackground;
2868 + LPCSTR lpszMenuName;
2869 + LPCSTR lpszClassName;
2870 + HICON hIconSm;
2871 +}
2872 +alias WNDCLASSEXA* LPWNDCLASSEXA, PWNDCLASSEXA;
2873 +
2874 +struct WNDCLASSEXW {
2875 + UINT cbSize = WNDCLASSEXW.sizeof;
2876 + UINT style;
2877 + WNDPROC lpfnWndProc;
2878 + int cbClsExtra;
2879 + int cbWndExtra;
2880 + HINSTANCE hInstance;
2881 + HICON hIcon;
2882 + HCURSOR hCursor;
2883 + HBRUSH hbrBackground;
2884 + LPCWSTR lpszMenuName;
2885 + LPCWSTR lpszClassName;
2886 + HICON hIconSm;
2887 +}
2888 +alias WNDCLASSEXW* LPWNDCLASSEXW, PWNDCLASSEXW;
2889 +
2890 +struct MENUITEMINFOA {
2891 + UINT cbSize = MENUITEMINFOA.sizeof;
2892 + UINT fMask;
2893 + UINT fType;
2894 + UINT fState;
2895 + UINT wID;
2896 + HMENU hSubMenu;
2897 + HBITMAP hbmpChecked;
2898 + HBITMAP hbmpUnchecked;
2899 + DWORD dwItemData;
2900 + LPSTR dwTypeData;
2901 + UINT cch;
2902 + static if (_WIN32_WINNT >= 0x500) {
2903 + HBITMAP hbmpItem;
2904 + }
2905 +}
2906 +alias MENUITEMINFOA* LPMENUITEMINFOA;
2907 +alias CPtr!(MENUITEMINFOA) LPCMENUITEMINFOA;
2908 +
2909 +struct MENUITEMINFOW {
2910 + UINT cbSize = MENUITEMINFOW.sizeof;
2911 + UINT fMask;
2912 + UINT fType;
2913 + UINT fState;
2914 + UINT wID;
2915 + HMENU hSubMenu;
2916 + HBITMAP hbmpChecked;
2917 + HBITMAP hbmpUnchecked;
2918 + DWORD dwItemData;
2919 + LPWSTR dwTypeData;
2920 + UINT cch;
2921 + static if (_WIN32_WINNT >= 0x500) {
2922 + HBITMAP hbmpItem;
2923 + }
2924 +}
2925 +alias MENUITEMINFOW* LPMENUITEMINFOW;
2926 +alias CPtr!(MENUITEMINFOW) LPCMENUITEMINFOW;
2927 +
2928 +struct SCROLLINFO {
2929 + UINT cbSize = this.sizeof;
2930 + UINT fMask;
2931 + int nMin;
2932 + int nMax;
2933 + UINT nPage;
2934 + int nPos;
2935 + int nTrackPos;
2936 +}
2937 +alias SCROLLINFO* LPSCROLLINFO;
2938 +alias CPtr!(SCROLLINFO) LPCSCROLLINFO;
2939 +
2940 +struct WINDOWPLACEMENT {
2941 + UINT length;
2942 + UINT flags;
2943 + UINT showCmd;
2944 + POINT ptMinPosition;
2945 + POINT ptMaxPosition;
2946 + RECT rcNormalPosition;
2947 +}
2948 +alias WINDOWPLACEMENT* LPWINDOWPLACEMENT, PWINDOWPLACEMENT;
2949 +
2950 +struct MENUITEMTEMPLATEHEADER {
2951 + WORD versionNumber;
2952 + WORD offset;
2953 +}
2954 +
2955 +struct MENUITEMTEMPLATE {
2956 + WORD mtOption;
2957 + WORD mtID;
2958 + WCHAR mtString[1];
2959 +}
2960 +
2961 +alias void MENUTEMPLATE, MENUTEMPLATEA, MENUTEMPLATEW;
2962 +
2963 +alias MENUTEMPLATE* LPMENUTEMPLATEA, LPMENUTEMPLATEW, LPMENUTEMPLATE;
2964 +
2965 +struct HELPINFO {
2966 + UINT cbSize = this.sizeof;
2967 + int iContextType;
2968 + int iCtrlId;
2969 + HANDLE hItemHandle;
2970 + DWORD dwContextId;
2971 + POINT MousePos;
2972 +}
2973 +alias HELPINFO* LPHELPINFO;
2974 +
2975 +struct MSGBOXPARAMSA {
2976 + UINT cbSize = this.sizeof;
2977 + HWND hwndOwner;
2978 + HINSTANCE hInstance;
2979 + LPCSTR lpszText;
2980 + LPCSTR lpszCaption;
2981 + DWORD dwStyle;
2982 + LPCSTR lpszIcon;
2983 + DWORD dwContextHelpId;
2984 + MSGBOXCALLBACK lpfnMsgBoxCallback;
2985 + DWORD dwLanguageId;
2986 +}
2987 +alias MSGBOXPARAMSA* PMSGBOXPARAMSA, LPMSGBOXPARAMSA;
2988 +
2989 +struct MSGBOXPARAMSW {
2990 + UINT cbSize = this.sizeof;
2991 + HWND hwndOwner;
2992 + HINSTANCE hInstance;
2993 + LPCWSTR lpszText;
2994 + LPCWSTR lpszCaption;
2995 + DWORD dwStyle;
2996 + LPCWSTR lpszIcon;
2997 + DWORD dwContextHelpId;
2998 + MSGBOXCALLBACK lpfnMsgBoxCallback;
2999 + DWORD dwLanguageId;
3000 +}
3001 +alias MSGBOXPARAMSW* PMSGBOXPARAMSW, LPMSGBOXPARAMSW;
3002 +
3003 +struct USEROBJECTFLAGS {
3004 + BOOL fInherit;
3005 + BOOL fReserved;
3006 + DWORD dwFlags;
3007 +}
3008 +
3009 +struct FILTERKEYS {
3010 + UINT cbSize = this.sizeof;
3011 + DWORD dwFlags;
3012 + DWORD iWaitMSec;
3013 + DWORD iDelayMSec;
3014 + DWORD iRepeatMSec;
3015 + DWORD iBounceMSec;
3016 +}
3017 +
3018 +struct HIGHCONTRASTA {
3019 + UINT cbSize = this.sizeof;
3020 + DWORD dwFlags;
3021 + LPSTR lpszDefaultScheme;
3022 +}
3023 +alias HIGHCONTRASTA* LPHIGHCONTRASTA;
3024 +
3025 +struct HIGHCONTRASTW {
3026 + UINT cbSize = this.sizeof;
3027 + DWORD dwFlags;
3028 + LPWSTR lpszDefaultScheme;
3029 +}
3030 +alias HIGHCONTRASTW* LPHIGHCONTRASTW;
3031 +
3032 +struct ICONMETRICSA {
3033 + UINT cbSize = this.sizeof;
3034 + int iHorzSpacing;
3035 + int iVertSpacing;
3036 + int iTitleWrap;
3037 + LOGFONTA lfFont;
3038 +}
3039 +alias ICONMETRICSA* LPICONMETRICSA;
3040 +
3041 +struct ICONMETRICSW {
3042 + UINT cbSize = this.sizeof;
3043 + int iHorzSpacing;
3044 + int iVertSpacing;
3045 + int iTitleWrap;
3046 + LOGFONTW lfFont;
3047 +}
3048 +alias ICONMETRICSW* LPICONMETRICSW;
3049 +
3050 +struct MINIMIZEDMETRICS {
3051 + UINT cbSize = this.sizeof;
3052 + int iWidth;
3053 + int iHorzGap;
3054 + int iVertGap;
3055 + int iArrange;
3056 +}
3057 +alias MINIMIZEDMETRICS* LPMINIMIZEDMETRICS;
3058 +
3059 +struct MOUSEKEYS {
3060 + UINT cbSize = this.sizeof;
3061 + DWORD dwFlags;
3062 + DWORD iMaxSpeed;
3063 + DWORD iTimeToMaxSpeed;
3064 + DWORD iCtrlSpeed;
3065 + DWORD dwReserved1;
3066 + DWORD dwReserved2;
3067 +}
3068 +alias MOUSEKEYS* LPMOUSEKEYS;
3069 +
3070 +struct NONCLIENTMETRICSA {
3071 + UINT cbSize = this.sizeof;
3072 + int iBorderWidth;
3073 + int iScrollWidth;
3074 + int iScrollHeight;
3075 + int iCaptionWidth;
3076 + int iCaptionHeight;
3077 + LOGFONTA lfCaptionFont;
3078 + int iSmCaptionWidth;
3079 + int iSmCaptionHeight;
3080 + LOGFONTA lfSmCaptionFont;
3081 + int iMenuWidth;
3082 + int iMenuHeight;
3083 + LOGFONTA lfMenuFont;
3084 + LOGFONTA lfStatusFont;
3085 + LOGFONTA lfMessageFont;
3086 +}
3087 +alias NONCLIENTMETRICSA* LPNONCLIENTMETRICSA;
3088 +
3089 +struct NONCLIENTMETRICSW {
3090 + UINT cbSize = this.sizeof;
3091 + int iBorderWidth;
3092 + int iScrollWidth;
3093 + int iScrollHeight;
3094 + int iCaptionWidth;
3095 + int iCaptionHeight;
3096 + LOGFONTW lfCaptionFont;
3097 + int iSmCaptionWidth;
3098 + int iSmCaptionHeight;
3099 + LOGFONTW lfSmCaptionFont;
3100 + int iMenuWidth;
3101 + int iMenuHeight;
3102 + LOGFONTW lfMenuFont;
3103 + LOGFONTW lfStatusFont;
3104 + LOGFONTW lfMessageFont;
3105 +}
3106 +alias NONCLIENTMETRICSW* LPNONCLIENTMETRICSW;
3107 +
3108 +struct SERIALKEYSA {
3109 + UINT cbSize = this.sizeof;
3110 + DWORD dwFlags;
3111 + LPSTR lpszActivePort;
3112 + LPSTR lpszPort;
3113 + UINT iBaudRate;
3114 + UINT iPortState;
3115 + UINT iActive;
3116 +}
3117 +alias SERIALKEYSA* LPSERIALKEYSA;
3118 +
3119 +struct SERIALKEYSW {
3120 + UINT cbSize = this.sizeof;
3121 + DWORD dwFlags;
3122 + LPWSTR lpszActivePort;
3123 + LPWSTR lpszPort;
3124 + UINT iBaudRate;
3125 + UINT iPortState;
3126 + UINT iActive;
3127 +}
3128 +alias SERIALKEYSW* LPSERIALKEYSW;
3129 +
3130 +struct SOUNDSENTRYA {
3131 + UINT cbSize = this.sizeof;
3132 + DWORD dwFlags;
3133 + DWORD iFSTextEffect;
3134 + DWORD iFSTextEffectMSec;
3135 + DWORD iFSTextEffectColorBits;
3136 + DWORD iFSGrafEffect;
3137 + DWORD iFSGrafEffectMSec;
3138 + DWORD iFSGrafEffectColor;
3139 + DWORD iWindowsEffect;
3140 + DWORD iWindowsEffectMSec;
3141 + LPSTR lpszWindowsEffectDLL;
3142 + DWORD iWindowsEffectOrdinal;
3143 +}
3144 +alias SOUNDSENTRYA* LPSOUNDSENTRYA;
3145 +
3146 +struct SOUNDSENTRYW {
3147 + UINT cbSize = this.sizeof;
3148 + DWORD dwFlags;
3149 + DWORD iFSTextEffect;
3150 + DWORD iFSTextEffectMSec;
3151 + DWORD iFSTextEffectColorBits;
3152 + DWORD iFSGrafEffect;
3153 + DWORD iFSGrafEffectMSec;
3154 + DWORD iFSGrafEffectColor;
3155 + DWORD iWindowsEffect;
3156 + DWORD iWindowsEffectMSec;
3157 + LPWSTR lpszWindowsEffectDLL;
3158 + DWORD iWindowsEffectOrdinal;
3159 +}
3160 +alias SOUNDSENTRYW* LPSOUNDSENTRYW;
3161 +
3162 +struct STICKYKEYS {
3163 + DWORD cbSize = this.sizeof;
3164 + DWORD dwFlags;
3165 +}
3166 +alias STICKYKEYS* LPSTICKYKEYS;
3167 +
3168 +struct TOGGLEKEYS {
3169 + DWORD cbSize = this.sizeof;
3170 + DWORD dwFlags;
3171 +}
3172 +
3173 +struct MOUSEHOOKSTRUCT {
3174 + POINT pt;
3175 + HWND hwnd;
3176 + UINT wHitTestCode;
3177 + DWORD dwExtraInfo;
3178 +}
3179 +alias MOUSEHOOKSTRUCT* LPMOUSEHOOKSTRUCT, PMOUSEHOOKSTRUCT;
3180 +
3181 +struct TRACKMOUSEEVENT {
3182 + DWORD cbSize = this.sizeof;
3183 + DWORD dwFlags;
3184 + HWND hwndTrack;
3185 + DWORD dwHoverTime;
3186 +}
3187 +alias TRACKMOUSEEVENT* LPTRACKMOUSEEVENT;
3188 +
3189 +struct TPMPARAMS {
3190 + UINT cbSize = this.sizeof;
3191 + RECT rcExclude;
3192 +}
3193 +alias TPMPARAMS* LPTPMPARAMS;
3194 +
3195 +struct EVENTMSG {
3196 + UINT message;
3197 + UINT paramL;
3198 + UINT paramH;
3199 + DWORD time;
3200 + HWND hwnd;
3201 +}
3202 +alias EVENTMSG* PEVENTMSGMSG, LPEVENTMSGMSG, PEVENTMSG, LPEVENTMSG;
3203 +
3204 +struct WINDOWPOS {
3205 + HWND hwnd;
3206 + HWND hwndInsertAfter;
3207 + int x;
3208 + int y;
3209 + int cx;
3210 + int cy;
3211 + UINT flags;
3212 +}
3213 +alias WINDOWPOS* PWINDOWPOS, LPWINDOWPOS;
3214 +
3215 +struct NCCALCSIZE_PARAMS {
3216 + RECT rgrc[3];
3217 + PWINDOWPOS lppos;
3218 +}
3219 +alias NCCALCSIZE_PARAMS* LPNCCALCSIZE_PARAMS;
3220 +
3221 +struct MDICREATESTRUCTA {
3222 + LPCSTR szClass;
3223 + LPCSTR szTitle;
3224 + HANDLE hOwner;
3225 + int x;
3226 + int y;
3227 + int cx;
3228 + int cy;
3229 + DWORD style;
3230 + LPARAM lParam;
3231 +}
3232 +alias MDICREATESTRUCTA* LPMDICREATESTRUCTA;
3233 +
3234 +struct MDICREATESTRUCTW {
3235 + LPCWSTR szClass;
3236 + LPCWSTR szTitle;
3237 + HANDLE hOwner;
3238 + int x;
3239 + int y;
3240 + int cx;
3241 + int cy;
3242 + DWORD style;
3243 + LPARAM lParam;
3244 +}
3245 +alias MDICREATESTRUCTW* LPMDICREATESTRUCTW;
3246 +
3247 +struct MINMAXINFO {
3248 + POINT ptReserved;
3249 + POINT ptMaxSize;
3250 + POINT ptMaxPosition;
3251 + POINT ptMinTrackSize;
3252 + POINT ptMaxTrackSize;
3253 +}
3254 +alias MINMAXINFO* PMINMAXINFO, LPMINMAXINFO;
3255 +
3256 +struct MDINEXTMENU {
3257 + HMENU hmenuIn;
3258 + HMENU hmenuNext;
3259 + HWND hwndNext;
3260 +}
3261 +alias MDINEXTMENU* PMDINEXTMENU, LPMDINEXTMENU;
3262 +
3263 +struct MEASUREITEMSTRUCT {
3264 + UINT CtlType;
3265 + UINT CtlID;
3266 + UINT itemID;
3267 + UINT itemWidth;
3268 + UINT itemHeight;
3269 + DWORD itemData;
3270 +}
3271 +alias MEASUREITEMSTRUCT* PMEASUREITEMSTRUCT, LPMEASUREITEMSTRUCT;
3272 +
3273 +struct DROPSTRUCT {
3274 + HWND hwndSource;
3275 + HWND hwndSink;
3276 + DWORD wFmt;
3277 + DWORD dwData;
3278 + POINT ptDrop;
3279 + DWORD dwControlData;
3280 +}
3281 +alias DROPSTRUCT* PDROPSTRUCT, LPDROPSTRUCT;
3282 +
3283 +alias DWORD HELPPOLY;
3284 +
3285 +struct MULTIKEYHELPA {
3286 + DWORD mkSize;
3287 + CHAR mkKeylist;
3288 + CHAR szKeyphrase[1];
3289 +}
3290 +alias MULTIKEYHELPA* PMULTIKEYHELPA, LPMULTIKEYHELPA;
3291 +
3292 +struct MULTIKEYHELPW {
3293 + DWORD mkSize;
3294 + WCHAR mkKeylist;
3295 + WCHAR szKeyphrase[1];
3296 +}
3297 +alias MULTIKEYHELPW* PMULTIKEYHELPW, LPMULTIKEYHELPW;
3298 +
3299 +struct HELPWININFOA {
3300 + int wStructSize;
3301 + int x;
3302 + int y;
3303 + int dx;
3304 + int dy;
3305 + int wMax;
3306 + CHAR rgchMember[2];
3307 +}
3308 +alias HELPWININFOA* PHELPWININFOA, LPHELPWININFOA;
3309 +
3310 +struct HELPWININFOW {
3311 + int wStructSize;
3312 + int x;
3313 + int y;
3314 + int dx;
3315 + int dy;
3316 + int wMax;
3317 + WCHAR rgchMember[2];
3318 +}
3319 +alias HELPWININFOW* PHELPWININFOW, LPHELPWININFOW;
3320 +
3321 +struct STYLESTRUCT {
3322 + DWORD styleOld;
3323 + DWORD styleNew;
3324 +}
3325 +alias STYLESTRUCT* LPSTYLESTRUCT;
3326 +
3327 +struct ALTTABINFO {
3328 + DWORD cbSize = this.sizeof;
3329 + int cItems;
3330 + int cColumns;
3331 + int cRows;
3332 + int iColFocus;
3333 + int iRowFocus;
3334 + int cxItem;
3335 + int cyItem;
3336 + POINT ptStart;
3337 +}
3338 +alias ALTTABINFO* PALTTABINFO, LPALTTABINFO;
3339 +
3340 +struct COMBOBOXINFO {
3341 + DWORD cbSize = this.sizeof;
3342 + RECT rcItem;
3343 + RECT rcButton;
3344 + DWORD stateButton;
3345 + HWND hwndCombo;
3346 + HWND hwndItem;
3347 + HWND hwndList;
3348 +}
3349 +alias COMBOBOXINFO* PCOMBOBOXINFO, LPCOMBOBOXINFO;
3350 +
3351 +struct CURSORINFO {
3352 + DWORD cbSize = this.sizeof;
3353 + DWORD flags;
3354 + HCURSOR hCursor;
3355 + POINT ptScreenPos;
3356 +}
3357 +alias CURSORINFO* PCURSORINFO, LPCURSORINFO;
3358 +
3359 +struct MENUBARINFO {
3360 + DWORD cbSize = this.sizeof;
3361 + RECT rcBar;
3362 + HMENU hMenu;
3363 + HWND hwndMenu;
3364 + byte bf_; // Simulated bitfield
3365 +// BOOL fBarFocused:1;
3366 +// BOOL fFocused:1;
3367 + bool fBarFocused() { return (bf_ & 1) == 1; }
3368 + bool fFocused() { return (bf_ & 2) == 2; }
3369 + void fBarFocused(bool b) { bf_ = cast(byte)((bf_ & 0xFE) | b); }
3370 + void fFocused(bool b) { bf_ = cast(byte)(b ? (bf_ | 2) : bf_ & 0xFD); }
3371 +}
3372 +alias MENUBARINFO* PMENUBARINFO;
3373 +
3374 +struct MENUINFO {
3375 + DWORD cbSize = this.sizeof;
3376 + DWORD fMask;
3377 + DWORD dwStyle;
3378 + UINT cyMax;
3379 + HBRUSH hbrBack;
3380 + DWORD dwContextHelpID;
3381 + ULONG_PTR dwMenuData;
3382 +}
3383 +alias MENUINFO* LPMENUINFO;
3384 +alias CPtr!(MENUINFO) LPCMENUINFO;
3385 +
3386 +
3387 +const CCHILDREN_SCROLLBAR=5;
3388 +
3389 +struct SCROLLBARINFO {
3390 + DWORD cbSize = this.sizeof;
3391 + RECT rcScrollBar;
3392 + int dxyLineButton;
3393 + int xyThumbTop;
3394 + int xyThumbBottom;
3395 + int reserved;
3396 + DWORD rgstate[CCHILDREN_SCROLLBAR+1];
3397 +}
3398 +alias SCROLLBARINFO* PSCROLLBARINFO, LPSCROLLBARINFO;
3399 +
3400 +const CCHILDREN_TITLEBAR=5;
3401 +
3402 +struct TITLEBARINFO {
3403 + DWORD cbSize = TITLEBARINFO.sizeof;
3404 + RECT rcTitleBar;
3405 + DWORD[CCHILDREN_TITLEBAR+1] rgstate;
3406 +}
3407 +alias TITLEBARINFO* PTITLEBARINFO, LPTITLEBARINFO;
3408 +
3409 +struct WINDOWINFO {
3410 + DWORD cbSize = WINDOWINFO.sizeof;
3411 + RECT rcWindow;
3412 + RECT rcClient;
3413 + DWORD dwStyle;
3414 + DWORD dwExStyle;
3415 + DWORD dwWindowStatus;
3416 + UINT cxWindowBorders;
3417 + UINT cyWindowBorders;
3418 + ATOM atomWindowType;
3419 + WORD wCreatorVersion;
3420 +}
3421 +alias WINDOWINFO* PWINDOWINFO, LPWINDOWINFO;
3422 +
3423 +struct LASTINPUTINFO {
3424 + UINT cbSize = this.sizeof;
3425 + DWORD dwTime;
3426 +}
3427 +alias LASTINPUTINFO* PLASTINPUTINFO;
3428 +
3429 +struct MONITORINFO {
3430 + DWORD cbSize = this.sizeof;
3431 + RECT rcMonitor;
3432 + RECT rcWork;
3433 + DWORD dwFlags;
3434 +}
3435 +alias MONITORINFO* LPMONITORINFO;
3436 +
3437 +const CCHDEVICENAME=32;
3438 +
3439 +struct MONITORINFOEXA {
3440 + DWORD cbSize = MONITORINFOEXA.sizeof;
3441 + RECT rcMonitor;
3442 + RECT rcWork;
3443 + DWORD dwFlags;
3444 + CHAR[CCHDEVICENAME] szDevice;
3445 +}
3446 +alias MONITORINFOEXA* LPMONITORINFOEXA;
3447 +
3448 +struct MONITORINFOEXW {
3449 + DWORD cbSize = MONITORINFOEXW.sizeof;
3450 + RECT rcMonitor;
3451 + RECT rcWork;
3452 + DWORD dwFlags;
3453 + WCHAR[CCHDEVICENAME] szDevice;
3454 +}
3455 +alias MONITORINFOEXW* LPMONITORINFOEXW;
3456 +
3457 +struct KBDLLHOOKSTRUCT {
3458 + DWORD vkCode;
3459 + DWORD scanCode;
3460 + DWORD flags;
3461 + DWORD time;
3462 + DWORD dwExtraInfo;
3463 +}
3464 +alias KBDLLHOOKSTRUCT* LPKBDLLHOOKSTRUCT, PKBDLLHOOKSTRUCT;
3465 +
3466 +static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
3467 +
3468 +struct FLASHWINFO {
3469 + UINT cbSize = this.sizeof;
3470 + HWND hwnd;
3471 + DWORD dwFlags;
3472 + UINT uCount;
3473 + DWORD dwTimeout;
3474 +}
3475 +alias FLASHWINFO* PFLASHWINFO;
3476 +
3477 +}
3478 +
3479 +static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) {
3480 +
3481 +struct MOUSEMOVEPOINT {
3482 + int x;
3483 + int y;
3484 + DWORD time;
3485 + ULONG_PTR dwExtraInfo;
3486 +}
3487 +alias MOUSEMOVEPOINT* PMOUSEMOVEPOINT, LPMOUSEMOVEPOINT;
3488 +}
3489 +
3490 +static if (_WIN32_WINNT >= 0x403) {
3491 +struct MOUSEINPUT {
3492 + LONG dx;
3493 + LONG dy;
3494 + DWORD mouseData;
3495 + DWORD dwFlags;
3496 + DWORD time;
3497 + ULONG_PTR dwExtraInfo;
3498 +}
3499 +alias MOUSEINPUT* PMOUSEINPUT;
3500 +
3501 +struct KEYBDINPUT {
3502 + WORD wVk;
3503 + WORD wScan;
3504 + DWORD dwFlags;
3505 + DWORD time;
3506 + ULONG_PTR dwExtraInfo;
3507 +}
3508 +alias KEYBDINPUT* PKEYBDINPUT;
3509 +
3510 +struct HARDWAREINPUT {
3511 + DWORD uMsg;
3512 + WORD wParamL;
3513 + WORD wParamH;
3514 +}
3515 +alias HARDWAREINPUT* PHARDWAREINPUT;
3516 +
3517 +struct INPUT {
3518 + DWORD type;
3519 + union {
3520 + MOUSEINPUT mi;
3521 + KEYBDINPUT ki;
3522 + HARDWAREINPUT hi;
3523 + }
3524 +}
3525 +alias INPUT* PINPUT, LPINPUT;
3526 +}// (_WIN32_WINNT >= 0x403)
3527 +
3528 +static if (WINVER >= 0x500) {
3529 +struct GUITHREADINFO {
3530 + DWORD cbSize = this.sizeof;
3531 + DWORD flags;
3532 + HWND hwndActive;
3533 + HWND hwndFocus;
3534 + HWND hwndCapture;
3535 + HWND hwndMenuOwner;
3536 + HWND hwndMoveSize;
3537 + HWND hwndCaret;
3538 + RECT rcCaret;
3539 +}
3540 +alias GUITHREADINFO* PGUITHREADINFO, LPGUITHREADINFO;
3541 +extern (Windows) {
3542 +alias void function (HWINEVENTHOOK, DWORD, HWND, LONG, LONG, DWORD, DWORD) WINEVENTPROC;
3543 +}
3544 +
3545 +}// (WINVER >= 0x500)
3546 +
3547 +static if (_WIN32_WINNT >= 0x501) {
3548 +struct BSMINFO {
3549 + UINT cbSize = this.sizeof;
3550 + HDESK hdesk;
3551 + HWND hwnd;
3552 + LUID luid;
3553 +}
3554 +alias BSMINFO* PBSMINFO;
3555 +
3556 +alias HANDLE HRAWINPUT;
3557 +
3558 +struct RAWINPUTHEADER {
3559 + DWORD dwType;
3560 + DWORD dwSize;
3561 + HANDLE hDevice;
3562 + WPARAM wParam;
3563 +}
3564 +alias RAWINPUTHEADER* PRAWINPUTHEADER;
3565 +
3566 +struct RAWMOUSE {
3567 + USHORT usFlags;
3568 + union {
3569 + ULONG ulButtons;
3570 + struct {
3571 + USHORT usButtonFlags;
3572 + USHORT usButtonData;
3573 + }
3574 + }
3575 + ULONG ulRawButtons;
3576 + LONG lLastX;
3577 + LONG lLastY;
3578 + ULONG ulExtraInformation;
3579 +}
3580 +alias RAWMOUSE* PRAWMOUSE, LPRAWMOUSE;
3581 +
3582 +struct RAWKEYBOARD {
3583 + USHORT MakeCode;
3584 + USHORT Flags;
3585 + USHORT Reserved;
3586 + USHORT VKey;
3587 + UINT Message;
3588 + ULONG ExtraInformation;
3589 +}
3590 +alias RAWKEYBOARD* PRAWKEYBOARD, LPRAWKEYBOARD;
3591 +
3592 +struct RAWHID {
3593 + DWORD dwSizeHid;
3594 + DWORD dwCount;
3595 + BYTE bRawData;
3596 +}
3597 +alias RAWHID* PRAWHID, LPRAWHID;
3598 +
3599 +struct RAWINPUT {
3600 + RAWINPUTHEADER header;
3601 + union _data {
3602 + RAWMOUSE mouse;
3603 + RAWKEYBOARD keyboard;
3604 + RAWHID hid;
3605 + }
3606 + _data data;
3607 +}
3608 +alias RAWINPUT* PRAWINPUT, LPRAWINPUT;
3609 +
3610 +struct RAWINPUTDEVICE {
3611 + USHORT usUsagePage;
3612 + USHORT usUsage;
3613 + DWORD dwFlags;
3614 + HWND hwndTarget;
3615 +}
3616 +alias RAWINPUTDEVICE* PRAWINPUTDEVICE, LPRAWINPUTDEVICE;
3617 +alias CPtr!(RAWINPUTDEVICE) PCRAWINPUTDEVICE;
3618 +
3619 +struct RAWINPUTDEVICELIST {
3620 + HANDLE hDevice;
3621 + DWORD dwType;
3622 +}
3623 +alias RAWINPUTDEVICELIST* PRAWINPUTDEVICELIST;
3624 +
3625 +struct RID_DEVICE_INFO_MOUSE {
3626 + DWORD dwId;
3627 + DWORD dwNumberOfButtons;
3628 + DWORD dwSampleRate;
3629 + BOOL fHasHorizontalWheel;
3630 +}
3631 +
3632 +struct RID_DEVICE_INFO_KEYBOARD {
3633 + DWORD dwType;
3634 + DWORD dwSubType;
3635 + DWORD dwKeyboardMode;
3636 + DWORD dwNumberOfFunctionKeys;
3637 + DWORD dwNumberOfIndicators;
3638 + DWORD dwNumberOfKeysTotal;
3639 +}
3640 +
3641 +struct RID_DEVICE_INFO_HID {
3642 + DWORD dwVendorId;
3643 + DWORD dwProductId;
3644 + DWORD dwVersionNumber;
3645 + USHORT usUsagePage;
3646 + USHORT usUsage;
3647 +}
3648 +
3649 +struct RID_DEVICE_INFO {
3650 + DWORD cbSize = this.sizeof;
3651 + DWORD dwType;
3652 + union {
3653 + RID_DEVICE_INFO_MOUSE mouse;
3654 + RID_DEVICE_INFO_KEYBOARD keyboard;
3655 + RID_DEVICE_INFO_HID hid;
3656 + }
3657 +}
3658 +}// (_WIN32_WINNT >= 0x501)
3659 +
3660 +struct MSLLHOOKSTRUCT {
3661 + POINT pt;
3662 + DWORD mouseData;
3663 + DWORD flags;
3664 + DWORD time;
3665 + ULONG_PTR dwExtraInfo;
3666 +}
3667 +alias MSLLHOOKSTRUCT* PMSLLHOOKSTRUCT;
3604 3668
3605 3669 alias CharToOemA AnsiToOem;
3606 3670 alias OemToCharA OemToAnsi;
3607 3671 alias CharToOemBuffA AnsiToOemBuff;
3608 3672 alias OemToCharBuffA OemToAnsiBuff;
3609 3673 alias CharUpperA AnsiUpper;
3610 3674 alias CharUpperBuffA AnsiUpperBuff;
3611 3675 alias CharLowerA AnsiLower;
3612 3676 alias CharLowerBuffA AnsiLowerBuff;
3613 3677 alias CharNextA AnsiNext;
3614 3678 alias CharPrevA AnsiPrev;
3615 3679
3616 -// #ifndef NOLANGUAGE
3617 -
3618 -extern(Windows) export BOOL IsCharAlphaA(
3619 - CHAR ch);
3620 -extern(Windows) export BOOL IsCharAlphaW(
3621 - WCHAR ch);
3622 -// #ifdef UNICODE
3623 -alias IsCharAlphaW IsCharAlpha;
3624 -// #else
3625 -// #...
3626 -// #endif // !UNICODE
3627 -
3628 -extern(Windows) export BOOL IsCharAlphaNumericA(
3629 - CHAR ch);
3630 -extern(Windows) export BOOL IsCharAlphaNumericW(
3631 - WCHAR ch);
3632 -// #ifdef UNICODE
3633 -alias IsCharAlphaNumericW IsCharAlphaNumeric;
3634 -// #else
3635 -// #...
3636 -// #endif // !UNICODE
3637 -
3638 -extern(Windows) export BOOL IsCharUpperA(
3639 - CHAR ch);
3640 -extern(Windows) export BOOL IsCharUpperW(
3641 - WCHAR ch);
3642 -// #ifdef UNICODE
3643 -alias IsCharUpperW IsCharUpper;
3644 -// #else
3645 -// #...
3646 -// #endif // !UNICODE
3647 -
3648 -extern(Windows) export BOOL IsCharLowerA(
3649 - CHAR ch);
3650 -extern(Windows) export BOOL IsCharLowerW(
3651 - WCHAR ch);
3652 -// #ifdef UNICODE
3653 -alias IsCharLowerW IsCharLower;
3654 -// #else
3655 -// #...
3656 -// #endif // !UNICODE
3657 -
3658 -// #endif /* !NOLANGUAGE */
3659 -
3660 -extern(Windows) export HWND SetFocus(
3661 - HWND hWnd);
3662 -
3663 -extern(Windows) export HWND GetActiveWindow();
3664 -
3665 -extern(Windows) export HWND GetFocus();
3666 -
3667 -extern(Windows) export UINT GetKBCodePage();
3668 -
3669 -extern(Windows) export SHORT GetKeyState(
3670 - int nVirtKey);
3671 -
3672 -extern(Windows) export SHORT GetAsyncKeyState(
3673 - int vKey);
3674 -
3675 -extern(Windows) export BOOL GetKeyboardState(
3676 - PBYTE lpKeyState);
3677 -
3678 -extern(Windows) export BOOL SetKeyboardState(
3679 - LPBYTE lpKeyState);
3680 -
3681 -extern(Windows) export int GetKeyNameTextA(
3682 - LONG lParam,
3683 - LPSTR lpString,
3684 - int nSize);
3685 -extern(Windows) export int GetKeyNameTextW(
3686 - LONG lParam,
3687 - LPWSTR lpString,
3688 - int nSize);
3689 -// #ifdef UNICODE
3690 -alias GetKeyNameTextW GetKeyNameText;
3691 -// #else
3692 -// #...
3693 -// #endif // !UNICODE
3694 -
3695 -extern(Windows) export int GetKeyboardType(
3696 - int nTypeFlag);
3697 -
3698 -extern(Windows) export int ToAscii(
3699 - UINT uVirtKey,
3700 - UINT uScanCode,
3701 - BYTE *lpKeyState,
3702 - LPWORD lpChar,
3703 - UINT uFlags);
3680 +alias MAKELONG MAKEWPARAM;
3681 +alias MAKELONG MAKELPARAM;
3682 +alias MAKELONG MAKELRESULT;
3683 +
3684 +//MACRO #define POINTSTOPOINT(p, ps) { (p).x=LOWORD(*(DWORD* )&ps); (p).y=HIWORD(*(DWORD* )&ps); }
3685 +//MACRO #define POINTTOPOINTS(p) ((POINTS)MAKELONG((p).x, (p).y))
3686 +
3687 +extern (Windows) {
3688 +
3689 +HKL ActivateKeyboardLayout(HKL, UINT);
3690 +BOOL AdjustWindowRect(LPRECT, DWORD, BOOL);
3691 +BOOL AdjustWindowRectEx(LPRECT, DWORD, BOOL, DWORD);
3692 +BOOL AnyPopup();
3693 +BOOL AppendMenuA(HMENU, UINT, UINT_PTR, LPCSTR);
3694 +BOOL AppendMenuW(HMENU, UINT, UINT_PTR, LPCWSTR);
3695 +UINT ArrangeIconicWindows(HWND);
3696 +BOOL AttachThreadInput(DWORD, DWORD, BOOL);
3697 +HDWP BeginDeferWindowPos(int);
3698 +HDC BeginPaint(HWND, LPPAINTSTRUCT);
3699 +BOOL BringWindowToTop(HWND);
3700 +BOOL CallMsgFilterA(LPMSG, INT);
3701 +BOOL CallMsgFilterW(LPMSG, INT);
3702 +LRESULT CallNextHookEx(HHOOK, int, WPARAM, LPARAM);
3703 +LRESULT CallWindowProcA(WNDPROC, HWND, UINT, WPARAM, LPARAM);
3704 +LRESULT CallWindowProcW(WNDPROC, HWND, UINT, WPARAM, LPARAM);
3705 +WORD CascadeWindows(HWND, UINT, LPCRECT, UINT, CPtr!(HWND));
3706 +BOOL ChangeClipboardChain(HWND, HWND);
3707 +
3708 +LONG ChangeDisplaySettingsA(PDEVMODEA, DWORD);
3709 +LONG ChangeDisplaySettingsW(PDEVMODEW, DWORD);
3710 +LONG ChangeDisplaySettingsExA(LPCSTR, LPDEVMODEA, HWND, DWORD, LPVOID);
3711 +LONG ChangeDisplaySettingsExW(LPCWSTR, LPDEVMODEW, HWND, DWORD, LPVOID);
3712 +
3713 +BOOL ChangeMenuA(HMENU, UINT, LPCSTR, UINT, UINT);
3714 +BOOL ChangeMenuW(HMENU, UINT, LPCWSTR, UINT, UINT);
3715 +LPSTR CharLowerA(LPSTR);
3716 +LPWSTR CharLowerW(LPWSTR);
3717 +DWORD CharLowerBuffA(LPSTR, DWORD);
3718 +DWORD CharLowerBuffW(LPWSTR, DWORD);
3719 +LPSTR CharNextA(LPCSTR);
3720 +LPWSTR CharNextW(LPCWSTR);
3721 +LPSTR CharNextExA(WORD, LPCSTR, DWORD);
3722 +LPWSTR CharNextExW(WORD, LPCWSTR, DWORD);
3723 +LPSTR CharPrevA(LPCSTR, LPCSTR);
3724 +LPWSTR CharPrevW(LPCWSTR, LPCWSTR);
3725 +LPSTR CharPrevExA(WORD, LPCSTR, LPCSTR, DWORD);
3726 +LPWSTR CharPrevExW(WORD, LPCWSTR, LPCWSTR, DWORD);
3727 +BOOL CharToOemA(LPCSTR, LPSTR);
3728 +BOOL CharToOemW(LPCWSTR, LPSTR);
3729 +BOOL CharToOemBuffA(LPCSTR, LPSTR, DWORD);
3730 +BOOL CharToOemBuffW(LPCWSTR, LPSTR, DWORD);
3731 +LPSTR CharUpperA(LPSTR);
3732 +LPWSTR CharUpperW(LPWSTR);
3733 +DWORD CharUpperBuffA(LPSTR, DWORD);
3734 +DWORD CharUpperBuffW(LPWSTR, DWORD);
3735 +BOOL CheckDlgButton(HWND, int, UINT);
3736 +DWORD CheckMenuItem(HMENU, UINT, UINT);
3737 +BOOL CheckMenuRadioItem(HMENU, UINT, UINT, UINT, UINT);
3738 +BOOL CheckRadioButton(HWND, int, int, int);
3739 +HWND ChildWindowFromPoint(HWND, POINT);
3740 +HWND ChildWindowFromPointEx(HWND, POINT, UINT);
3741 +BOOL ClientToScreen(HWND, LPPOINT);
3742 +BOOL ClipCursor(LPCRECT);
3743 +BOOL CloseClipboard();
3744 +BOOL CloseDesktop(HDESK);
3745 +BOOL CloseWindow(HWND);
3746 +BOOL CloseWindowStation(HWINSTA);
3747 +int CopyAcceleratorTableA(HACCEL, LPACCEL, int);
3748 +int CopyAcceleratorTableW(HACCEL, LPACCEL, int);
3749 +
3750 +HICON CopyIcon(HICON);
3751 +HANDLE CopyImage(HANDLE, UINT, int, int, UINT);
3752 +BOOL CopyRect(LPRECT, LPCRECT);
3753 +int CountClipboardFormats();
3754 +HACCEL CreateAcceleratorTableA(LPACCEL, int);
3755 +HACCEL CreateAcceleratorTableW(LPACCEL, int);
3756 +BOOL CreateCaret(HWND, HBITMAP, int, int);
3757 +HCURSOR CreateCursor(HINSTANCE, int, int, int, int, PCVOID, PCVOID);
3758 +
3759 +HDESK CreateDesktopA(LPCSTR, LPCSTR, LPDEVMODEA, DWORD, ACCESS_MASK, LPSECURITY_ATTRIBUTES);
3760 +HDESK CreateDesktopW(LPCWSTR, LPCWSTR, LPDEVMODEW, DWORD, ACCESS_MASK, LPSECURITY_ATTRIBUTES);
3761 +
3762 +HWND CreateDialogParamA(HINSTANCE, LPCSTR, HWND, DLGPROC, LPARAM);
3763 +HWND CreateDialogParamW(HINSTANCE, LPCWSTR, HWND, DLGPROC, LPARAM);
3764 +HWND CreateDialogIndirectParamA(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3765 +HWND CreateDialogIndirectParamW(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3766 +
3767 +HICON CreateIcon(HINSTANCE, int, int, BYTE, BYTE, CPtr!(BYTE), BYTE*);
3768 +HICON CreateIconFromResource(PBYTE, DWORD, BOOL, DWORD);
3769 +HICON CreateIconFromResourceEx(PBYTE, DWORD, BOOL, DWORD, int, int, UINT);
3770 +HICON CreateIconIndirect(PICONINFO);
3771 +HWND CreateMDIWindowA(LPCSTR, LPCSTR, DWORD, int, int, int, int, HWND, HINSTANCE, LPARAM);
3772 +HWND CreateMDIWindowW(LPCWSTR, LPCWSTR, DWORD, int, int, int, int, HWND, HINSTANCE, LPARAM);
3773 +HMENU CreateMenu();
3774 +HMENU CreatePopupMenu();
3775 +
3776 +HWND CreateWindowExA(DWORD, LPCSTR, LPCSTR, DWORD, int, int, int, int, HWND, HMENU, HINSTANCE, LPVOID);
3777 +HWND CreateWindowExW(DWORD, LPCWSTR, LPCWSTR, DWORD, int, int, int, int, HWND, HMENU, HINSTANCE, LPVOID);
3778 +
3779 +HWINSTA CreateWindowStationA(LPSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES);
3780 +HWINSTA CreateWindowStationW(LPWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES);
3781 +LRESULT DefDlgProcA(HWND, UINT, WPARAM, LPARAM);
3782 +LRESULT DefDlgProcW(HWND, UINT, WPARAM, LPARAM);
3783 +HDWP DeferWindowPos(HDWP, HWND, HWND, int, int, int, int, UINT);
3784 +LRESULT DefFrameProcA(HWND, HWND, UINT, WPARAM, LPARAM);
3785 +LRESULT DefFrameProcW(HWND, HWND, UINT, WPARAM, LPARAM);
3786 +
3787 +LRESULT DefMDIChildProcA(HWND, UINT, WPARAM, LPARAM);
3788 +LRESULT DefMDIChildProcW(HWND, UINT, WPARAM, LPARAM);
3789 +LRESULT DefWindowProcA(HWND, UINT, WPARAM, LPARAM);
3790 +LRESULT DefWindowProcW(HWND, UINT, WPARAM, LPARAM);
3791 +BOOL DeleteMenu(HMENU, UINT, UINT);
3792 +BOOL DeregisterShellHookWindow(HWND);
3793 +BOOL DestroyAcceleratorTable(HACCEL);
3794 +BOOL DestroyCaret();
3795 +BOOL DestroyCursor(HCURSOR);
3796 +BOOL DestroyIcon(HICON);
3797 +BOOL DestroyMenu(HMENU);
3798 +BOOL DestroyWindow(HWND);
3799 +
3800 +int DialogBoxParamA(HINSTANCE, LPCSTR, HWND, DLGPROC, LPARAM);
3801 +int DialogBoxParamW(HINSTANCE, LPCWSTR, HWND, DLGPROC, LPARAM);
3802 +int DialogBoxIndirectParamA(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3803 +int DialogBoxIndirectParamW(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3804 +
3805 +} // extern (Windows)
3806 +
3807 +HCURSOR CopyCursor(HCURSOR c)
3808 +{
3809 + return cast(HCURSOR)CopyIcon(cast(HICON)c);
3810 +}
3811 +
3812 +HWND CreateDialogA(HINSTANCE h, LPCSTR n, HWND w, DLGPROC f)
3813 +{
3814 + return CreateDialogParamA(h, n, w, f, 0);
3815 +}
3816 +
3817 +HWND CreateDialogW(HINSTANCE h, LPCWSTR n, HWND w, DLGPROC f)
3818 +{
3819 + return CreateDialogParamW(h, n, w, f, 0);
3820 +}
3821 +
3822 +HWND CreateDialogIndirectA(HINSTANCE h, LPCDLGTEMPLATE t, HWND w , DLGPROC f)
3823 +{
3824 + return CreateDialogIndirectParamA(h, t, w, f, 0);
3825 +}
3826 +
3827 +HWND CreateDialogIndirectW(HINSTANCE h, LPCDLGTEMPLATE t, HWND w , DLGPROC f)
3828 +{
3829 + return CreateDialogIndirectParamW(h, t, w, f, 0);
3830 +}
3831 +
3832 +
3833 +HWND CreateWindowA(LPCSTR a, LPCSTR b, DWORD c, int d, int e, int f, int g, HWND h, HMENU i, HINSTANCE j, LPVOID k)
3834 +{
3835 + return CreateWindowExA(0, a, b, c, d, e, f, g, h, i, j, k);
3836 +}
3837 +
3838 +HWND CreateWindowW(LPCWSTR a, LPCWSTR b, DWORD c, int d, int e, int f, int g, HWND h, HMENU i, HINSTANCE j, LPVOID k)
3839 +{
3840 + return CreateWindowExW(0, a, b, c, d, e, f, g, h, i, j, k);
3841 +}
3842 +
3843 +int DialogBoxA(HINSTANCE i, LPCSTR t, HWND p, DLGPROC f)
3844 +{
3845 + return DialogBoxParamA(i, t, p, f, 0);
3846 +}
3847 +
3848 +int DialogBoxW(HINSTANCE i, LPCWSTR t, HWND p, DLGPROC f)
3849 +{
3850 + return DialogBoxParamW(i, t, p, f, 0);
3851 +}
3852 +
3853 +int DialogBoxIndirectA(HINSTANCE i, LPCDLGTEMPLATE t, HWND p, DLGPROC f)
3854 +{
3855 + return DialogBoxIndirectParamA(i, t, p, f, 0);
3856 +}
3857 +
3858 +int DialogBoxIndirectW(HINSTANCE i, LPCDLGTEMPLATE t, HWND p, DLGPROC f)
3859 +{
3860 + return DialogBoxIndirectParamW(i, t, p, f, 0);
3861 +}
3862 +
3863 +BOOL ExitWindows(UINT r, DWORD c)
3864 +{
3865 + return ExitWindowsEx(EWX_LOGOFF, 0);
3866 +}
3867 +alias GetWindow GetNextWindow;
3868 +
3869 +extern (Windows):
3870 +LONG DispatchMessageA( CPtr!(MSG));
3871 +LONG DispatchMessageW( CPtr!(MSG));
3872 +int DlgDirListA(HWND, LPSTR, int, int, UINT);
3873 +int DlgDirListW(HWND, LPWSTR, int, int, UINT);
3874 +int DlgDirListComboBoxA(HWND, LPSTR, int, int, UINT);
3875 +int DlgDirListComboBoxW(HWND, LPWSTR, int, int, UINT);
3876 +BOOL DlgDirSelectComboBoxExA(HWND, LPSTR, int, int);
3877 +BOOL DlgDirSelectComboBoxExW(HWND, LPWSTR, int, int);
3878 +BOOL DlgDirSelectExA(HWND, LPSTR, int, int);
3879 +BOOL DlgDirSelectExW(HWND, LPWSTR, int, int);
3880 +BOOL DragDetect(HWND, POINT);
3881 +DWORD DragObject(HWND, HWND, UINT, DWORD, HCURSOR);
3882 +BOOL DrawAnimatedRects(HWND, int, LPCRECT, LPCRECT);
3883 +BOOL DrawCaption(HWND, HDC, LPCRECT, UINT);
3884 +BOOL DrawEdge(HDC, LPRECT, UINT, UINT);
3885 +BOOL DrawFocusRect(HDC, LPCRECT);
3886 +BOOL DrawFrameControl(HDC, LPRECT, UINT, UINT);
3887 +BOOL DrawIcon(HDC, int, int, HICON);
3888 +BOOL DrawIconEx(HDC, int, int, HICON, int, int, UINT, HBRUSH, UINT);
3889 +BOOL DrawMenuBar(HWND);
3890 +BOOL DrawStateA(HDC, HBRUSH, DRAWSTATEPROC, LPARAM, WPARAM, int, int, int, int, UINT);
3891 +BOOL DrawStateW(HDC, HBRUSH, DRAWSTATEPROC, LPARAM, WPARAM, int, int, int, int, UINT);
3892 +int DrawTextA(HDC, LPCSTR, int, LPRECT, UINT);
3893 +int DrawTextW(HDC, LPCWSTR, int, LPRECT, UINT);
3894 +int DrawTextExA(HDC, LPSTR, int, LPRECT, UINT, LPDRAWTEXTPARAMS);
3895 +int DrawTextExW(HDC, LPWSTR, int, LPRECT, UINT, LPDRAWTEXTPARAMS);
3896 +BOOL EmptyClipboard();
3897 +BOOL EnableMenuItem(HMENU, UINT, UINT);
3898 +BOOL EnableScrollBar(HWND, UINT, UINT);
3899 +BOOL EnableWindow(HWND, BOOL);
3900 +BOOL EndDeferWindowPos(HDWP);
3901 +BOOL EndDialog(HWND, int);
3902 +BOOL EndMenu();
3903 +BOOL EndPaint(HWND, CPtr!(PAINTSTRUCT));
3904 +BOOL EnumChildWindows(HWND, ENUMWINDOWSPROC, LPARAM);
3905 +UINT EnumClipboardFormats(UINT);
3906 +BOOL EnumDesktopsA(HWINSTA, DESKTOPENUMPROCA, LPARAM);
3907 +BOOL EnumDesktopsW(HWINSTA, DESKTOPENUMPROCW, LPARAM);
3908 +BOOL EnumDesktopWindows(HDESK, ENUMWINDOWSPROC, LPARAM);
3909 +BOOL EnumDisplaySettingsA(LPCSTR, DWORD, PDEVMODEA);
3910 +BOOL EnumDisplaySettingsW(LPCWSTR, DWORD, PDEVMODEW);
3911 +
3912 +BOOL EnumDisplayDevicesA(LPCSTR, DWORD, PDISPLAY_DEVICEA, DWORD);
3913 +BOOL EnumDisplayDevicesW(LPCWSTR, DWORD, PDISPLAY_DEVICEW, DWORD);
3914 +
3915 +int EnumPropsA(HWND, PROPENUMPROCA);
3916 +int EnumPropsW(HWND, PROPENUMPROCW);
3917 +int EnumPropsExA(HWND, PROPENUMPROCEXA, LPARAM);
3918 +int EnumPropsExW(HWND, PROPENUMPROCEXW, LPARAM);
3919 +
3920 +BOOL EnumThreadWindows(DWORD, WNDENUMPROC, LPARAM);
3921 +BOOL EnumWindows(WNDENUMPROC, LPARAM);
3922 +BOOL EnumWindowStationsA(WINSTAENUMPROCA, LPARAM);
3923 +BOOL EnumWindowStationsW(WINSTAENUMPROCW, LPARAM);
3924 +BOOL EqualRect(LPCRECT, LPCRECT);
3925 +
3926 +BOOL ExitWindowsEx(UINT, DWORD);
3927 +HWND FindWindowA(LPCSTR, LPCSTR);
3928 +HWND FindWindowExA(HWND, HWND, LPCSTR, LPCSTR);
3929 +HWND FindWindowExW(HWND, HWND, LPCWSTR, LPCWSTR);
3930 +HWND FindWindowW(LPCWSTR, LPCWSTR);
3931 +BOOL FlashWindow(HWND, BOOL);
3932 +
3933 +int FrameRect(HDC, LPCRECT, HBRUSH);
3934 +BOOL FrameRgn(HDC, HRGN, HBRUSH, int, int);
3935 +HWND GetActiveWindow();
3936 +HWND GetAncestor(HWND, UINT);
3937 +SHORT GetAsyncKeyState(int);
3938 +HWND GetCapture();
3939 +UINT GetCaretBlinkTime();
3940 +BOOL GetCaretPos(LPPOINT);
3941 +BOOL GetClassInfoA(HINSTANCE, LPCSTR, LPWNDCLASSA);
3942 +BOOL GetClassInfoExA(HINSTANCE, LPCSTR, LPWNDCLASSEXA);
3943 +BOOL GetClassInfoW(HINSTANCE, LPCWSTR, LPWNDCLASSW);
3944 +BOOL GetClassInfoExW(HINSTANCE, LPCWSTR, LPWNDCLASSEXW);
3945 +DWORD GetClassLongA(HWND, int);
3946 +DWORD GetClassLongW(HWND, int);
3947 +int GetClassNameA(HWND, LPSTR, int);
3948 +int GetClassNameW(HWND, LPWSTR, int);
3949 +WORD GetClassWord(HWND, int);
3950 +BOOL GetClientRect(HWND, LPRECT);
3951 +HANDLE GetClipboardData(UINT);
3952 +int GetClipboardFormatNameA(UINT, LPSTR, int);
3953 +int GetClipboardFormatNameW(UINT, LPWSTR, int);
3954 +HWND GetClipboardOwner();
3955 +HWND GetClipboardViewer();
3956 +BOOL GetClipCursor(LPRECT);
3957 +BOOL GetCursorPos(LPPOINT);
3958 +HDC GetDC(HWND);
3959 +HDC GetDCEx(HWND, HRGN, DWORD);
3960 +HWND GetDesktopWindow();
3961 +int GetDialogBaseUnits();
3962 +int GetDlgCtrlID(HWND);
3963 +HWND GetDlgItem(HWND, int);
3964 +UINT GetDlgItemInt(HWND, int, PBOOL, BOOL);
3965 +UINT GetDlgItemTextA(HWND, int, LPSTR, int);
3966 +UINT GetDlgItemTextW(HWND, int, LPWSTR, int);
3967 +UINT GetDoubleClickTime();
3968 +HWND GetFocus();
3969 +HWND GetForegroundWindow();
3970 +
3971 +BOOL GetIconInfo(HICON, PICONINFO);
3972 +BOOL GetInputState();
3973 +UINT GetKBCodePage();
3974 +HKL GetKeyboardLayout(DWORD);
3975 +UINT GetKeyboardLayoutList(int, HKL*);
3976 +BOOL GetKeyboardLayoutNameA(LPSTR);
3977 +BOOL GetKeyboardLayoutNameW(LPWSTR);
3978 +BOOL GetKeyboardState(PBYTE);
3979 +int GetKeyboardType(int);
3980 +int GetKeyNameTextA(LONG, LPSTR, int);
3981 +int GetKeyNameTextW(LONG, LPWSTR, int);
3982 +SHORT GetKeyState(int);
3983 +HWND GetLastActivePopup(HWND);
3984 +HMENU GetMenu(HWND);
3985 +LONG GetMenuCheckMarkDimensions();
3986 +DWORD GetMenuContextHelpId(HMENU);
3987 +UINT GetMenuDefaultItem(HMENU, UINT, UINT);
3988 +int GetMenuItemCount(HMENU);
3989 +UINT GetMenuItemID(HMENU, int);
3990 +BOOL GetMenuItemInfoA(HMENU, UINT, BOOL, LPMENUITEMINFOA);
3991 +BOOL GetMenuItemInfoW(HMENU, UINT, BOOL, LPMENUITEMINFOW);
3992 +BOOL GetMenuItemRect(HWND, HMENU, UINT, LPRECT);
3993 +UINT GetMenuState(HMENU, UINT, UINT);
3994 +int GetMenuStringA(HMENU, UINT, LPSTR, int, UINT);
3995 +int GetMenuStringW(HMENU, UINT, LPWSTR, int, UINT);
3996 +BOOL GetMessageA(LPMSG, HWND, UINT, UINT);
3997 +BOOL GetMessageW(LPMSG, HWND, UINT, UINT);
3998 +LONG GetMessageExtraInfo();
3999 +DWORD GetMessagePos();
4000 +LONG GetMessageTime();
4001 +
4002 +HWND GetNextDlgGroupItem(HWND, HWND, BOOL);
4003 +HWND GetNextDlgTabItem(HWND, HWND, BOOL);
4004 +
4005 +HWND GetOpenClipboardWindow();
4006 +HWND GetParent(HWND);
4007 +int GetPriorityClipboardFormat(UINT*, int);
4008 +HANDLE GetPropA(HWND, LPCSTR);
4009 +HANDLE GetPropW(HWND, LPCWSTR);
4010 +
4011 +DWORD GetQueueStatus(UINT);
4012 +BOOL GetScrollInfo(HWND, int, LPSCROLLINFO);
4013 +int GetScrollPos(HWND, int);
4014 +BOOL GetScrollRange(HWND, int, LPINT, LPINT);
4015 +
4016 +HMENU GetSubMenu(HMENU, int);
4017 +DWORD GetSysColor(int);
4018 +HBRUSH GetSysColorBrush(int);
4019 +
4020 +HMENU GetSystemMenu(HWND, BOOL);
4021 +int GetSystemMetrics(int);
4022 +DWORD GetTabbedTextExtentA(HDC, LPCSTR, int, int, LPINT);
4023 +DWORD GetTabbedTextExtentW(HDC, LPCWSTR, int, int, LPINT);
4024 +LONG GetWindowLongA(HWND, int);
4025 +LONG GetWindowLongW(HWND, int);
4026 +
4027 +HDESK GetThreadDesktop(DWORD);
4028 +HWND GetTopWindow(HWND);
4029 +BOOL GetUpdateRect(HWND, LPRECT, BOOL);
4030 +int GetUpdateRgn(HWND, HRGN, BOOL);
4031 +BOOL GetUserObjectInformationA(HANDLE, int, PVOID, DWORD, PDWORD);
4032 +BOOL GetUserObjectInformationW(HANDLE, int, PVOID, DWORD, PDWORD);
4033 +BOOL GetUserObjectSecurity(HANDLE, PSECURITY_INFORMATION, PSECURITY_DESCRIPTOR, DWORD, PDWORD);
4034 +HWND GetWindow(HWND, UINT);
4035 +DWORD GetWindowContextHelpId(HWND);
4036 +HDC GetWindowDC(HWND);
4037 +BOOL GetWindowPlacement(HWND, WINDOWPLACEMENT*);
4038 +BOOL GetWindowRect(HWND, LPRECT);
4039 +int GetWindowRgn(HWND, HRGN);
4040 +int GetWindowTextA(HWND, LPSTR, int);
4041 +int GetWindowTextLengthA(HWND);
4042 +int GetWindowTextLengthW(HWND);
4043 +int GetWindowTextW(HWND, LPWSTR, int);
4044 +WORD GetWindowWord(HWND, int);
4045 +BOOL GetAltTabInfoA(HWND, int, PALTTABINFO, LPSTR, UINT);
4046 +BOOL GetAltTabInfoW(HWND, int, PALTTABINFO, LPWSTR, UINT);
4047 +BOOL GetComboBoxInfo(HWND, PCOMBOBOXINFO);
4048 +BOOL GetCursorInfo(PCURSORINFO);
4049 +BOOL GetLastInputInfo(PLASTINPUTINFO);
4050 +DWORD GetListBoxInfo(HWND);
4051 +BOOL GetMenuBarInfo(HWND, LONG, LONG, PMENUBARINFO);
4052 +BOOL GetMenuInfo(HMENU, LPMENUINFO);
4053 +BOOL GetScrollBarInfo(HWND, LONG, PSCROLLBARINFO);
4054 +BOOL GetTitleBarInfo(HWND, PTITLEBARINFO);
4055 +BOOL GetWindowInfo(HWND, PWINDOWINFO);
4056 +UINT GetWindowModuleFileNameA(HWND, LPSTR, UINT);
4057 +UINT GetWindowModuleFileNameW(HWND, LPWSTR, UINT);
4058 +BOOL GrayStringA(HDC, HBRUSH, GRAYSTRINGPROC, LPARAM, int, int, int, int, int);
4059 +BOOL GrayStringW(HDC, HBRUSH, GRAYSTRINGPROC, LPARAM, int, int, int, int, int);
4060 +BOOL HideCaret(HWND);
4061 +BOOL HiliteMenuItem(HWND, HMENU, UINT, UINT);
4062 +BOOL InflateRect(LPRECT, int, int);
4063 +BOOL InSendMessage();
4064 +BOOL InsertMenuA(HMENU, UINT, UINT, UINT, LPCSTR);
4065 +BOOL InsertMenuW(HMENU, UINT, UINT, UINT, LPCWSTR);
4066 +BOOL InsertMenuItemA(HMENU, UINT, BOOL, LPCMENUITEMINFOA);
4067 +BOOL InsertMenuItemW(HMENU, UINT, BOOL, LPCMENUITEMINFOW);
4068 +INT InternalGetWindowText(HWND, LPWSTR, INT);
4069 +BOOL IntersectRect(LPRECT, LPCRECT, LPCRECT);
4070 +BOOL InvalidateRect(HWND, LPCRECT, BOOL);
4071 +BOOL InvalidateRgn(HWND, HRGN, BOOL);
4072 +BOOL InvertRect(HDC, LPCRECT);
4073 +BOOL IsCharAlphaA(CHAR ch);
4074 +BOOL IsCharAlphaNumericA(CHAR);
4075 +BOOL IsCharAlphaNumericW(WCHAR);
4076 +BOOL IsCharAlphaW(WCHAR);
4077 +BOOL IsCharLowerA(CHAR);
4078 +BOOL IsCharLowerW(WCHAR);
4079 +BOOL IsCharUpperA(CHAR);
4080 +BOOL IsCharUpperW(WCHAR);
4081 +BOOL IsChild(HWND, HWND);
4082 +BOOL IsClipboardFormatAvailable(UINT);
4083 +BOOL IsDialogMessageA(HWND, LPMSG);
4084 +BOOL IsDialogMessageW(HWND, LPMSG);
4085 +UINT IsDlgButtonChecked(HWND, int);
4086 +BOOL IsIconic(HWND);
4087 +BOOL IsMenu(HMENU);
4088 +BOOL IsRectEmpty(LPCRECT);
4089 +BOOL IsWindow(HWND);
4090 +BOOL IsWindowEnabled(HWND);
4091 +BOOL IsWindowUnicode(HWND);
4092 +BOOL IsWindowVisible(HWND);
4093 +BOOL IsZoomed(HWND);
4094 +void keybd_event(BYTE, BYTE, DWORD, DWORD);
4095 +BOOL KillTimer(HWND, UINT);
4096 +HACCEL LoadAcceleratorsA(HINSTANCE, LPCSTR);
4097 +HACCEL LoadAcceleratorsW(HINSTANCE, LPCWSTR);
4098 +HBITMAP LoadBitmapA(HINSTANCE, LPCSTR);
4099 +HBITMAP LoadBitmapW(HINSTANCE, LPCWSTR);
4100 +HCURSOR LoadCursorA(HINSTANCE, LPCSTR);
4101 +HCURSOR LoadCursorFromFileA(LPCSTR);
4102 +HCURSOR LoadCursorFromFileW(LPCWSTR);
4103 +HCURSOR LoadCursorW(HINSTANCE, LPCWSTR);
4104 +HICON LoadIconA(HINSTANCE, LPCSTR);
4105 +HICON LoadIconW(HINSTANCE, LPCWSTR);
4106 +HANDLE LoadImageA(HINSTANCE, LPCSTR, UINT, int, int, UINT);
4107 +HANDLE LoadImageW(HINSTANCE, LPCWSTR, UINT, int, int, UINT);
4108 +HKL LoadKeyboardLayoutA(LPCSTR, UINT);
4109 +HKL LoadKeyboardLayoutW(LPCWSTR, UINT);
4110 +HMENU LoadMenuA(HINSTANCE, LPCSTR);
4111 +HMENU LoadMenuIndirectA( CPtr!(MENUTEMPLATE));
4112 +HMENU LoadMenuIndirectW( CPtr!(MENUTEMPLATE));
4113 +HMENU LoadMenuW(HINSTANCE, LPCWSTR);
4114 +int LoadStringA(HINSTANCE, UINT, LPSTR, int);
4115 +int LoadStringW(HINSTANCE, UINT, LPWSTR, int);
4116 +BOOL LockWindowUpdate(HWND);
4117 +int LookupIconIdFromDirectory(PBYTE, BOOL);
4118 +int LookupIconIdFromDirectoryEx(PBYTE, BOOL, int, int, UINT);
4119 +BOOL MapDialogRect(HWND, LPRECT);
4120 +UINT MapVirtualKeyA(UINT, UINT);
4121 +UINT MapVirtualKeyExA(UINT, UINT, HKL);
4122 +UINT MapVirtualKeyExW(UINT, UINT, HKL);
4123 +UINT MapVirtualKeyW(UINT, UINT);
4124 +int MapWindowPoints(HWND, HWND, LPPOINT, UINT);
4125 +int MenuItemFromPoint(HWND, HMENU, POINT);
4126 +BOOL MessageBeep(UINT);
4127 +int MessageBoxA(HWND, LPCSTR, LPCSTR, UINT);
4128 +int MessageBoxW(HWND, LPCWSTR, LPCWSTR, UINT);
4129 +int MessageBoxExA(HWND, LPCSTR, LPCSTR, UINT, WORD);
4130 +int MessageBoxExW(HWND, LPCWSTR, LPCWSTR, UINT, WORD);
4131 +int MessageBoxIndirectA(CPtr!(MSGBOXPARAMSA));
4132 +int MessageBoxIndirectW(CPtr!(MSGBOXPARAMSW));
4133 +BOOL ModifyMenuA(HMENU, UINT, UINT, UINT, LPCSTR);
4134 +BOOL ModifyMenuW(HMENU, UINT, UINT, UINT, LPCWSTR);
4135 +void mouse_event(DWORD, DWORD, DWORD, DWORD, ULONG_PTR);
4136 +BOOL MoveWindow(HWND, int, int, int, int, BOOL);
4137 +DWORD MsgWaitForMultipleObjects(DWORD, CPtr!(HANDLE), BOOL, DWORD, DWORD);
4138 +DWORD MsgWaitForMultipleObjectsEx(DWORD, CPtr!(HANDLE), DWORD, DWORD, DWORD);
4139 +DWORD OemKeyScan(WORD);
4140 +BOOL OemToCharA(LPCSTR, LPSTR);
4141 +BOOL OemToCharBuffA(LPCSTR, LPSTR, DWORD);
4142 +BOOL OemToCharBuffW(LPCSTR, LPWSTR, DWORD);
4143 +BOOL OemToCharW(LPCSTR, LPWSTR);
4144 +BOOL OffsetRect(LPRECT, int, int);
4145 +BOOL OpenClipboard(HWND);
4146 +HDESK OpenDesktopA(LPSTR, DWORD, BOOL, DWORD);
4147 +HDESK OpenDesktopW(LPWSTR, DWORD, BOOL, DWORD);
4148 +BOOL OpenIcon(HWND);
4149 +HDESK OpenInputDesktop(DWORD, BOOL, DWORD);
4150 +HWINSTA OpenWindowStationA(LPSTR, BOOL, DWORD);
4151 +HWINSTA OpenWindowStationW(LPWSTR, BOOL, DWORD);
4152 +BOOL PaintDesktop(HDC);
4153 +BOOL PeekMessageA(LPMSG, HWND, UINT, UINT, UINT);
4154 +BOOL PeekMessageW(LPMSG, HWND, UINT, UINT, UINT);
4155 +BOOL PostMessageA(HWND, UINT, WPARAM, LPARAM);
4156 +BOOL PostMessageW(HWND, UINT, WPARAM, LPARAM);
4157 +void PostQuitMessage(int);
4158 +BOOL PostThreadMessageA(DWORD, UINT, WPARAM, LPARAM);
4159 +BOOL PostThreadMessageW(DWORD, UINT, WPARAM, LPARAM);
4160 +BOOL PtInRect(LPCRECT, POINT);
4161 +HWND RealChildWindowFromPoint(HWND, POINT);
4162 +UINT RealGetWindowClassA(HWND, LPSTR, UINT);
4163 +UINT RealGetWindowClassW(HWND, LPWSTR, UINT);
4164 +BOOL RedrawWindow(HWND, LPCRECT, HRGN, UINT);
4165 +ATOM RegisterClassA(CPtr!(WNDCLASSA));
4166 +ATOM RegisterClassW(CPtr!(WNDCLASSW));
4167 +ATOM RegisterClassExA(CPtr!(WNDCLASSEXA));
4168 +ATOM RegisterClassExW(CPtr!(WNDCLASSEXW));
4169 +UINT RegisterClipboardFormatA(LPCSTR);
4170 +UINT RegisterClipboardFormatW(LPCWSTR);
4171 +BOOL RegisterHotKey(HWND, int, UINT, UINT);
4172 +UINT RegisterWindowMessageA(LPCSTR);
4173 +UINT RegisterWindowMessageW(LPCWSTR);
4174 +BOOL ReleaseCapture();
4175 +int ReleaseDC(HWND, HDC);
4176 +BOOL RemoveMenu(HMENU, UINT, UINT);
4177 +HANDLE RemovePropA(HWND, LPCSTR);
4178 +HANDLE RemovePropW(HWND, LPCWSTR);
4179 +BOOL ReplyMessage(LRESULT);
4180 +BOOL ScreenToClient(HWND, LPPOINT);
4181 +BOOL ScrollDC(HDC, int, int, LPCRECT, LPCRECT, HRGN, LPRECT);
4182 +BOOL ScrollWindow(HWND, int, int, LPCRECT, LPCRECT);
4183 +int ScrollWindowEx(HWND, int, int, LPCRECT, LPCRECT, HRGN, LPRECT, UINT);
4184 +LONG SendDlgItemMessageA(HWND, int, UINT, WPARAM, LPARAM);
4185 +LONG SendDlgItemMessageW(HWND, int, UINT, WPARAM, LPARAM);
4186 +LRESULT SendMessageA(HWND, UINT, WPARAM, LPARAM);
4187 +BOOL SendMessageCallbackA(HWND, UINT, WPARAM, LPARAM, SENDASYNCPROC, DWORD);
4188 +BOOL SendMessageCallbackW(HWND, UINT, WPARAM, LPARAM, SENDASYNCPROC, DWORD);
4189 +LRESULT SendMessageTimeoutA(HWND, UINT, WPARAM, LPARAM, UINT, UINT, PDWORD);
4190 +LRESULT SendMessageTimeoutW(HWND, UINT, WPARAM, LPARAM, UINT, UINT, PDWORD);
4191 +LRESULT SendMessageW(HWND, UINT, WPARAM, LPARAM);
4192 +BOOL SendNotifyMessageA(HWND, UINT, WPARAM, LPARAM);
4193 +BOOL SendNotifyMessageW(HWND, UINT, WPARAM, LPARAM);
4194 +HWND SetActiveWindow(HWND);
4195 +HWND SetCapture(HWND hWnd);
4196 +BOOL SetCaretBlinkTime(UINT);
4197 +BOOL SetCaretPos(int, int);
4198 +DWORD SetClassLongA(HWND, int, LONG);
4199 +DWORD SetClassLongW(HWND, int, LONG);
4200 +WORD SetClassWord(HWND, int, WORD);
4201 +HANDLE SetClipboardData(UINT, HANDLE);
4202 +HWND SetClipboardViewer(HWND);
4203 +HCURSOR SetCursor(HCURSOR);
4204 +BOOL SetCursorPos(int, int);
4205 +void SetDebugErrorLevel(DWORD);
4206 +BOOL SetDlgItemInt(HWND, int, UINT, BOOL);
4207 +BOOL SetDlgItemTextA(HWND, int, LPCSTR);
4208 +BOOL SetDlgItemTextW(HWND, int, LPCWSTR);
4209 +BOOL SetDoubleClickTime(UINT);
4210 +HWND SetFocus(HWND);
4211 +BOOL SetForegroundWindow(HWND);
4212 +BOOL SetKeyboardState(PBYTE);
4213 +BOOL SetMenu(HWND, HMENU);
4214 +BOOL SetMenuContextHelpId(HMENU, DWORD);
4215 +BOOL SetMenuDefaultItem(HMENU, UINT, UINT);
4216 +BOOL SetMenuInfo(HMENU, LPCMENUINFO);
4217 +BOOL SetMenuItemBitmaps(HMENU, UINT, UINT, HBITMAP, HBITMAP);
4218 +BOOL SetMenuItemInfoA(HMENU, UINT, BOOL, LPCMENUITEMINFOA);
4219 +BOOL SetMenuItemInfoW( HMENU, UINT, BOOL, LPCMENUITEMINFOW);
4220 +LPARAM SetMessageExtraInfo(LPARAM);
4221 +BOOL SetMessageQueue(int);
4222 +HWND SetParent(HWND, HWND);
4223 +BOOL SetProcessWindowStation(HWINSTA);
4224 +BOOL SetPropA(HWND, LPCSTR, HANDLE);
4225 +BOOL SetPropW(HWND, LPCWSTR, HANDLE);
4226 +BOOL SetRect(LPRECT, int, int, int, int);
4227 +BOOL SetRectEmpty(LPRECT);
4228 +int SetScrollInfo(HWND, int, LPCSCROLLINFO, BOOL);
4229 +int SetScrollPos(HWND, int, int, BOOL);
4230 +BOOL SetScrollRange(HWND, int, int, int, BOOL);
4231 +BOOL SetSysColors(int, CPtr!(INT) , CPtr!(COLORREF) );
4232 +BOOL SetSystemCursor(HCURSOR, DWORD);
4233 +BOOL SetThreadDesktop(HDESK);
4234 +UINT SetTimer(HWND, UINT, UINT, TIMERPROC);
4235 +BOOL SetUserObjectInformationA(HANDLE, int, PVOID, DWORD);
4236 +BOOL SetUserObjectInformationW(HANDLE, int, PVOID, DWORD);
4237 +BOOL SetUserObjectSecurity(HANDLE, PSECURITY_INFORMATION, PSECURITY_DESCRIPTOR);
4238 +BOOL SetWindowContextHelpId(HWND, DWORD);
4239 +LONG SetWindowLongA(HWND, int, LONG);
4240 +LONG SetWindowLongW(HWND, int, LONG);
4241 +BOOL SetWindowPlacement(HWND hWnd, CPtr!(WINDOWPLACEMENT));
4242 +BOOL SetWindowPos(HWND, HWND, int, int, int, int, UINT);
4243 +int SetWindowRgn(HWND, HRGN, BOOL);
4244 +HHOOK SetWindowsHookA(int, HOOKPROC);
4245 +HHOOK SetWindowsHookW(int, HOOKPROC);
4246 +HHOOK SetWindowsHookExA(int, HOOKPROC, HINSTANCE, DWORD);
4247 +HHOOK SetWindowsHookExW(int, HOOKPROC, HINSTANCE, DWORD);
4248 +BOOL SetWindowTextA(HWND, LPCSTR);
4249 +BOOL SetWindowTextW(HWND, LPCWSTR);
4250 +WORD SetWindowWord(HWND, int, WORD);
4251 +BOOL ShowCaret(HWND);
4252 +int ShowCursor(BOOL);
4253 +BOOL ShowOwnedPopups(HWND, BOOL);
4254 +BOOL ShowScrollBar(HWND, int, BOOL);
4255 +BOOL ShowWindow(HWND, int);
4256 +BOOL ShowWindowAsync(HWND, int);
4257 +BOOL SubtractRect(LPRECT, LPCRECT, LPCRECT);
4258 +BOOL SwapMouseButton(BOOL);
4259 +BOOL SwitchDesktop(HDESK);
4260 +BOOL SystemParametersInfoA(UINT, UINT, PVOID, UINT);
4261 +BOOL SystemParametersInfoW(UINT, UINT, PVOID, UINT);
4262 +LONG TabbedTextOutA(HDC, int, int, LPCSTR, int, int, LPINT, int);
4263 +LONG TabbedTextOutW(HDC, int, int, LPCWSTR, int, int, LPINT, int);
4264 +WORD TileWindows(HWND, UINT, LPCRECT, UINT, CPtr!(HWND) );
4265 +int ToAscii(UINT, UINT, PBYTE, LPWORD, UINT);
4266 +int ToAsciiEx(UINT, UINT, PBYTE, LPWORD, UINT, HKL);
4267 +int ToUnicode(UINT, UINT, PBYTE, LPWSTR, int, UINT);
4268 +int ToUnicodeEx(UINT, UINT, PBYTE, LPWSTR, int, UINT, HKL);
4269 +BOOL TrackMouseEvent(LPTRACKMOUSEEVENT);
4270 +BOOL TrackPopupMenu(HMENU, UINT, int, int, int, HWND, LPCRECT);
4271 +BOOL TrackPopupMenuEx(HMENU, UINT, int, int, HWND, LPTPMPARAMS);
4272 +int TranslateAcceleratorA(HWND, HACCEL, LPMSG);
4273 +int TranslateAcceleratorW(HWND, HACCEL, LPMSG);
4274 +BOOL TranslateMDISysAccel(HWND, LPMSG);
4275 +BOOL TranslateMessage( CPtr!(MSG));
4276 +BOOL UnhookWindowsHook(int, HOOKPROC);
4277 +BOOL UnhookWindowsHookEx(HHOOK);
4278 +BOOL UnionRect(LPRECT, LPCRECT, LPCRECT);
4279 +BOOL UnloadKeyboardLayout(HKL);
4280 +BOOL UnregisterClassA(LPCSTR, HINSTANCE);
4281 +BOOL UnregisterClassW(LPCWSTR, HINSTANCE);
4282 +BOOL UnregisterHotKey(HWND, int);
4283 +BOOL UpdateWindow(HWND);
4284 +BOOL ValidateRect(HWND, LPCRECT);
4285 +BOOL ValidateRgn(HWND, HRGN);
4286 +SHORT VkKeyScanA(CHAR);
4287 +SHORT VkKeyScanExA(CHAR, HKL);
4288 +SHORT VkKeyScanExW(WCHAR, HKL);
4289 +SHORT VkKeyScanW(WCHAR);
4290 +DWORD WaitForInputIdle(HANDLE, DWORD);
4291 +BOOL WaitMessage();
4292 +HWND WindowFromDC(HDC hDC);
4293 +HWND WindowFromPoint(POINT);
4294 +UINT WinExec(LPCSTR, UINT);
4295 +BOOL WinHelpA(HWND, LPCSTR, UINT, DWORD);
4296 +BOOL WinHelpW(HWND, LPCWSTR, UINT, DWORD);
4297 +
4298 +extern (C) {
4299 + int wsprintfA(LPSTR, LPCSTR, ...);
4300 + int wsprintfW(LPWSTR, LPCWSTR, ...);
4301 +}
4302 +
4303 +
4304 +// These shouldn't be necessary for D.
4305 +alias char* va_list_;
4306 +int wvsprintfA(LPSTR, LPCSTR, va_list_ arglist);
4307 +int wvsprintfW(LPWSTR, LPCWSTR, va_list_ arglist);
4308 +
4309 +
4310 +static if (_WIN32_WINDOWS == 0x400) {
4311 +// On Win95, there's only one version.
4312 +int BroadcastSystemMessage(DWORD, LPDWORD, UINT, WPARAM, LPARAM);
4313 +}
4314 +static if (_WIN32_WINNT >= 0x400) {
4315 +int BroadcastSystemMessageA(DWORD, LPDWORD, UINT, WPARAM, LPARAM);
4316 +int BroadcastSystemMessageW(DWORD, LPDWORD, UINT, WPARAM, LPARAM);
4317 +}
4318 +static if (_WIN32_WINNT >= 0x501) {
4319 +int BroadcastSystemMessageExA(DWORD, LPDWORD, UINT, WPARAM, LPARAM, PBSMINFO);
4320 +int BroadcastSystemMessageExW(DWORD, LPDWORD, UINT, WPARAM, LPARAM, PBSMINFO);
4321 +}
4322 +
4323 +static if (_WIN32_WINNT >= 0x403) {
4324 +UINT SendInput(UINT, LPINPUT, int);
4325 +}
4326 +static if (_WIN32_WINNT >= 0x500) {
4327 +BOOL AnimateWindow(HWND, DWORD, DWORD);
4328 +BOOL EndTask(HWND, BOOL, BOOL);
4329 +DWORD GetGuiResources(HANDLE, DWORD);
4330 +HWND GetShellWindow();
4331 +BOOL GetProcessDefaultLayout(DWORD*);
4332 +BOOL IsHungAppWindow(HWND);
4333 +BOOL LockWorkStation();
4334 +HDEVNOTIFY RegisterDeviceNotificationA(HANDLE, LPVOID, DWORD);
4335 +HDEVNOTIFY RegisterDeviceNotificationW(HANDLE, LPVOID, DWORD);
4336 +BOOL SetProcessDefaultLayout(DWORD);
4337 +void SwitchToThisWindow(HWND, BOOL);
4338 +BOOL SetLayeredWindowAttributes(HWND, COLORREF, BYTE, DWORD);
4339 +BOOL UpdateLayeredWindow(HWND, HDC, POINT*, SIZE*, HDC, POINT*, COLORREF, BLENDFUNCTION*, DWORD);
4340 +BOOL UserHandleGrantAccess(HANDLE, HANDLE, BOOL);
4341 +}
4342 +static if (_WIN32_WINNT >= 0x501) {
4343 +UINT GetRawInputBuffer(PRAWINPUT, PUINT, UINT);
4344 +UINT GetRawInputData(HRAWINPUT, UINT, LPVOID, PUINT, UINT);
4345 +UINT GetRawInputDeviceInfoA(HANDLE, UINT, LPVOID, PUINT);
4346 +UINT GetRawInputDeviceInfoW(HANDLE, UINT, LPVOID, PUINT);
4347 +UINT GetRawInputDeviceList(PRAWINPUTDEVICELIST, PUINT, UINT);
4348 +UINT GetRegisteredRawInputDevices(PRAWINPUTDEVICE, PUINT, UINT);
4349 +LRESULT DefRawInputProc(PRAWINPUT*, INT, UINT);
4350 +BOOL RegisterRawInputDevices(PCRAWINPUTDEVICE, UINT, UINT);
4351 +
4352 +BOOL IsGUIThread(BOOL);
4353 +BOOL IsWinEventHookInstalled(DWORD);
4354 +BOOL PrintWindow(HWND, HDC, UINT);
4355 +BOOL GetLayeredWindowAttributes(HWND, COLORREF*, BYTE*, DWORD*);
4356 +}
4357 +static if (WINVER >= 0x410) {
4358 + BOOL EnumDisplayMonitors(HDC, LPCRECT, MONITORENUMPROC, LPARAM);
4359 + BOOL GetMonitorInfoA(HMONITOR, LPMONITORINFO);
4360 + BOOL GetMonitorInfoA(HMONITOR, LPMONITORINFOEXA);
4361 + BOOL GetMonitorInfoW(HMONITOR, LPMONITORINFO);
4362 + BOOL GetMonitorInfoW(HMONITOR, LPMONITORINFOEXW);
4363 + HMONITOR MonitorFromPoint(POINT, DWORD);
4364 + HMONITOR MonitorFromRect(LPCRECT, DWORD);
4365 + HMONITOR MonitorFromWindow(HWND, DWORD);
4366 +}
4367 +static if (WINVER >= 0x500) {
4368 +BOOL GetGUIThreadInfo(DWORD, LPGUITHREADINFO);
4369 +void NotifyWinEvent(DWORD, HWND, LONG, LONG);
4370 +HWINEVENTHOOK SetWinEventHook(UINT, UINT, HMODULE, WINEVENTPROC, DWORD, DWORD, UINT);
4371 +BOOL UnhookWinEvent(HWINEVENTHOOK);
4372 +BOOL UnregisterDeviceNotification(HANDLE);
4373 +}
4374 +static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
4375 +BOOL EnumDisplaySettingsExA(LPCSTR, DWORD, LPDEVMODEA, DWORD);
4376 +BOOL EnumDisplaySettingsExW(LPCWSTR, DWORD, LPDEVMODEW, DWORD);
4377 +BOOL FlashWindowEx(PFLASHWINFO);
4378 +DWORD GetClipboardSequenceNumber();
4379 +DWORD InSendMessageEx(LPVOID);
4380 +}
4381 +static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) {
4382 +BOOL AllowSetForegroundWindow(DWORD);
4383 +BOOL LockSetForegroundWindow(UINT);
4384 +int GetMouseMovePointsEx(UINT, LPMOUSEMOVEPOINT, LPMOUSEMOVEPOINT, int, DWORD);
4385 +}
4386 +
4387 +version (Win64) {
4388 +LONG_PTR GetWindowLongPtrA(HWND, int);
4389 +LONG_PTR GetWindowLongPtrW(HWND, int);
4390 +LONG_PTR SetWindowLongPtrA(HWND, int, LONG_PTR);
4391 +LONG_PTR SetWindowLongPtrW(HWND, int, LONG_PTR);
4392 +} else {
4393 +alias GetWindowLongA GetWindowLongPtrA;
4394 +alias GetWindowLongW GetWindowLongPtrW;
4395 +alias SetWindowLongA SetWindowLongPtrA;
4396 +alias SetWindowLongW SetWindowLongPtrW;
4397 +}
4398 +
3704 4399
3705 -// #if(WINVER >= 0x0400)
3706 -extern(Windows) export int ToAsciiEx(
3707 - UINT uVirtKey,
3708 - UINT uScanCode,
3709 - BYTE *lpKeyState,
3710 - LPWORD lpChar,
3711 - UINT uFlags,
3712 - HKL dwhkl);
3713 -// #endif /* WINVER >= 0x0400 */
3714 -
3715 -extern(Windows) export int ToUnicode(
3716 - UINT wVirtKey,
3717 - UINT wScanCode,
3718 - BYTE *lpKeyState,
3719 - LPWSTR pwszBuff,
3720 - int cchBuff,
3721 - UINT wFlags);
3722 -
3723 -extern(Windows) export DWORD OemKeyScan(
3724 - WORD wOemChar);
3725 -
3726 -extern(Windows) export SHORT VkKeyScanA(
3727 - CHAR ch);
3728 -extern(Windows) export SHORT VkKeyScanW(
3729 - WCHAR ch);
3730 -// #ifdef UNICODE
3731 -alias VkKeyScanW VkKeyScan;
3732 -// #else
3733 -// #...
3734 -// #endif // !UNICODE
3735 -
3736 -// #if(WINVER >= 0x0400)
3737 -extern(Windows) export SHORT VkKeyScanExA(
3738 - CHAR ch,
3739 - HKL dwhkl);
3740 -extern(Windows) export SHORT VkKeyScanExW(
3741 - WCHAR ch,
3742 - HKL dwhkl);
3743 -// #ifdef UNICODE
3744 -alias VkKeyScanExW VkKeyScanEx;
3745 -// #else
3746 -// #...
3747 -// #endif // !UNICODE
3748 -// #endif /* WINVER >= 0x0400 */
3749 -enum : uint { KEYEVENTF_EXTENDEDKEY = 0x0001 }
3750 -enum : uint { KEYEVENTF_KEYUP = 0x0002 }
3751 -// #if(_WIN32_WINNT >= 0x0500)
3752 -enum : uint { KEYEVENTF_UNICODE = 0x0004 }
3753 -enum : uint { KEYEVENTF_SCANCODE = 0x0008 }
3754 -// #endif /* _WIN32_WINNT >= 0x0500 */
4400 +// -----
4401 +// Aliases for Unicode or Ansi
4402 +version(Unicode) {
3755 4403
3756 -extern(Windows) export VOID keybd_event(
3757 - BYTE bVk,
3758 - BYTE bScan,
3759 - DWORD dwFlags,
3760 - ULONG_PTR dwExtraInfo);
3761 -
3762 -enum : uint { MOUSEEVENTF_MOVE = 0x0001 }
3763 -enum : uint { MOUSEEVENTF_LEFTDOWN = 0x0002 }
3764 -enum : uint { MOUSEEVENTF_LEFTUP = 0x0004 }
3765 -enum : uint { MOUSEEVENTF_RIGHTDOWN = 0x0008 }
3766 -enum : uint { MOUSEEVENTF_RIGHTUP = 0x0010 }
3767 -enum : uint { MOUSEEVENTF_MIDDLEDOWN = 0x0020 }
3768 -enum : uint { MOUSEEVENTF_MIDDLEUP = 0x0040 }
3769 -enum : uint { MOUSEEVENTF_XDOWN = 0x0080 }
3770 -enum : uint { MOUSEEVENTF_XUP = 0x0100 }
3771 -enum : uint { MOUSEEVENTF_WHEEL = 0x0800 }
3772 -enum : uint { MOUSEEVENTF_VIRTUALDESK = 0x4000 }
3773 -enum : uint { MOUSEEVENTF_ABSOLUTE = 0x8000 }
3774 -
3775 -extern(Windows) export VOID mouse_event(
3776 - DWORD dwFlags,
3777 - DWORD dx,
3778 - DWORD dy,
3779 - DWORD dwData,
3780 - ULONG_PTR dwExtraInfo);
3781 -
3782 -// #if (_WIN32_WINNT > 0x0400)
3783 -
3784 -struct tagMOUSEINPUT {
3785 - LONG dx;
3786 - LONG dy;
3787 - DWORD mouseData;
3788 - DWORD dwFlags;
3789 - DWORD time;
3790 - ULONG_PTR dwExtraInfo;
3791 -}
3792 -alias tagMOUSEINPUT MOUSEINPUT;
3793 -alias tagMOUSEINPUT* PMOUSEINPUT;
3794 -alias tagMOUSEINPUT* LPMOUSEINPUT;
3795 -
3796 -struct tagKEYBDINPUT {
3797 - WORD wVk;
3798 - WORD wScan;
3799 - DWORD dwFlags;
3800 - DWORD time;
3801 - ULONG_PTR dwExtraInfo;
3802 -}
3803 -alias tagKEYBDINPUT KEYBDINPUT;
3804 -alias tagKEYBDINPUT* PKEYBDINPUT;
3805 -alias tagKEYBDINPUT* LPKEYBDINPUT;
3806 -
3807 -struct tagHARDWAREINPUT {
3808 - DWORD uMsg;
3809 - WORD wParamL;
3810 - WORD wParamH;
3811 -}
3812 -alias tagHARDWAREINPUT HARDWAREINPUT;
3813 -alias tagHARDWAREINPUT* PHARDWAREINPUT;
3814 -alias tagHARDWAREINPUT* LPHARDWAREINPUT;
3815 -
3816 -enum : uint { INPUT_MOUSE = 0 }
3817 -enum : uint { INPUT_KEYBOARD = 1 }
3818 -enum : uint { INPUT_HARDWARE = 2 }
3819 -
3820 -struct tagINPUT {
3821 - DWORD type;
3822 -union {
3823 - MOUSEINPUT mi;
3824 - KEYBDINPUT ki;
3825 - HARDWAREINPUT hi;
3826 -}
3827 -
3828 -}
3829 -alias tagINPUT INPUT;
3830 -alias tagINPUT* PINPUT;
3831 -alias tagINPUT* LPINPUT;
3832 -
3833 -extern(Windows) export UINT SendInput(
3834 - UINT cInputs, // number of input in the array
3835 - LPINPUT pInputs, // array of inputs
3836 - int cbSize);
3837 -
3838 -// #endif // (_WIN32_WINNT > 0x0400)
3839 -
3840 -// #if(_WIN32_WINNT >= 0x0500)
3841 -struct tagLASTINPUTINFO {
3842 - UINT cbSize;
3843 - DWORD dwTime;
3844 -}
3845 -alias tagLASTINPUTINFO LASTINPUTINFO;
3846 -alias tagLASTINPUTINFO* PLASTINPUTINFO;
3847 -
3848 -extern(Windows) export BOOL GetLastInputInfo(
3849 - PLASTINPUTINFO plii);
3850 -// #endif /* _WIN32_WINNT >= 0x0500 */
3851 -
3852 -extern(Windows) export UINT MapVirtualKeyA(
3853 - UINT uCode,
3854 - UINT uMapType);
3855 -extern(Windows) export UINT MapVirtualKeyW(
3856 - UINT uCode,
3857 - UINT uMapType);
3858 -// #ifdef UNICODE
3859 -alias MapVirtualKeyW MapVirtualKey;
3860 -// #else
3861 -// #...
3862 -// #endif // !UNICODE
3863 -
3864 -// #if(WINVER >= 0x0400)
3865 -extern(Windows) export UINT MapVirtualKeyExA(
3866 - UINT uCode,
3867 - UINT uMapType,
3868 - HKL dwhkl);
3869 -extern(Windows) export UINT MapVirtualKeyExW(
3870 - UINT uCode,
3871 - UINT uMapType,
3872 - HKL dwhkl);
3873 -// #ifdef UNICODE
3874 -alias MapVirtualKeyExW MapVirtualKeyEx;
3875 -// #else
3876 -// #...
3877 -// #endif // !UNICODE
3878 -// #endif /* WINVER >= 0x0400 */
4404 +alias EDITWORDBREAKPROCW EDITWORDBREAKPROC;
4405 +alias PROPENUMPROCW PROPENUMPROC;
4406 +alias PROPENUMPROCEXW PROPENUMPROCEX;
4407 +alias DESKTOPENUMPROCW DESKTOPENUMPROC;
4408 +alias WINSTAENUMPROCW WINSTAENUMPROC;
4409 +alias MAKEINTRESOURCEW MAKEINTRESOURCE;
3879 4410
3880 -extern(Windows) export BOOL GetInputState();
3881 -
3882 -extern(Windows) export DWORD GetQueueStatus(
3883 - UINT flags);
3884 -
3885 -extern(Windows) export HWND GetCapture();
3886 -
3887 -extern(Windows) export HWND SetCapture(
3888 - HWND hWnd);
3889 -
3890 -extern(Windows) export BOOL ReleaseCapture();
3891 -
3892 -extern(Windows) export DWORD MsgWaitForMultipleObjects(
3893 - DWORD nCount,
3894 - HANDLE *pHandles,
3895 - BOOL fWaitAll,
3896 - DWORD dwMilliseconds,
3897 - DWORD dwWakeMask);
3898 -
3899 -extern(Windows) export DWORD MsgWaitForMultipleObjectsEx(
3900 - DWORD nCount,
3901 - HANDLE *pHandles,
3902 - DWORD dwMilliseconds,
3903 - DWORD dwWakeMask,
3904 - DWORD dwFlags);
3905 -
3906 -enum : uint { MWMO_WAITALL = 0x0001 }
3907 -enum : uint { MWMO_ALERTABLE = 0x0002 }
3908 -enum : uint { MWMO_INPUTAVAILABLE = 0x0004 }
3909 -
3910 -enum : uint { QS_KEY = 0x0001 }
3911 -enum : uint { QS_MOUSEMOVE = 0x0002 }
3912 -enum : uint { QS_MOUSEBUTTON = 0x0004 }
3913 -// #define QS_POSTMESSAGE 0x0008
3914 -// #define QS_TIMER 0x0010
3915 -// #define QS_PAINT 0x0020
3916 -// #define QS_SENDMESSAGE 0x0040
3917 -// #define QS_HOTKEY 0x0080
3918 -enum : uint { QS_ALLPOSTMESSAGE = 0x0100 }
3919 -// #if(_WIN32_WINNT >= 0x0501)
3920 -enum : uint { QS_RAWINPUT = 0x0400 }
3921 -// #endif /* _WIN32_WINNT >= 0x0501 */
3922 -
3923 -enum : uint { QS_MOUSE = QS_MOUSEMOVE | QS_MOUSEBUTTON }
3924 -
3925 -// #if (_WIN32_WINNT >= 0x0501)
3926 -// #define QS_INPUT (QS_MOUSE | QS_KEY | QS_RAWINPUT)
3927 -// #else
3928 -// #...
3929 -// ...
3930 -// #endif // (_WIN32_WINNT >= 0x0501)
3931 -
3932 -enum : uint { QS_ALLEVENTS = QS_INPUT | QS_POSTMESSAGE | QS_TIMER | QS_PAINT | QS_HOTKEY }
3933 -
3934 -enum : uint { QS_ALLINPUT = QS_INPUT | QS_POSTMESSAGE | QS_TIMER | QS_PAINT | QS_HOTKEY | QS_SENDMESSAGE }
3935 -
3936 -extern(Windows) export UINT_PTR SetTimer(
3937 - HWND hWnd,
3938 - UINT_PTR nIDEvent,
3939 - UINT uElapse,
3940 - TIMERPROC lpTimerFunc);
3941 -
3942 -extern(Windows) export BOOL KillTimer(
3943 - HWND hWnd,
3944 - UINT_PTR uIDEvent);
3945 -
3946 -extern(Windows) export BOOL IsWindowUnicode(
3947 - HWND hWnd);
3948 -
3949 -extern(Windows) export BOOL EnableWindow(
3950 - HWND hWnd,
3951 - BOOL bEnable);
3952 -
3953 -extern(Windows) export BOOL IsWindowEnabled(
3954 - HWND hWnd);
3955 -
3956 -extern(Windows) export HACCEL LoadAcceleratorsA(
3957 - HINSTANCE hInstance,
3958 - LPCSTR lpTableName);
3959 -extern(Windows) export HACCEL LoadAcceleratorsW(
3960 - HINSTANCE hInstance,
3961 - LPCWSTR lpTableName);
3962 -// #ifdef UNICODE
3963 -alias LoadAcceleratorsW LoadAccelerators;
3964 -// #else
3965 -// #...
3966 -// #endif // !UNICODE
3967 -
3968 -extern(Windows) export HACCEL CreateAcceleratorTableA(
3969 - LPACCEL, int);
3970 -extern(Windows) export HACCEL CreateAcceleratorTableW(
3971 - LPACCEL, int);
3972 -// #ifdef UNICODE
3973 -alias CreateAcceleratorTableW CreateAcceleratorTable;
3974 -// #else
3975 -// #...
3976 -// #endif // !UNICODE
3977 -
3978 -extern(Windows) export BOOL DestroyAcceleratorTable(
3979 - HACCEL hAccel);
3980 -
3981 -extern(Windows) export int CopyAcceleratorTableA(
3982 - HACCEL hAccelSrc,
3983 - LPACCEL lpAccelDst,
3984 - int cAccelEntries);
3985 -extern(Windows) export int CopyAcceleratorTableW(
3986 - HACCEL hAccelSrc,
3987 - LPACCEL lpAccelDst,
3988 - int cAccelEntries);
3989 -// #ifdef UNICODE
3990 -alias CopyAcceleratorTableW CopyAcceleratorTable;
3991 -// #else
3992 -// #...
3993 -// #endif // !UNICODE
3994 -
3995 -// #ifndef NOMSG
3996 -
3997 -extern(Windows) export int TranslateAcceleratorA(
3998 - HWND hWnd,
3999 - HACCEL hAccTable,
4000 - LPMSG lpMsg);
4001 -extern(Windows) export int TranslateAcceleratorW(
4002 - HWND hWnd,
4003 - HACCEL hAccTable,
4004 - LPMSG lpMsg);
4005 -// #ifdef UNICODE
4006 -alias TranslateAcceleratorW TranslateAccelerator;
4007 -// #else
4008 -// #...
4009 -// #endif // !UNICODE
4010 -
4011 -// #endif /* !NOMSG */
4012 -
4013 -// #ifndef NOSYSMETRICS
4014 -
4015 -enum : uint { SM_CXSCREEN = 0 }
4016 -enum : uint { SM_CYSCREEN = 1 }
4017 -enum : uint { SM_CXVSCROLL = 2 }
4018 -enum : uint { SM_CYHSCROLL = 3 }
4019 -enum : uint { SM_CYCAPTION = 4 }
4020 -enum : uint { SM_CXBORDER = 5 }
4021 -enum : uint { SM_CYBORDER = 6 }
4022 -enum : uint { SM_CXDLGFRAME = 7 }
4023 -enum : uint { SM_CYDLGFRAME = 8 }
4024 -enum : uint { SM_CYVTHUMB = 9 }
4025 -enum : uint { SM_CXHTHUMB = 10 }
4026 -enum : uint { SM_CXICON = 11 }
4027 -enum : uint { SM_CYICON = 12 }
4028 -enum : uint { SM_CXCURSOR = 13 }
4029 -enum : uint { SM_CYCURSOR = 14 }
4030 -enum : uint { SM_CYMENU = 15 }
4031 -enum : uint { SM_CXFULLSCREEN = 16 }
4032 -enum : uint { SM_CYFULLSCREEN = 17 }
4033 -enum : uint { SM_CYKANJIWINDOW = 18 }
4034 -enum : uint { SM_MOUSEPRESENT = 19 }
4035 -enum : uint { SM_CYVSCROLL = 20 }
4036 -enum : uint { SM_CXHSCROLL = 21 }
4037 -enum : uint { SM_DEBUG = 22 }
4038 -enum : uint { SM_SWAPBUTTON = 23 }
4039 -enum : uint { SM_RESERVED1 = 24 }
4040 -enum : uint { SM_RESERVED2 = 25 }
4041 -enum : uint { SM_RESERVED3 = 26 }
4042 -enum : uint { SM_RESERVED4 = 27 }
4043 -enum : uint { SM_CXMIN = 28 }
4044 -enum : uint { SM_CYMIN = 29 }
4045 -enum : uint { SM_CXSIZE = 30 }
4046 -enum : uint { SM_CYSIZE = 31 }
4047 -enum : uint { SM_CXFRAME = 32 }
4048 -enum : uint { SM_CYFRAME = 33 }
4049 -enum : uint { SM_CXMINTRACK = 34 }
4050 -enum : uint { SM_CYMINTRACK = 35 }
4051 -enum : uint { SM_CXDOUBLECLK = 36 }
4052 -enum : uint { SM_CYDOUBLECLK = 37 }
4053 -enum : uint { SM_CXICONSPACING = 38 }
4054 -enum : uint { SM_CYICONSPACING = 39 }
4055 -enum : uint { SM_MENUDROPALIGNMENT = 40 }
4056 -enum : uint { SM_PENWINDOWS = 41 }
4057 -enum : uint { SM_DBCSENABLED = 42 }
4058 -enum : uint { SM_CMOUSEBUTTONS = 43 }
4059 -
4060 -// #if(WINVER >= 0x0400)
4061 -alias SM_CXDLGFRAME SM_CXFIXEDFRAME;
4062 -alias SM_CYDLGFRAME SM_CYFIXEDFRAME;
4063 -alias SM_CXFRAME SM_CXSIZEFRAME;
4064 -alias SM_CYFRAME SM_CYSIZEFRAME;
4065 -
4066 -enum : uint { SM_SECURE = 44 }
4067 -enum : uint { SM_CXEDGE = 45 }
4068 -enum : uint { SM_CYEDGE = 46 }
4069 -enum : uint { SM_CXMINSPACING = 47 }
4070 -enum : uint { SM_CYMINSPACING = 48 }
4071 -enum : uint { SM_CXSMICON = 49 }
4072 -enum : uint { SM_CYSMICON = 50 }
4073 -enum : uint { SM_CYSMCAPTION = 51 }
4074 -enum : uint { SM_CXSMSIZE = 52 }
4075 -enum : uint { SM_CYSMSIZE = 53 }
4076 -enum : uint { SM_CXMENUSIZE = 54 }
4077 -enum : uint { SM_CYMENUSIZE = 55 }
4078 -enum : uint { SM_ARRANGE = 56 }
4079 -enum : uint { SM_CXMINIMIZED = 57 }
4080 -enum : uint { SM_CYMINIMIZED = 58 }
4081 -enum : uint { SM_CXMAXTRACK = 59 }
4082 -enum : uint { SM_CYMAXTRACK = 60 }
4083 -enum : uint { SM_CXMAXIMIZED = 61 }
4084 -enum : uint { SM_CYMAXIMIZED = 62 }
4085 -enum : uint { SM_NETWORK = 63 }
4086 -enum : uint { SM_CLEANBOOT = 67 }
4087 -enum : uint { SM_CXDRAG = 68 }
4088 -enum : uint { SM_CYDRAG = 69 }
4089 -// #endif /* WINVER >= 0x0400 */
4090 -enum : uint { SM_SHOWSOUNDS = 70 }
4091 -// #if(WINVER >= 0x0400)
4092 -enum : uint { SM_CXMENUCHECK = 71 }
4093 -enum : uint { SM_CYMENUCHECK = 72 }
4094 -enum : uint { SM_SLOWMACHINE = 73 }
4095 -enum : uint { SM_MIDEASTENABLED = 74 }
4096 -// #endif /* WINVER >= 0x0400 */
4411 +alias WNDCLASSW WNDCLASS;
4412 +alias WNDCLASSEXW WNDCLASSEX;
4413 +alias MENUITEMINFOW MENUITEMINFO;
4414 +alias LPCMENUITEMINFOW LPCMENUITEMINFO;
4415 +alias MSGBOXPARAMSW MSGBOXPARAMS;
4416 +alias HIGHCONTRASTW HIGHCONTRAST;
4417 +alias SERIALKEYSW SERIALKEYS;
4418 +alias SOUNDSENTRYW SOUNDSENTRY;
4419 +alias CREATESTRUCTW CREATESTRUCT;
4420 +alias CBT_CREATEWNDW CBT_CREATEWND;
4421 +alias MDICREATESTRUCTW MDICREATESTRUCT;
4422 +alias MULTIKEYHELPW MULTIKEYHELP;
4423 +alias MONITORINFOEXW MONITORINFOEX;
4424 +alias ICONMETRICSW ICONMETRICS;
4425 +alias NONCLIENTMETRICSW NONCLIENTMETRICS;
4097 4426
4098 -// #if (WINVER >= 0x0500) || (_WIN32_WINNT >= 0x0400)
4099 -enum : uint { SM_MOUSEWHEELPRESENT = 75 }
4100 -// #endif
4101 -// #if(WINVER >= 0x0500)
4102 -enum : uint { SM_XVIRTUALSCREEN = 76 }
4103 -enum : uint { SM_YVIRTUALSCREEN = 77 }
4104 -enum : uint { SM_CXVIRTUALSCREEN = 78 }
4105 -enum : uint { SM_CYVIRTUALSCREEN = 79 }
4106 -enum : uint { SM_CMONITORS = 80 }
4107 -enum : uint { SM_SAMEDISPLAYFORMAT = 81 }
4108 -// #endif /* WINVER >= 0x0500 */
4109 -// #if(_WIN32_WINNT >= 0x0500)
4110 -enum : uint { SM_IMMENABLED = 82 }
4111 -// #endif /* _WIN32_WINNT >= 0x0500 */
4112 -// #if(_WIN32_WINNT >= 0x0501)
4113 -enum : uint { SM_CXFOCUSBORDER = 83 }
4114 -enum : uint { SM_CYFOCUSBORDER = 84 }
4115 -// #endif /* _WIN32_WINNT >= 0x0501 */
4116 -
4117 -// #if (WINVER < 0x0500) && (!defined(_WIN32_WINNT) || (_WIN32_WINNT < 0x0400))
4118 -// #...
4119 -// #else
4120 -enum : uint { SM_CMETRICS = 86 }
4121 -// #endif
4122 -
4123 -// #if(WINVER >= 0x0500)
4124 -enum : uint { SM_REMOTESESSION = 0x1000 }
4125 -
4126 -// #if(_WIN32_WINNT >= 0x0501)
4127 -enum : uint { SM_SHUTTINGDOWN = 0x2000 }
4128 -// #endif /* _WIN32_WINNT >= 0x0501 */
4129 -
4130 -// #endif /* WINVER >= 0x0500 */
4131 -
4132 -extern(Windows) export int GetSystemMetrics(
4133 - int nIndex);
4134 -
4135 -// #endif /* !NOSYSMETRICS */
4136 -
4137 -// #ifndef NOMENUS
4138 -
4139 -extern(Windows) export HMENU LoadMenuA(
4140 - HINSTANCE hInstance,
4141 - LPCSTR lpMenuName);
4142 -extern(Windows) export HMENU LoadMenuW(
4143 - HINSTANCE hInstance,
4144 - LPCWSTR lpMenuName);
4145 -// #ifdef UNICODE
4146 -alias LoadMenuW LoadMenu;
4147 -// #else
4148 -// #...
4149 -// #endif // !UNICODE
4150 -
4151 -extern(Windows) export HMENU LoadMenuIndirectA(
4152 - MENUTEMPLATEA *lpMenuTemplate);
4153 -extern(Windows) export HMENU LoadMenuIndirectW(
4154 - MENUTEMPLATEW *lpMenuTemplate);
4155 -// #ifdef UNICODE
4156 -alias LoadMenuIndirectW LoadMenuIndirect;
4157 -// #else
4158 -// #...
4159 -// #endif // !UNICODE
4160 -
4161 -extern(Windows) export HMENU GetMenu(
4162 - HWND hWnd);
4163 -
4164 -extern(Windows) export BOOL SetMenu(
4165 - HWND hWnd,
4166 - HMENU hMenu);
4167 -
4168 -extern(Windows) export BOOL ChangeMenuA(
4169 - HMENU hMenu,
4170 - UINT cmd,
4171 - LPCSTR lpszNewItem,
4172 - UINT cmdInsert,
4173 - UINT flags);
4174 -extern(Windows) export BOOL ChangeMenuW(
4175 - HMENU hMenu,
4176 - UINT cmd,
4177 - LPCWSTR lpszNewItem,
4178 - UINT cmdInsert,
4179 - UINT flags);
4180 -// #ifdef UNICODE
4427 +alias AppendMenuW AppendMenu;
4428 +alias BroadcastSystemMessageW BroadcastSystemMessage;
4429 +static if (_WIN32_WINNT >= 0x501) {
4430 +alias BroadcastSystemMessageExW BroadcastSystemMessageEx;
4431 +}
4432 +alias CallMsgFilterW CallMsgFilter;
4433 +alias CallWindowProcW CallWindowProc;
4181 4434 alias ChangeMenuW ChangeMenu;
4182 -// #else
4183 -// #...
4184 -// #endif // !UNICODE
4185 -
4186 -extern(Windows) export BOOL HiliteMenuItem(
4187 - HWND hWnd,
4188 - HMENU hMenu,
4189 - UINT uIDHiliteItem,
4190 - UINT uHilite);
4191 -
4192 -extern(Windows) export int GetMenuStringA(
4193 - HMENU hMenu,
4194 - UINT uIDItem,
4195 - LPSTR lpString,
4196 - int nMaxCount,
4197 - UINT uFlag);
4198 -extern(Windows) export int GetMenuStringW(
4199 - HMENU hMenu,
4200 - UINT uIDItem,
4201 - LPWSTR lpString,
4202 - int nMaxCount,
4203 - UINT uFlag);
4204 -// #ifdef UNICODE
4435 +alias CharLowerW CharLower;
4436 +alias CharLowerBuffW CharLowerBuff;
4437 +alias CharNextW CharNext;
4438 +alias CharNextExW CharNextEx;
4439 +alias CharPrevW CharPrev;
4440 +alias CharPrevExW CharPrevEx;
4441 +alias CharToOemW CharToOem;
4442 +alias CharToOemBuffW CharToOemBuff;
4443 +alias CharUpperW CharUpper;
4444 +alias CharUpperBuffW CharUpperBuff;
4445 +alias CopyAcceleratorTableW CopyAcceleratorTable;
4446 +alias CreateAcceleratorTableW CreateAcceleratorTable;
4447 +alias CreateDialogW CreateDialog;
4448 +alias CreateDialogIndirectW CreateDialogIndirect;
4449 +alias CreateDialogIndirectParamW CreateDialogIndirectParam;
4450 +alias CreateDialogParamW CreateDialogParam;
4451 +alias CreateMDIWindowW CreateMDIWindow;
4452 +alias CreateWindowW CreateWindow;
4453 +alias CreateWindowExW CreateWindowEx;
4454 +alias CreateWindowStationW CreateWindowStation;
4455 +alias DefDlgProcW DefDlgProc;
4456 +alias DefFrameProcW DefFrameProc;
4457 +alias DefMDIChildProcW DefMDIChildProc;
4458 +alias DefWindowProcW DefWindowProc;
4459 +alias DialogBoxW DialogBox;
4460 +alias DialogBoxIndirectW DialogBoxIndirect;
4461 +alias DialogBoxIndirectParamW DialogBoxIndirectParam;
4462 +alias DialogBoxParamW DialogBoxParam;
4463 +alias DispatchMessageW DispatchMessage;
4464 +alias DlgDirListW DlgDirList;
4465 +alias DlgDirListComboBoxW DlgDirListComboBox;
4466 +alias DlgDirSelectComboBoxExW DlgDirSelectComboBoxEx;
4467 +alias DlgDirSelectExW DlgDirSelectEx;
4468 +alias DrawStateW DrawState;
4469 +alias DrawTextW DrawText;
4470 +alias DrawTextExW DrawTextEx;
4471 +alias EnumDesktopsW EnumDesktops;
4472 +alias EnumPropsW EnumProps;
4473 +alias EnumPropsExW EnumPropsEx;
4474 +alias EnumWindowStationsW EnumWindowStations;
4475 +alias FindWindowW FindWindow;
4476 +alias FindWindowExW FindWindowEx;
4477 +alias GetClassInfoW GetClassInfo;
4478 +alias GetClassInfoExW GetClassInfoEx;
4479 +alias GetClassLongW GetClassLong;
4480 +alias GetClassNameW GetClassName;
4481 +alias GetClipboardFormatNameW GetClipboardFormatName;
4482 +alias GetDlgItemTextW GetDlgItemText;
4483 +alias GetKeyboardLayoutNameW GetKeyboardLayoutName;
4484 +alias GetKeyNameTextW GetKeyNameText;
4485 +alias GetMenuItemInfoW GetMenuItemInfo;
4205 4486 alias GetMenuStringW GetMenuString;
4206 -// #else
4207 -// #...
4208 -// #endif // !UNICODE
4209 -
4210 -extern(Windows) export UINT GetMenuState(
4211 - HMENU hMenu,
4212 - UINT uId,
4213 - UINT uFlags);
4214 -
4215 -extern(Windows) export BOOL DrawMenuBar(
4216 - HWND hWnd);
4217 -
4218 -// #if(_WIN32_WINNT >= 0x0501)
4219 -enum : uint { PMB_ACTIVE = 0x00000001 }
4220 -
4221 -// #endif /* _WIN32_WINNT >= 0x0501 */
4222 -
4223 -extern(Windows) export HMENU GetSystemMenu(
4224 - HWND hWnd,
4225 - BOOL bRevert);
4226 -
4227 -extern(Windows) export HMENU CreateMenu();
4228 -
4229 -extern(Windows) export HMENU CreatePopupMenu();
4230 -
4231 -extern(Windows) export BOOL DestroyMenu(
4232 - HMENU hMenu);
4233 -
4234 -extern(Windows) export DWORD CheckMenuItem(
4235 - HMENU hMenu,
4236 - UINT uIDCheckItem,
4237 - UINT uCheck);
4238 -
4239 -extern(Windows) export BOOL EnableMenuItem(
4240 - HMENU hMenu,
4241 - UINT uIDEnableItem,
4242 - UINT uEnable);
4243 -
4244 -extern(Windows) export HMENU GetSubMenu(
4245 - HMENU hMenu,
4246 - int nPos);
4247 -
4248 -extern(Windows) export UINT GetMenuItemID(
4249 - HMENU hMenu,
4250 - int nPos);
4251 -
4252 -extern(Windows) export int GetMenuItemCount(
4253 - HMENU hMenu);
4254 -
4255 -extern(Windows) export BOOL InsertMenuA(
4256 - HMENU hMenu,
4257 - UINT uPosition,
4258 - UINT uFlags,
4259 - UINT_PTR uIDNewItem,
4260 - LPCSTR lpNewItem);
4261 -extern(Windows) export BOOL InsertMenuW(
4262 - HMENU hMenu,
4263 - UINT uPosition,
4264 - UINT uFlags,
4265 - UINT_PTR uIDNewItem,
4266 - LPCWSTR lpNewItem);
4267 -// #ifdef UNICODE
4268 -alias InsertMenuW InsertMenu;
4269 -// #else
4270 -// #...
4271 -// #endif // !UNICODE
4272 -
4273 -extern(Windows) export BOOL AppendMenuA(
4274 - HMENU hMenu,
4275 - UINT uFlags,
4276 - UINT_PTR uIDNewItem,
4277 - LPCSTR lpNewItem);
4278 -extern(Windows) export BOOL AppendMenuW(
4279 - HMENU hMenu,
4280 - UINT uFlags,
4281 - UINT_PTR uIDNewItem,
4282 - LPCWSTR lpNewItem);
4283 -// #ifdef UNICODE
4284 -alias AppendMenuW AppendMenu;
4285 -// #else
4286 -// #...
4287 -// #endif // !UNICODE
4288 -
4289 -extern(Windows) export BOOL ModifyMenuA(
4290 - HMENU hMnu,
4291 - UINT uPosition,
4292 - UINT uFlags,
4293 - UINT_PTR uIDNewItem,
4294 - LPCSTR lpNewItem);
4295 -extern(Windows) export BOOL ModifyMenuW(
4296 - HMENU hMnu,
4297 - UINT uPosition,
4298 - UINT uFlags,
4299 - UINT_PTR uIDNewItem,
4300 - LPCWSTR lpNewItem);
4301 -// #ifdef UNICODE
4302 -alias ModifyMenuW ModifyMenu;
4303 -// #else
4304 -// #...
4305 -// #endif // !UNICODE
4306 -
4307 -extern(Windows) export BOOL RemoveMenu(
4308 - HMENU hMenu,
4309 - UINT uPosition,
4310 - UINT uFlags);
4311 -
4312 -extern(Windows) export BOOL DeleteMenu(
4313 - HMENU hMenu,
4314 - UINT uPosition,
4315 - UINT uFlags);
4316 -
4317 -extern(Windows) export BOOL SetMenuItemBitmaps(
4318 - HMENU hMenu,
4319 - UINT uPosition,
4320 - UINT uFlags,
4321 - HBITMAP hBitmapUnchecked,
4322 - HBITMAP hBitmapChecked);
4323 -
4324 -extern(Windows) export LONG GetMenuCheckMarkDimensions();
4325 -
4326 -extern(Windows) export BOOL TrackPopupMenu(
4327 - HMENU hMenu,
4328 - UINT uFlags,
4329 - int x,
4330 - int y,
4331 - int nReserved,
4332 - HWND hWnd,
4333 - RECT *prcRect);
4334 -
4335 -// #if(WINVER >= 0x0400)
4336 -
4337 -enum : uint { MNC_IGNORE = 0 }
4338 -enum : uint { MNC_CLOSE = 1 }
4339 -enum : uint { MNC_EXECUTE = 2 }
4340 -enum : uint { MNC_SELECT = 3 }
4341 -
4342 -struct tagTPMPARAMS {
4343 - UINT cbSize;
4344 - RECT rcExclude;
4487 +alias GetMessageW GetMessage;
4488 +static if (WINVER >=0x410) {
4489 +alias GetMonitorInfoW GetMonitorInfo;
4490 +}
4491 +alias GetPropW GetProp;
4492 +static if (_WIN32_WINNT >= 0x501) {
4493 +alias GetRawInputDeviceInfoW GetRawInputDeviceInfo;
4345 4494 }
4346 -alias tagTPMPARAMS TPMPARAMS;
4347 -
4348 -alias TPMPARAMS* LPTPMPARAMS;
4349 -
4350 -extern(Windows) export BOOL TrackPopupMenuEx(
4351 - HMENU,
4352 - UINT,
4353 - int,
4354 - int,
4355 - HWND,
4356 - LPTPMPARAMS);
4357 -// #endif /* WINVER >= 0x0400 */
4358 -
4359 -// #if(WINVER >= 0x0500)
4360 -
4361 -enum : uint { MNS_NOCHECK = 0x80000000 }
4362 -enum : uint { MNS_MODELESS = 0x40000000 }
4363 -enum : uint { MNS_DRAGDROP = 0x20000000 }
4364 -enum : uint { MNS_AUTODISMISS = 0x10000000 }
4365 -enum : uint { MNS_NOTIFYBYPOS = 0x08000000 }
4366 -enum : uint { MNS_CHECKORBMP = 0x04000000 }
4367 -
4368 -enum : uint { MIM_MAXHEIGHT = 0x00000001 }
4369 -enum : uint { MIM_BACKGROUND = 0x00000002 }
4370 -enum : uint { MIM_HELPID = 0x00000004 }
4371 -enum : uint { MIM_MENUDATA = 0x00000008 }
4372 -enum : uint { MIM_STYLE = 0x00000010 }
4373 -enum : uint { MIM_APPLYTOSUBMENUS = 0x80000000 }
4374 -
4375 -struct tagMENUINFO {
4376 - DWORD cbSize;
4377 - DWORD fMask;
4378 - DWORD dwStyle;
4379 - UINT cyMax;
4380 - HBRUSH hbrBack;
4381 - DWORD dwContextHelpID;
4382 - ULONG_PTR dwMenuData;
4383 -}
4384 -alias tagMENUINFO MENUINFO;
4385 -alias tagMENUINFO* LPMENUINFO;
4386 -
4387 -alias MENUINFO* LPCMENUINFO;
4388 -
4389 -extern(Windows) export BOOL GetMenuInfo(
4390 - HMENU,
4391 - LPMENUINFO);
4392 -
4393 -extern(Windows) export BOOL SetMenuInfo(
4394 - HMENU,
4395 - LPCMENUINFO);
4396 -
4397 -extern(Windows) export BOOL EndMenu();
4398 -
4399 -enum : uint { MND_CONTINUE = 0 }
4400 -enum : uint { MND_ENDMENU = 1 }
4401 -
4402 -struct tagMENUGETOBJECTINFO {
4403 - DWORD dwFlags;
4404 - UINT uPos;
4405 - HMENU hmenu;
4406 - PVOID riid;
4407 - PVOID pvObj;
4408 -}
4409 -alias tagMENUGETOBJECTINFO MENUGETOBJECTINFO;
4410 -alias tagMENUGETOBJECTINFO* PMENUGETOBJECTINFO;
4411 -
4412 -enum : uint { MNGOF_TOPGAP = 0x00000001 }
4413 -enum : uint { MNGOF_BOTTOMGAP = 0x00000002 }
4414 -
4415 -enum : uint { MNGO_NOINTERFACE = 0x00000000 }
4416 -enum : uint { MNGO_NOERROR = 0x00000001 }
4417 -// #endif /* WINVER >= 0x0500 */
4418 -
4419 -// #if(WINVER >= 0x0400)
4420 -enum : uint { MIIM_STATE = 0x00000001 }
4421 -enum : uint { MIIM_ID = 0x00000002 }
4422 -enum : uint { MIIM_SUBMENU = 0x00000004 }
4423 -enum : uint { MIIM_CHECKMARKS = 0x00000008 }
4424 -enum : uint { MIIM_TYPE = 0x00000010 }
4425 -enum : uint { MIIM_DATA = 0x00000020 }
4426 -// #endif /* WINVER >= 0x0400 */
4427 -
4428 -// #if(WINVER >= 0x0500)
4429 -enum : uint { MIIM_STRING = 0x00000040 }
4430 -enum : uint { MIIM_BITMAP = 0x00000080 }
4431 -enum : uint { MIIM_FTYPE = 0x00000100 }
4432 -
4433 -const HBITMAP HBMMENU_CALLBACK = cast(HBITMAP)-1;
4434 -const HBITMAP HBMMENU_SYSTEM = cast(HBITMAP)1;
4435 -const HBITMAP HBMMENU_MBAR_RESTORE = cast(HBITMAP)2;
4436 -const HBITMAP HBMMENU_MBAR_MINIMIZE = cast(HBITMAP)3;
4437 -const HBITMAP HBMMENU_MBAR_CLOSE = cast(HBITMAP)5;
4438 -const HBITMAP HBMMENU_MBAR_CLOSE_D = cast(HBITMAP)6;
4439 -const HBITMAP HBMMENU_MBAR_MINIMIZE_D = cast(HBITMAP)7;
4440 -const HBITMAP HBMMENU_POPUP_CLOSE = cast(HBITMAP)8;
4441 -const HBITMAP HBMMENU_POPUP_RESTORE = cast(HBITMAP)9;
4442 -const HBITMAP HBMMENU_POPUP_MAXIMIZE = cast(HBITMAP)10;
4443 -const HBITMAP HBMMENU_POPUP_MINIMIZE = cast(HBITMAP)11;
4444 -// #endif /* WINVER >= 0x0500 */
4445 -
4446 -// #if(WINVER >= 0x0400)
4447 -struct tagMENUITEMINFOA {
4448 - UINT cbSize;
4449 - UINT fMask;
4450 - UINT fType;
4451 - UINT fState;
4452 - UINT wID;
4453 - HMENU hSubMenu;
4454 - HBITMAP hbmpChecked;
4455 - HBITMAP hbmpUnchecked;
4456 - ULONG_PTR dwItemData;
4457 - LPSTR dwTypeData;
4458 - UINT cch;
4459 -// #if(WINVER >= 0x0500)
4460 - HBITMAP hbmpItem;
4461 -// #endif /* WINVER >= 0x0500 */
4462 -}
4463 -alias tagMENUITEMINFOA MENUITEMINFOA;
4464 -alias tagMENUITEMINFOA* LPMENUITEMINFOA;
4465 -
4466 -struct tagMENUITEMINFOW {
4467 - UINT cbSize;
4468 - UINT fMask;
4469 - UINT fType;
4470 - UINT fState;
4471 - UINT wID;
4472 - HMENU hSubMenu;
4473 - HBITMAP hbmpChecked;
4474 - HBITMAP hbmpUnchecked;
4475 - ULONG_PTR dwItemData;
4476 - LPWSTR dwTypeData;
4477 - UINT cch;
4478 -// #if(WINVER >= 0x0500)
4479 - HBITMAP hbmpItem;
4480 -// #endif /* WINVER >= 0x0500 */
4481 -}
4482 -alias tagMENUITEMINFOW MENUITEMINFOW;
4483 -alias tagMENUITEMINFOW* LPMENUITEMINFOW;
4484 -
4485 -// #ifdef UNICODE
4486 -alias MENUITEMINFOW MENUITEMINFO;
4487 -alias LPMENUITEMINFOW LPMENUITEMINFO;
4488 -// #else
4489 -// ...
4490 -// #endif // UNICODE
4491 -alias MENUITEMINFOA* LPCMENUITEMINFOA;
4492 -alias MENUITEMINFOW* LPCMENUITEMINFOW;
4493 -// #ifdef UNICODE
4494 -alias LPCMENUITEMINFOW LPCMENUITEMINFO;
4495 -// #else
4496 -// ...
4497 -// #endif // UNICODE
4498 -
4499 -extern(Windows) export BOOL InsertMenuItemA(
4500 - HMENU,
4501 - UINT,
4502 - BOOL,
4503 - LPCMENUITEMINFOA);
4504 -extern(Windows) export BOOL InsertMenuItemW(
4505 - HMENU,
4506 - UINT,
4507 - BOOL,
4508 - LPCMENUITEMINFOW);
4509 -// #ifdef UNICODE
4495 +alias GetTabbedTextExtentW GetTabbedTextExtent;
4496 +alias GetUserObjectInformationW GetUserObjectInformation;
4497 +alias GetWindowLongW GetWindowLong;
4498 +alias GetWindowLongPtrW GetWindowLongPtr;
4499 +alias GetWindowTextW GetWindowText;
4500 +alias GetWindowTextLengthW GetWindowTextLength;
4501 +alias GetAltTabInfoW GetAltTabInfo;
4502 +alias GetWindowModuleFileNameW GetWindowModuleFileName;
4503 +alias GrayStringW GrayString;
4504 +alias InsertMenuW InsertMenu;
4510 4505 alias InsertMenuItemW InsertMenuItem;
4511 -// #else
4512 -// #...
4513 -// #endif // !UNICODE
4514 -
4515 -extern(Windows) export BOOL GetMenuItemInfoA(
4516 - HMENU,
4517 - UINT,
4518 - BOOL,
4519 - LPMENUITEMINFOA);
4520 -extern(Windows) export BOOL GetMenuItemInfoW(
4521 - HMENU,
4522 - UINT,
4523 - BOOL,
4524 - LPMENUITEMINFOW);
4525 -// #ifdef UNICODE
4526 -alias GetMenuItemInfoW GetMenuItemInfo;
4527 -// #else
4528 -// #...
4529 -// #endif // !UNICODE
4530 -
4531 -extern(Windows) export BOOL SetMenuItemInfoA(
4532 - HMENU,
4533 - UINT,
4534 - BOOL,
4535 - LPCMENUITEMINFOA);
4536 -extern(Windows) export BOOL SetMenuItemInfoW(
4537 - HMENU,
4538 - UINT,
4539 - BOOL,
4540 - LPCMENUITEMINFOW);
4541 -// #ifdef UNICODE
4506 +alias IsCharAlphaW IsCharAlpha;
4507 +alias IsCharAlphaNumericW IsCharAlphaNumeric;
4508 +alias IsCharLowerW IsCharLower;
4509 +alias IsCharUpperW IsCharUpper;
4510 +alias IsDialogMessageW IsDialogMessage;
4511 +alias LoadAcceleratorsW LoadAccelerators;
4512 +alias LoadBitmapW LoadBitmap;
4513 +alias LoadCursorW LoadCursor;
4514 +alias LoadCursorFromFileW LoadCursorFromFile;
4515 +alias LoadIconW LoadIcon;
4516 +alias LoadImageW LoadImage;
4517 +alias LoadKeyboardLayoutW LoadKeyboardLayout;
4518 +alias LoadMenuW LoadMenu;
4519 +alias LoadMenuIndirectW LoadMenuIndirect;
4520 +alias LoadStringW LoadString;
4521 +alias MapVirtualKeyW MapVirtualKey;
4522 +alias MapVirtualKeyExW MapVirtualKeyEx;
4523 +alias MessageBoxW MessageBox;
4524 +alias MessageBoxExW MessageBoxEx;
4525 +alias MessageBoxIndirectW MessageBoxIndirect;
4526 +alias ModifyMenuW ModifyMenu;
4527 +alias OemToCharW OemToChar;
4528 +alias OemToCharBuffW OemToCharBuff;
4529 +alias OpenDesktopW OpenDesktop;
4530 +alias OpenWindowStationW OpenWindowStation;
4531 +alias PeekMessageW PeekMessage;
4532 +alias PostMessageW PostMessage;
4533 +alias PostThreadMessageW PostThreadMessage;
4534 +alias RealGetWindowClassW RealGetWindowClass;
4535 +alias RegisterClassW RegisterClass;
4536 +alias RegisterClassExW RegisterClassEx;
4537 +alias RegisterClipboardFormatW RegisterClipboardFormat;
4538 +static if (WINVER >= 0x500) {
4539 +alias RegisterDeviceNotificationW RegisterDeviceNotification;
4540 +}
4541 +alias RegisterWindowMessageW RegisterWindowMessage;
4542 +alias RemovePropW RemoveProp;
4543 +alias SendDlgItemMessageW SendDlgItemMessage;
4544 +alias SendMessageW SendMessage;
4545 +alias SendMessageCallbackW SendMessageCallback;
4546 +alias SendMessageTimeoutW SendMessageTimeout;
4547 +alias SendNotifyMessageW SendNotifyMessage;
4548 +alias SetClassLongW SetClassLong;
4549 +alias SetDlgItemTextW SetDlgItemText;
4542 4550 alias SetMenuItemInfoW SetMenuItemInfo;
4543 -// #else
4544 -// #...
4545 -// #endif // !UNICODE
4546 -
4547 -enum : uint { GMDI_USEDISABLED = 0x0001 }
4548 -enum : uint { GMDI_GOINTOPOPUPS = 0x0002 }
4551 +alias SetPropW SetProp;
4552 +alias SetUserObjectInformationW SetUserObjectInformation;
4553 +alias SetWindowLongW SetWindowLong;
4554 +alias SetWindowLongPtrW SetWindowLongPtr;
4555 +alias SetWindowsHookW SetWindowsHook;
4556 +alias SetWindowsHookExW SetWindowsHookEx;
4557 +alias SetWindowTextW SetWindowText;
4558 +alias SystemParametersInfoW SystemParametersInfo;
4559 +alias TabbedTextOutW TabbedTextOut;
4560 +alias TranslateAcceleratorW TranslateAccelerator;
4561 +alias UnregisterClassW UnregisterClass;
4562 +alias VkKeyScanW VkKeyScan;
4563 +alias VkKeyScanExW VkKeyScanEx;
4564 +alias WinHelpW WinHelp;
4565 +alias wsprintfW wsprintf;
4566 +alias wvsprintfW wvsprintf;
4549 4567
4550 -extern(Windows) export UINT GetMenuDefaultItem(HMENU hMenu, UINT fByPos, UINT gmdiFlags);
4551 -extern(Windows) export BOOL SetMenuDefaultItem(HMENU hMenu, UINT uItem, UINT fByPos);
4552 -
4553 -extern(Windows) export BOOL GetMenuItemRect(HWND hWnd, HMENU hMenu, UINT uItem, LPRECT lprcItem);
4554 -extern(Windows) export int MenuItemFromPoint(HWND hWnd, HMENU hMenu, POINT ptScreen);
4555 -// #endif /* WINVER >= 0x0400 */
4568 +alias ChangeDisplaySettingsW ChangeDisplaySettings;
4569 +alias ChangeDisplaySettingsExW ChangeDisplaySettingsEx;
4570 +alias CreateDesktopW CreateDesktop;
4571 +alias EnumDisplaySettingsW EnumDisplaySettings;
4572 +static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
4573 +alias EnumDisplaySettingsExW EnumDisplaySettingsEx;
4574 +}
4575 +alias EnumDisplayDevicesW EnumDisplayDevices;
4556 4576
4557 -enum : uint { TPM_LEFTBUTTON = 0x0000 }
4558 -enum : uint { TPM_RIGHTBUTTON = 0x0002 }
4559 -enum : uint { TPM_LEFTALIGN = 0x0000 }
4560 -enum : uint { TPM_CENTERALIGN = 0x0004 }
4561 -enum : uint { TPM_RIGHTALIGN = 0x0008 }
4562 -// #if(WINVER >= 0x0400)
4563 -enum : uint { TPM_TOPALIGN = 0x0000 }
4564 -enum : uint { TPM_VCENTERALIGN = 0x0010 }
4565 -enum : uint { TPM_BOTTOMALIGN = 0x0020 }
4577 +} else { // ANSI
4566 4578
4567 -enum : uint { TPM_HORIZONTAL = 0x0000 }
4568 -enum : uint { TPM_VERTICAL = 0x0040 }
4569 -enum : uint { TPM_NONOTIFY = 0x0080 }
4570 -enum : uint { TPM_RETURNCMD = 0x0100 }
4571 -// #endif /* WINVER >= 0x0400 */
4572 -// #if(WINVER >= 0x0500)
4573 -enum : uint { TPM_RECURSE = 0x0001 }
4574 -enum : uint { TPM_HORPOSANIMATION = 0x0400 }
4575 -enum : uint { TPM_HORNEGANIMATION = 0x0800 }
4576 -enum : uint { TPM_VERPOSANIMATION = 0x1000 }
4577 -enum : uint { TPM_VERNEGANIMATION = 0x2000 }
4578 -// #if(_WIN32_WINNT >= 0x0500)
4579 -enum : uint { TPM_NOANIMATION = 0x4000 }
4580 -// #endif /* _WIN32_WINNT >= 0x0500 */
4581 -// #if(_WIN32_WINNT >= 0x0501)
4582 -enum : uint { TPM_LAYOUTRTL = 0x8000 }
4583 -// #endif /* _WIN32_WINNT >= 0x0501 */
4584 -// #endif /* WINVER >= 0x0500 */
4579 +alias EDITWORDBREAKPROCA EDITWORDBREAKPROC;
4580 +alias PROPENUMPROCA PROPENUMPROC;
4581 +alias PROPENUMPROCEXA PROPENUMPROCEX;
4582 +alias DESKTOPENUMPROCA DESKTOPENUMPROC;
4583 +alias WINSTAENUMPROCA WINSTAENUMPROC;
4584 +alias MAKEINTRESOURCEA MAKEINTRESOURCE;
4585 4585
4586 -// #endif /* !NOMENUS */
4587 -
4588 -// #if(WINVER >= 0x0400)
4589 -
4590 -struct tagDROPSTRUCT {
4591 - HWND hwndSource;
4592 - HWND hwndSink;
4593 - DWORD wFmt;
4594 - ULONG_PTR dwData;
4595 - POINT ptDrop;
4596 - DWORD dwControlData;
4597 -}
4598 -alias tagDROPSTRUCT DROPSTRUCT;
4599 -alias tagDROPSTRUCT* PDROPSTRUCT;
4600 -alias tagDROPSTRUCT* LPDROPSTRUCT;
4601 -
4602 -enum : uint { DOF_EXECUTABLE = 0x8001 }
4603 -enum : uint { DOF_DOCUMENT = 0x8002 }
4604 -enum : uint { DOF_DIRECTORY = 0x8003 }
4605 -enum : uint { DOF_MULTIPLE = 0x8004 }
4606 -enum : uint { DOF_PROGMAN = 0x0001 }
4607 -enum : uint { DOF_SHELLDATA = 0x0002 }
4586 +alias WNDCLASSA WNDCLASS;
4587 +alias WNDCLASSEXA WNDCLASSEX;
4588 +alias MENUITEMINFOA MENUITEMINFO;
4589 +alias LPCMENUITEMINFOA LPCMENUITEMINFO;
4590 +alias MSGBOXPARAMSA MSGBOXPARAMS;
4591 +alias HIGHCONTRASTA HIGHCONTRAST;
4592 +alias SERIALKEYSA SERIALKEYS;
4593 +alias SOUNDSENTRYA SOUNDSENTRY;
4594 +alias CREATESTRUCTA CREATESTRUCT;
4595 +alias CBT_CREATEWNDA CBT_CREATEWND;
4596 +alias MDICREATESTRUCTA MDICREATESTRUCT;
4597 +alias MULTIKEYHELPA MULTIKEYHELP;
4598 +alias MONITORINFOEXA MONITORINFOEX;
4599 +alias ICONMETRICSA ICONMETRICS;
4600 +alias NONCLIENTMETRICSA NONCLIENTMETRICS;
4608 4601
4609 -enum : uint { DO_DROPFILE = 0x454C4946 }
4610 -enum : uint { DO_PRINTFILE = 0x544E5250 }
4611 -
4612 -extern(Windows) export DWORD DragObject(
4613 - HWND,
4614 - HWND,
4615 - UINT,
4616 - ULONG_PTR,
4617 - HCURSOR);
4618 -
4619 -extern(Windows) export BOOL DragDetect(
4620 - HWND,
4621 - POINT);
4622 -// #endif /* WINVER >= 0x0400 */
4623 -
4624 -extern(Windows) export BOOL DrawIcon(
4625 - HDC hDC,
4626 - int X,
4627 - int Y,
4628 - HICON hIcon);
4629 -
4630 -// #ifndef NODRAWTEXT
4631 -
4632 -enum : uint { DT_TOP = 0x00000000 }
4633 -enum : uint { DT_LEFT = 0x00000000 }
4634 -enum : uint { DT_CENTER = 0x00000001 }
4635 -enum : uint { DT_RIGHT = 0x00000002 }
4636 -enum : uint { DT_VCENTER = 0x00000004 }
4637 -enum : uint { DT_BOTTOM = 0x00000008 }
4638 -enum : uint { DT_WORDBREAK = 0x00000010 }
4639 -enum : uint { DT_SINGLELINE = 0x00000020 }
4640 -enum : uint { DT_EXPANDTABS = 0x00000040 }
4641 -enum : uint { DT_TABSTOP = 0x00000080 }
4642 -enum : uint { DT_NOCLIP = 0x00000100 }
4643 -enum : uint { DT_EXTERNALLEADING = 0x00000200 }
4644 -enum : uint { DT_CALCRECT = 0x00000400 }
4645 -enum : uint { DT_NOPREFIX = 0x00000800 }
4646 -enum : uint { DT_INTERNAL = 0x00001000 }
4647 -
4648 -// #if(WINVER >= 0x0400)
4649 -enum : uint { DT_EDITCONTROL = 0x00002000 }
4650 -enum : uint { DT_PATH_ELLIPSIS = 0x00004000 }
4651 -enum : uint { DT_END_ELLIPSIS = 0x00008000 }
4652 -enum : uint { DT_MODIFYSTRING = 0x00010000 }
4653 -enum : uint { DT_RTLREADING = 0x00020000 }
4654 -enum : uint { DT_WORD_ELLIPSIS = 0x00040000 }
4655 -// #if(WINVER >= 0x0500)
4656 -enum : uint { DT_NOFULLWIDTHCHARBREAK = 0x00080000 }
4657 -// #if(_WIN32_WINNT >= 0x0500)
4658 -enum : uint { DT_HIDEPREFIX = 0x00100000 }
4659 -enum : uint { DT_PREFIXONLY = 0x00200000 }
4660 -// #endif /* _WIN32_WINNT >= 0x0500 */
4661 -// #endif /* WINVER >= 0x0500 */
4662 -
4663 -struct tagDRAWTEXTPARAMS {
4664 - UINT cbSize;
4665 - int iTabLength;
4666 - int iLeftMargin;
4667 - int iRightMargin;
4668 - UINT uiLengthDrawn;
4602 +alias AppendMenuA AppendMenu;
4603 +alias BroadcastSystemMessageA BroadcastSystemMessage;
4604 +static if (_WIN32_WINNT >= 0x501) {
4605 +alias BroadcastSystemMessageExA BroadcastSystemMessageEx;
4606 +}
4607 +alias CallMsgFilterA CallMsgFilter;
4608 +alias CallWindowProcA CallWindowProc;
4609 +alias ChangeMenuA ChangeMenu;
4610 +alias CharLowerA CharLower;
4611 +alias CharLowerBuffA CharLowerBuff;
4612 +alias CharNextA CharNext;
4613 +alias CharNextExA CharNextEx;
4614 +alias CharPrevA CharPrev;
4615 +alias CharPrevExA CharPrevEx;
4616 +alias CharToOemA CharToOem;
4617 +alias CharToOemBuffA CharToOemBuff;
4618 +alias CharUpperA CharUpper;
4619 +alias CharUpperBuffA CharUpperBuff;
4620 +alias CopyAcceleratorTableA CopyAcceleratorTable;
4621 +alias CreateAcceleratorTableA CreateAcceleratorTable;
4622 +alias CreateDialogA CreateDialog;
4623 +alias CreateDialogIndirectA CreateDialogIndirect;
4624 +alias CreateDialogIndirectParamA CreateDialogIndirectParam;
4625 +alias CreateDialogParamA CreateDialogParam;
4626 +alias CreateMDIWindowA CreateMDIWindow;
4627 +alias CreateWindowA CreateWindow;
4628 +alias CreateWindowExA CreateWindowEx;
4629 +alias CreateWindowStationA CreateWindowStation;
4630 +alias DefDlgProcA DefDlgProc;
4631 +alias DefFrameProcA DefFrameProc;
4632 +alias DefMDIChildProcA DefMDIChildProc;
4633 +alias DefWindowProcA DefWindowProc;
4634 +alias DialogBoxA DialogBox;
4635 +alias DialogBoxIndirectA DialogBoxIndirect;
4636 +alias DialogBoxIndirectParamA DialogBoxIndirectParam;
4637 +alias DialogBoxParamA DialogBoxParam;
4638 +alias DispatchMessageA DispatchMessage;
4639 +alias DlgDirListA DlgDirList;
4640 +alias DlgDirListComboBoxA DlgDirListComboBox;
4641 +alias DlgDirSelectComboBoxExA DlgDirSelectComboBoxEx;
4642 +alias DlgDirSelectExA DlgDirSelectEx;
4643 +alias DrawStateA DrawState;
4644 +alias DrawTextA DrawText;
4645 +alias DrawTextExA DrawTextEx;
4646 +alias EnumDesktopsA EnumDesktops;
4647 +alias EnumPropsA EnumProps;
4648 +alias EnumPropsExA EnumPropsEx;
4649 +alias EnumWindowStationsA EnumWindowStations;
4650 +alias FindWindowA FindWindow;
4651 +alias FindWindowExA FindWindowEx;
4652 +alias GetClassInfoA GetClassInfo;
4653 +alias GetClassInfoExA GetClassInfoEx;
4654 +alias GetClassLongA GetClassLong;
4655 +alias GetClassNameA GetClassName;
4656 +alias GetClipboardFormatNameA GetClipboardFormatName;
4657 +alias GetDlgItemTextA GetDlgItemText;
4658 +alias GetKeyboardLayoutNameA GetKeyboardLayoutName;
4659 +alias GetKeyNameTextA GetKeyNameText;
4660 +alias GetMenuItemInfoA GetMenuItemInfo;
4661 +alias GetMenuStringA GetMenuString;
4662 +alias GetMessageA GetMessage;
4663 +static if (WINVER >=0x410) {
4664 +alias GetMonitorInfoA GetMonitorInfo;
4665 +}
4666 +alias GetPropA GetProp;
4667 +static if (_WIN32_WINNT >= 0x501) {
4668 +alias GetRawInputDeviceInfoA GetRawInputDeviceInfo;
4669 +}
4670 +alias GetTabbedTextExtentA GetTabbedTextExtent;
4671 +alias GetUserObjectInformationA GetUserObjectInformation;
4672 +alias GetWindowLongA GetWindowLong;
4673 +alias GetWindowLongPtrA GetWindowLongPtr;
4674 +alias GetWindowTextA GetWindowText;
4675 +alias GetWindowTextLengthA GetWindowTextLength;
4676 +alias GetAltTabInfoA GetAltTabInfo;
4677 +alias GetWindowModuleFileNameA GetWindowModuleFileName;
4678 +alias GrayStringA GrayString;
4679 +alias InsertMenuA InsertMenu;
4680 +alias InsertMenuItemA InsertMenuItem;
4681 +alias IsCharAlphaA IsCharAlpha;
4682 +alias IsCharAlphaNumericA IsCharAlphaNumeric;
4683 +alias IsCharLowerA IsCharLower;
4684 +alias IsCharUpperA IsCharUpper;
4685 +alias IsDialogMessageA IsDialogMessage;
4686 +alias LoadAcceleratorsA LoadAccelerators;
4687 +alias LoadBitmapA LoadBitmap;
4688 +alias LoadCursorA LoadCursor;
4689 +alias LoadIconA LoadIcon;
4690 +alias LoadCursorFromFileA LoadCursorFromFile;
4691 +alias LoadImageA LoadImage;
4692 +alias LoadKeyboardLayoutA LoadKeyboardLayout;
4693 +alias LoadMenuA LoadMenu;
4694 +alias LoadMenuIndirectA LoadMenuIndirect;
4695 +alias LoadStringA LoadString;
4696 +alias MapVirtualKeyA MapVirtualKey;
4697 +alias MapVirtualKeyExA MapVirtualKeyEx;
4698 +alias MessageBoxA MessageBox;
4699 +alias MessageBoxExA MessageBoxEx;
4700 +alias MessageBoxIndirectA MessageBoxIndirect;
4701 +alias ModifyMenuA ModifyMenu;
4702 +alias OemToCharA OemToChar;
4703 +alias OemToCharBuffA OemToCharBuff;
4704 +alias OpenDesktopA OpenDesktop;
4705 +alias OpenWindowStationA OpenWindowStation;
4706 +alias PeekMessageA PeekMessage;
4707 +alias PostMessageA PostMessage;
4708 +alias PostThreadMessageA PostThreadMessage;
4709 +alias RealGetWindowClassA RealGetWindowClass;
4710 +alias RegisterClassA RegisterClass;
4711 +alias RegisterClassExA RegisterClassEx;
4712 +alias RegisterClipboardFormatA RegisterClipboardFormat;
4713 +static if (WINVER >= 0x500) {
4714 +alias RegisterDeviceNotificationA RegisterDeviceNotification;
4669 4715 }
4670 -alias tagDRAWTEXTPARAMS DRAWTEXTPARAMS;
4671 -alias tagDRAWTEXTPARAMS* LPDRAWTEXTPARAMS;
4672 -
4673 -// #endif /* WINVER >= 0x0400 */
4674 -
4675 -extern(Windows) export int DrawTextA(
4676 - HDC hDC,
4677 - LPCSTR lpString,
4678 - int nCount,
4679 - LPRECT lpRect,
4680 - UINT uFormat);
4681 -extern(Windows) export int DrawTextW(
4682 - HDC hDC,
4683 - LPCWSTR lpString,
4684 - int nCount,
4685 - LPRECT lpRect,
4686 - UINT uFormat);
4687 -// #ifdef UNICODE
4688 -alias DrawTextW DrawText;
4689 -// #else
4690 -// #...
4691 -// #endif // !UNICODE
4692 -
4693 -// #if(WINVER >= 0x0400)
4694 -extern(Windows) export int DrawTextExA(
4695 - HDC,
4696 - LPSTR,
4697 - int,
4698 - LPRECT,
4699 - UINT,
4700 - LPDRAWTEXTPARAMS);
4701 -extern(Windows) export int DrawTextExW(
4702 - HDC,
4703 - LPWSTR,
4704 - int,
4705 - LPRECT,
4706 - UINT,
4707 - LPDRAWTEXTPARAMS);
4708 -// #ifdef UNICODE
4709 -alias DrawTextExW DrawTextEx;
4710 -// #else
4711 -// #...
4712 -// #endif // !UNICODE
4713 -// #endif /* WINVER >= 0x0400 */
4714 -
4715 -// #endif /* !NODRAWTEXT */
4716 +alias RegisterWindowMessageA RegisterWindowMessage;
4717 +alias RemovePropA RemoveProp;
4718 +alias SendDlgItemMessageA SendDlgItemMessage;
4719 +alias SendMessageA SendMessage;
4720 +alias SendMessageCallbackA SendMessageCallback;
4721 +alias SendMessageTimeoutA SendMessageTimeout;
4722 +alias SendNotifyMessageA SendNotifyMessage;
4723 +alias SetClassLongA SetClassLong;
4724 +alias SetDlgItemTextA SetDlgItemText;
4725 +alias SetMenuItemInfoA SetMenuItemInfo;
4726 +alias SetPropA SetProp;
4727 +alias SetUserObjectInformationA SetUserObjectInformation;
4728 +alias SetWindowLongA SetWindowLong;
4729 +alias SetWindowLongPtrA SetWindowLongPtr;
4730 +alias SetWindowsHookA SetWindowsHook;
4731 +alias SetWindowsHookExA SetWindowsHookEx;
4732 +alias SetWindowTextA SetWindowText;
4733 +alias SystemParametersInfoA SystemParametersInfo;
4734 +alias TabbedTextOutA TabbedTextOut;
4735 +alias TranslateAcceleratorA TranslateAccelerator;
4736 +alias UnregisterClassA UnregisterClass;
4737 +alias VkKeyScanA VkKeyScan;
4738 +alias VkKeyScanExA VkKeyScanEx;
4739 +alias WinHelpA WinHelp;
4740 +alias wsprintfA wsprintf;
4741 +alias wvsprintfA wvsprintf;
4716 4742
4717 -extern(Windows) export BOOL GrayStringA(
4718 - HDC hDC,
4719 - HBRUSH hBrush,
4720 - GRAYSTRINGPROC lpOutputFunc,
4721 - LPARAM lpData,
4722 - int nCount,
4723 - int X,
4724 - int Y,
4725 - int nWidth,
4726 - int nHeight);
4727 -extern(Windows) export BOOL GrayStringW(
4728 - HDC hDC,
4729 - HBRUSH hBrush,
4730 - GRAYSTRINGPROC lpOutputFunc,
4731 - LPARAM lpData,
4732 - int nCount,
4733 - int X,
4734 - int Y,
4735 - int nWidth,
4736 - int nHeight);
4737 -// #ifdef UNICODE
4738 -alias GrayStringW GrayString;
4739 -// #else
4740 -// #...
4741 -// #endif // !UNICODE
4742 -
4743 -// #if(WINVER >= 0x0400)
4744 -
4745 -enum : uint { DST_COMPLEX = 0x0000 }
4746 -enum : uint { DST_TEXT = 0x0001 }
4747 -enum : uint { DST_PREFIXTEXT = 0x0002 }
4748 -enum : uint { DST_ICON = 0x0003 }
4749 -enum : uint { DST_BITMAP = 0x0004 }
4750 -
4751 -enum : uint { DSS_NORMAL = 0x0000 }
4752 -enum : uint { DSS_UNION = 0x0010 }
4753 -enum : uint { DSS_DISABLED = 0x0020 }
4754 -enum : uint { DSS_MONO = 0x0080 }
4755 -// #if(_WIN32_WINNT >= 0x0500)
4756 -enum : uint { DSS_HIDEPREFIX = 0x0200 }
4757 -enum : uint { DSS_PREFIXONLY = 0x0400 }
4758 -// #endif /* _WIN32_WINNT >= 0x0500 */
4759 -enum : uint { DSS_RIGHT = 0x8000 }
4743 +alias ChangeDisplaySettingsA ChangeDisplaySettings;
4744 +alias ChangeDisplaySettingsExA ChangeDisplaySettingsEx;
4745 +alias CreateDesktopA CreateDesktop;
4746 +alias EnumDisplaySettingsA EnumDisplaySettings;
4747 +static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
4748 + alias EnumDisplaySettingsExA EnumDisplaySettingsEx;
4749 +}
4750 + alias EnumDisplayDevicesA EnumDisplayDevices;
4751 +}
4752 +
4760 4753
4761 -extern(Windows) export BOOL DrawStateA(
4762 - HDC,
4763 - HBRUSH,
4764 - DRAWSTATEPROC,
4765 - LPARAM,
4766 - WPARAM,
4767 - int,
4768 - int,
4769 - int,
4770 - int,
4771 - UINT);
4772 -extern(Windows) export BOOL DrawStateW(
4773 - HDC,
4774 - HBRUSH,
4775 - DRAWSTATEPROC,
4776 - LPARAM,
4777 - WPARAM,
4778 - int,
4779 - int,
4780 - int,
4781 - int,
4782 - UINT);
4783 -// #ifdef UNICODE
4784 -alias DrawStateW DrawState;
4785 -// #else
4786 -// #...
4787 -// #endif // !UNICODE
4788 -// #endif /* WINVER >= 0x0400 */
4789 -
4790 -extern(Windows) export LONG TabbedTextOutA(
4791 - HDC hDC,
4792 - int X,
4793 - int Y,
4794 - LPCSTR lpString,
4795 - int nCount,
4796 - int nTabPositions,
4797 - INT *lpnTabStopPositions,
4798 - int nTabOrigin);
4799 -extern(Windows) export LONG TabbedTextOutW(
4800 - HDC hDC,
4801 - int X,
4802 - int Y,
4803 - LPCWSTR lpString,
4804 - int nCount,
4805 - int nTabPositions,
4806 - INT *lpnTabStopPositions,
4807 - int nTabOrigin);
4808 -// #ifdef UNICODE
4809 -alias TabbedTextOutW TabbedTextOut;
4810 -// #else
4811 -// #...
4812 -// #endif // !UNICODE
4813 -
4814 -extern(Windows) export DWORD GetTabbedTextExtentA(
4815 - HDC hDC,
4816 - LPCSTR lpString,
4817 - int nCount,
4818 - int nTabPositions,
4819 - INT *lpnTabStopPositions);
4820 -extern(Windows) export DWORD GetTabbedTextExtentW(
4821 - HDC hDC,
4822 - LPCWSTR lpString,
4823 - int nCount,
4824 - int nTabPositions,
4825 - INT *lpnTabStopPositions);
4826 -// #ifdef UNICODE
4827 -alias GetTabbedTextExtentW GetTabbedTextExtent;
4828 -// #else
4829 -// #...
4830 -// #endif // !UNICODE
4831 -
4832 -extern(Windows) export BOOL UpdateWindow(
4833 - HWND hWnd);
4834 -
4835 -extern(Windows) export HWND SetActiveWindow(
4836 - HWND hWnd);
4837 -
4838 -extern(Windows) export HWND GetForegroundWindow();
4839 -
4840 -// #if(WINVER >= 0x0400)
4841 -extern(Windows) export BOOL PaintDesktop(
4842 - HDC hdc);
4843 -
4844 -// #endif /* WINVER >= 0x0400 */
4845 -
4846 -extern(Windows) export BOOL SetForegroundWindow(
4847 - HWND hWnd);
4848 -
4849 -// #if(_WIN32_WINNT >= 0x0500)
4850 -extern(Windows) export BOOL AllowSetForegroundWindow(
4851 - DWORD dwProcessId);
4852 -
4853 -enum : DWORD { ASFW_ANY = cast(DWORD)-1 }
4854 -
4855 -extern(Windows) export BOOL LockSetForegroundWindow(
4856 - UINT uLockCode);
4857 -
4858 -enum : uint { LSFW_LOCK = 1 }
4859 -enum : uint { LSFW_UNLOCK = 2 }
4860 -
4861 -// #endif /* _WIN32_WINNT >= 0x0500 */
4862 -
4863 -extern(Windows) export HWND WindowFromDC(
4864 - HDC hDC);
4865 -
4866 -extern(Windows) export HDC GetDC(
4867 - HWND hWnd);
4868 -
4869 -extern(Windows) export HDC GetDCEx(
4870 - HWND hWnd,
4871 - HRGN hrgnClip,
4872 - DWORD flags);
4873 -
4874 -enum : uint { DCX_WINDOW = 0x00000001 }
4875 -enum : uint { DCX_CACHE = 0x00000002 }
4876 -enum : uint { DCX_NORESETATTRS = 0x00000004 }
4877 -enum : uint { DCX_CLIPCHILDREN = 0x00000008 }
4878 -enum : uint { DCX_CLIPSIBLINGS = 0x00000010 }
4879 -enum : uint { DCX_PARENTCLIP = 0x00000020 }
4880 -enum : uint { DCX_EXCLUDERGN = 0x00000040 }
4881 -enum : uint { DCX_INTERSECTRGN = 0x00000080 }
4882 -enum : uint { DCX_EXCLUDEUPDATE = 0x00000100 }
4883 -enum : uint { DCX_INTERSECTUPDATE = 0x00000200 }
4884 -enum : uint { DCX_LOCKWINDOWUPDATE = 0x00000400 }
4885 -
4886 -enum : uint { DCX_VALIDATE = 0x00200000 }
4887 -
4888 -extern(Windows) export HDC GetWindowDC(
4889 - HWND hWnd);
4890 -
4891 -extern(Windows) export int ReleaseDC(
4892 - HWND hWnd,
4893 - HDC hDC);
4894 -
4895 -extern(Windows) export HDC BeginPaint(
4896 - HWND hWnd,
4897 - LPPAINTSTRUCT lpPaint);
4898 -
4899 -extern(Windows) export BOOL EndPaint(
4900 - HWND hWnd,
4901 - PAINTSTRUCT *lpPaint);
4902 -
4903 -extern(Windows) export BOOL GetUpdateRect(
4904 - HWND hWnd,
4905 - LPRECT lpRect,
4906 - BOOL bErase);
4907 -
4908 -extern(Windows) export int GetUpdateRgn(
4909 - HWND hWnd,
4910 - HRGN hRgn,
4911 - BOOL bErase);
4912 -
4913 -extern(Windows) export int SetWindowRgn(
4914 - HWND hWnd,
4915 - HRGN hRgn,
4916 - BOOL bRedraw);
4917 -
4918 -extern(Windows) export int GetWindowRgn(
4919 - HWND hWnd,
4920 - HRGN hRgn);
4921 -
4922 -// #if(_WIN32_WINNT >= 0x0501)
4923 -
4924 -extern(Windows) export int GetWindowRgnBox(
4925 - HWND hWnd,
4926 - LPRECT lprc);
4927 -
4928 -// #endif /* _WIN32_WINNT >= 0x0501 */
4929 -
4930 -extern(Windows) export int ExcludeUpdateRgn(
4931 - HDC hDC,
4932 - HWND hWnd);
4933 -
4934 -extern(Windows) export BOOL InvalidateRect(
4935 - HWND hWnd,
4936 - RECT *lpRect,
4937 - BOOL bErase);
4938 -
4939 -extern(Windows) export BOOL ValidateRect(
4940 - HWND hWnd,
4941 - RECT *lpRect);
4942 -
4943 -extern(Windows) export BOOL InvalidateRgn(
4944 - HWND hWnd,
4945 - HRGN hRgn,
4946 - BOOL bErase);
4947 -
4948 -extern(Windows) export BOOL ValidateRgn(
4949 - HWND hWnd,
4950 - HRGN hRgn);
4951 -
4952 -extern(Windows) export BOOL RedrawWindow(
4953 - HWND hWnd,
4954 - RECT *lprcUpdate,
4955 - HRGN hrgnUpdate,
4956 - UINT flags);
4957 -
4958 -enum : uint { RDW_INVALIDATE = 0x0001 }
4959 -enum : uint { RDW_INTERNALPAINT = 0x0002 }
4960 -enum : uint { RDW_ERASE = 0x0004 }
4961 -
4962 -enum : uint { RDW_VALIDATE = 0x0008 }
4963 -enum : uint { RDW_NOINTERNALPAINT = 0x0010 }
4964 -enum : uint { RDW_NOERASE = 0x0020 }
4965 -
4966 -enum : uint { RDW_NOCHILDREN = 0x0040 }
4967 -enum : uint { RDW_ALLCHILDREN = 0x0080 }
4968 -
4969 -enum : uint { RDW_UPDATENOW = 0x0100 }
4970 -enum : uint { RDW_ERASENOW = 0x0200 }
4971 -
4972 -enum : uint { RDW_FRAME = 0x0400 }
4973 -enum : uint { RDW_NOFRAME = 0x0800 }
4974 -
4975 -extern(Windows) export BOOL LockWindowUpdate(
4976 - HWND hWndLock);
4977 -
4978 -extern(Windows) export BOOL ScrollWindow(
4979 - HWND hWnd,
4980 - int XAmount,
4981 - int YAmount,
4982 - RECT *lpRect,
4983 - RECT *lpClipRect);
4984 -
4985 -extern(Windows) export BOOL ScrollDC(
4986 - HDC hDC,
4987 - int dx,
4988 - int dy,
4989 - RECT *lprcScroll,
4990 - RECT *lprcClip,
4991 - HRGN hrgnUpdate,
4992 - LPRECT lprcUpdate);
4993 -
4994 -extern(Windows) export int ScrollWindowEx(
4995 - HWND hWnd,
4996 - int dx,
4997 - int dy,
4998 - RECT *prcScroll,
4999 - RECT *prcClip,
5000 - HRGN hrgnUpdate,
5001 - LPRECT prcUpdate,
5002 - UINT flags);
5003 -
5004 -enum : uint { SW_SCROLLCHILDREN = 0x0001 }
5005 -enum : uint { SW_INVALIDATE = 0x0002 }
5006 -enum : uint { SW_ERASE = 0x0004 }
5007 -// #if(WINVER >= 0x0500)
5008 -enum : uint { SW_SMOOTHSCROLL = 0x0010 }
5009 -// #endif /* WINVER >= 0x0500 */
5010 -
5011 -// #ifndef NOSCROLL
5012 -
5013 -extern(Windows) export int SetScrollPos(
5014 - HWND hWnd,
5015 - int nBar,
5016 - int nPos,
5017 - BOOL bRedraw);
5018 -
5019 -extern(Windows) export int GetScrollPos(
5020 - HWND hWnd,
5021 - int nBar);
5022 -
5023 -extern(Windows) export BOOL SetScrollRange(
5024 - HWND hWnd,
5025 - int nBar,
5026 - int nMinPos,
5027 - int nMaxPos,
5028 - BOOL bRedraw);
5029 -
5030 -extern(Windows) export BOOL GetScrollRange(
5031 - HWND hWnd,
5032 - int nBar,
5033 - LPINT lpMinPos,
5034 - LPINT lpMaxPos);
5035 -
5036 -extern(Windows) export BOOL ShowScrollBar(
5037 - HWND hWnd,
5038 - int wBar,
5039 - BOOL bShow);
5040 -
5041 -extern(Windows) export BOOL EnableScrollBar(
5042 - HWND hWnd,
5043 - UINT wSBflags,
5044 - UINT wArrows);
5045 -
5046 -enum : uint { ESB_ENABLE_BOTH = 0x0000 }
5047 -enum : uint { ESB_DISABLE_BOTH = 0x0003 }
5048 -
5049 -enum : uint { ESB_DISABLE_LEFT = 0x0001 }
5050 -enum : uint { ESB_DISABLE_RIGHT = 0x0002 }
5051 -
5052 -enum : uint { ESB_DISABLE_UP = 0x0001 }
5053 -enum : uint { ESB_DISABLE_DOWN = 0x0002 }
5054 -
5055 -alias ESB_DISABLE_LEFT ESB_DISABLE_LTUP;
5056 -alias ESB_DISABLE_RIGHT ESB_DISABLE_RTDN;
5057 -
5058 -// #endif /* !NOSCROLL */
5059 -
5060 -extern(Windows) export BOOL SetPropA(
5061 - HWND hWnd,
5062 - LPCSTR lpString,
5063 - HANDLE hData);
5064 -extern(Windows) export BOOL SetPropW(
5065 - HWND hWnd,
5066 - LPCWSTR lpString,
5067 - HANDLE hData);
5068 -// #ifdef UNICODE
5069 -alias SetPropW SetProp;
5070 -// #else
5071 -// #...
5072 -// #endif // !UNICODE
5073 -
5074 -extern(Windows) export HANDLE GetPropA(
5075 - HWND hWnd,
5076 - LPCSTR lpString);
5077 -extern(Windows) export HANDLE GetPropW(
5078 - HWND hWnd,
5079 - LPCWSTR lpString);
5080 -// #ifdef UNICODE
5081 -alias GetPropW GetProp;
5082 -// #else
5083 -// #...
5084 -// #endif // !UNICODE
5085 -
5086 -extern(Windows) export HANDLE RemovePropA(
5087 - HWND hWnd,
5088 - LPCSTR lpString);
5089 -extern(Windows) export HANDLE RemovePropW(
5090 - HWND hWnd,
5091 - LPCWSTR lpString);
5092 -// #ifdef UNICODE
5093 -alias RemovePropW RemoveProp;
5094 -// #else
5095 -// #...
5096 -// #endif // !UNICODE
5097 -
5098 -extern(Windows) export int EnumPropsExA(
5099 - HWND hWnd,
5100 - PROPENUMPROCEXA lpEnumFunc,
5101 - LPARAM lParam);
5102 -extern(Windows) export int EnumPropsExW(
5103 - HWND hWnd,
5104 - PROPENUMPROCEXW lpEnumFunc,
5105 - LPARAM lParam);
5106 -// #ifdef UNICODE
5107 -alias EnumPropsExW EnumPropsEx;
5108 -// #else
5109 -// #...
5110 -// #endif // !UNICODE
5111 -
5112 -extern(Windows) export int EnumPropsA(
5113 - HWND hWnd,
5114 - PROPENUMPROCA lpEnumFunc);
5115 -extern(Windows) export int EnumPropsW(
5116 - HWND hWnd,
5117 - PROPENUMPROCW lpEnumFunc);
5118 -// #ifdef UNICODE
5119 -alias EnumPropsW EnumProps;
5120 -// #else
5121 -// #...
5122 -// #endif // !UNICODE
5123 -
5124 -extern(Windows) export BOOL SetWindowTextA(
5125 - HWND hWnd,
5126 - LPCSTR lpString);
5127 -extern(Windows) export BOOL SetWindowTextW(
5128 - HWND hWnd,
5129 - LPCWSTR lpString);
5130 -// #ifdef UNICODE
5131 -alias SetWindowTextW SetWindowText;
5132 -// #else
5133 -// #...
5134 -// #endif // !UNICODE
5135 -
5136 -extern(Windows) export int GetWindowTextA(
5137 - HWND hWnd,
5138 - LPSTR lpString,
5139 - int nMaxCount);
5140 -extern(Windows) export int GetWindowTextW(
5141 - HWND hWnd,
5142 - LPWSTR lpString,
5143 - int nMaxCount);
5144 -// #ifdef UNICODE
5145 -alias GetWindowTextW GetWindowText;
5146 -// #else
5147 -// #...
5148 -// #endif // !UNICODE
5149 -
5150 -extern(Windows) export int GetWindowTextLengthA(
5151 - HWND hWnd);
5152 -extern(Windows) export int GetWindowTextLengthW(
5153 - HWND hWnd);
5154 -// #ifdef UNICODE
5155 -alias GetWindowTextLengthW GetWindowTextLength;
5156 -// #else
5157 -// #...
5158 -// #endif // !UNICODE
5159 -
5160 -extern(Windows) export BOOL GetClientRect(
5161 - HWND hWnd,
5162 - LPRECT lpRect);
5163 -
5164 -extern(Windows) export BOOL GetWindowRect(
5165 - HWND hWnd,
5166 - LPRECT lpRect);
5167 -
5168 -extern(Windows) export BOOL AdjustWindowRect(
5169 - LPRECT lpRect,
5170 - DWORD dwStyle,
5171 - BOOL bMenu);
5172 -
5173 -extern(Windows) export BOOL AdjustWindowRectEx(
5174 - LPRECT lpRect,
5175 - DWORD dwStyle,
5176 - BOOL bMenu,
5177 - DWORD dwExStyle);
5178 -
5179 -// #if(WINVER >= 0x0400)
5180 -enum : uint { HELPINFO_WINDOW = 0x0001 }
5181 -enum : uint { HELPINFO_MENUITEM = 0x0002 }
5182 -struct tagHELPINFO {
5183 - UINT cbSize;
5184 - int iContextType;
5185 - int iCtrlId;
5186 - HANDLE hItemHandle;
5187 - DWORD_PTR dwContextId;
5188 - POINT MousePos;
5189 -}
5190 -alias tagHELPINFO HELPINFO;
5191 -alias tagHELPINFO* LPHELPINFO;
5192 -
5193 -extern(Windows) export BOOL SetWindowContextHelpId(
5194 - HWND,
5195 - DWORD);
5196 -
5197 -extern(Windows) export DWORD GetWindowContextHelpId(
5198 - HWND);
5199 -
5200 -extern(Windows) export BOOL SetMenuContextHelpId(
5201 - HMENU,
5202 - DWORD);
5203 -
5204 -extern(Windows) export DWORD GetMenuContextHelpId(
5205 - HMENU);
5206 -
5207 -// #endif /* WINVER >= 0x0400 */
5208 -
5209 -// #ifndef NOMB
5210 -
5211 -enum : uint { MB_OK = 0x00000000 }
5212 -enum : uint { MB_OKCANCEL = 0x00000001 }
5213 -enum : uint { MB_ABORTRETRYIGNORE = 0x00000002 }
5214 -enum : uint { MB_YESNOCANCEL = 0x00000003 }
5215 -enum : uint { MB_YESNO = 0x00000004 }
5216 -enum : uint { MB_RETRYCANCEL = 0x00000005 }
5217 -// #if(WINVER >= 0x0500)
5218 -enum : uint { MB_CANCELTRYCONTINUE = 0x00000006 }
5219 -// #endif /* WINVER >= 0x0500 */
5220 -
5221 -enum : uint { MB_ICONHAND = 0x00000010 }
5222 -enum : uint { MB_ICONQUESTION = 0x00000020 }
5223 -enum : uint { MB_ICONEXCLAMATION = 0x00000030 }
5224 -enum : uint { MB_ICONASTERISK = 0x00000040 }
5225 -
5226 -// #if(WINVER >= 0x0400)
5227 -enum : uint { MB_USERICON = 0x00000080 }
5228 -alias MB_ICONEXCLAMATION MB_ICONWARNING;
5229 -alias MB_ICONHAND MB_ICONERROR;
5230 -// #endif /* WINVER >= 0x0400 */
5231 -
5232 -alias MB_ICONASTERISK MB_ICONINFORMATION;
5233 -alias MB_ICONHAND MB_ICONSTOP;
5234 -
5235 -enum : uint { MB_DEFBUTTON1 = 0x00000000 }
5236 -enum : uint { MB_DEFBUTTON2 = 0x00000100 }
5237 -enum : uint { MB_DEFBUTTON3 = 0x00000200 }
5238 -// #if(WINVER >= 0x0400)
5239 -enum : uint { MB_DEFBUTTON4 = 0x00000300 }
5240 -// #endif /* WINVER >= 0x0400 */
5241 -
5242 -enum : uint { MB_APPLMODAL = 0x00000000 }
5243 -enum : uint { MB_SYSTEMMODAL = 0x00001000 }
5244 -enum : uint { MB_TASKMODAL = 0x00002000 }
5245 -// #if(WINVER >= 0x0400)
5246 -enum : uint { MB_HELP = 0x00004000 }
5247 -// #endif /* WINVER >= 0x0400 */
5248 -
5249 -enum : uint { MB_NOFOCUS = 0x00008000 }
5250 -enum : uint { MB_SETFOREGROUND = 0x00010000 }
5251 -enum : uint { MB_DEFAULT_DESKTOP_ONLY = 0x00020000 }
5252 -
5253 -// #if(WINVER >= 0x0400)
5254 -enum : uint { MB_TOPMOST = 0x00040000 }
5255 -enum : uint { MB_RIGHT = 0x00080000 }
5256 -enum : uint { MB_RTLREADING = 0x00100000 }
5257 -
5258 -// #endif /* WINVER >= 0x0400 */
5259 -
5260 -// #ifdef _WIN32_WINNT
5261 -// #if (_WIN32_WINNT >= 0x0400)
5262 -enum : uint { MB_SERVICE_NOTIFICATION = 0x00200000 }
5263 -// #else
5264 -// #...
5265 -// #endif
5266 -enum : uint { MB_SERVICE_NOTIFICATION_NT3X = 0x00040000 }
5267 -// #endif
5268 -
5269 -enum : uint { MB_TYPEMASK = 0x0000000F }
5270 -enum : uint { MB_ICONMASK = 0x000000F0 }
5271 -enum : uint { MB_DEFMASK = 0x00000F00 }
5272 -enum : uint { MB_MODEMASK = 0x00003000 }
5273 -enum : uint { MB_MISCMASK = 0x0000C000 }
5274 -
5275 -extern(Windows) export int MessageBoxA(
5276 - HWND hWnd,
5277 - LPCSTR lpText,
5278 - LPCSTR lpCaption,
5279 - UINT uType);
5280 -extern(Windows) export int MessageBoxW(
5281 - HWND hWnd,
5282 - LPCWSTR lpText,
5283 - LPCWSTR lpCaption,
5284 - UINT uType);
5285 -// #ifdef UNICODE
5286 -alias MessageBoxW MessageBox;
5287 -// #else
5288 -// #...
5289 -// #endif // !UNICODE
5290 -
5291 -extern(Windows) export int MessageBoxExA(
5292 - HWND hWnd,
5293 - LPCSTR lpText,
5294 - LPCSTR lpCaption,
5295 - UINT uType,
5296 - WORD wLanguageId);
5297 -extern(Windows) export int MessageBoxExW(
5298 - HWND hWnd,
5299 - LPCWSTR lpText,
5300 - LPCWSTR lpCaption,
5301 - UINT uType,
5302 - WORD wLanguageId);
5303 -// #ifdef UNICODE
5304 -alias MessageBoxExW MessageBoxEx;
5305 -// #else
5306 -// #...
5307 -// #endif // !UNICODE
5308 -
5309 -// #if(WINVER >= 0x0400)
5310 -
5311 -extern(Windows) alias void function(LPHELPINFO lpHelpInfo) MSGBOXCALLBACK;
5312 -
5313 -struct tagMSGBOXPARAMSA {
5314 - UINT cbSize;
5315 - HWND hwndOwner;
5316 - HINSTANCE hInstance;
5317 - LPCSTR lpszText;
5318 - LPCSTR lpszCaption;
5319 - DWORD dwStyle;
5320 - LPCSTR lpszIcon;
5321 - DWORD_PTR dwContextHelpId;
5322 - MSGBOXCALLBACK lpfnMsgBoxCallback;
5323 - DWORD dwLanguageId;
5324 -}
5325 -alias tagMSGBOXPARAMSA MSGBOXPARAMSA;
5326 -alias tagMSGBOXPARAMSA* PMSGBOXPARAMSA;
5327 -alias tagMSGBOXPARAMSA* LPMSGBOXPARAMSA;
5328 -
5329 -struct tagMSGBOXPARAMSW {
5330 - UINT cbSize;
5331 - HWND hwndOwner;
5332 - HINSTANCE hInstance;
5333 - LPCWSTR lpszText;
5334 - LPCWSTR lpszCaption;
5335 - DWORD dwStyle;
5336 - LPCWSTR lpszIcon;
5337 - DWORD_PTR dwContextHelpId;
5338 - MSGBOXCALLBACK lpfnMsgBoxCallback;
5339 - DWORD dwLanguageId;
5340 -}
5341 -alias tagMSGBOXPARAMSW MSGBOXPARAMSW;
5342 -alias tagMSGBOXPARAMSW* PMSGBOXPARAMSW;
5343 -alias tagMSGBOXPARAMSW* LPMSGBOXPARAMSW;
5344 -
5345 -// #ifdef UNICODE
5346 -alias MSGBOXPARAMSW MSGBOXPARAMS;
5347 -alias PMSGBOXPARAMSW PMSGBOXPARAMS;
5348 -alias LPMSGBOXPARAMSW LPMSGBOXPARAMS;
5349 -// #else
5350 -// ...
5351 -// #endif // UNICODE
5352 -
5353 -extern(Windows) export int MessageBoxIndirectA(
5354 - MSGBOXPARAMSA *);
5355 -extern(Windows) export int MessageBoxIndirectW(
5356 - MSGBOXPARAMSW *);
5357 -// #ifdef UNICODE
5358 -alias MessageBoxIndirectW MessageBoxIndirect;
5359 -// #else
5360 -// #...
5361 -// #endif // !UNICODE
5362 -// #endif /* WINVER >= 0x0400 */
5363 -
5364 -extern(Windows) export BOOL MessageBeep(
5365 - UINT uType);
5366 -
5367 -// #endif /* !NOMB */
5368 -
5369 -extern(Windows) export int ShowCursor(
5370 - BOOL bShow);
5371 -
5372 -extern(Windows) export BOOL SetCursorPos(
5373 - int X,
5374 - int Y);
5375 -
5376 -extern(Windows) export HCURSOR SetCursor(
5377 - HCURSOR hCursor);
5378 -
5379 -extern(Windows) export BOOL GetCursorPos(
5380 - LPPOINT lpPoint);
5381 -
5382 -extern(Windows) export BOOL ClipCursor(
5383 - RECT *lpRect);
5384 -
5385 -extern(Windows) export BOOL GetClipCursor(
5386 - LPRECT lpRect);
5387 -
5388 -extern(Windows) export HCURSOR GetCursor();
5389 -
5390 -extern(Windows) export BOOL CreateCaret(
5391 - HWND hWnd,
5392 - HBITMAP hBitmap,
5393 - int nWidth,
5394 - int nHeight);
5395 -
5396 -extern(Windows) export UINT GetCaretBlinkTime();
5397 -
5398 -extern(Windows) export BOOL SetCaretBlinkTime(
5399 - UINT uMSeconds);
5400 -
5401 -extern(Windows) export BOOL DestroyCaret();
5402 -
5403 -extern(Windows) export BOOL HideCaret(
5404 - HWND hWnd);
5405 -
5406 -extern(Windows) export BOOL ShowCaret(
5407 - HWND hWnd);
5408 -
5409 -extern(Windows) export BOOL SetCaretPos(
5410 - int X,
5411 - int Y);
5412 -
5413 -extern(Windows) export BOOL GetCaretPos(
5414 - LPPOINT lpPoint);
5415 -
5416 -extern(Windows) export BOOL ClientToScreen(
5417 - HWND hWnd,
5418 - LPPOINT lpPoint);
5419 -
5420 -extern(Windows) export BOOL ScreenToClient(
5421 - HWND hWnd,
5422 - LPPOINT lpPoint);
5423 -
5424 -extern(Windows) export int MapWindowPoints(
5425 - HWND hWndFrom,
5426 - HWND hWndTo,
5427 - LPPOINT lpPoints,
5428 - UINT cPoints);
5429 -
5430 -extern(Windows) export HWND WindowFromPoint(
5431 - POINT Point);
5432 -
5433 -extern(Windows) export HWND ChildWindowFromPoint(
5434 - HWND hWndParent,
5435 - POINT Point);
5436 -
5437 -// #if(WINVER >= 0x0400)
5438 -enum : uint { CWP_ALL = 0x0000 }
5439 -enum : uint { CWP_SKIPINVISIBLE = 0x0001 }
5440 -enum : uint { CWP_SKIPDISABLED = 0x0002 }
5441 -enum : uint { CWP_SKIPTRANSPARENT = 0x0004 }
5442 -
5443 -extern(Windows) export HWND ChildWindowFromPointEx(HWND, POINT, UINT);
5444 -// #endif /* WINVER >= 0x0400 */
5445 -
5446 -// #ifndef NOCOLOR
5447 -
5448 -enum : uint { CTLCOLOR_MSGBOX = 0 }
5449 -enum : uint { CTLCOLOR_EDIT = 1 }
5450 -enum : uint { CTLCOLOR_LISTBOX = 2 }
5451 -enum : uint { CTLCOLOR_BTN = 3 }
5452 -enum : uint { CTLCOLOR_DLG = 4 }
5453 -enum : uint { CTLCOLOR_SCROLLBAR = 5 }
5454 -enum : uint { CTLCOLOR_STATIC = 6 }
5455 -enum : uint { CTLCOLOR_MAX = 7 }
5456 -
5457 -enum : uint { COLOR_SCROLLBAR = 0 }
5458 -enum : uint { COLOR_BACKGROUND = 1 }
5459 -enum : uint { COLOR_ACTIVECAPTION = 2 }
5460 -enum : uint { COLOR_INACTIVECAPTION = 3 }
5461 -enum : uint { COLOR_MENU = 4 }
5462 -enum : uint { COLOR_WINDOW = 5 }
5463 -enum : uint { COLOR_WINDOWFRAME = 6 }
5464 -enum : uint { COLOR_MENUTEXT = 7 }
5465 -enum : uint { COLOR_WINDOWTEXT = 8 }
5466 -enum : uint { COLOR_CAPTIONTEXT = 9 }
5467 -enum : uint { COLOR_ACTIVEBORDER = 10 }
5468 -enum : uint { COLOR_INACTIVEBORDER = 11 }
5469 -enum : uint { COLOR_APPWORKSPACE = 12 }
5470 -enum : uint { COLOR_HIGHLIGHT = 13 }
5471 -enum : uint { COLOR_HIGHLIGHTTEXT = 14 }
5472 -enum : uint { COLOR_BTNFACE = 15 }
5473 -enum : uint { COLOR_BTNSHADOW = 16 }
5474 -enum : uint { COLOR_GRAYTEXT = 17 }
5475 -enum : uint { COLOR_BTNTEXT = 18 }
5476 -enum : uint { COLOR_INACTIVECAPTIONTEXT = 19 }
5477 -enum : uint { COLOR_BTNHIGHLIGHT = 20 }
5478 -
5479 -// #if(WINVER >= 0x0400)
5480 -enum : uint { COLOR_3DDKSHADOW = 21 }
5481 -enum : uint { COLOR_3DLIGHT = 22 }
5482 -enum : uint { COLOR_INFOTEXT = 23 }
5483 -enum : uint { COLOR_INFOBK = 24 }
5484 -// #endif /* WINVER >= 0x0400 */
5485 -
5486 -// #if(WINVER >= 0x0500)
5487 -enum : uint { COLOR_HOTLIGHT = 26 }
5488 -enum : uint { COLOR_GRADIENTACTIVECAPTION = 27 }
5489 -enum : uint { COLOR_GRADIENTINACTIVECAPTION = 28 }
5490 -// #if(WINVER >= 0x0501)
5491 -enum : uint { COLOR_MENUHILIGHT = 29 }
5492 -enum : uint { COLOR_MENUBAR = 30 }
5493 -// #endif /* WINVER >= 0x0501 */
5494 -// #endif /* WINVER >= 0x0500 */
5495 -
5496 -// #if(WINVER >= 0x0400)
5497 -alias COLOR_BACKGROUND COLOR_DESKTOP;
5498 -alias COLOR_BTNFACE COLOR_3DFACE;
5499 -alias COLOR_BTNSHADOW COLOR_3DSHADOW;
5500 -alias COLOR_BTNHIGHLIGHT COLOR_3DHIGHLIGHT;
5501 -alias COLOR_BTNHIGHLIGHT COLOR_3DHILIGHT;
5502 -alias COLOR_BTNHIGHLIGHT COLOR_BTNHILIGHT;
5503 -// #endif /* WINVER >= 0x0400 */
5504 -
5505 -extern(Windows) export DWORD GetSysColor(
5506 - int nIndex);
5507 -
5508 -// #if(WINVER >= 0x0400)
5509 -extern(Windows) export HBRUSH GetSysColorBrush(
5510 - int nIndex);
5511 -
5512 -// #endif /* WINVER >= 0x0400 */
5513 -
5514 -extern(Windows) export BOOL SetSysColors(
5515 - int cElements,
5516 - INT * lpaElements,
5517 - COLORREF * lpaRgbValues);
5518 -
5519 -// #endif /* !NOCOLOR */
5520 -
5521 -extern(Windows) export BOOL DrawFocusRect(
5522 - HDC hDC,
5523 - RECT * lprc);
5524 -
5525 -extern(Windows) export int FillRect(
5526 - HDC hDC,
5527 - RECT *lprc,
5528 - HBRUSH hbr);
5529 -
5530 -extern(Windows) export int FrameRect(
5531 - HDC hDC,
5532 - RECT *lprc,
5533 - HBRUSH hbr);
5534 -
5535 -extern(Windows) export BOOL InvertRect(
5536 - HDC hDC,
5537 - RECT *lprc);
5538 -
5539 -extern(Windows) export BOOL SetRect(
5540 - LPRECT lprc,
5541 - int xLeft,
5542 - int yTop,
5543 - int xRight,
5544 - int yBottom);
5545 -
5546 -extern(Windows) export BOOL SetRectEmpty(
5547 - LPRECT lprc);
5548 -
5549 -extern(Windows) export BOOL CopyRect(
5550 - LPRECT lprcDst,
5551 - RECT *lprcSrc);
5552 -
5553 -extern(Windows) export BOOL InflateRect(
5554 - LPRECT lprc,
5555 - int dx,
5556 - int dy);
5557 -
5558 -extern(Windows) export BOOL IntersectRect(
5559 - LPRECT lprcDst,
5560 - RECT *lprcSrc1,
5561 - RECT *lprcSrc2);
5562 -
5563 -extern(Windows) export BOOL UnionRect(
5564 - LPRECT lprcDst,
5565 - RECT *lprcSrc1,
5566 - RECT *lprcSrc2);
5567 -
5568 -extern(Windows) export BOOL SubtractRect(
5569 - LPRECT lprcDst,
5570 - RECT *lprcSrc1,
5571 - RECT *lprcSrc2);
5572 -
5573 -extern(Windows) export BOOL OffsetRect(
5574 - LPRECT lprc,
5575 - int dx,
5576 - int dy);
5577 -
5578 -extern(Windows) export BOOL IsRectEmpty(
5579 - RECT *lprc);
5580 -
5581 -extern(Windows) export BOOL EqualRect(
5582 - RECT *lprc1,
5583 - RECT *lprc2);
5584 -
5585 -extern(Windows) export BOOL PtInRect(
5586 - RECT *lprc,
5587 - POINT pt);
5588 -
5589 -// #ifndef NOWINOFFSETS
5590 -
5591 -extern(Windows) export WORD GetWindowWord(
5592 - HWND hWnd,
5593 - int nIndex);
5594 -
5595 -extern(Windows) export WORD SetWindowWord(
5596 - HWND hWnd,
5597 - int nIndex,
5598 - WORD wNewWord);
5599 -
5600 -extern(Windows) export LONG GetWindowLongA(
5601 - HWND hWnd,
5602 - int nIndex);
5603 -extern(Windows) export LONG GetWindowLongW(
5604 - HWND hWnd,
5605 - int nIndex);
5606 -// #ifdef UNICODE
5607 -alias GetWindowLongW GetWindowLong;
5608 -// #else
5609 -// #...
5610 -// #endif // !UNICODE
5611 -
5612 -extern(Windows) export LONG SetWindowLongA(
5613 - HWND hWnd,
5614 - int nIndex,
5615 - LONG dwNewLong);
5616 -extern(Windows) export LONG SetWindowLongW(
5617 - HWND hWnd,
5618 - int nIndex,
5619 - LONG dwNewLong);
5620 -// #ifdef UNICODE
5621 -alias SetWindowLongW SetWindowLong;
5622 -// #else
5623 -// #...
5624 -// #endif // !UNICODE
5625 -
5626 -// #ifdef _WIN64
5627 -
5628 -// ...
5629 -// #ifdef UNICODE
5630 -// #...
5631 -// #else
5632 -// #...
5633 -// #endif // !UNICODE
5634 -
5635 -// ...
5636 -// #ifdef UNICODE
5637 -// #...
5638 -// #else
5639 -// #...
5640 -// #endif // !UNICODE
5641 -
5642 -// #else /* _WIN64 */
5643 -
5644 -alias GetWindowLongA GetWindowLongPtrA;
5645 -alias GetWindowLongW GetWindowLongPtrW;
5646 -// #ifdef UNICODE
5647 -alias GetWindowLongPtrW GetWindowLongPtr;
5648 -// #else
5649 -// #...
5650 -// #endif // !UNICODE
5651 -
5652 -alias SetWindowLongA SetWindowLongPtrA;
5653 -alias SetWindowLongW SetWindowLongPtrW;
5654 -// #ifdef UNICODE
5655 -alias SetWindowLongPtrW SetWindowLongPtr;
5656 -// #else
5657 -// #...
5658 -// #endif // !UNICODE
5659 -
5660 -// #endif /* _WIN64 */
5661 -
5662 -extern(Windows) export WORD GetClassWord(
5663 - HWND hWnd,
5664 - int nIndex);
5665 -
5666 -extern(Windows) export WORD SetClassWord(
5667 - HWND hWnd,
5668 - int nIndex,
5669 - WORD wNewWord);
5670 -
5671 -extern(Windows) export DWORD GetClassLongA(
5672 - HWND hWnd,
5673 - int nIndex);
5674 -extern(Windows) export DWORD GetClassLongW(
5675 - HWND hWnd,
5676 - int nIndex);
5677 -// #ifdef UNICODE
5678 -alias GetClassLongW GetClassLong;
5679 -// #else
5680 -// #...
5681 -// #endif // !UNICODE
5682 -
5683 -extern(Windows) export DWORD SetClassLongA(
5684 - HWND hWnd,
5685 - int nIndex,
5686 - LONG dwNewLong);
5687 -extern(Windows) export DWORD SetClassLongW(
5688 - HWND hWnd,
5689 - int nIndex,
5690 - LONG dwNewLong);
5691 -// #ifdef UNICODE
5692 -alias SetClassLongW SetClassLong;
5693 -// #else
5694 -// #...
5695 -// #endif // !UNICODE
5696 -
5697 -// #ifdef _WIN64
5698 -
5699 -// ...
5700 -// #ifdef UNICODE
5701 -// #...
5702 -// #else
5703 -// #...
5704 -// #endif // !UNICODE
5705 -
5706 -// ...
5707 -// #ifdef UNICODE
5708 -// #...
5709 -// #else
5710 -// #...
5711 -// #endif // !UNICODE
5712 -
5713 -// #else /* _WIN64 */
5714 -
5715 -alias GetClassLongA GetClassLongPtrA;
5716 -alias GetClassLongW GetClassLongPtrW;
5717 -// #ifdef UNICODE
5718 -alias GetClassLongPtrW GetClassLongPtr;
5719 -// #else
5720 -// #...
5721 -// #endif // !UNICODE
5722 -
5723 -alias SetClassLongA SetClassLongPtrA;
5724 -alias SetClassLongW SetClassLongPtrW;
5725 -// #ifdef UNICODE
5726 -alias SetClassLongPtrW SetClassLongPtr;
5727 -// #else
5728 -// #...
5729 -// #endif // !UNICODE
5730 -
5731 -// #endif /* _WIN64 */
5732 -
5733 -// #endif /* !NOWINOFFSETS */
5734 -
5735 -// #if(WINVER >= 0x0500)
5736 -extern(Windows) export BOOL GetProcessDefaultLayout(
5737 - DWORD *pdwDefaultLayout);
5738 -
5739 -extern(Windows) export BOOL SetProcessDefaultLayout(
5740 - DWORD dwDefaultLayout);
5741 -// #endif /* WINVER >= 0x0500 */
5742 -
5743 -extern(Windows) export HWND GetDesktopWindow();
5744 -
5745 -extern(Windows) export HWND GetParent(
5746 - HWND hWnd);
5747 -
5748 -extern(Windows) export HWND SetParent(
5749 - HWND hWndChild,
5750 - HWND hWndNewParent);
5751 -
5752 -extern(Windows) export BOOL EnumChildWindows(
5753 - HWND hWndParent,
5754 - WNDENUMPROC lpEnumFunc,
5755 - LPARAM lParam);
5756 -
5757 -extern(Windows) export HWND FindWindowA(
5758 - LPCSTR lpClassName,
5759 - LPCSTR lpWindowName);
5760 -extern(Windows) export HWND FindWindowW(
5761 - LPCWSTR lpClassName,
5762 - LPCWSTR lpWindowName);
5763 -// #ifdef UNICODE
5764 -alias FindWindowW FindWindow;
5765 -// #else
5766 -// #...
5767 -// #endif // !UNICODE
5768 -
5769 -// #if(WINVER >= 0x0400)
5770 -extern(Windows) export HWND FindWindowExA(HWND, HWND, LPCSTR, LPCSTR);
5771 -extern(Windows) export HWND FindWindowExW(HWND, HWND, LPCWSTR, LPCWSTR);
5772 -// #ifdef UNICODE
5773 -alias FindWindowExW FindWindowEx;
5774 -// #else
5775 -// #...
5776 -// #endif // !UNICODE
5777 -
5778 -// #endif /* WINVER >= 0x0400 */
5779 -
5780 -extern(Windows) export BOOL EnumWindows(
5781 - WNDENUMPROC lpEnumFunc,
5782 - LPARAM lParam);
5783 -
5784 -extern(Windows) export BOOL EnumThreadWindows(
5785 - DWORD dwThreadId,
5786 - WNDENUMPROC lpfn,
5787 - LPARAM lParam);
5788 -
5789 -// #define EnumTaskWindows(hTask, lpfn, lParam) EnumThreadWindows(HandleToUlong(hTask), lpfn, lParam)
5790 -
5791 -extern(Windows) export int GetClassNameA(
5792 - HWND hWnd,
5793 - LPSTR lpClassName,
5794 - int nMaxCount);
5795 -extern(Windows) export int GetClassNameW(
5796 - HWND hWnd,
5797 - LPWSTR lpClassName,
5798 - int nMaxCount);
5799 -// #ifdef UNICODE
5800 -alias GetClassNameW GetClassName;
5801 -// #else
5802 -// #...
5803 -// #endif // !UNICODE
5804 -
5805 -extern(Windows) export HWND GetTopWindow(
5806 - HWND hWnd);
5807 -
5808 -// #define GetNextWindow(hWnd, wCmd) GetWindow(hWnd, wCmd)
5809 -// #define GetSysModalWindow() (NULL)
5810 -// #define SetSysModalWindow(hWnd) (NULL)
5811 -
5812 -extern(Windows) export DWORD GetWindowThreadProcessId(
5813 - HWND hWnd,
5814 - LPDWORD lpdwProcessId);
5815 -
5816 -// #if(_WIN32_WINNT >= 0x0501)
5817 -extern(Windows) export BOOL IsGUIThread(
5818 - BOOL bConvert);
5819 -
5820 -// #endif /* _WIN32_WINNT >= 0x0501 */
5821 -
5822 -// #define GetWindowTask(hWnd) ((HANDLE)(DWORD_PTR)GetWindowThreadProcessId(hWnd, NULL))
5823 -
5824 -extern(Windows) export HWND GetLastActivePopup(
5825 - HWND hWnd);
5826 -
5827 -enum : uint { GW_HWNDFIRST = 0 }
5828 -enum : uint { GW_HWNDLAST = 1 }
5829 -enum : uint { GW_HWNDNEXT = 2 }
5830 -enum : uint { GW_HWNDPREV = 3 }
5831 -enum : uint { GW_OWNER = 4 }
5832 -enum : uint { GW_CHILD = 5 }
5833 -// #if(WINVER <= 0x0400)
5834 -// #...
5835 -// #else
5836 -enum : uint { GW_ENABLEDPOPUP = 6 }
5837 -enum : uint { GW_MAX = 6 }
5838 -// #endif
5839 -
5840 -extern(Windows) export HWND GetWindow(
5841 - HWND hWnd,
5842 - UINT uCmd);
5843 -
5844 -// #ifndef NOWH
5845 -
5846 -// #ifdef STRICT
5847 -
5848 -extern(Windows) export HHOOK SetWindowsHookA(
5849 - int nFilterType,
5850 - HOOKPROC pfnFilterProc);
5851 -extern(Windows) export HHOOK SetWindowsHookW(
5852 - int nFilterType,
5853 - HOOKPROC pfnFilterProc);
5854 -// #ifdef UNICODE
5855 -alias SetWindowsHookW SetWindowsHook;
5856 -// #else
5857 -// #...
5858 -// #endif // !UNICODE
5859 -
5860 -// #else /* !STRICT */
5861 -
5862 -// ...
5863 -// #ifdef UNICODE
5864 -// #...
5865 -// #else
5866 -// #...
5867 -// #endif // !UNICODE
5868 -
5869 -// #endif /* !STRICT */
5870 -
5871 -extern(Windows) export BOOL UnhookWindowsHook(
5872 - int nCode,
5873 - HOOKPROC pfnFilterProc);
5874 -
5875 -extern(Windows) export HHOOK SetWindowsHookExA(
5876 - int idHook,
5877 - HOOKPROC lpfn,
5878 - HINSTANCE hmod,
5879 - DWORD dwThreadId);
5880 -extern(Windows) export HHOOK SetWindowsHookExW(
5881 - int idHook,
5882 - HOOKPROC lpfn,
5883 - HINSTANCE hmod,
5884 - DWORD dwThreadId);
5885 -// #ifdef UNICODE
5886 -alias SetWindowsHookExW SetWindowsHookEx;
5887 -// #else
5888 -// #...
5889 -// #endif // !UNICODE
5890 -
5891 -extern(Windows) export BOOL UnhookWindowsHookEx(
5892 - HHOOK hhk);
5893 -
5894 -extern(Windows) export LRESULT CallNextHookEx(
5895 - HHOOK hhk,
5896 - int nCode,
5897 - WPARAM wParam,
5898 - LPARAM lParam);
5899 -
5900 -// #ifdef STRICT
5901 -// #define DefHookProc(nCode, wParam, lParam, phhk) CallNextHookEx(*phhk, nCode, wParam, lParam)
5902 -// #else
5903 -// #...
5904 -// ...
5905 -// #endif /* STRICT */
5906 -// #endif /* !NOWH */
5907 -
5908 -// #ifndef NOMENUS
5909 -
5910 -enum : uint { MF_INSERT = 0x00000000 }
5911 -enum : uint { MF_CHANGE = 0x00000080 }
5912 -enum : uint { MF_APPEND = 0x00000100 }
5913 -enum : uint { MF_DELETE = 0x00000200 }
5914 -enum : uint { MF_REMOVE = 0x00001000 }
5915 -
5916 -enum : uint { MF_BYCOMMAND = 0x00000000 }
5917 -enum : uint { MF_BYPOSITION = 0x00000400 }
5918 -
5919 -enum : uint { MF_SEPARATOR = 0x00000800 }
5920 -
5921 -enum : uint { MF_ENABLED = 0x00000000 }
5922 -enum : uint { MF_GRAYED = 0x00000001 }
5923 -enum : uint { MF_DISABLED = 0x00000002 }
5924 -
5925 -enum : uint { MF_UNCHECKED = 0x00000000 }
5926 -enum : uint { MF_CHECKED = 0x00000008 }
5927 -enum : uint { MF_USECHECKBITMAPS = 0x00000200 }
5928 -
5929 -enum : uint { MF_STRING = 0x00000000 }
5930 -enum : uint { MF_BITMAP = 0x00000004 }
5931 -enum : uint { MF_OWNERDRAW = 0x00000100 }
5932 -
5933 -enum : uint { MF_POPUP = 0x00000010 }
5934 -enum : uint { MF_MENUBARBREAK = 0x00000020 }
5935 -enum : uint { MF_MENUBREAK = 0x00000040 }
5936 -
5937 -enum : uint { MF_UNHILITE = 0x00000000 }
5938 -enum : uint { MF_HILITE = 0x00000080 }
5939 -
5940 -// #if(WINVER >= 0x0400)
5941 -enum : uint { MF_DEFAULT = 0x00001000 }
5942 -// #endif /* WINVER >= 0x0400 */
5943 -enum : uint { MF_SYSMENU = 0x00002000 }
5944 -enum : uint { MF_HELP = 0x00004000 }
5945 -// #if(WINVER >= 0x0400)
5946 -enum : uint { MF_RIGHTJUSTIFY = 0x00004000 }
5947 -// #endif /* WINVER >= 0x0400 */
5948 -
5949 -enum : uint { MF_MOUSESELECT = 0x00008000 }
5950 -// #if(WINVER >= 0x0400)
5951 -enum : uint { MF_END = 0x00000080 }
5952 -// #endif /* WINVER >= 0x0400 */
5953 -
5954 -// #if(WINVER >= 0x0400)
5955 -alias MF_STRING MFT_STRING;
5956 -alias MF_BITMAP MFT_BITMAP;
5957 -alias MF_MENUBARBREAK MFT_MENUBARBREAK;
5958 -alias MF_MENUBREAK MFT_MENUBREAK;
5959 -alias MF_OWNERDRAW MFT_OWNERDRAW;
5960 -enum : uint { MFT_RADIOCHECK = 0x00000200 }
5961 -alias MF_SEPARATOR MFT_SEPARATOR;
5962 -enum : uint { MFT_RIGHTORDER = 0x00002000 }
5963 -alias MF_RIGHTJUSTIFY MFT_RIGHTJUSTIFY;
5964 -
5965 -enum : uint { MFS_GRAYED = 0x00000003 }
5966 -alias MFS_GRAYED MFS_DISABLED;
5967 -alias MF_CHECKED MFS_CHECKED;
5968 -alias MF_HILITE MFS_HILITE;
5969 -alias MF_ENABLED MFS_ENABLED;
5970 -alias MF_UNCHECKED MFS_UNCHECKED;
5971 -alias MF_UNHILITE MFS_UNHILITE;
5972 -alias MF_DEFAULT MFS_DEFAULT;
5973 -// #endif /* WINVER >= 0x0400 */
5974 -
5975 -// #if(WINVER >= 0x0400)
5976 -
5977 -extern(Windows) export BOOL CheckMenuRadioItem(
5978 - HMENU,
5979 - UINT,
5980 - UINT,
5981 - UINT,
5982 - UINT);
5983 -// #endif /* WINVER >= 0x0400 */
5984 -
5985 -struct _4 {
5986 - WORD versionNumber;
5987 - WORD offset;
5988 -}
5989 -alias _4 MENUITEMTEMPLATEHEADER;
5990 -alias _4* PMENUITEMTEMPLATEHEADER;
5991 -
5992 -struct _5 {
5993 - WORD mtOption;
5994 - WORD mtID;
5995 - WCHAR mtString[1];
5996 -}
5997 -alias _5 MENUITEMTEMPLATE;
5998 -alias _5* PMENUITEMTEMPLATE;
5999 -
6000 -// skip #define MF_END 0x00000080L
6001 -
6002 -// #endif /* !NOMENUS */
6003 -
6004 -// #ifndef NOSYSCOMMANDS
6005 -
6006 -enum : uint { SC_SIZE = 0xF000 }
6007 -enum : uint { SC_MOVE = 0xF010 }
6008 -enum : uint { SC_MINIMIZE = 0xF020 }
6009 -enum : uint { SC_MAXIMIZE = 0xF030 }
6010 -enum : uint { SC_NEXTWINDOW = 0xF040 }
6011 -enum : uint { SC_PREVWINDOW = 0xF050 }
6012 -enum : uint { SC_CLOSE = 0xF060 }
6013 -enum : uint { SC_VSCROLL = 0xF070 }
6014 -enum : uint { SC_HSCROLL = 0xF080 }
6015 -enum : uint { SC_MOUSEMENU = 0xF090 }
6016 -enum : uint { SC_KEYMENU = 0xF100 }
6017 -enum : uint { SC_ARRANGE = 0xF110 }
6018 -enum : uint { SC_RESTORE = 0xF120 }
6019 -enum : uint { SC_TASKLIST = 0xF130 }
6020 -enum : uint { SC_SCREENSAVE = 0xF140 }
6021 -enum : uint { SC_HOTKEY = 0xF150 }
6022 -// #if(WINVER >= 0x0400)
6023 -enum : uint { SC_DEFAULT = 0xF160 }
6024 -enum : uint { SC_MONITORPOWER = 0xF170 }
6025 -enum : uint { SC_CONTEXTHELP = 0xF180 }
6026 -enum : uint { SC_SEPARATOR = 0xF00F }
6027 -// #endif /* WINVER >= 0x0400 */
6028 -
6029 -alias SC_MINIMIZE SC_ICON;
6030 -alias SC_MAXIMIZE SC_ZOOM;
6031 -
6032 -// #endif /* !NOSYSCOMMANDS */
6033 -
6034 -extern(Windows) export HBITMAP LoadBitmapA(
6035 - HINSTANCE hInstance,
6036 - LPCSTR lpBitmapName);
6037 -extern(Windows) export HBITMAP LoadBitmapW(
6038 - HINSTANCE hInstance,
6039 - LPCWSTR lpBitmapName);
6040 -// #ifdef UNICODE
6041 -alias LoadBitmapW LoadBitmap;
6042 -// #else
6043 -// #...
6044 -// #endif // !UNICODE
6045 -
6046 -extern(Windows) export HCURSOR LoadCursorA(
6047 - HINSTANCE hInstance,
6048 - LPCSTR lpCursorName);
6049 -extern(Windows) export HCURSOR LoadCursorW(
6050 - HINSTANCE hInstance,
6051 - LPCWSTR lpCursorName);
6052 -// #ifdef UNICODE
6053 -alias LoadCursorW LoadCursor;
6054 -// #else
6055 -// #...
6056 -// #endif // !UNICODE
6057 -
6058 -extern(Windows) export HCURSOR LoadCursorFromFileA(
6059 - LPCSTR lpFileName);
6060 -extern(Windows) export HCURSOR LoadCursorFromFileW(
6061 - LPCWSTR lpFileName);
6062 -// #ifdef UNICODE
6063 -alias LoadCursorFromFileW LoadCursorFromFile;
6064 -// #else
6065 -// #...
6066 -// #endif // !UNICODE
6067 -
6068 -extern(Windows) export HCURSOR CreateCursor(
6069 - HINSTANCE hInst,
6070 - int xHotSpot,
6071 - int yHotSpot,
6072 - int nWidth,
6073 - int nHeight,
6074 - VOID *pvANDPlane,
6075 - VOID *pvXORPlane);
6076 -
6077 -extern(Windows) export BOOL DestroyCursor(
6078 - HCURSOR hCursor);
6079 -
6080 -// #ifndef _MAC
6081 -alias CopyIcon CopyCursor;
6082 -// #else
6083 -// ...
6084 -// #endif
6085 -
6086 -const LPTSTR IDC_ARROW = cast(LPTSTR)(32512);
6087 -const LPTSTR IDC_IBEAM = cast(LPTSTR)(32513);
6088 -const LPTSTR IDC_WAIT = cast(LPTSTR)(32514);
6089 -const LPTSTR IDC_CROSS = cast(LPTSTR)(32515);
6090 -const LPTSTR IDC_UPARROW = cast(LPTSTR)(32516);
6091 -const LPTSTR IDC_SIZE = cast(LPTSTR)(32640);
6092 -const LPTSTR IDC_ICON = cast(LPTSTR)(32641);
6093 -const LPTSTR IDC_SIZENWSE = cast(LPTSTR)(32642);
6094 -const LPTSTR IDC_SIZENESW = cast(LPTSTR)(32643);
6095 -const LPTSTR IDC_SIZEWE = cast(LPTSTR)(32644);
6096 -const LPTSTR IDC_SIZENS = cast(LPTSTR)(32645);
6097 -const LPTSTR IDC_SIZEALL = cast(LPTSTR)(32646);
6098 -const LPTSTR IDC_NO = cast(LPTSTR)(32648);
6099 -// #if(WINVER >= 0x0500)
6100 -const LPTSTR IDC_HAND = cast(LPTSTR)(32649);
6101 -// #endif /* WINVER >= 0x0500 */
6102 -const LPTSTR IDC_APPSTARTING = cast(LPTSTR)(32650);
6103 -// #if(WINVER >= 0x0400)
6104 -const LPTSTR IDC_HELP = cast(LPTSTR)(32651);
6105 -// #endif /* WINVER >= 0x0400 */
6106 -
6107 -extern(Windows) export BOOL SetSystemCursor(
6108 - HCURSOR hcur,
6109 - DWORD id);
6110 -
6111 -struct _ICONINFO {
6112 - BOOL fIcon;
6113 - DWORD xHotspot;
6114 - DWORD yHotspot;
6115 - HBITMAP hbmMask;
6116 - HBITMAP hbmColor;
6117 -}
6118 -alias _ICONINFO ICONINFO;
6119 -
6120 -alias ICONINFO* PICONINFO;
6121 -
6122 -extern(Windows) export HICON LoadIconA(
6123 - HINSTANCE hInstance,
6124 - LPCSTR lpIconName);
6125 -extern(Windows) export HICON LoadIconW(
6126 - HINSTANCE hInstance,
6127 - LPCWSTR lpIconName);
6128 -// #ifdef UNICODE
6129 -alias LoadIconW LoadIcon;
6130 -// #else
6131 -// #...
6132 -// #endif // !UNICODE
6133 -
6134 -extern(Windows) export HICON CreateIcon(
6135 - HINSTANCE hInstance,
6136 - int nWidth,
6137 - int nHeight,
6138 - BYTE cPlanes,
6139 - BYTE cBitsPixel,
6140 - BYTE *lpbANDbits,
6141 - BYTE *lpbXORbits);
6142 -
6143 -extern(Windows) export BOOL DestroyIcon(
6144 - HICON hIcon);
6145 -
6146 -extern(Windows) export int LookupIconIdFromDirectory(
6147 - PBYTE presbits,
6148 - BOOL fIcon);
6149 -
6150 -// #if(WINVER >= 0x0400)
6151 -extern(Windows) export int LookupIconIdFromDirectoryEx(
6152 - PBYTE presbits,
6153 - BOOL fIcon,
6154 - int cxDesired,
6155 - int cyDesired,
6156 - UINT Flags);
6157 -// #endif /* WINVER >= 0x0400 */
6158 -
6159 -extern(Windows) export HICON CreateIconFromResource(
6160 - PBYTE presbits,
6161 - DWORD dwResSize,
6162 - BOOL fIcon,
6163 - DWORD dwVer);
6164 -
6165 -// #if(WINVER >= 0x0400)
6166 -extern(Windows) export HICON CreateIconFromResourceEx(
6167 - PBYTE presbits,
6168 - DWORD dwResSize,
6169 - BOOL fIcon,
6170 - DWORD dwVer,
6171 - int cxDesired,
6172 - int cyDesired,
6173 - UINT Flags);
6174 -
6175 -struct tagCURSORSHAPE {
6176 - int xHotSpot;
6177 - int yHotSpot;
6178 - int cx;
6179 - int cy;
6180 - int cbWidth;
6181 - BYTE Planes;
6182 - BYTE BitsPixel;
6183 -}
6184 -alias tagCURSORSHAPE CURSORSHAPE;
6185 -alias tagCURSORSHAPE* LPCURSORSHAPE;
6186 -
6187 -// #endif /* WINVER >= 0x0400 */
6188 -
6189 -enum : uint { IMAGE_BITMAP = 0 }
6190 -enum : uint { IMAGE_ICON = 1 }
6191 -enum : uint { IMAGE_CURSOR = 2 }
6192 -// #if(WINVER >= 0x0400)
6193 -enum : uint { IMAGE_ENHMETAFILE = 3 }
6194 -
6195 -enum : uint { LR_DEFAULTCOLOR = 0x0000 }
6196 -enum : uint { LR_MONOCHROME = 0x0001 }
6197 -enum : uint { LR_COLOR = 0x0002 }
6198 -enum : uint { LR_COPYRETURNORG = 0x0004 }
6199 -enum : uint { LR_COPYDELETEORG = 0x0008 }
6200 -enum : uint { LR_LOADFROMFILE = 0x0010 }
6201 -enum : uint { LR_LOADTRANSPARENT = 0x0020 }
6202 -enum : uint { LR_DEFAULTSIZE = 0x0040 }
6203 -enum : uint { LR_VGACOLOR = 0x0080 }
6204 -enum : uint { LR_LOADMAP3DCOLORS = 0x1000 }
6205 -enum : uint { LR_CREATEDIBSECTION = 0x2000 }
6206 -enum : uint { LR_COPYFROMRESOURCE = 0x4000 }
6207 -enum : uint { LR_SHARED = 0x8000 }
6208 -
6209 -extern(Windows) export HANDLE LoadImageA(
6210 - HINSTANCE,
6211 - LPCSTR,
6212 - UINT,
6213 - int,
6214 - int,
6215 - UINT);
6216 -extern(Windows) export HANDLE LoadImageW(
6217 - HINSTANCE,
6218 - LPCWSTR,
6219 - UINT,
6220 - int,
6221 - int,
6222 - UINT);
6223 -// #ifdef UNICODE
6224 -alias LoadImageW LoadImage;
6225 -// #else
6226 -// #...
6227 -// #endif // !UNICODE
6228 -
6229 -extern(Windows) export HANDLE CopyImage(
6230 - HANDLE,
6231 - UINT,
6232 - int,
6233 - int,
6234 - UINT);
6235 -
6236 -enum : uint { DI_MASK = 0x0001 }
6237 -enum : uint { DI_IMAGE = 0x0002 }
6238 -enum : uint { DI_NORMAL = 0x0003 }
6239 -enum : uint { DI_COMPAT = 0x0004 }
6240 -enum : uint { DI_DEFAULTSIZE = 0x0008 }
6241 -// #if(_WIN32_WINNT >= 0x0501)
6242 -enum : uint { DI_NOMIRROR = 0x0010 }
6243 -// #endif /* _WIN32_WINNT >= 0x0501 */
6244 -
6245 -extern(Windows) export BOOL DrawIconEx(HDC hdc, int xLeft, int yTop,
6246 - HICON hIcon, int cxWidth, int cyWidth,
6247 - UINT istepIfAniCur, HBRUSH hbrFlickerFreeDraw, UINT diFlags);
6248 -// #endif /* WINVER >= 0x0400 */
6249 -
6250 -extern(Windows) export HICON CreateIconIndirect(
6251 - PICONINFO piconinfo);
6252 -
6253 -extern(Windows) export HICON CopyIcon(
6254 - HICON hIcon);
6255 -
6256 -extern(Windows) export BOOL GetIconInfo(
6257 - HICON hIcon,
6258 - PICONINFO piconinfo);
6259 -
6260 -// #if(WINVER >= 0x0400)
6261 -enum : uint { RES_ICON = 1 }
6262 -enum : uint { RES_CURSOR = 2 }
6263 -// #endif /* WINVER >= 0x0400 */
6264 -
6265 -// #ifdef OEMRESOURCE
6266 -
6267 -// #...
6268 -// #...
6269 -// #...
6270 -// #...
6271 -// #...
6272 -// #...
6273 -// #...
6274 -// #...
6275 -// #...
6276 -// #...
6277 -// #...
6278 -// #...
6279 -// #...
6280 -// #...
6281 -// #...
6282 -// #...
6283 -// #...
6284 -// #...
6285 -// #...
6286 -// #...
6287 -// #...
6288 -
6289 -// #...
6290 -// #...
6291 -// #...
6292 -// #...
6293 -// #...
6294 -// #...
6295 -// #...
6296 -// #...
6297 -// #...
6298 -// #...
6299 -// #...
6300 -// #...
6301 -// #...
6302 -
6303 -// #...
6304 -// #...
6305 -// #...
6306 -// #...
6307 -// #...
6308 -// #...
6309 -// #...
6310 -// #...
6311 -// #...
6312 -// #...
6313 -// #...
6314 -// #...
6315 -// #...
6316 -// #...
6317 -// #if(WINVER >= 0x0500)
6318 -// #...
6319 -// #endif /* WINVER >= 0x0500 */
6320 -// #if(WINVER >= 0x0400)
6321 -// #...
6322 -// #endif /* WINVER >= 0x0400 */
6323 -
6324 -// #...
6325 -// #...
6326 -// #...
6327 -// #...
6328 -// #...
6329 -// #if(WINVER >= 0x0400)
6330 -// #...
6331 -// #...
6332 -// #...
6333 -// #...
6334 -// #endif /* WINVER >= 0x0400 */
6335 -
6336 -// #endif /* OEMRESOURCE */
6337 -
6338 -enum : uint { ORD_LANGDRIVER = 1 }
6339 -
6340 -// #ifndef NOICONS
6341 -
6342 -// #ifdef RC_INVOKED
6343 -// #...
6344 -// #...
6345 -// #...
6346 -// #...
6347 -// #...
6348 -// #if(WINVER >= 0x0400)
6349 -// #...
6350 -// #endif /* WINVER >= 0x0400 */
6351 -// #else
6352 -const LPTSTR IDI_APPLICATION = cast(LPTSTR)(32512);
6353 -const LPTSTR IDI_HAND = cast(LPTSTR)(32513);
6354 -const LPTSTR IDI_QUESTION = cast(LPTSTR)(32514);
6355 -const LPTSTR IDI_EXCLAMATION = cast(LPTSTR)(32515);
6356 -const LPTSTR IDI_ASTERISK = cast(LPTSTR)(32516);
6357 -// #if(WINVER >= 0x0400)
6358 -const LPTSTR IDI_WINLOGO = cast(LPTSTR)(32517);
6359 -// #endif /* WINVER >= 0x0400 */
6360 -// #endif /* RC_INVOKED */
6361 -
6362 -// #if(WINVER >= 0x0400)
6363 -alias IDI_EXCLAMATION IDI_WARNING;
6364 -alias IDI_HAND IDI_ERROR;
6365 -alias IDI_ASTERISK IDI_INFORMATION;
6366 -// #endif /* WINVER >= 0x0400 */
6367 -
6368 -// #endif /* !NOICONS */
6369 -
6370 -extern(Windows) export int LoadStringA(
6371 - HINSTANCE hInstance,
6372 - UINT uID,
6373 - LPSTR lpBuffer,
6374 - int nBufferMax);
6375 -extern(Windows) export int LoadStringW(
6376 - HINSTANCE hInstance,
6377 - UINT uID,
6378 - LPWSTR lpBuffer,
6379 - int nBufferMax);
6380 -// #ifdef UNICODE
6381 -alias LoadStringW LoadString;
6382 -// #else
6383 -// #...
6384 -// #endif // !UNICODE
6385 -
6386 -enum : uint { IDOK = 1 }
6387 -enum : uint { IDCANCEL = 2 }
6388 -enum : uint { IDABORT = 3 }
6389 -enum : uint { IDRETRY = 4 }
6390 -enum : uint { IDIGNORE = 5 }
6391 -enum : uint { IDYES = 6 }
6392 -enum : uint { IDNO = 7 }
6393 -// #if(WINVER >= 0x0400)
6394 -enum : uint { IDCLOSE = 8 }
6395 -enum : uint { IDHELP = 9 }
6396 -// #endif /* WINVER >= 0x0400 */
6397 -
6398 -// #if(WINVER >= 0x0500)
6399 -enum : uint { IDTRYAGAIN = 10 }
6400 -enum : uint { IDCONTINUE = 11 }
6401 -// #endif /* WINVER >= 0x0500 */
6402 -
6403 -// #if(WINVER >= 0x0501)
6404 -// #ifndef IDTIMEOUT
6405 -enum : uint { IDTIMEOUT = 32000 }
6406 -// #endif
6407 -// #endif /* WINVER >= 0x0501 */
6408 -
6409 -// #ifndef NOCTLMGR
6410 -
6411 -// #ifndef NOWINSTYLES
6412 -
6413 -enum : uint { ES_LEFT = 0x0000 }
6414 -enum : uint { ES_CENTER = 0x0001 }
6415 -enum : uint { ES_RIGHT = 0x0002 }
6416 -enum : uint { ES_MULTILINE = 0x0004 }
6417 -enum : uint { ES_UPPERCASE = 0x0008 }
6418 -enum : uint { ES_LOWERCASE = 0x0010 }
6419 -enum : uint { ES_PASSWORD = 0x0020 }
6420 -enum : uint { ES_AUTOVSCROLL = 0x0040 }
6421 -enum : uint { ES_AUTOHSCROLL = 0x0080 }
6422 -enum : uint { ES_NOHIDESEL = 0x0100 }
6423 -enum : uint { ES_OEMCONVERT = 0x0400 }
6424 -enum : uint { ES_READONLY = 0x0800 }
6425 -enum : uint { ES_WANTRETURN = 0x1000 }
6426 -// #if(WINVER >= 0x0400)
6427 -enum : uint { ES_NUMBER = 0x2000 }
6428 -// #endif /* WINVER >= 0x0400 */
6429 -
6430 -// #endif /* !NOWINSTYLES */
6431 -
6432 -enum : uint { EN_SETFOCUS = 0x0100 }
6433 -enum : uint { EN_KILLFOCUS = 0x0200 }
6434 -enum : uint { EN_CHANGE = 0x0300 }
6435 -enum : uint { EN_UPDATE = 0x0400 }
6436 -enum : uint { EN_ERRSPACE = 0x0500 }
6437 -enum : uint { EN_MAXTEXT = 0x0501 }
6438 -enum : uint { EN_HSCROLL = 0x0601 }
6439 -enum : uint { EN_VSCROLL = 0x0602 }
6440 -
6441 -// #if(_WIN32_WINNT >= 0x0500)
6442 -enum : uint { EN_ALIGN_LTR_EC = 0x0700 }
6443 -enum : uint { EN_ALIGN_RTL_EC = 0x0701 }
6444 -// #endif /* _WIN32_WINNT >= 0x0500 */
6445 -
6446 -// #if(WINVER >= 0x0400)
6447 -
6448 -enum : uint { EC_LEFTMARGIN = 0x0001 }
6449 -enum : uint { EC_RIGHTMARGIN = 0x0002 }
6450 -enum : uint { EC_USEFONTINFO = 0xffff }
6451 -// #endif /* WINVER >= 0x0400 */
6452 -
6453 -// #if(WINVER >= 0x0500)
6454 -
6455 -enum : uint { EMSIS_COMPOSITIONSTRING = 0x0001 }
6456 -
6457 -enum : uint { EIMES_GETCOMPSTRATONCE = 0x0001 }
6458 -enum : uint { EIMES_CANCELCOMPSTRINFOCUS = 0x0002 }
6459 -enum : uint { EIMES_COMPLETECOMPSTRKILLFOCUS = 0x0004 }
6460 -// #endif /* WINVER >= 0x0500 */
6461 -
6462 -// #ifndef NOWINMESSAGES
6463 -
6464 -enum : uint { EM_GETSEL = 0x00B0 }
6465 -enum : uint { EM_SETSEL = 0x00B1 }
6466 -enum : uint { EM_GETRECT = 0x00B2 }
6467 -enum : uint { EM_SETRECT = 0x00B3 }
6468 -enum : uint { EM_SETRECTNP = 0x00B4 }
6469 -enum : uint { EM_SCROLL = 0x00B5 }
6470 -enum : uint { EM_LINESCROLL = 0x00B6 }
6471 -enum : uint { EM_SCROLLCARET = 0x00B7 }
6472 -enum : uint { EM_GETMODIFY = 0x00B8 }
6473 -enum : uint { EM_SETMODIFY = 0x00B9 }
6474 -enum : uint { EM_GETLINECOUNT = 0x00BA }
6475 -enum : uint { EM_LINEINDEX = 0x00BB }
6476 -enum : uint { EM_SETHANDLE = 0x00BC }
6477 -enum : uint { EM_GETHANDLE = 0x00BD }
6478 -enum : uint { EM_GETTHUMB = 0x00BE }
6479 -enum : uint { EM_LINELENGTH = 0x00C1 }
6480 -enum : uint { EM_REPLACESEL = 0x00C2 }
6481 -enum : uint { EM_GETLINE = 0x00C4 }
6482 -enum : uint { EM_LIMITTEXT = 0x00C5 }
6483 -enum : uint { EM_CANUNDO = 0x00C6 }
6484 -enum : uint { EM_UNDO = 0x00C7 }
6485 -enum : uint { EM_FMTLINES = 0x00C8 }
6486 -enum : uint { EM_LINEFROMCHAR = 0x00C9 }
6487 -enum : uint { EM_SETTABSTOPS = 0x00CB }
6488 -enum : uint { EM_SETPASSWORDCHAR = 0x00CC }
6489 -enum : uint { EM_EMPTYUNDOBUFFER = 0x00CD }
6490 -enum : uint { EM_GETFIRSTVISIBLELINE = 0x00CE }
6491 -enum : uint { EM_SETREADONLY = 0x00CF }
6492 -enum : uint { EM_SETWORDBREAKPROC = 0x00D0 }
6493 -enum : uint { EM_GETWORDBREAKPROC = 0x00D1 }
6494 -enum : uint { EM_GETPASSWORDCHAR = 0x00D2 }
6495 -// #if(WINVER >= 0x0400)
6496 -enum : uint { EM_SETMARGINS = 0x00D3 }
6497 -enum : uint { EM_GETMARGINS = 0x00D4 }
6498 -alias EM_LIMITTEXT EM_SETLIMITTEXT;
6499 -enum : uint { EM_GETLIMITTEXT = 0x00D5 }
6500 -enum : uint { EM_POSFROMCHAR = 0x00D6 }
6501 -enum : uint { EM_CHARFROMPOS = 0x00D7 }
6502 -// #endif /* WINVER >= 0x0400 */
6503 -
6504 -// #if(WINVER >= 0x0500)
6505 -enum : uint { EM_SETIMESTATUS = 0x00D8 }
6506 -enum : uint { EM_GETIMESTATUS = 0x00D9 }
6507 -// #endif /* WINVER >= 0x0500 */
6508 -
6509 -// #endif /* !NOWINMESSAGES */
6510 -
6511 -enum : uint { WB_LEFT = 0 }
6512 -enum : uint { WB_RIGHT = 1 }
6513 -enum : uint { WB_ISDELIMITER = 2 }
6514 -
6515 -enum : uint { BS_PUSHBUTTON = 0x00000000 }
6516 -enum : uint { BS_DEFPUSHBUTTON = 0x00000001 }
6517 -enum : uint { BS_CHECKBOX = 0x00000002 }
6518 -enum : uint { BS_AUTOCHECKBOX = 0x00000003 }
6519 -enum : uint { BS_RADIOBUTTON = 0x00000004 }
6520 -enum : uint { BS_3STATE = 0x00000005 }
6521 -enum : uint { BS_AUTO3STATE = 0x00000006 }
6522 -enum : uint { BS_GROUPBOX = 0x00000007 }
6523 -enum : uint { BS_USERBUTTON = 0x00000008 }
6524 -enum : uint { BS_AUTORADIOBUTTON = 0x00000009 }
6525 -enum : uint { BS_OWNERDRAW = 0x0000000B }
6526 -enum : uint { BS_LEFTTEXT = 0x00000020 }
6527 -// #if(WINVER >= 0x0400)
6528 -enum : uint { BS_TEXT = 0x00000000 }
6529 -enum : uint { BS_ICON = 0x00000040 }
6530 -enum : uint { BS_BITMAP = 0x00000080 }
6531 -enum : uint { BS_LEFT = 0x00000100 }
6532 -enum : uint { BS_RIGHT = 0x00000200 }
6533 -enum : uint { BS_CENTER = 0x00000300 }
6534 -enum : uint { BS_TOP = 0x00000400 }
6535 -enum : uint { BS_BOTTOM = 0x00000800 }
6536 -enum : uint { BS_VCENTER = 0x00000C00 }
6537 -enum : uint { BS_PUSHLIKE = 0x00001000 }
6538 -enum : uint { BS_MULTILINE = 0x00002000 }
6539 -enum : uint { BS_NOTIFY = 0x00004000 }
6540 -enum : uint { BS_FLAT = 0x00008000 }
6541 -alias BS_LEFTTEXT BS_RIGHTBUTTON;
6542 -// #endif /* WINVER >= 0x0400 */
6543 -
6544 -enum : uint { BN_CLICKED = 0 }
6545 -enum : uint { BN_PAINT = 1 }
6546 -enum : uint { BN_HILITE = 2 }
6547 -enum : uint { BN_UNHILITE = 3 }
6548 -enum : uint { BN_DISABLE = 4 }
6549 -enum : uint { BN_DOUBLECLICKED = 5 }
6550 -// #if(WINVER >= 0x0400)
6551 -alias BN_HILITE BN_PUSHED;
6552 -alias BN_UNHILITE BN_UNPUSHED;
6553 -alias BN_DOUBLECLICKED BN_DBLCLK;
6554 -enum : uint { BN_SETFOCUS = 6 }
6555 -enum : uint { BN_KILLFOCUS = 7 }
6556 -// #endif /* WINVER >= 0x0400 */
6557 -
6558 -enum : uint { BM_GETCHECK = 0x00F0 }
6559 -enum : uint { BM_SETCHECK = 0x00F1 }
6560 -enum : uint { BM_GETSTATE = 0x00F2 }
6561 -enum : uint { BM_SETSTATE = 0x00F3 }
6562 -enum : uint { BM_SETSTYLE = 0x00F4 }
6563 -// #if(WINVER >= 0x0400)
6564 -enum : uint { BM_CLICK = 0x00F5 }
6565 -enum : uint { BM_GETIMAGE = 0x00F6 }
6566 -enum : uint { BM_SETIMAGE = 0x00F7 }
6567 -
6568 -enum : uint { BST_UNCHECKED = 0x0000 }
6569 -enum : uint { BST_CHECKED = 0x0001 }
6570 -enum : uint { BST_INDETERMINATE = 0x0002 }
6571 -enum : uint { BST_PUSHED = 0x0004 }
6572 -enum : uint { BST_FOCUS = 0x0008 }
6573 -// #endif /* WINVER >= 0x0400 */
6574 -
6575 -enum : uint { SS_LEFT = 0x00000000 }
6576 -enum : uint { SS_CENTER = 0x00000001 }
6577 -enum : uint { SS_RIGHT = 0x00000002 }
6578 -enum : uint { SS_ICON = 0x00000003 }
6579 -enum : uint { SS_BLACKRECT = 0x00000004 }
6580 -enum : uint { SS_GRAYRECT = 0x00000005 }
6581 -enum : uint { SS_WHITERECT = 0x00000006 }
6582 -enum : uint { SS_BLACKFRAME = 0x00000007 }
6583 -enum : uint { SS_GRAYFRAME = 0x00000008 }
6584 -enum : uint { SS_WHITEFRAME = 0x00000009 }
6585 -enum : uint { SS_USERITEM = 0x0000000A }
6586 -enum : uint { SS_SIMPLE = 0x0000000B }
6587 -enum : uint { SS_LEFTNOWORDWRAP = 0x0000000C }
6588 -// #if(WINVER >= 0x0400)
6589 -enum : uint { SS_OWNERDRAW = 0x0000000D }
6590 -enum : uint { SS_BITMAP = 0x0000000E }
6591 -enum : uint { SS_ENHMETAFILE = 0x0000000F }
6592 -enum : uint { SS_ETCHEDHORZ = 0x00000010 }
6593 -enum : uint { SS_ETCHEDVERT = 0x00000011 }
6594 -enum : uint { SS_ETCHEDFRAME = 0x00000012 }
6595 -enum : uint { SS_TYPEMASK = 0x0000001F }
6596 -// #endif /* WINVER >= 0x0400 */
6597 -// #if(WINVER >= 0x0501)
6598 -enum : uint { SS_REALSIZECONTROL = 0x00000040 }
6599 -// #endif /* WINVER >= 0x0501 */
6600 -enum : uint { SS_NOPREFIX = 0x00000080 }
6601 -// #if(WINVER >= 0x0400)
6602 -enum : uint { SS_NOTIFY = 0x00000100 }
6603 -enum : uint { SS_CENTERIMAGE = 0x00000200 }
6604 -enum : uint { SS_RIGHTJUST = 0x00000400 }
6605 -enum : uint { SS_REALSIZEIMAGE = 0x00000800 }
6606 -enum : uint { SS_SUNKEN = 0x00001000 }
6607 -enum : uint { SS_ENDELLIPSIS = 0x00004000 }
6608 -enum : uint { SS_PATHELLIPSIS = 0x00008000 }
6609 -enum : uint { SS_WORDELLIPSIS = 0x0000C000 }
6610 -enum : uint { SS_ELLIPSISMASK = 0x0000C000 }
6611 -// #endif /* WINVER >= 0x0400 */
6612 -
6613 -// #ifndef NOWINMESSAGES
6614 -
6615 -enum : uint { STM_SETICON = 0x0170 }
6616 -enum : uint { STM_GETICON = 0x0171 }
6617 -// #if(WINVER >= 0x0400)
6618 -enum : uint { STM_SETIMAGE = 0x0172 }
6619 -enum : uint { STM_GETIMAGE = 0x0173 }
6620 -enum : uint { STN_CLICKED = 0 }
6621 -enum : uint { STN_DBLCLK = 1 }
6622 -enum : uint { STN_ENABLE = 2 }
6623 -enum : uint { STN_DISABLE = 3 }
6624 -// #endif /* WINVER >= 0x0400 */
6625 -enum : uint { STM_MSGMAX = 0x0174 }
6626 -// #endif /* !NOWINMESSAGES */
6627 -
6628 -const ATOM WC_DIALOG = cast(ATOM)0x8002;
6629 -
6630 -enum : uint { DWL_MSGRESULT = 0 }
6631 -enum : uint { DWL_DLGPROC = 4 }
6632 -enum : uint { DWL_USER = 8 }
6633 -
6634 -// #ifdef _WIN64
6635 -
6636 -// #...
6637 -// #...
6638 -// #...
6639 -
6640 -// #endif /* _WIN64 */
6641 -
6642 -enum : uint { DWLP_MSGRESULT = 0 }
6643 -enum : uint { DWLP_DLGPROC = DWLP_MSGRESULT + LRESULT.sizeof }
6644 -enum : uint { DWLP_USER = DWLP_DLGPROC + DLGPROC.sizeof }
6645 -
6646 -// #ifndef NOMSG
6647 -
6648 -extern(Windows) export BOOL IsDialogMessageA(
6649 - HWND hDlg,
6650 - LPMSG lpMsg);
6651 -extern(Windows) export BOOL IsDialogMessageW(
6652 - HWND hDlg,
6653 - LPMSG lpMsg);
6654 -// #ifdef UNICODE
6655 -alias IsDialogMessageW IsDialogMessage;
6656 -// #else
6657 -// #...
6658 -// #endif // !UNICODE
6659 -
6660 -// #endif /* !NOMSG */
6661 -
6662 -extern(Windows) export BOOL MapDialogRect(
6663 - HWND hDlg,
6664 - LPRECT lpRect);
6665 -
6666 -extern(Windows) export int DlgDirListA(
6667 - HWND hDlg,
6668 - LPSTR lpPathSpec,
6669 - int nIDListBox,
6670 - int nIDStaticPath,
6671 - UINT uFileType);
6672 -extern(Windows) export int DlgDirListW(
6673 - HWND hDlg,
6674 - LPWSTR lpPathSpec,
6675 - int nIDListBox,
6676 - int nIDStaticPath,
6677 - UINT uFileType);
6678 -// #ifdef UNICODE
6679 -alias DlgDirListW DlgDirList;
6680 -// #else
6681 -// #...
6682 -// #endif // !UNICODE
6683 -
6684 -enum : uint { DDL_READWRITE = 0x0000 }
6685 -enum : uint { DDL_READONLY = 0x0001 }
6686 -enum : uint { DDL_HIDDEN = 0x0002 }
6687 -enum : uint { DDL_SYSTEM = 0x0004 }
6688 -enum : uint { DDL_DIRECTORY = 0x0010 }
6689 -enum : uint { DDL_ARCHIVE = 0x0020 }
6690 -
6691 -enum : uint { DDL_POSTMSGS = 0x2000 }
6692 -enum : uint { DDL_DRIVES = 0x4000 }
6693 -enum : uint { DDL_EXCLUSIVE = 0x8000 }
6694 -
6695 -extern(Windows) export BOOL DlgDirSelectExA(
6696 - HWND hDlg,
6697 - LPSTR lpString,
6698 - int nCount,
6699 - int nIDListBox);
6700 -extern(Windows) export BOOL DlgDirSelectExW(
6701 - HWND hDlg,
6702 - LPWSTR lpString,
6703 - int nCount,
6704 - int nIDListBox);
6705 -// #ifdef UNICODE
6706 -alias DlgDirSelectExW DlgDirSelectEx;
6707 -// #else
6708 -// #...
6709 -// #endif // !UNICODE
6710 -
6711 -extern(Windows) export int DlgDirListComboBoxA(
6712 - HWND hDlg,
6713 - LPSTR lpPathSpec,
6714 - int nIDComboBox,
6715 - int nIDStaticPath,
6716 - UINT uFiletype);
6717 -extern(Windows) export int DlgDirListComboBoxW(
6718 - HWND hDlg,
6719 - LPWSTR lpPathSpec,
6720 - int nIDComboBox,
6721 - int nIDStaticPath,
6722 - UINT uFiletype);
6723 -// #ifdef UNICODE
6724 -alias DlgDirListComboBoxW DlgDirListComboBox;
6725 -// #else
6726 -// #...
6727 -// #endif // !UNICODE
6728 -
6729 -extern(Windows) export BOOL DlgDirSelectComboBoxExA(
6730 - HWND hDlg,
6731 - LPSTR lpString,
6732 - int nCount,
6733 - int nIDComboBox);
6734 -extern(Windows) export BOOL DlgDirSelectComboBoxExW(
6735 - HWND hDlg,
6736 - LPWSTR lpString,
6737 - int nCount,
6738 - int nIDComboBox);
6739 -// #ifdef UNICODE
6740 -alias DlgDirSelectComboBoxExW DlgDirSelectComboBoxEx;
6741 -// #else
6742 -// #...
6743 -// #endif // !UNICODE
6744 -
6745 -enum : uint { DS_ABSALIGN = 0x01 }
6746 -enum : uint { DS_SYSMODAL = 0x02 }
6747 -enum : uint { DS_LOCALEDIT = 0x20 }
6748 -enum : uint { DS_SETFONT = 0x40 }
6749 -enum : uint { DS_MODALFRAME = 0x80 }
6750 -enum : uint { DS_NOIDLEMSG = 0x100 }
6751 -enum : uint { DS_SETFOREGROUND = 0x200 }
6752 -
6753 -// #if(WINVER >= 0x0400)
6754 -enum : uint { DS_3DLOOK = 0x0004 }
6755 -enum : uint { DS_FIXEDSYS = 0x0008 }
6756 -enum : uint { DS_NOFAILCREATE = 0x0010 }
6757 -enum : uint { DS_CONTROL = 0x0400 }
6758 -enum : uint { DS_CENTER = 0x0800 }
6759 -enum : uint { DS_CENTERMOUSE = 0x1000 }
6760 -enum : uint { DS_CONTEXTHELP = 0x2000 }
6761 -
6762 -enum : uint { DS_SHELLFONT = DS_SETFONT | DS_FIXEDSYS }
6763 -// #endif /* WINVER >= 0x0400 */
6764 -
6765 -enum : uint { DM_GETDEFID = WM_USER+0 }
6766 -enum : uint { DM_SETDEFID = WM_USER+1 }
6767 -
6768 -// #if(WINVER >= 0x0400)
6769 -enum : uint { DM_REPOSITION = WM_USER+2 }
6770 -// #endif /* WINVER >= 0x0400 */
6771 -
6772 -enum : uint { DC_HASDEFID = 0x534B }
6773 -
6774 -enum : uint { DLGC_WANTARROWS = 0x0001 }
6775 -enum : uint { DLGC_WANTTAB = 0x0002 }
6776 -enum : uint { DLGC_WANTALLKEYS = 0x0004 }
6777 -enum : uint { DLGC_WANTMESSAGE = 0x0004 }
6778 -enum : uint { DLGC_HASSETSEL = 0x0008 }
6779 -enum : uint { DLGC_DEFPUSHBUTTON = 0x0010 }
6780 -enum : uint { DLGC_UNDEFPUSHBUTTON = 0x0020 }
6781 -enum : uint { DLGC_RADIOBUTTON = 0x0040 }
6782 -enum : uint { DLGC_WANTCHARS = 0x0080 }
6783 -enum : uint { DLGC_STATIC = 0x0100 }
6784 -enum : uint { DLGC_BUTTON = 0x2000 }
6785 -
6786 -enum : uint { LB_CTLCODE = 0 }
6787 -
6788 -enum : uint { LB_OKAY = 0 }
6789 -enum { LB_ERR = -1 }
6790 -enum { LB_ERRSPACE = -2 }
6791 -
6792 -enum { LBN_ERRSPACE = -2 }
6793 -enum : uint { LBN_SELCHANGE = 1 }
6794 -enum : uint { LBN_DBLCLK = 2 }
6795 -enum : uint { LBN_SELCANCEL = 3 }
6796 -enum : uint { LBN_SETFOCUS = 4 }
6797 -enum : uint { LBN_KILLFOCUS = 5 }
6798 -
6799 -// #ifndef NOWINMESSAGES
6800 -
6801 -enum : uint { LB_ADDSTRING = 0x0180 }
6802 -enum : uint { LB_INSERTSTRING = 0x0181 }
6803 -enum : uint { LB_DELETESTRING = 0x0182 }
6804 -enum : uint { LB_SELITEMRANGEEX = 0x0183 }
6805 -enum : uint { LB_RESETCONTENT = 0x0184 }
6806 -enum : uint { LB_SETSEL = 0x0185 }
6807 -enum : uint { LB_SETCURSEL = 0x0186 }
6808 -enum : uint { LB_GETSEL = 0x0187 }
6809 -enum : uint { LB_GETCURSEL = 0x0188 }
6810 -enum : uint { LB_GETTEXT = 0x0189 }
6811 -enum : uint { LB_GETTEXTLEN = 0x018A }
6812 -enum : uint { LB_GETCOUNT = 0x018B }
6813 -enum : uint { LB_SELECTSTRING = 0x018C }
6814 -enum : uint { LB_DIR = 0x018D }
6815 -enum : uint { LB_GETTOPINDEX = 0x018E }
6816 -enum : uint { LB_FINDSTRING = 0x018F }
6817 -enum : uint { LB_GETSELCOUNT = 0x0190 }
6818 -enum : uint { LB_GETSELITEMS = 0x0191 }
6819 -enum : uint { LB_SETTABSTOPS = 0x0192 }
6820 -enum : uint { LB_GETHORIZONTALEXTENT = 0x0193 }
6821 -enum : uint { LB_SETHORIZONTALEXTENT = 0x0194 }
6822 -enum : uint { LB_SETCOLUMNWIDTH = 0x0195 }
6823 -enum : uint { LB_ADDFILE = 0x0196 }
6824 -enum : uint { LB_SETTOPINDEX = 0x0197 }
6825 -enum : uint { LB_GETITEMRECT = 0x0198 }
6826 -enum : uint { LB_GETITEMDATA = 0x0199 }
6827 -enum : uint { LB_SETITEMDATA = 0x019A }
6828 -enum : uint { LB_SELITEMRANGE = 0x019B }
6829 -enum : uint { LB_SETANCHORINDEX = 0x019C }
6830 -enum : uint { LB_GETANCHORINDEX = 0x019D }
6831 -enum : uint { LB_SETCARETINDEX = 0x019E }
6832 -enum : uint { LB_GETCARETINDEX = 0x019F }
6833 -enum : uint { LB_SETITEMHEIGHT = 0x01A0 }
6834 -enum : uint { LB_GETITEMHEIGHT = 0x01A1 }
6835 -enum : uint { LB_FINDSTRINGEXACT = 0x01A2 }
6836 -enum : uint { LB_SETLOCALE = 0x01A5 }
6837 -enum : uint { LB_GETLOCALE = 0x01A6 }
6838 -enum : uint { LB_SETCOUNT = 0x01A7 }
6839 -// #if(WINVER >= 0x0400)
6840 -enum : uint { LB_INITSTORAGE = 0x01A8 }
6841 -enum : uint { LB_ITEMFROMPOINT = 0x01A9 }
6842 -// #endif /* WINVER >= 0x0400 */
6843 -// #if(_WIN32_WCE >= 0x0400)
6844 -// #...
6845 -// #endif
6846 -
6847 -// #if(_WIN32_WINNT >= 0x0501)
6848 -enum : uint { LB_GETLISTBOXINFO = 0x01B2 }
6849 -// #endif /* _WIN32_WINNT >= 0x0501 */
6850 -
6851 -// #if(_WIN32_WINNT >= 0x0501)
6852 -enum : uint { LB_MSGMAX = 0x01B3 }
6853 -// #elif(_WIN32_WCE >= 0x0400)
6854 -// #...
6855 -// #elif(WINVER >= 0x0400)
6856 -// #...
6857 -// #else
6858 -// #...
6859 -// #endif
6860 -
6861 -// #endif /* !NOWINMESSAGES */
6862 -
6863 -// #ifndef NOWINSTYLES
6864 -
6865 -enum : uint { LBS_NOTIFY = 0x0001 }
6866 -enum : uint { LBS_SORT = 0x0002 }
6867 -enum : uint { LBS_NOREDRAW = 0x0004 }
6868 -enum : uint { LBS_MULTIPLESEL = 0x0008 }
6869 -enum : uint { LBS_OWNERDRAWFIXED = 0x0010 }
6870 -enum : uint { LBS_OWNERDRAWVARIABLE = 0x0020 }
6871 -enum : uint { LBS_HASSTRINGS = 0x0040 }
6872 -enum : uint { LBS_USETABSTOPS = 0x0080 }
6873 -enum : uint { LBS_NOINTEGRALHEIGHT = 0x0100 }
6874 -enum : uint { LBS_MULTICOLUMN = 0x0200 }
6875 -enum : uint { LBS_WANTKEYBOARDINPUT = 0x0400 }
6876 -enum : uint { LBS_EXTENDEDSEL = 0x0800 }
6877 -enum : uint { LBS_DISABLENOSCROLL = 0x1000 }
6878 -enum : uint { LBS_NODATA = 0x2000 }
6879 -// #if(WINVER >= 0x0400)
6880 -enum : uint { LBS_NOSEL = 0x4000 }
6881 -// #endif /* WINVER >= 0x0400 */
6882 -enum : uint { LBS_STANDARD = LBS_NOTIFY | LBS_SORT | WS_VSCROLL | WS_BORDER }
6883 -
6884 -// #endif /* !NOWINSTYLES */
6885 -
6886 -enum : uint { CB_OKAY = 0 }
6887 -enum { CB_ERR = -1 }
6888 -enum { CB_ERRSPACE = -2 }
6889 -
6890 -enum { CBN_ERRSPACE = -1 }
6891 -enum : uint { CBN_SELCHANGE = 1 }
6892 -enum : uint { CBN_DBLCLK = 2 }
6893 -enum : uint { CBN_SETFOCUS = 3 }
6894 -enum : uint { CBN_KILLFOCUS = 4 }
6895 -enum : uint { CBN_EDITCHANGE = 5 }
6896 -enum : uint { CBN_EDITUPDATE = 6 }
6897 -enum : uint { CBN_DROPDOWN = 7 }
6898 -enum : uint { CBN_CLOSEUP = 8 }
6899 -enum : uint { CBN_SELENDOK = 9 }
6900 -enum : uint { CBN_SELENDCANCEL = 10 }
6901 -
6902 -// #ifndef NOWINSTYLES
6903 -
6904 -enum : uint { CBS_SIMPLE = 0x0001 }
6905 -enum : uint { CBS_DROPDOWN = 0x0002 }
6906 -enum : uint { CBS_DROPDOWNLIST = 0x0003 }
6907 -enum : uint { CBS_OWNERDRAWFIXED = 0x0010 }
6908 -enum : uint { CBS_OWNERDRAWVARIABLE = 0x0020 }
6909 -enum : uint { CBS_AUTOHSCROLL = 0x0040 }
6910 -enum : uint { CBS_OEMCONVERT = 0x0080 }
6911 -enum : uint { CBS_SORT = 0x0100 }
6912 -enum : uint { CBS_HASSTRINGS = 0x0200 }
6913 -enum : uint { CBS_NOINTEGRALHEIGHT = 0x0400 }
6914 -enum : uint { CBS_DISABLENOSCROLL = 0x0800 }
6915 -// #if(WINVER >= 0x0400)
6916 -enum : uint { CBS_UPPERCASE = 0x2000 }
6917 -enum : uint { CBS_LOWERCASE = 0x4000 }
6918 -// #endif /* WINVER >= 0x0400 */
6919 -
6920 -// #endif /* !NOWINSTYLES */
6921 -
6922 -// #ifndef NOWINMESSAGES
6923 -enum : uint { CB_GETEDITSEL = 0x0140 }
6924 -enum : uint { CB_LIMITTEXT = 0x0141 }
6925 -enum : uint { CB_SETEDITSEL = 0x0142 }
6926 -enum : uint { CB_ADDSTRING = 0x0143 }
6927 -enum : uint { CB_DELETESTRING = 0x0144 }
6928 -enum : uint { CB_DIR = 0x0145 }
6929 -enum : uint { CB_GETCOUNT = 0x0146 }
6930 -enum : uint { CB_GETCURSEL = 0x0147 }
6931 -enum : uint { CB_GETLBTEXT = 0x0148 }
6932 -enum : uint { CB_GETLBTEXTLEN = 0x0149 }
6933 -enum : uint { CB_INSERTSTRING = 0x014A }
6934 -enum : uint { CB_RESETCONTENT = 0x014B }
6935 -enum : uint { CB_FINDSTRING = 0x014C }
6936 -enum : uint { CB_SELECTSTRING = 0x014D }
6937 -enum : uint { CB_SETCURSEL = 0x014E }
6938 -enum : uint { CB_SHOWDROPDOWN = 0x014F }
6939 -enum : uint { CB_GETITEMDATA = 0x0150 }
6940 -enum : uint { CB_SETITEMDATA = 0x0151 }
6941 -enum : uint { CB_GETDROPPEDCONTROLRECT = 0x0152 }
6942 -enum : uint { CB_SETITEMHEIGHT = 0x0153 }
6943 -enum : uint { CB_GETITEMHEIGHT = 0x0154 }
6944 -enum : uint { CB_SETEXTENDEDUI = 0x0155 }
6945 -enum : uint { CB_GETEXTENDEDUI = 0x0156 }
6946 -enum : uint { CB_GETDROPPEDSTATE = 0x0157 }
6947 -enum : uint { CB_FINDSTRINGEXACT = 0x0158 }
6948 -enum : uint { CB_SETLOCALE = 0x0159 }
6949 -enum : uint { CB_GETLOCALE = 0x015A }
6950 -// #if(WINVER >= 0x0400)
6951 -enum : uint { CB_GETTOPINDEX = 0x015b }
6952 -enum : uint { CB_SETTOPINDEX = 0x015c }
6953 -enum : uint { CB_GETHORIZONTALEXTENT = 0x015d }
6954 -enum : uint { CB_SETHORIZONTALEXTENT = 0x015e }
6955 -enum : uint { CB_GETDROPPEDWIDTH = 0x015f }
6956 -enum : uint { CB_SETDROPPEDWIDTH = 0x0160 }
6957 -enum : uint { CB_INITSTORAGE = 0x0161 }
6958 -// #if(_WIN32_WCE >= 0x0400)
6959 -// #...
6960 -// #endif
6961 -// #endif /* WINVER >= 0x0400 */
6962 -
6963 -// #if(_WIN32_WINNT >= 0x0501)
6964 -enum : uint { CB_GETCOMBOBOXINFO = 0x0164 }
6965 -// #endif /* _WIN32_WINNT >= 0x0501 */
6966 -
6967 -// #if(_WIN32_WINNT >= 0x0501)
6968 -enum : uint { CB_MSGMAX = 0x0165 }
6969 -// #elif(_WIN32_WCE >= 0x0400)
6970 -// #...
6971 -// #elif(WINVER >= 0x0400)
6972 -// #...
6973 -// #else
6974 -// #...
6975 -// #endif
6976 -// #endif /* !NOWINMESSAGES */
6977 -
6978 -// #ifndef NOWINSTYLES
6979 -
6980 -enum : uint { SBS_HORZ = 0x0000 }
6981 -enum : uint { SBS_VERT = 0x0001 }
6982 -enum : uint { SBS_TOPALIGN = 0x0002 }
6983 -enum : uint { SBS_LEFTALIGN = 0x0002 }
6984 -enum : uint { SBS_BOTTOMALIGN = 0x0004 }
6985 -enum : uint { SBS_RIGHTALIGN = 0x0004 }
6986 -enum : uint { SBS_SIZEBOXTOPLEFTALIGN = 0x0002 }
6987 -enum : uint { SBS_SIZEBOXBOTTOMRIGHTALIGN = 0x0004 }
6988 -enum : uint { SBS_SIZEBOX = 0x0008 }
6989 -// #if(WINVER >= 0x0400)
6990 -enum : uint { SBS_SIZEGRIP = 0x0010 }
6991 -// #endif /* WINVER >= 0x0400 */
6992 -
6993 -// #endif /* !NOWINSTYLES */
6994 -
6995 -// #ifndef NOWINMESSAGES
6996 -enum : uint { SBM_SETPOS = 0x00E0 }
6997 -enum : uint { SBM_GETPOS = 0x00E1 }
6998 -enum : uint { SBM_SETRANGE = 0x00E2 }
6999 -enum : uint { SBM_SETRANGEREDRAW = 0x00E6 }
7000 -enum : uint { SBM_GETRANGE = 0x00E3 }
7001 -enum : uint { SBM_ENABLE_ARROWS = 0x00E4 }
7002 -// #if(WINVER >= 0x0400)
7003 -enum : uint { SBM_SETSCROLLINFO = 0x00E9 }
7004 -enum : uint { SBM_GETSCROLLINFO = 0x00EA }
7005 -// #endif /* WINVER >= 0x0400 */
7006 -
7007 -// #if(_WIN32_WINNT >= 0x0501)
7008 -enum : uint { SBM_GETSCROLLBARINFO = 0x00EB }
7009 -// #endif /* _WIN32_WINNT >= 0x0501 */
7010 -
7011 -// #if(WINVER >= 0x0400)
7012 -enum : uint { SIF_RANGE = 0x0001 }
7013 -enum : uint { SIF_PAGE = 0x0002 }
7014 -enum : uint { SIF_POS = 0x0004 }
7015 -enum : uint { SIF_DISABLENOSCROLL = 0x0008 }
7016 -enum : uint { SIF_TRACKPOS = 0x0010 }
7017 -enum : uint { SIF_ALL = SIF_RANGE | SIF_PAGE | SIF_POS | SIF_TRACKPOS }
7018 -
7019 -struct tagSCROLLINFO {
7020 - UINT cbSize;
7021 - UINT fMask;
7022 - int nMin;
7023 - int nMax;
7024 - UINT nPage;
7025 - int nPos;
7026 - int nTrackPos;
7027 -}
7028 -alias tagSCROLLINFO SCROLLINFO;
7029 -alias tagSCROLLINFO* LPSCROLLINFO;
7030 -
7031 -alias SCROLLINFO* LPCSCROLLINFO;
7032 -
7033 -extern(Windows) export int SetScrollInfo(HWND, int, LPCSCROLLINFO, BOOL);
7034 -extern(Windows) export BOOL GetScrollInfo(HWND, int, LPSCROLLINFO);
7035 -
7036 -// #endif /* WINVER >= 0x0400 */
7037 -// #endif /* !NOWINMESSAGES */
7038 -// #endif /* !NOCTLMGR */
7039 -
7040 -// #ifndef NOMDI
7041 -
7042 -enum : uint { MDIS_ALLCHILDSTYLES = 0x0001 }
7043 -
7044 -enum : uint { MDITILE_VERTICAL = 0x0000 }
7045 -enum : uint { MDITILE_HORIZONTAL = 0x0001 }
7046 -enum : uint { MDITILE_SKIPDISABLED = 0x0002 }
7047 -// #if(_WIN32_WINNT >= 0x0500)
7048 -enum : uint { MDITILE_ZORDER = 0x0004 }
7049 -// #endif /* _WIN32_WINNT >= 0x0500 */
7050 -
7051 -struct tagMDICREATESTRUCTA {
7052 - LPCSTR szClass;
7053 - LPCSTR szTitle;
7054 - HANDLE hOwner;
7055 - int x;
7056 - int y;
7057 - int cx;
7058 - int cy;
7059 - DWORD style;
7060 - LPARAM lParam;
7061 -}
7062 -alias tagMDICREATESTRUCTA MDICREATESTRUCTA;
7063 -alias tagMDICREATESTRUCTA* LPMDICREATESTRUCTA;
7064 -
7065 -struct tagMDICREATESTRUCTW {
7066 - LPCWSTR szClass;
7067 - LPCWSTR szTitle;
7068 - HANDLE hOwner;
7069 - int x;
7070 - int y;
7071 - int cx;
7072 - int cy;
7073 - DWORD style;
7074 - LPARAM lParam;
7075 -}
7076 -alias tagMDICREATESTRUCTW MDICREATESTRUCTW;
7077 -alias tagMDICREATESTRUCTW* LPMDICREATESTRUCTW;
7078 -
7079 -// #ifdef UNICODE
7080 -alias MDICREATESTRUCTW MDICREATESTRUCT;
7081 -alias LPMDICREATESTRUCTW LPMDICREATESTRUCT;
7082 -// #else
7083 -// ...
7084 -// #endif // UNICODE
7085 -
7086 -struct tagCLIENTCREATESTRUCT {
7087 - HANDLE hWindowMenu;
7088 - UINT idFirstChild;
7089 -}
7090 -alias tagCLIENTCREATESTRUCT CLIENTCREATESTRUCT;
7091 -alias tagCLIENTCREATESTRUCT* LPCLIENTCREATESTRUCT;
7092 -
7093 -extern(Windows) export LRESULT DefFrameProcA(
7094 - HWND hWnd,
7095 - HWND hWndMDIClient,
7096 - UINT uMsg,
7097 - WPARAM wParam,
7098 - LPARAM lParam);
7099 -extern(Windows) export LRESULT DefFrameProcW(
7100 - HWND hWnd,
7101 - HWND hWndMDIClient,
7102 - UINT uMsg,
7103 - WPARAM wParam,
7104 - LPARAM lParam);
7105 -// #ifdef UNICODE
7106 -alias DefFrameProcW DefFrameProc;
7107 -// #else
7108 -// #...
7109 -// #endif // !UNICODE
7110 -
7111 -extern(Windows) export LRESULT DefMDIChildProcA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
7112 -extern(Windows) export LRESULT DefMDIChildProcW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
7113 -// #ifdef UNICODE
7114 -alias DefMDIChildProcW DefMDIChildProc;
7115 -// #else
7116 -// #...
7117 -// #endif // !UNICODE
7118 -
7119 -// #ifndef NOMSG
7120 -
7121 -extern(Windows) export BOOL TranslateMDISysAccel(
7122 - HWND hWndClient,
7123 - LPMSG lpMsg);
7124 -
7125 -// #endif /* !NOMSG */
7126 -
7127 -extern(Windows) export UINT ArrangeIconicWindows(
7128 - HWND hWnd);
7129 -
7130 -extern(Windows) export HWND CreateMDIWindowA(
7131 - LPCSTR lpClassName,
7132 - LPCSTR lpWindowName,
7133 - DWORD dwStyle,
7134 - int X,
7135 - int Y,
7136 - int nWidth,
7137 - int nHeight,
7138 - HWND hWndParent,
7139 - HINSTANCE hInstance,
7140 - LPARAM lParam);
7141 -extern(Windows) export HWND CreateMDIWindowW(
7142 - LPCWSTR lpClassName,
7143 - LPCWSTR lpWindowName,
7144 - DWORD dwStyle,
7145 - int X,
7146 - int Y,
7147 - int nWidth,
7148 - int nHeight,
7149 - HWND hWndParent,
7150 - HINSTANCE hInstance,
7151 - LPARAM lParam);
7152 -// #ifdef UNICODE
7153 -alias CreateMDIWindowW CreateMDIWindow;
7154 -// #else
7155 -// #...
7156 -// #endif // !UNICODE
7157 -
7158 -// #if(WINVER >= 0x0400)
7159 -extern(Windows) export WORD TileWindows(HWND hwndParent, UINT wHow, RECT * lpRect, UINT cKids, HWND * lpKids);
7160 -extern(Windows) export WORD CascadeWindows(HWND hwndParent, UINT wHow, RECT * lpRect, UINT cKids, HWND * lpKids);
7161 -// #endif /* WINVER >= 0x0400 */
7162 -// #endif /* !NOMDI */
7163 -
7164 -// #endif /* !NOUSER */
7165 -
7166 -// #ifndef NOHELP
7167 -
7168 -alias DWORD HELPPOLY;
7169 -struct tagMULTIKEYHELPA {
7170 -// #ifndef _MAC
7171 - DWORD mkSize;
7172 -// #else
7173 -// ...
7174 -// #endif
7175 - CHAR mkKeylist;
7176 - CHAR szKeyphrase[1];
7177 -}
7178 -alias tagMULTIKEYHELPA MULTIKEYHELPA;
7179 -alias tagMULTIKEYHELPA* PMULTIKEYHELPA;
7180 -alias tagMULTIKEYHELPA* LPMULTIKEYHELPA;
7181 -
7182 -struct tagMULTIKEYHELPW {
7183 -// #ifndef _MAC
7184 - DWORD mkSize;
7185 -// #else
7186 -// ...
7187 -// #endif
7188 - WCHAR mkKeylist;
7189 - WCHAR szKeyphrase[1];
7190 -}
7191 -alias tagMULTIKEYHELPW MULTIKEYHELPW;
7192 -alias tagMULTIKEYHELPW* PMULTIKEYHELPW;
7193 -alias tagMULTIKEYHELPW* LPMULTIKEYHELPW;
7194 -
7195 -// #ifdef UNICODE
7196 -alias MULTIKEYHELPW MULTIKEYHELP;
7197 -alias PMULTIKEYHELPW PMULTIKEYHELP;
7198 -alias LPMULTIKEYHELPW LPMULTIKEYHELP;
7199 -// #else
7200 -// ...
7201 -// #endif // UNICODE
7202 -
7203 -struct tagHELPWININFOA {
7204 - int wStructSize;
7205 - int x;
7206 - int y;
7207 - int dx;
7208 - int dy;
7209 - int wMax;
7210 - CHAR rgchMember[2];
7211 -}
7212 -alias tagHELPWININFOA HELPWININFOA;
7213 -alias tagHELPWININFOA* PHELPWININFOA;
7214 -alias tagHELPWININFOA* LPHELPWININFOA;
7215 -
7216 -struct tagHELPWININFOW {
7217 - int wStructSize;
7218 - int x;
7219 - int y;
7220 - int dx;
7221 - int dy;
7222 - int wMax;
7223 - WCHAR rgchMember[2];
7224 -}
7225 -alias tagHELPWININFOW HELPWININFOW;
7226 -alias tagHELPWININFOW* PHELPWININFOW;
7227 -alias tagHELPWININFOW* LPHELPWININFOW;
7228 -
7229 -// #ifdef UNICODE
7230 -alias HELPWININFOW HELPWININFO;
7231 -alias PHELPWININFOW PHELPWININFO;
7232 -alias LPHELPWININFOW LPHELPWININFO;
7233 -// #else
7234 -// ...
7235 -// #endif // UNICODE
7236 -
7237 -enum : uint { HELP_CONTEXT = 0x0001 }
7238 -enum : uint { HELP_QUIT = 0x0002 }
7239 -enum : uint { HELP_INDEX = 0x0003 }
7240 -enum : uint { HELP_CONTENTS = 0x0003 }
7241 -enum : uint { HELP_HELPONHELP = 0x0004 }
7242 -enum : uint { HELP_SETINDEX = 0x0005 }
7243 -enum : uint { HELP_SETCONTENTS = 0x0005 }
7244 -enum : uint { HELP_CONTEXTPOPUP = 0x0008 }
7245 -enum : uint { HELP_FORCEFILE = 0x0009 }
7246 -enum : uint { HELP_KEY = 0x0101 }
7247 -enum : uint { HELP_COMMAND = 0x0102 }
7248 -enum : uint { HELP_PARTIALKEY = 0x0105 }
7249 -enum : uint { HELP_MULTIKEY = 0x0201 }
7250 -enum : uint { HELP_SETWINPOS = 0x0203 }
7251 -// #if(WINVER >= 0x0400)
7252 -enum : uint { HELP_CONTEXTMENU = 0x000a }
7253 -enum : uint { HELP_FINDER = 0x000b }
7254 -enum : uint { HELP_WM_HELP = 0x000c }
7255 -enum : uint { HELP_SETPOPUP_POS = 0x000d }
7256 -
7257 -enum : uint { HELP_TCARD = 0x8000 }
7258 -enum : uint { HELP_TCARD_DATA = 0x0010 }
7259 -enum : uint { HELP_TCARD_OTHER_CALLER = 0x0011 }
7260 -
7261 -enum : uint { IDH_NO_HELP = 28440 }
7262 -enum : uint { IDH_MISSING_CONTEXT = 28441 }
7263 -enum : uint { IDH_GENERIC_HELP_BUTTON = 28442 }
7264 -enum : uint { IDH_OK = 28443 }
7265 -enum : uint { IDH_CANCEL = 28444 }
7266 -enum : uint { IDH_HELP = 28445 }
7267 -
7268 -// #endif /* WINVER >= 0x0400 */
7269 -
7270 -extern(Windows) export BOOL WinHelpA(
7271 - HWND hWndMain,
7272 - LPCSTR lpszHelp,
7273 - UINT uCommand,
7274 - ULONG_PTR dwData);
7275 -extern(Windows) export BOOL WinHelpW(
7276 - HWND hWndMain,
7277 - LPCWSTR lpszHelp,
7278 - UINT uCommand,
7279 - ULONG_PTR dwData);
7280 -// #ifdef UNICODE
7281 -alias WinHelpW WinHelp;
7282 -// #else
7283 -// #...
7284 -// #endif // !UNICODE
7285 -
7286 -// #endif /* !NOHELP */
7287 -
7288 -// #if(WINVER >= 0x0500)
7289 -
7290 -enum : uint { GR_GDIOBJECTS = 0 }
7291 -enum : uint { GR_USEROBJECTS = 1 }
7292 -
7293 -extern(Windows) export DWORD GetGuiResources(
7294 - HANDLE hProcess,
7295 - DWORD uiFlags);
7296 -
7297 -// #endif /* WINVER >= 0x0500 */
7298 -
7299 -// #ifndef NOSYSPARAMSINFO
7300 -
7301 -enum : uint { SPI_GETBEEP = 0x0001 }
7302 -enum : uint { SPI_SETBEEP = 0x0002 }
7303 -enum : uint { SPI_GETMOUSE = 0x0003 }
7304 -enum : uint { SPI_SETMOUSE = 0x0004 }
7305 -enum : uint { SPI_GETBORDER = 0x0005 }
7306 -enum : uint { SPI_SETBORDER = 0x0006 }
7307 -enum : uint { SPI_GETKEYBOARDSPEED = 0x000A }
7308 -enum : uint { SPI_SETKEYBOARDSPEED = 0x000B }
7309 -enum : uint { SPI_LANGDRIVER = 0x000C }
7310 -enum : uint { SPI_ICONHORIZONTALSPACING = 0x000D }
7311 -enum : uint { SPI_GETSCREENSAVETIMEOUT = 0x000E }
7312 -enum : uint { SPI_SETSCREENSAVETIMEOUT = 0x000F }
7313 -enum : uint { SPI_GETSCREENSAVEACTIVE = 0x0010 }
7314 -enum : uint { SPI_SETSCREENSAVEACTIVE = 0x0011 }
7315 -enum : uint { SPI_GETGRIDGRANULARITY = 0x0012 }
7316 -enum : uint { SPI_SETGRIDGRANULARITY = 0x0013 }
7317 -enum : uint { SPI_SETDESKWALLPAPER = 0x0014 }
7318 -enum : uint { SPI_SETDESKPATTERN = 0x0015 }
7319 -enum : uint { SPI_GETKEYBOARDDELAY = 0x0016 }
7320 -enum : uint { SPI_SETKEYBOARDDELAY = 0x0017 }
7321 -enum : uint { SPI_ICONVERTICALSPACING = 0x0018 }
7322 -enum : uint { SPI_GETICONTITLEWRAP = 0x0019 }
7323 -enum : uint { SPI_SETICONTITLEWRAP = 0x001A }
7324 -enum : uint { SPI_GETMENUDROPALIGNMENT = 0x001B }
7325 -enum : uint { SPI_SETMENUDROPALIGNMENT = 0x001C }
7326 -enum : uint { SPI_SETDOUBLECLKWIDTH = 0x001D }
7327 -enum : uint { SPI_SETDOUBLECLKHEIGHT = 0x001E }
7328 -enum : uint { SPI_GETICONTITLELOGFONT = 0x001F }
7329 -enum : uint { SPI_SETDOUBLECLICKTIME = 0x0020 }
7330 -enum : uint { SPI_SETMOUSEBUTTONSWAP = 0x0021 }
7331 -enum : uint { SPI_SETICONTITLELOGFONT = 0x0022 }
7332 -enum : uint { SPI_GETFASTTASKSWITCH = 0x0023 }
7333 -enum : uint { SPI_SETFASTTASKSWITCH = 0x0024 }
7334 -// #if(WINVER >= 0x0400)
7335 -enum : uint { SPI_SETDRAGFULLWINDOWS = 0x0025 }
7336 -enum : uint { SPI_GETDRAGFULLWINDOWS = 0x0026 }
7337 -enum : uint { SPI_GETNONCLIENTMETRICS = 0x0029 }
7338 -enum : uint { SPI_SETNONCLIENTMETRICS = 0x002A }
7339 -enum : uint { SPI_GETMINIMIZEDMETRICS = 0x002B }
7340 -enum : uint { SPI_SETMINIMIZEDMETRICS = 0x002C }
7341 -enum : uint { SPI_GETICONMETRICS = 0x002D }
7342 -enum : uint { SPI_SETICONMETRICS = 0x002E }
7343 -enum : uint { SPI_SETWORKAREA = 0x002F }
7344 -enum : uint { SPI_GETWORKAREA = 0x0030 }
7345 -enum : uint { SPI_SETPENWINDOWS = 0x0031 }
7346 -
7347 -enum : uint { SPI_GETHIGHCONTRAST = 0x0042 }
7348 -enum : uint { SPI_SETHIGHCONTRAST = 0x0043 }
7349 -enum : uint { SPI_GETKEYBOARDPREF = 0x0044 }
7350 -enum : uint { SPI_SETKEYBOARDPREF = 0x0045 }
7351 -enum : uint { SPI_GETSCREENREADER = 0x0046 }
7352 -enum : uint { SPI_SETSCREENREADER = 0x0047 }
7353 -enum : uint { SPI_GETANIMATION = 0x0048 }
7354 -enum : uint { SPI_SETANIMATION = 0x0049 }
7355 -enum : uint { SPI_GETFONTSMOOTHING = 0x004A }
7356 -enum : uint { SPI_SETFONTSMOOTHING = 0x004B }
7357 -enum : uint { SPI_SETDRAGWIDTH = 0x004C }
7358 -enum : uint { SPI_SETDRAGHEIGHT = 0x004D }
7359 -enum : uint { SPI_SETHANDHELD = 0x004E }
7360 -enum : uint { SPI_GETLOWPOWERTIMEOUT = 0x004F }
7361 -enum : uint { SPI_GETPOWEROFFTIMEOUT = 0x0050 }
7362 -enum : uint { SPI_SETLOWPOWERTIMEOUT = 0x0051 }
7363 -enum : uint { SPI_SETPOWEROFFTIMEOUT = 0x0052 }
7364 -enum : uint { SPI_GETLOWPOWERACTIVE = 0x0053 }
7365 -enum : uint { SPI_GETPOWEROFFACTIVE = 0x0054 }
7366 -enum : uint { SPI_SETLOWPOWERACTIVE = 0x0055 }
7367 -enum : uint { SPI_SETPOWEROFFACTIVE = 0x0056 }
7368 -enum : uint { SPI_SETCURSORS = 0x0057 }
7369 -enum : uint { SPI_SETICONS = 0x0058 }
7370 -enum : uint { SPI_GETDEFAULTINPUTLANG = 0x0059 }
7371 -enum : uint { SPI_SETDEFAULTINPUTLANG = 0x005A }
7372 -enum : uint { SPI_SETLANGTOGGLE = 0x005B }
7373 -enum : uint { SPI_GETWINDOWSEXTENSION = 0x005C }
7374 -enum : uint { SPI_SETMOUSETRAILS = 0x005D }
7375 -enum : uint { SPI_GETMOUSETRAILS = 0x005E }
7376 -enum : uint { SPI_SETSCREENSAVERRUNNING = 0x0061 }
7377 -alias SPI_SETSCREENSAVERRUNNING SPI_SCREENSAVERRUNNING;
7378 -// #endif /* WINVER >= 0x0400 */
7379 -enum : uint { SPI_GETFILTERKEYS = 0x0032 }
7380 -enum : uint { SPI_SETFILTERKEYS = 0x0033 }
7381 -enum : uint { SPI_GETTOGGLEKEYS = 0x0034 }
7382 -enum : uint { SPI_SETTOGGLEKEYS = 0x0035 }
7383 -enum : uint { SPI_GETMOUSEKEYS = 0x0036 }
7384 -enum : uint { SPI_SETMOUSEKEYS = 0x0037 }
7385 -enum : uint { SPI_GETSHOWSOUNDS = 0x0038 }
7386 -enum : uint { SPI_SETSHOWSOUNDS = 0x0039 }
7387 -enum : uint { SPI_GETSTICKYKEYS = 0x003A }
7388 -enum : uint { SPI_SETSTICKYKEYS = 0x003B }
7389 -enum : uint { SPI_GETACCESSTIMEOUT = 0x003C }
7390 -enum : uint { SPI_SETACCESSTIMEOUT = 0x003D }
7391 -// #if(WINVER >= 0x0400)
7392 -enum : uint { SPI_GETSERIALKEYS = 0x003E }
7393 -enum : uint { SPI_SETSERIALKEYS = 0x003F }
7394 -// #endif /* WINVER >= 0x0400 */
7395 -enum : uint { SPI_GETSOUNDSENTRY = 0x0040 }
7396 -enum : uint { SPI_SETSOUNDSENTRY = 0x0041 }
7397 -// #if(_WIN32_WINNT >= 0x0400)
7398 -enum : uint { SPI_GETSNAPTODEFBUTTON = 0x005F }
7399 -enum : uint { SPI_SETSNAPTODEFBUTTON = 0x0060 }
7400 -// #endif /* _WIN32_WINNT >= 0x0400 */
7401 -// #if (_WIN32_WINNT >= 0x0400) || (_WIN32_WINDOWS > 0x0400)
7402 -enum : uint { SPI_GETMOUSEHOVERWIDTH = 0x0062 }
7403 -enum : uint { SPI_SETMOUSEHOVERWIDTH = 0x0063 }
7404 -enum : uint { SPI_GETMOUSEHOVERHEIGHT = 0x0064 }
7405 -enum : uint { SPI_SETMOUSEHOVERHEIGHT = 0x0065 }
7406 -enum : uint { SPI_GETMOUSEHOVERTIME = 0x0066 }
7407 -enum : uint { SPI_SETMOUSEHOVERTIME = 0x0067 }
7408 -enum : uint { SPI_GETWHEELSCROLLLINES = 0x0068 }
7409 -enum : uint { SPI_SETWHEELSCROLLLINES = 0x0069 }
7410 -enum : uint { SPI_GETMENUSHOWDELAY = 0x006A }
7411 -enum : uint { SPI_SETMENUSHOWDELAY = 0x006B }
7412 -
7413 -enum : uint { SPI_GETSHOWIMEUI = 0x006E }
7414 -enum : uint { SPI_SETSHOWIMEUI = 0x006F }
7415 -// #endif
7416 -
7417 -// #if(WINVER >= 0x0500)
7418 -enum : uint { SPI_GETMOUSESPEED = 0x0070 }
7419 -enum : uint { SPI_SETMOUSESPEED = 0x0071 }
7420 -enum : uint { SPI_GETSCREENSAVERRUNNING = 0x0072 }
7421 -enum : uint { SPI_GETDESKWALLPAPER = 0x0073 }
7422 -// #endif /* WINVER >= 0x0500 */
7423 -
7424 -// #if(WINVER >= 0x0500)
7425 -enum : uint { SPI_GETACTIVEWINDOWTRACKING = 0x1000 }
7426 -enum : uint { SPI_SETACTIVEWINDOWTRACKING = 0x1001 }
7427 -enum : uint { SPI_GETMENUANIMATION = 0x1002 }
7428 -enum : uint { SPI_SETMENUANIMATION = 0x1003 }
7429 -enum : uint { SPI_GETCOMBOBOXANIMATION = 0x1004 }
7430 -enum : uint { SPI_SETCOMBOBOXANIMATION = 0x1005 }
7431 -enum : uint { SPI_GETLISTBOXSMOOTHSCROLLING = 0x1006 }
7432 -enum : uint { SPI_SETLISTBOXSMOOTHSCROLLING = 0x1007 }
7433 -enum : uint { SPI_GETGRADIENTCAPTIONS = 0x1008 }
7434 -enum : uint { SPI_SETGRADIENTCAPTIONS = 0x1009 }
7435 -enum : uint { SPI_GETKEYBOARDCUES = 0x100A }
7436 -enum : uint { SPI_SETKEYBOARDCUES = 0x100B }
7437 -alias SPI_GETKEYBOARDCUES SPI_GETMENUUNDERLINES;
7438 -alias SPI_SETKEYBOARDCUES SPI_SETMENUUNDERLINES;
7439 -enum : uint { SPI_GETACTIVEWNDTRKZORDER = 0x100C }
7440 -enum : uint { SPI_SETACTIVEWNDTRKZORDER = 0x100D }
7441 -enum : uint { SPI_GETHOTTRACKING = 0x100E }
7442 -enum : uint { SPI_SETHOTTRACKING = 0x100F }
7443 -enum : uint { SPI_GETMENUFADE = 0x1012 }
7444 -enum : uint { SPI_SETMENUFADE = 0x1013 }
7445 -enum : uint { SPI_GETSELECTIONFADE = 0x1014 }
7446 -enum : uint { SPI_SETSELECTIONFADE = 0x1015 }
7447 -enum : uint { SPI_GETTOOLTIPANIMATION = 0x1016 }
7448 -enum : uint { SPI_SETTOOLTIPANIMATION = 0x1017 }
7449 -enum : uint { SPI_GETTOOLTIPFADE = 0x1018 }
7450 -enum : uint { SPI_SETTOOLTIPFADE = 0x1019 }
7451 -enum : uint { SPI_GETCURSORSHADOW = 0x101A }
7452 -enum : uint { SPI_SETCURSORSHADOW = 0x101B }
7453 -// #if(_WIN32_WINNT >= 0x0501)
7454 -enum : uint { SPI_GETMOUSESONAR = 0x101C }
7455 -enum : uint { SPI_SETMOUSESONAR = 0x101D }
7456 -enum : uint { SPI_GETMOUSECLICKLOCK = 0x101E }
7457 -enum : uint { SPI_SETMOUSECLICKLOCK = 0x101F }
7458 -enum : uint { SPI_GETMOUSEVANISH = 0x1020 }
7459 -enum : uint { SPI_SETMOUSEVANISH = 0x1021 }
7460 -enum : uint { SPI_GETFLATMENU = 0x1022 }
7461 -enum : uint { SPI_SETFLATMENU = 0x1023 }
7462 -enum : uint { SPI_GETDROPSHADOW = 0x1024 }
7463 -enum : uint { SPI_SETDROPSHADOW = 0x1025 }
7464 -// #endif /* _WIN32_WINNT >= 0x0501 */
7465 -
7466 -enum : uint { SPI_GETUIEFFECTS = 0x103E }
7467 -enum : uint { SPI_SETUIEFFECTS = 0x103F }
7468 -
7469 -enum : uint { SPI_GETFOREGROUNDLOCKTIMEOUT = 0x2000 }
7470 -enum : uint { SPI_SETFOREGROUNDLOCKTIMEOUT = 0x2001 }
7471 -enum : uint { SPI_GETACTIVEWNDTRKTIMEOUT = 0x2002 }
7472 -enum : uint { SPI_SETACTIVEWNDTRKTIMEOUT = 0x2003 }
7473 -enum : uint { SPI_GETFOREGROUNDFLASHCOUNT = 0x2004 }
7474 -enum : uint { SPI_SETFOREGROUNDFLASHCOUNT = 0x2005 }
7475 -enum : uint { SPI_GETCARETWIDTH = 0x2006 }
7476 -enum : uint { SPI_SETCARETWIDTH = 0x2007 }
7477 -
7478 -// #if(_WIN32_WINNT >= 0x0501)
7479 -enum : uint { SPI_GETMOUSECLICKLOCKTIME = 0x2008 }
7480 -enum : uint { SPI_SETMOUSECLICKLOCKTIME = 0x2009 }
7481 -enum : uint { SPI_GETFONTSMOOTHINGTYPE = 0x200A }
7482 -enum : uint { SPI_SETFONTSMOOTHINGTYPE = 0x200B }
7483 -
7484 -enum : uint { FE_FONTSMOOTHINGSTANDARD = 0x0001 }
7485 -enum : uint { FE_FONTSMOOTHINGCLEARTYPE = 0x0002 }
7486 -enum : uint { FE_FONTSMOOTHINGDOCKING = 0x8000 }
7487 -
7488 -enum : uint { SPI_GETFONTSMOOTHINGCONTRAST = 0x200C }
7489 -enum : uint { SPI_SETFONTSMOOTHINGCONTRAST = 0x200D }
7490 -
7491 -enum : uint { SPI_GETFOCUSBORDERWIDTH = 0x200E }
7492 -enum : uint { SPI_SETFOCUSBORDERWIDTH = 0x200F }
7493 -enum : uint { SPI_GETFOCUSBORDERHEIGHT = 0x2010 }
7494 -enum : uint { SPI_SETFOCUSBORDERHEIGHT = 0x2011 }
7495 -// #endif /* _WIN32_WINNT >= 0x0501 */
7496 -
7497 -// #endif /* WINVER >= 0x0500 */
7498 -
7499 -enum : uint { SPIF_UPDATEINIFILE = 0x0001 }
7500 -enum : uint { SPIF_SENDWININICHANGE = 0x0002 }
7501 -alias SPIF_SENDWININICHANGE SPIF_SENDCHANGE;
7502 -
7503 -enum { METRICS_USEDEFAULT = -1 }
7504 -// #ifdef _WINGDI_
7505 -// #ifndef NOGDI
7506 -// ...
7507 -// #ifdef UNICODE
7508 -// ...
7509 -// #else
7510 -// ...
7511 -// #endif // UNICODE
7512 -// #endif /* NOGDI */
7513 -// #endif /* _WINGDI_ */
7514 -
7515 -enum : uint { ARW_BOTTOMLEFT = 0x0000 }
7516 -enum : uint { ARW_BOTTOMRIGHT = 0x0001 }
7517 -enum : uint { ARW_TOPLEFT = 0x0002 }
7518 -enum : uint { ARW_TOPRIGHT = 0x0003 }
7519 -enum : uint { ARW_STARTMASK = 0x0003 }
7520 -enum : uint { ARW_STARTRIGHT = 0x0001 }
7521 -enum : uint { ARW_STARTTOP = 0x0002 }
7522 -
7523 -enum : uint { ARW_LEFT = 0x0000 }
7524 -enum : uint { ARW_RIGHT = 0x0000 }
7525 -enum : uint { ARW_UP = 0x0004 }
7526 -enum : uint { ARW_DOWN = 0x0004 }
7527 -enum : uint { ARW_HIDE = 0x0008 }
7528 -
7529 -struct tagMINIMIZEDMETRICS {
7530 - UINT cbSize;
7531 - int iWidth;
7532 - int iHorzGap;
7533 - int iVertGap;
7534 - int iArrange;
7535 -}
7536 -alias tagMINIMIZEDMETRICS MINIMIZEDMETRICS;
7537 -alias tagMINIMIZEDMETRICS* PMINIMIZEDMETRICS;
7538 -alias tagMINIMIZEDMETRICS* LPMINIMIZEDMETRICS;
7539 -
7540 -// #ifdef _WINGDI_
7541 -// #ifndef NOGDI
7542 -// ...
7543 -// #ifdef UNICODE
7544 -// ...
7545 -// #else
7546 -// ...
7547 -// #endif // UNICODE
7548 -// #endif /* NOGDI */
7549 -// #endif /* _WINGDI_ */
7550 -
7551 -struct tagANIMATIONINFO {
7552 - UINT cbSize;
7553 - int iMinAnimate;
7554 -}
7555 -alias tagANIMATIONINFO ANIMATIONINFO;
7556 -alias tagANIMATIONINFO* LPANIMATIONINFO;
7557 -
7558 -struct tagSERIALKEYSA {
7559 - UINT cbSize;
7560 - DWORD dwFlags;
7561 - LPSTR lpszActivePort;
7562 - LPSTR lpszPort;
7563 - UINT iBaudRate;
7564 - UINT iPortState;
7565 - UINT iActive;
7566 -}
7567 -alias tagSERIALKEYSA SERIALKEYSA;
7568 -alias tagSERIALKEYSA* LPSERIALKEYSA;
7569 -
7570 -struct tagSERIALKEYSW {
7571 - UINT cbSize;
7572 - DWORD dwFlags;
7573 - LPWSTR lpszActivePort;
7574 - LPWSTR lpszPort;
7575 - UINT iBaudRate;
7576 - UINT iPortState;
7577 - UINT iActive;
7578 -}
7579 -alias tagSERIALKEYSW SERIALKEYSW;
7580 -alias tagSERIALKEYSW* LPSERIALKEYSW;
7581 -
7582 -// #ifdef UNICODE
7583 -alias SERIALKEYSW SERIALKEYS;
7584 -alias LPSERIALKEYSW LPSERIALKEYS;
7585 -// #else
7586 -// ...
7587 -// #endif // UNICODE
7588 -
7589 -enum : uint { SERKF_SERIALKEYSON = 0x00000001 }
7590 -enum : uint { SERKF_AVAILABLE = 0x00000002 }
7591 -enum : uint { SERKF_INDICATOR = 0x00000004 }
7592 -
7593 -struct tagHIGHCONTRASTA {
7594 - UINT cbSize;
7595 - DWORD dwFlags;
7596 - LPSTR lpszDefaultScheme;
7597 -}
7598 -alias tagHIGHCONTRASTA HIGHCONTRASTA;
7599 -alias tagHIGHCONTRASTA* LPHIGHCONTRASTA;
7600 -
7601 -struct tagHIGHCONTRASTW {
7602 - UINT cbSize;
7603 - DWORD dwFlags;
7604 - LPWSTR lpszDefaultScheme;
7605 -}
7606 -alias tagHIGHCONTRASTW HIGHCONTRASTW;
7607 -alias tagHIGHCONTRASTW* LPHIGHCONTRASTW;
7608 -
7609 -// #ifdef UNICODE
7610 -alias HIGHCONTRASTW HIGHCONTRAST;
7611 -alias LPHIGHCONTRASTW LPHIGHCONTRAST;
7612 -// #else
7613 -// ...
7614 -// #endif // UNICODE
7615 -
7616 -enum : uint { HCF_HIGHCONTRASTON = 0x00000001 }
7617 -enum : uint { HCF_AVAILABLE = 0x00000002 }
7618 -enum : uint { HCF_HOTKEYACTIVE = 0x00000004 }
7619 -enum : uint { HCF_CONFIRMHOTKEY = 0x00000008 }
7620 -enum : uint { HCF_HOTKEYSOUND = 0x00000010 }
7621 -enum : uint { HCF_INDICATOR = 0x00000020 }
7622 -enum : uint { HCF_HOTKEYAVAILABLE = 0x00000040 }
7623 -
7624 -enum : uint { CDS_UPDATEREGISTRY = 0x00000001 }
7625 -enum : uint { CDS_TEST = 0x00000002 }
7626 -enum : uint { CDS_FULLSCREEN = 0x00000004 }
7627 -enum : uint { CDS_GLOBAL = 0x00000008 }
7628 -enum : uint { CDS_SET_PRIMARY = 0x00000010 }
7629 -enum : uint { CDS_VIDEOPARAMETERS = 0x00000020 }
7630 -enum : uint { CDS_RESET = 0x40000000 }
7631 -enum : uint { CDS_NORESET = 0x10000000 }
7632 -
7633 -// #include <tvout.h>
7634 -
7635 -enum : uint { DISP_CHANGE_SUCCESSFUL = 0 }
7636 -enum : uint { DISP_CHANGE_RESTART = 1 }
7637 -enum { DISP_CHANGE_FAILED = -1 }
7638 -enum { DISP_CHANGE_BADMODE = -2 }
7639 -enum { DISP_CHANGE_NOTUPDATED = -3 }
7640 -enum { DISP_CHANGE_BADFLAGS = -4 }
7641 -enum { DISP_CHANGE_BADPARAM = -5 }
7642 -// #if(_WIN32_WINNT >= 0x0501)
7643 -enum { DISP_CHANGE_BADDUALVIEW = -6 }
7644 -// #endif /* _WIN32_WINNT >= 0x0501 */
7645 -
7646 -// #ifdef _WINGDI_
7647 -// #ifndef NOGDI
7648 -
7649 -// ...
7650 -// #ifdef UNICODE
7651 -// #...
7652 -// #else
7653 -// #...
7654 -// #endif // !UNICODE
7655 -
7656 -// ...
7657 -// #ifdef UNICODE
7658 -// #...
7659 -// #else
7660 -// #...
7661 -// #endif // !UNICODE
7662 -
7663 -// #...
7664 -// #...
7665 -
7666 -// ...
7667 -// #ifdef UNICODE
7668 -// #...
7669 -// #else
7670 -// #...
7671 -// #endif // !UNICODE
7672 -
7673 -// #if(WINVER >= 0x0500)
7674 -
7675 -// ...
7676 -// #ifdef UNICODE
7677 -// #...
7678 -// #else
7679 -// #...
7680 -// #endif // !UNICODE
7681 -
7682 -// #...
7683 -
7684 -// ...
7685 -// #ifdef UNICODE
7686 -// #...
7687 -// #else
7688 -// #...
7689 -// #endif // !UNICODE
7690 -// #endif /* WINVER >= 0x0500 */
7691 -
7692 -// #endif /* NOGDI */
7693 -// #endif /* _WINGDI_ */
7694 -
7695 -extern(Windows) export BOOL SystemParametersInfoA(
7696 - UINT uiAction,
7697 - UINT uiParam,
7698 - PVOID pvParam,
7699 - UINT fWinIni);
7700 -extern(Windows) export BOOL SystemParametersInfoW(
7701 - UINT uiAction,
7702 - UINT uiParam,
7703 - PVOID pvParam,
7704 - UINT fWinIni);
7705 -// #ifdef UNICODE
7706 -alias SystemParametersInfoW SystemParametersInfo;
7707 -// #else
7708 -// #...
7709 -// #endif // !UNICODE
7710 -
7711 -// #endif /* !NOSYSPARAMSINFO */
7712 -
7713 -struct tagFILTERKEYS {
7714 - UINT cbSize;
7715 - DWORD dwFlags;
7716 - DWORD iWaitMSec;
7717 - DWORD iDelayMSec;
7718 - DWORD iRepeatMSec;
7719 - DWORD iBounceMSec;
7720 -}
7721 -alias tagFILTERKEYS FILTERKEYS;
7722 -alias tagFILTERKEYS* LPFILTERKEYS;
7723 -
7724 -enum : uint { FKF_FILTERKEYSON = 0x00000001 }
7725 -enum : uint { FKF_AVAILABLE = 0x00000002 }
7726 -enum : uint { FKF_HOTKEYACTIVE = 0x00000004 }
7727 -enum : uint { FKF_CONFIRMHOTKEY = 0x00000008 }
7728 -enum : uint { FKF_HOTKEYSOUND = 0x00000010 }
7729 -enum : uint { FKF_INDICATOR = 0x00000020 }
7730 -enum : uint { FKF_CLICKON = 0x00000040 }
7731 -
7732 -struct tagSTICKYKEYS {
7733 - UINT cbSize;
7734 - DWORD dwFlags;
7735 -}
7736 -alias tagSTICKYKEYS STICKYKEYS;
7737 -alias tagSTICKYKEYS* LPSTICKYKEYS;
7738 -
7739 -enum : uint { SKF_STICKYKEYSON = 0x00000001 }
7740 -enum : uint { SKF_AVAILABLE = 0x00000002 }
7741 -enum : uint { SKF_HOTKEYACTIVE = 0x00000004 }
7742 -enum : uint { SKF_CONFIRMHOTKEY = 0x00000008 }
7743 -enum : uint { SKF_HOTKEYSOUND = 0x00000010 }
7744 -enum : uint { SKF_INDICATOR = 0x00000020 }
7745 -enum : uint { SKF_AUDIBLEFEEDBACK = 0x00000040 }
7746 -enum : uint { SKF_TRISTATE = 0x00000080 }
7747 -enum : uint { SKF_TWOKEYSOFF = 0x00000100 }
7748 -// #if(_WIN32_WINNT >= 0x0500)
7749 -enum : uint { SKF_LALTLATCHED = 0x10000000 }
7750 -enum : uint { SKF_LCTLLATCHED = 0x04000000 }
7751 -enum : uint { SKF_LSHIFTLATCHED = 0x01000000 }
7752 -enum : uint { SKF_RALTLATCHED = 0x20000000 }
7753 -enum : uint { SKF_RCTLLATCHED = 0x08000000 }
7754 -enum : uint { SKF_RSHIFTLATCHED = 0x02000000 }
7755 -enum : uint { SKF_LWINLATCHED = 0x40000000 }
7756 -enum : uint { SKF_RWINLATCHED = 0x80000000 }
7757 -enum : uint { SKF_LALTLOCKED = 0x00100000 }
7758 -enum : uint { SKF_LCTLLOCKED = 0x00040000 }
7759 -enum : uint { SKF_LSHIFTLOCKED = 0x00010000 }
7760 -enum : uint { SKF_RALTLOCKED = 0x00200000 }
7761 -enum : uint { SKF_RCTLLOCKED = 0x00080000 }
7762 -enum : uint { SKF_RSHIFTLOCKED = 0x00020000 }
7763 -enum : uint { SKF_LWINLOCKED = 0x00400000 }
7764 -enum : uint { SKF_RWINLOCKED = 0x00800000 }
7765 -// #endif /* _WIN32_WINNT >= 0x0500 */
7766 -
7767 -struct tagMOUSEKEYS {
7768 - UINT cbSize;
7769 - DWORD dwFlags;
7770 - DWORD iMaxSpeed;
7771 - DWORD iTimeToMaxSpeed;
7772 - DWORD iCtrlSpeed;
7773 - DWORD dwReserved1;
7774 - DWORD dwReserved2;
7775 -}
7776 -alias tagMOUSEKEYS MOUSEKEYS;
7777 -alias tagMOUSEKEYS* LPMOUSEKEYS;
7778 -
7779 -enum : uint { MKF_MOUSEKEYSON = 0x00000001 }
7780 -enum : uint { MKF_AVAILABLE = 0x00000002 }
7781 -enum : uint { MKF_HOTKEYACTIVE = 0x00000004 }
7782 -enum : uint { MKF_CONFIRMHOTKEY = 0x00000008 }
7783 -enum : uint { MKF_HOTKEYSOUND = 0x00000010 }
7784 -enum : uint { MKF_INDICATOR = 0x00000020 }
7785 -enum : uint { MKF_MODIFIERS = 0x00000040 }
7786 -enum : uint { MKF_REPLACENUMBERS = 0x00000080 }
7787 -// #if(_WIN32_WINNT >= 0x0500)
7788 -enum : uint { MKF_LEFTBUTTONSEL = 0x10000000 }
7789 -enum : uint { MKF_RIGHTBUTTONSEL = 0x20000000 }
7790 -enum : uint { MKF_LEFTBUTTONDOWN = 0x01000000 }
7791 -enum : uint { MKF_RIGHTBUTTONDOWN = 0x02000000 }
7792 -enum : uint { MKF_MOUSEMODE = 0x80000000 }
7793 -// #endif /* _WIN32_WINNT >= 0x0500 */
7794 -
7795 -struct tagACCESSTIMEOUT {
7796 - UINT cbSize;
7797 - DWORD dwFlags;
7798 - DWORD iTimeOutMSec;
7799 -}
7800 -alias tagACCESSTIMEOUT ACCESSTIMEOUT;
7801 -alias tagACCESSTIMEOUT* LPACCESSTIMEOUT;
7802 -
7803 -enum : uint { ATF_TIMEOUTON = 0x00000001 }
7804 -enum : uint { ATF_ONOFFFEEDBACK = 0x00000002 }
7805 -
7806 -enum : uint { SSGF_NONE = 0 }
7807 -enum : uint { SSGF_DISPLAY = 3 }
7808 -
7809 -enum : uint { SSTF_NONE = 0 }
7810 -enum : uint { SSTF_CHARS = 1 }
7811 -enum : uint { SSTF_BORDER = 2 }
7812 -enum : uint { SSTF_DISPLAY = 3 }
7813 -
7814 -enum : uint { SSWF_NONE = 0 }
7815 -enum : uint { SSWF_TITLE = 1 }
7816 -enum : uint { SSWF_WINDOW = 2 }
7817 -enum : uint { SSWF_DISPLAY = 3 }
7818 -enum : uint { SSWF_CUSTOM = 4 }
7819 -
7820 -struct tagSOUNDSENTRYA {
7821 - UINT cbSize;
7822 - DWORD dwFlags;
7823 - DWORD iFSTextEffect;
7824 - DWORD iFSTextEffectMSec;
7825 - DWORD iFSTextEffectColorBits;
7826 - DWORD iFSGrafEffect;
7827 - DWORD iFSGrafEffectMSec;
7828 - DWORD iFSGrafEffectColor;
7829 - DWORD iWindowsEffect;
7830 - DWORD iWindowsEffectMSec;
7831 - LPSTR lpszWindowsEffectDLL;
7832 - DWORD iWindowsEffectOrdinal;
7833 -}
7834 -alias tagSOUNDSENTRYA SOUNDSENTRYA;
7835 -alias tagSOUNDSENTRYA* LPSOUNDSENTRYA;
7836 -
7837 -struct tagSOUNDSENTRYW {
7838 - UINT cbSize;
7839 - DWORD dwFlags;
7840 - DWORD iFSTextEffect;
7841 - DWORD iFSTextEffectMSec;
7842 - DWORD iFSTextEffectColorBits;
7843 - DWORD iFSGrafEffect;
7844 - DWORD iFSGrafEffectMSec;
7845 - DWORD iFSGrafEffectColor;
7846 - DWORD iWindowsEffect;
7847 - DWORD iWindowsEffectMSec;
7848 - LPWSTR lpszWindowsEffectDLL;
7849 - DWORD iWindowsEffectOrdinal;
7850 -}
7851 -alias tagSOUNDSENTRYW SOUNDSENTRYW;
7852 -alias tagSOUNDSENTRYW* LPSOUNDSENTRYW;
7853 -
7854 -// #ifdef UNICODE
7855 -alias SOUNDSENTRYW SOUNDSENTRY;
7856 -alias LPSOUNDSENTRYW LPSOUNDSENTRY;
7857 -// #else
7858 -// ...
7859 -// #endif // UNICODE
7860 -
7861 -enum : uint { SSF_SOUNDSENTRYON = 0x00000001 }
7862 -enum : uint { SSF_AVAILABLE = 0x00000002 }
7863 -enum : uint { SSF_INDICATOR = 0x00000004 }
7864 -
7865 -struct tagTOGGLEKEYS {
7866 - UINT cbSize;
7867 - DWORD dwFlags;
7868 -}
7869 -alias tagTOGGLEKEYS TOGGLEKEYS;
7870 -alias tagTOGGLEKEYS* LPTOGGLEKEYS;
7871 -
7872 -enum : uint { TKF_TOGGLEKEYSON = 0x00000001 }
7873 -enum : uint { TKF_AVAILABLE = 0x00000002 }
7874 -enum : uint { TKF_HOTKEYACTIVE = 0x00000004 }
7875 -enum : uint { TKF_CONFIRMHOTKEY = 0x00000008 }
7876 -enum : uint { TKF_HOTKEYSOUND = 0x00000010 }
7877 -enum : uint { TKF_INDICATOR = 0x00000020 }
7878 -
7879 -extern(Windows) export VOID SetDebugErrorLevel(
7880 - DWORD dwLevel);
7881 -
7882 -enum : uint { SLE_ERROR = 0x00000001 }
7883 -enum : uint { SLE_MINORERROR = 0x00000002 }
7884 -enum : uint { SLE_WARNING = 0x00000003 }
7885 -
7886 -extern(Windows) export VOID SetLastErrorEx(
7887 - DWORD dwErrCode,
7888 - DWORD dwType);
7889 -
7890 -// #if(WINVER >= 0x0500)
7891 -
7892 -enum : uint { MONITOR_DEFAULTTONULL = 0x00000000 }
7893 -enum : uint { MONITOR_DEFAULTTOPRIMARY = 0x00000001 }
7894 -enum : uint { MONITOR_DEFAULTTONEAREST = 0x00000002 }
7895 -
7896 -extern(Windows) export HMONITOR MonitorFromPoint(
7897 - POINT pt,
7898 - DWORD dwFlags);
7899 -
7900 -extern(Windows) export HMONITOR MonitorFromRect(
7901 - LPCRECT lprc,
7902 - DWORD dwFlags);
7903 -
7904 -extern(Windows) export HMONITOR MonitorFromWindow(HWND hwnd, DWORD dwFlags);
7905 -
7906 -enum : uint { MONITORINFOF_PRIMARY = 0x00000001 }
7907 -
7908 -// #ifndef CCHDEVICENAME
7909 -// #...
7910 -// #endif
7911 -
7912 -struct tagMONITORINFO {
7913 - DWORD cbSize;
7914 - RECT rcMonitor;
7915 - RECT rcWork;
7916 - DWORD dwFlags;
7917 -}
7918 -alias tagMONITORINFO MONITORINFO;
7919 -alias tagMONITORINFO* LPMONITORINFO;
7920 -
7921 -// #ifdef __cplusplus
7922 -struct tagMONITORINFOEXA {
7923 - DWORD cbSize;
7924 - RECT rcMonitor;
7925 - RECT rcWork;
7926 - DWORD dwFlags;
7927 - CHAR szDevice[CCHDEVICENAME];
7928 -}
7929 -alias tagMONITORINFOEXA MONITORINFOEXA;
7930 -alias tagMONITORINFOEXA* LPMONITORINFOEXA;
7931 -
7932 -struct tagMONITORINFOEXW {
7933 - DWORD cbSize;
7934 - RECT rcMonitor;
7935 - RECT rcWork;
7936 - DWORD dwFlags;
7937 - WCHAR szDevice[CCHDEVICENAME];
7938 -}
7939 -alias tagMONITORINFOEXW MONITORINFOEXW;
7940 -alias tagMONITORINFOEXW* LPMONITORINFOEXW;
7941 -
7942 -// #ifdef UNICODE
7943 -alias MONITORINFOEXW MONITORINFOEX;
7944 -alias LPMONITORINFOEXW LPMONITORINFOEX;
7945 -// #else
7946 -// ...
7947 -// #endif // UNICODE
7948 -// #else // ndef __cplusplus
7949 -// ...
7950 -// #ifdef UNICODE
7951 -// ...
7952 -// #else
7953 -// ...
7954 -// #endif // UNICODE
7955 -// #endif
7956 -
7957 -extern(Windows) export BOOL GetMonitorInfoA(HMONITOR hMonitor, LPMONITORINFO lpmi);
7958 -extern(Windows) export BOOL GetMonitorInfoW(HMONITOR hMonitor, LPMONITORINFO lpmi);
7959 -// #ifdef UNICODE
7960 -alias GetMonitorInfoW GetMonitorInfo;
7961 -// #else
7962 -// #...
7963 -// #endif // !UNICODE
7964 -
7965 -extern(Windows) alias BOOL function(HMONITOR, HDC, LPRECT, LPARAM) MONITORENUMPROC;
7966 -
7967 -extern(Windows) export BOOL EnumDisplayMonitors(
7968 - HDC hdc,
7969 - LPCRECT lprcClip,
7970 - MONITORENUMPROC lpfnEnum,
7971 - LPARAM dwData);
7972 -
7973 -// #ifndef NOWINABLE
7974 -
7975 -extern(Windows) export VOID NotifyWinEvent(
7976 - DWORD event,
7977 - HWND hwnd,
7978 - LONG idObject,
7979 - LONG idChild);
7980 -
7981 -extern(Windows) alias VOID function( HWINEVENTHOOK hWinEventHook, DWORD event, HWND hwnd, LONG idObject, LONG idChild, DWORD idEventThread, DWORD dwmsEventTime) WINEVENTPROC;
7982 -
7983 -extern(Windows) export HWINEVENTHOOK SetWinEventHook(
7984 - DWORD eventMin,
7985 - DWORD eventMax,
7986 - HMODULE hmodWinEventProc,
7987 - WINEVENTPROC pfnWinEventProc,
7988 - DWORD idProcess,
7989 - DWORD idThread,
7990 - DWORD dwFlags);
7991 -
7992 -// #if(_WIN32_WINNT >= 0x0501)
7993 -extern(Windows) export BOOL IsWinEventHookInstalled(
7994 - DWORD event);
7995 -// #endif /* _WIN32_WINNT >= 0x0501 */
7996 -
7997 -enum : uint { WINEVENT_OUTOFCONTEXT = 0x0000 }
7998 -enum : uint { WINEVENT_SKIPOWNTHREAD = 0x0001 }
7999 -enum : uint { WINEVENT_SKIPOWNPROCESS = 0x0002 }
8000 -enum : uint { WINEVENT_INCONTEXT = 0x0004 }
8001 -
8002 -extern(Windows) export BOOL UnhookWinEvent(
8003 - HWINEVENTHOOK hWinEventHook);
8004 -
8005 -enum : uint { CHILDID_SELF = 0 }
8006 -enum : uint { INDEXID_OBJECT = 0 }
8007 -enum : uint { INDEXID_CONTAINER = 0 }
8008 -
8009 -enum : uint { OBJID_WINDOW = cast(LONG)0x00000000 }
8010 -enum : uint { OBJID_SYSMENU = cast(LONG)0xFFFFFFFF }
8011 -enum : uint { OBJID_TITLEBAR = cast(LONG)0xFFFFFFFE }
8012 -enum : uint { OBJID_MENU = cast(LONG)0xFFFFFFFD }
8013 -enum : uint { OBJID_CLIENT = cast(LONG)0xFFFFFFFC }
8014 -enum : uint { OBJID_VSCROLL = cast(LONG)0xFFFFFFFB }
8015 -enum : uint { OBJID_HSCROLL = cast(LONG)0xFFFFFFFA }
8016 -enum : uint { OBJID_SIZEGRIP = cast(LONG)0xFFFFFFF9 }
8017 -enum : uint { OBJID_CARET = cast(LONG)0xFFFFFFF8 }
8018 -enum : uint { OBJID_CURSOR = cast(LONG)0xFFFFFFF7 }
8019 -enum : uint { OBJID_ALERT = cast(LONG)0xFFFFFFF6 }
8020 -enum : uint { OBJID_SOUND = cast(LONG)0xFFFFFFF5 }
8021 -enum : uint { OBJID_QUERYCLASSNAMEIDX = cast(LONG)0xFFFFFFF4 }
8022 -enum : uint { OBJID_NATIVEOM = cast(LONG)0xFFFFFFF0 }
8023 -
8024 -enum : uint { EVENT_MIN = 0x00000001 }
8025 -enum : uint { EVENT_MAX = 0x7FFFFFFF }
8026 -
8027 -enum : uint { EVENT_SYSTEM_SOUND = 0x0001 }
8028 -
8029 -enum : uint { EVENT_SYSTEM_ALERT = 0x0002 }
8030 -
8031 -enum : uint { EVENT_SYSTEM_FOREGROUND = 0x0003 }
8032 -
8033 -enum : uint { EVENT_SYSTEM_MENUSTART = 0x0004 }
8034 -enum : uint { EVENT_SYSTEM_MENUEND = 0x0005 }
8035 -
8036 -enum : uint { EVENT_SYSTEM_MENUPOPUPSTART = 0x0006 }
8037 -enum : uint { EVENT_SYSTEM_MENUPOPUPEND = 0x0007 }
8038 -
8039 -enum : uint { EVENT_SYSTEM_CAPTURESTART = 0x0008 }
8040 -enum : uint { EVENT_SYSTEM_CAPTUREEND = 0x0009 }
8041 -
8042 -enum : uint { EVENT_SYSTEM_MOVESIZESTART = 0x000A }
8043 -enum : uint { EVENT_SYSTEM_MOVESIZEEND = 0x000B }
8044 -
8045 -enum : uint { EVENT_SYSTEM_CONTEXTHELPSTART = 0x000C }
8046 -enum : uint { EVENT_SYSTEM_CONTEXTHELPEND = 0x000D }
8047 -
8048 -enum : uint { EVENT_SYSTEM_DRAGDROPSTART = 0x000E }
8049 -enum : uint { EVENT_SYSTEM_DRAGDROPEND = 0x000F }
8050 -
8051 -enum : uint { EVENT_SYSTEM_DIALOGSTART = 0x0010 }
8052 -enum : uint { EVENT_SYSTEM_DIALOGEND = 0x0011 }
8053 -
8054 -enum : uint { EVENT_SYSTEM_SCROLLINGSTART = 0x0012 }
8055 -enum : uint { EVENT_SYSTEM_SCROLLINGEND = 0x0013 }
8056 -
8057 -enum : uint { EVENT_SYSTEM_SWITCHSTART = 0x0014 }
8058 -enum : uint { EVENT_SYSTEM_SWITCHEND = 0x0015 }
8059 -
8060 -enum : uint { EVENT_SYSTEM_MINIMIZESTART = 0x0016 }
8061 -enum : uint { EVENT_SYSTEM_MINIMIZEEND = 0x0017 }
8062 -
8063 -// #if(_WIN32_WINNT >= 0x0501)
8064 -enum : uint { EVENT_CONSOLE_CARET = 0x4001 }
8065 -enum : uint { EVENT_CONSOLE_UPDATE_REGION = 0x4002 }
8066 -enum : uint { EVENT_CONSOLE_UPDATE_SIMPLE = 0x4003 }
8067 -enum : uint { EVENT_CONSOLE_UPDATE_SCROLL = 0x4004 }
8068 -enum : uint { EVENT_CONSOLE_LAYOUT = 0x4005 }
8069 -enum : uint { EVENT_CONSOLE_START_APPLICATION = 0x4006 }
8070 -enum : uint { EVENT_CONSOLE_END_APPLICATION = 0x4007 }
8071 -
8072 -enum : uint { CONSOLE_APPLICATION_16BIT = 0x0001 }
8073 -
8074 -enum : uint { CONSOLE_CARET_SELECTION = 0x0001 }
8075 -enum : uint { CONSOLE_CARET_VISIBLE = 0x0002 }
8076 -// #endif /* _WIN32_WINNT >= 0x0501 */
8077 -
8078 -enum : uint { EVENT_OBJECT_CREATE = 0x8000 }
8079 -enum : uint { EVENT_OBJECT_DESTROY = 0x8001 }
8080 -enum : uint { EVENT_OBJECT_SHOW = 0x8002 }
8081 -enum : uint { EVENT_OBJECT_HIDE = 0x8003 }
8082 -enum : uint { EVENT_OBJECT_REORDER = 0x8004 }
8083 -
8084 -enum : uint { EVENT_OBJECT_FOCUS = 0x8005 }
8085 -enum : uint { EVENT_OBJECT_SELECTION = 0x8006 }
8086 -enum : uint { EVENT_OBJECT_SELECTIONADD = 0x8007 }
8087 -enum : uint { EVENT_OBJECT_SELECTIONREMOVE = 0x8008 }
8088 -enum : uint { EVENT_OBJECT_SELECTIONWITHIN = 0x8009 }
8089 -
8090 -enum : uint { EVENT_OBJECT_STATECHANGE = 0x800A }
8091 -
8092 -enum : uint { EVENT_OBJECT_LOCATIONCHANGE = 0x800B }
8093 -
8094 -enum : uint { EVENT_OBJECT_NAMECHANGE = 0x800C }
8095 -enum : uint { EVENT_OBJECT_DESCRIPTIONCHANGE = 0x800D }
8096 -enum : uint { EVENT_OBJECT_VALUECHANGE = 0x800E }
8097 -enum : uint { EVENT_OBJECT_PARENTCHANGE = 0x800F }
8098 -enum : uint { EVENT_OBJECT_HELPCHANGE = 0x8010 }
8099 -enum : uint { EVENT_OBJECT_DEFACTIONCHANGE = 0x8011 }
8100 -enum : uint { EVENT_OBJECT_ACCELERATORCHANGE = 0x8012 }
8101 -
8102 -enum : uint { SOUND_SYSTEM_STARTUP = 1 }
8103 -enum : uint { SOUND_SYSTEM_SHUTDOWN = 2 }
8104 -enum : uint { SOUND_SYSTEM_BEEP = 3 }
8105 -enum : uint { SOUND_SYSTEM_ERROR = 4 }
8106 -enum : uint { SOUND_SYSTEM_QUESTION = 5 }
8107 -enum : uint { SOUND_SYSTEM_WARNING = 6 }
8108 -enum : uint { SOUND_SYSTEM_INFORMATION = 7 }
8109 -enum : uint { SOUND_SYSTEM_MAXIMIZE = 8 }
8110 -enum : uint { SOUND_SYSTEM_MINIMIZE = 9 }
8111 -enum : uint { SOUND_SYSTEM_RESTOREUP = 10 }
8112 -enum : uint { SOUND_SYSTEM_RESTOREDOWN = 11 }
8113 -enum : uint { SOUND_SYSTEM_APPSTART = 12 }
8114 -enum : uint { SOUND_SYSTEM_FAULT = 13 }
8115 -enum : uint { SOUND_SYSTEM_APPEND = 14 }
8116 -enum : uint { SOUND_SYSTEM_MENUCOMMAND = 15 }
8117 -enum : uint { SOUND_SYSTEM_MENUPOPUP = 16 }
8118 -enum : uint { CSOUND_SYSTEM = 16 }
8119 -
8120 -enum : uint { ALERT_SYSTEM_INFORMATIONAL = 1 }
8121 -enum : uint { ALERT_SYSTEM_WARNING = 2 }
8122 -enum : uint { ALERT_SYSTEM_ERROR = 3 }
8123 -enum : uint { ALERT_SYSTEM_QUERY = 4 }
8124 -enum : uint { ALERT_SYSTEM_CRITICAL = 5 }
8125 -enum : uint { CALERT_SYSTEM = 6 }
8126 -
8127 -struct tagGUITHREADINFO {
8128 - DWORD cbSize;
8129 - DWORD flags;
8130 - HWND hwndActive;
8131 - HWND hwndFocus;
8132 - HWND hwndCapture;
8133 - HWND hwndMenuOwner;
8134 - HWND hwndMoveSize;
8135 - HWND hwndCaret;
8136 - RECT rcCaret;
8137 -}
8138 -alias tagGUITHREADINFO GUITHREADINFO;
8139 -alias tagGUITHREADINFO* PGUITHREADINFO;
8140 -alias tagGUITHREADINFO* LPGUITHREADINFO;
8141 -
8142 -enum : uint { GUI_CARETBLINKING = 0x00000001 }
8143 -enum : uint { GUI_INMOVESIZE = 0x00000002 }
8144 -enum : uint { GUI_INMENUMODE = 0x00000004 }
8145 -enum : uint { GUI_SYSTEMMENUMODE = 0x00000008 }
8146 -enum : uint { GUI_POPUPMENUMODE = 0x00000010 }
8147 -// #if(_WIN32_WINNT >= 0x0501)
8148 -enum : uint { GUI_16BITTASK = 0x00000020 }
8149 -// #endif /* _WIN32_WINNT >= 0x0501 */
8150 -
8151 -extern(Windows) export BOOL GetGUIThreadInfo(
8152 - DWORD idThread,
8153 - PGUITHREADINFO pgui);
8154 -
8155 -extern(Windows) export UINT GetWindowModuleFileNameA(
8156 - HWND hwnd,
8157 - LPSTR pszFileName,
8158 - UINT cchFileNameMax);
8159 -extern(Windows) export UINT GetWindowModuleFileNameW(
8160 - HWND hwnd,
8161 - LPWSTR pszFileName,
8162 - UINT cchFileNameMax);
8163 -// #ifdef UNICODE
8164 -alias GetWindowModuleFileNameW GetWindowModuleFileName;
8165 -// #else
8166 -// #...
8167 -// #endif // !UNICODE
8168 -
8169 -// #ifndef NO_STATE_FLAGS
8170 -enum : uint { STATE_SYSTEM_UNAVAILABLE = 0x00000001 }
8171 -enum : uint { STATE_SYSTEM_SELECTED = 0x00000002 }
8172 -enum : uint { STATE_SYSTEM_FOCUSED = 0x00000004 }
8173 -enum : uint { STATE_SYSTEM_PRESSED = 0x00000008 }
8174 -enum : uint { STATE_SYSTEM_CHECKED = 0x00000010 }
8175 -enum : uint { STATE_SYSTEM_MIXED = 0x00000020 }
8176 -alias STATE_SYSTEM_MIXED STATE_SYSTEM_INDETERMINATE;
8177 -enum : uint { STATE_SYSTEM_READONLY = 0x00000040 }
8178 -enum : uint { STATE_SYSTEM_HOTTRACKED = 0x00000080 }
8179 -enum : uint { STATE_SYSTEM_DEFAULT = 0x00000100 }
8180 -enum : uint { STATE_SYSTEM_EXPANDED = 0x00000200 }
8181 -enum : uint { STATE_SYSTEM_COLLAPSED = 0x00000400 }
8182 -enum : uint { STATE_SYSTEM_BUSY = 0x00000800 }
8183 -enum : uint { STATE_SYSTEM_FLOATING = 0x00001000 }
8184 -enum : uint { STATE_SYSTEM_MARQUEED = 0x00002000 }
8185 -enum : uint { STATE_SYSTEM_ANIMATED = 0x00004000 }
8186 -enum : uint { STATE_SYSTEM_INVISIBLE = 0x00008000 }
8187 -enum : uint { STATE_SYSTEM_OFFSCREEN = 0x00010000 }
8188 -enum : uint { STATE_SYSTEM_SIZEABLE = 0x00020000 }
8189 -enum : uint { STATE_SYSTEM_MOVEABLE = 0x00040000 }
8190 -enum : uint { STATE_SYSTEM_SELFVOICING = 0x00080000 }
8191 -enum : uint { STATE_SYSTEM_FOCUSABLE = 0x00100000 }
8192 -enum : uint { STATE_SYSTEM_SELECTABLE = 0x00200000 }
8193 -enum : uint { STATE_SYSTEM_LINKED = 0x00400000 }
8194 -enum : uint { STATE_SYSTEM_TRAVERSED = 0x00800000 }
8195 -enum : uint { STATE_SYSTEM_MULTISELECTABLE = 0x01000000 }
8196 -enum : uint { STATE_SYSTEM_EXTSELECTABLE = 0x02000000 }
8197 -enum : uint { STATE_SYSTEM_ALERT_LOW = 0x04000000 }
8198 -enum : uint { STATE_SYSTEM_ALERT_MEDIUM = 0x08000000 }
8199 -enum : uint { STATE_SYSTEM_ALERT_HIGH = 0x10000000 }
8200 -enum : uint { STATE_SYSTEM_PROTECTED = 0x20000000 }
8201 -enum : uint { STATE_SYSTEM_VALID = 0x3FFFFFFF }
8202 -// #endif
8203 -
8204 -enum : uint { CCHILDREN_TITLEBAR = 5 }
8205 -enum : uint { CCHILDREN_SCROLLBAR = 5 }
8206 -
8207 -struct tagCURSORINFO {
8208 - DWORD cbSize;
8209 - DWORD flags;
8210 - HCURSOR hCursor;
8211 - POINT ptScreenPos;
8212 -}
8213 -alias tagCURSORINFO CURSORINFO;
8214 -alias tagCURSORINFO* PCURSORINFO;
8215 -alias tagCURSORINFO* LPCURSORINFO;
8216 -
8217 -enum : uint { CURSOR_SHOWING = 0x00000001 }
8218 -
8219 -extern(Windows) export BOOL GetCursorInfo(
8220 - PCURSORINFO pci
8221 -);
8222 -
8223 -struct tagWINDOWINFO {
8224 - DWORD cbSize;
8225 - RECT rcWindow;
8226 - RECT rcClient;
8227 - DWORD dwStyle;
8228 - DWORD dwExStyle;
8229 - DWORD dwWindowStatus;
8230 - UINT cxWindowBorders;
8231 - UINT cyWindowBorders;
8232 - ATOM atomWindowType;
8233 - WORD wCreatorVersion;
8234 -}
8235 -alias tagWINDOWINFO WINDOWINFO;
8236 -alias tagWINDOWINFO* PWINDOWINFO;
8237 -alias tagWINDOWINFO* LPWINDOWINFO;
8238 -
8239 -enum : uint { WS_ACTIVECAPTION = 0x0001 }
8240 -
8241 -extern(Windows) export BOOL GetWindowInfo(
8242 - HWND hwnd,
8243 - PWINDOWINFO pwi
8244 -);
8245 -
8246 -struct tagTITLEBARINFO {
8247 - DWORD cbSize;
8248 - RECT rcTitleBar;
8249 - DWORD rgstate[CCHILDREN_TITLEBAR+1];
8250 -}
8251 -alias tagTITLEBARINFO TITLEBARINFO;
8252 -alias tagTITLEBARINFO* PTITLEBARINFO;
8253 -alias tagTITLEBARINFO* LPTITLEBARINFO;
8254 -
8255 -extern(Windows) export BOOL GetTitleBarInfo(
8256 - HWND hwnd,
8257 - PTITLEBARINFO pti
8258 -);
8259 -
8260 -struct tagMENUBARINFO {
8261 - DWORD cbSize;
8262 - RECT rcBar;
8263 - HMENU hMenu;
8264 - HWND hwndMenu;
8265 -// BOOL fBarFocused:1;
8266 -// BOOL fFocused:1;
8267 -}
8268 -alias tagMENUBARINFO MENUBARINFO;
8269 -alias tagMENUBARINFO* PMENUBARINFO;
8270 -alias tagMENUBARINFO* LPMENUBARINFO;
8271 -
8272 -extern(Windows) export BOOL GetMenuBarInfo(
8273 - HWND hwnd,
8274 - LONG idObject,
8275 - LONG idItem,
8276 - PMENUBARINFO pmbi
8277 -);
8278 -
8279 -struct tagSCROLLBARINFO {
8280 - DWORD cbSize;
8281 - RECT rcScrollBar;
8282 - int dxyLineButton;
8283 - int xyThumbTop;
8284 - int xyThumbBottom;
8285 - int reserved;
8286 - DWORD rgstate[CCHILDREN_SCROLLBAR+1];
8287 -}
8288 -alias tagSCROLLBARINFO SCROLLBARINFO;
8289 -alias tagSCROLLBARINFO* PSCROLLBARINFO;
8290 -alias tagSCROLLBARINFO* LPSCROLLBARINFO;
8291 -
8292 -extern(Windows) export BOOL GetScrollBarInfo(
8293 - HWND hwnd,
8294 - LONG idObject,
8295 - PSCROLLBARINFO psbi
8296 -);
8297 -
8298 -struct tagCOMBOBOXINFO {
8299 - DWORD cbSize;
8300 - RECT rcItem;
8301 - RECT rcButton;
8302 - DWORD stateButton;
8303 - HWND hwndCombo;
8304 - HWND hwndItem;
8305 - HWND hwndList;
8306 -}
8307 -alias tagCOMBOBOXINFO COMBOBOXINFO;
8308 -alias tagCOMBOBOXINFO* PCOMBOBOXINFO;
8309 -alias tagCOMBOBOXINFO* LPCOMBOBOXINFO;
8310 -
8311 -extern(Windows) export BOOL GetComboBoxInfo(
8312 - HWND hwndCombo,
8313 - PCOMBOBOXINFO pcbi
8314 -);
8315 -
8316 -enum : uint { GA_PARENT = 1 }
8317 -enum : uint { GA_ROOT = 2 }
8318 -enum : uint { GA_ROOTOWNER = 3 }
8319 -
8320 -extern(Windows) export HWND GetAncestor(
8321 - HWND hwnd,
8322 - UINT gaFlags
8323 -);
8324 -
8325 -extern(Windows) export HWND RealChildWindowFromPoint(
8326 - HWND hwndParent,
8327 - POINT ptParentClientCoords
8328 -);
8329 -
8330 -extern(Windows) export UINT RealGetWindowClassA(
8331 - HWND hwnd,
8332 - LPSTR pszType,
8333 - UINT cchType
8334 -);
8335 -
8336 -extern(Windows) export UINT RealGetWindowClassW(
8337 - HWND hwnd,
8338 - LPWSTR pszType,
8339 - UINT cchType
8340 -);
8341 -// #ifdef UNICODE
8342 -alias RealGetWindowClassW RealGetWindowClass;
8343 -// #else
8344 -// #...
8345 -// #endif // !UNICODE
8346 -
8347 -struct tagALTTABINFO {
8348 - DWORD cbSize;
8349 - int cItems;
8350 - int cColumns;
8351 - int cRows;
8352 - int iColFocus;
8353 - int iRowFocus;
8354 - int cxItem;
8355 - int cyItem;
8356 - POINT ptStart;
8357 -}
8358 -alias tagALTTABINFO ALTTABINFO;
8359 -alias tagALTTABINFO* PALTTABINFO;
8360 -alias tagALTTABINFO* LPALTTABINFO;
8361 -
8362 -extern(Windows) export BOOL GetAltTabInfoA(
8363 - HWND hwnd,
8364 - int iItem,
8365 - PALTTABINFO pati,
8366 - LPSTR pszItemText,
8367 - UINT cchItemText
8368 -);
8369 -extern(Windows) export BOOL GetAltTabInfoW(
8370 - HWND hwnd,
8371 - int iItem,
8372 - PALTTABINFO pati,
8373 - LPWSTR pszItemText,
8374 - UINT cchItemText
8375 -);
8376 -// #ifdef UNICODE
8377 -alias GetAltTabInfoW GetAltTabInfo;
8378 -// #else
8379 -// #...
8380 -// #endif // !UNICODE
8381 -
8382 -extern(Windows) export DWORD GetListBoxInfo(
8383 - HWND hwnd
8384 -);
8385 -
8386 -// #endif /* NOWINABLE */
8387 -// #endif /* WINVER >= 0x0500 */
8388 -
8389 -// #if(_WIN32_WINNT >= 0x0500)
8390 -extern(Windows) export BOOL LockWorkStation();
8391 -// #endif /* _WIN32_WINNT >= 0x0500 */
8392 -
8393 -// #if(_WIN32_WINNT >= 0x0500)
8394 -
8395 -extern(Windows) export BOOL UserHandleGrantAccess(
8396 - HANDLE hUserHandle,
8397 - HANDLE hJob,
8398 - BOOL bGrant);
8399 -
8400 -// #endif /* _WIN32_WINNT >= 0x0500 */
8401 -
8402 -// #if(_WIN32_WINNT >= 0x0501)
8403 -
8404 -alias void* HRAWINPUT;
8405 -
8406 -// #define GET_RAWINPUT_CODE_WPARAM(wParam) ((wParam) & 0xff)
8407 -
8408 -enum : uint { RIM_INPUT = 0 }
8409 -
8410 -enum : uint { RIM_INPUTSINK = 1 }
8411 -
8412 -struct tagRAWINPUTHEADER {
8413 - DWORD dwType;
8414 - DWORD dwSize;
8415 - HANDLE hDevice;
8416 - WPARAM wParam;
8417 -}
8418 -alias tagRAWINPUTHEADER RAWINPUTHEADER;
8419 -alias tagRAWINPUTHEADER* PRAWINPUTHEADER;
8420 -alias tagRAWINPUTHEADER* LPRAWINPUTHEADER;
8421 -
8422 -enum : uint { RIM_TYPEMOUSE = 0 }
8423 -enum : uint { RIM_TYPEKEYBOARD = 1 }
8424 -enum : uint { RIM_TYPEHID = 2 }
8425 -
8426 -struct tagRAWMOUSE {
8427 -
8428 - USHORT usFlags;
8429 -union {
8430 - ULONG ulButtons;
8431 -struct {
8432 - USHORT usButtonFlags;
8433 - USHORT usButtonData;
8434 -}
8435 -
8436 -}
8437 -
8438 - ULONG ulRawButtons;
8439 - LONG lLastX;
8440 - LONG lLastY;
8441 - ULONG ulExtraInformation;
8442 -}
8443 -alias tagRAWMOUSE RAWMOUSE;
8444 -alias tagRAWMOUSE* PRAWMOUSE;
8445 -alias tagRAWMOUSE* LPRAWMOUSE;
8446 -
8447 -enum : uint { RI_MOUSE_LEFT_BUTTON_DOWN = 0x0001 }
8448 -enum : uint { RI_MOUSE_LEFT_BUTTON_UP = 0x0002 }
8449 -enum : uint { RI_MOUSE_RIGHT_BUTTON_DOWN = 0x0004 }
8450 -enum : uint { RI_MOUSE_RIGHT_BUTTON_UP = 0x0008 }
8451 -enum : uint { RI_MOUSE_MIDDLE_BUTTON_DOWN = 0x0010 }
8452 -enum : uint { RI_MOUSE_MIDDLE_BUTTON_UP = 0x0020 }
8453 -
8454 -alias RI_MOUSE_LEFT_BUTTON_DOWN RI_MOUSE_BUTTON_1_DOWN;
8455 -alias RI_MOUSE_LEFT_BUTTON_UP RI_MOUSE_BUTTON_1_UP;
8456 -alias RI_MOUSE_RIGHT_BUTTON_DOWN RI_MOUSE_BUTTON_2_DOWN;
8457 -alias RI_MOUSE_RIGHT_BUTTON_UP RI_MOUSE_BUTTON_2_UP;
8458 -alias RI_MOUSE_MIDDLE_BUTTON_DOWN RI_MOUSE_BUTTON_3_DOWN;
8459 -alias RI_MOUSE_MIDDLE_BUTTON_UP RI_MOUSE_BUTTON_3_UP;
8460 -
8461 -enum : uint { RI_MOUSE_BUTTON_4_DOWN = 0x0040 }
8462 -enum : uint { RI_MOUSE_BUTTON_4_UP = 0x0080 }
8463 -enum : uint { RI_MOUSE_BUTTON_5_DOWN = 0x0100 }
8464 -enum : uint { RI_MOUSE_BUTTON_5_UP = 0x0200 }
8465 -
8466 -enum : uint { RI_MOUSE_WHEEL = 0x0400 }
8467 -
8468 -enum : uint { MOUSE_MOVE_RELATIVE = 0 }
8469 -enum : uint { MOUSE_MOVE_ABSOLUTE = 1 }
8470 -enum : uint { MOUSE_VIRTUAL_DESKTOP = 0x02 }
8471 -enum : uint { MOUSE_ATTRIBUTES_CHANGED = 0x04 }
8472 -
8473 -struct tagRAWKEYBOARD {
8474 -
8475 - USHORT MakeCode;
8476 - USHORT Flags;
8477 - USHORT Reserved;
8478 - USHORT VKey;
8479 - UINT Message;
8480 - ULONG ExtraInformation;
8481 -}
8482 -alias tagRAWKEYBOARD RAWKEYBOARD;
8483 -alias tagRAWKEYBOARD* PRAWKEYBOARD;
8484 -alias tagRAWKEYBOARD* LPRAWKEYBOARD;
8485 -
8486 -enum : uint { KEYBOARD_OVERRUN_MAKE_CODE = 0xFF }
8487 -
8488 -enum : uint { RI_KEY_MAKE = 0 }
8489 -enum : uint { RI_KEY_BREAK = 1 }
8490 -enum : uint { RI_KEY_E0 = 2 }
8491 -enum : uint { RI_KEY_E1 = 4 }
8492 -enum : uint { RI_KEY_TERMSRV_SET_LED = 8 }
8493 -enum : uint { RI_KEY_TERMSRV_SHADOW = 0x10 }
8494 -
8495 -struct tagRAWHID {
8496 - DWORD dwSizeHid;
8497 - DWORD dwCount;
8498 - BYTE bRawData[1];
8499 -}
8500 -alias tagRAWHID RAWHID;
8501 -alias tagRAWHID* PRAWHID;
8502 -alias tagRAWHID* LPRAWHID;
8503 -
8504 -struct tagRAWINPUT {
8505 - RAWINPUTHEADER header;
8506 -union {
8507 - RAWMOUSE mouse;
8508 - RAWKEYBOARD keyboard;
8509 - RAWHID hid;
8510 -}
8511 -
8512 -}
8513 -alias tagRAWINPUT RAWINPUT;
8514 -alias tagRAWINPUT* PRAWINPUT;
8515 -alias tagRAWINPUT* LPRAWINPUT;
8516 -
8517 -// #ifdef _WIN64
8518 -// #...
8519 -// #else // _WIN64
8520 -uint RAWINPUT_ALIGN(uint x){ return ((x + DWORD.sizeof - 1) & ~(DWORD.sizeof - 1)); }
8521 -// #endif // _WIN64
8522 -
8523 -// #define NEXTRAWINPUTBLOCK(ptr) ((PRAWINPUT)RAWINPUT_ALIGN((ULONG_PTR)((PBYTE)(ptr) + (ptr)->header.dwSize)))
8524 -
8525 -enum : uint { RID_INPUT = 0x10000003 }
8526 -enum : uint { RID_HEADER = 0x10000005 }
8527 -
8528 -extern(Windows) export UINT GetRawInputData(
8529 - HRAWINPUT hRawInput,
8530 - UINT uiCommand,
8531 - LPVOID pData,
8532 - PUINT pcbSize,
8533 - UINT cbSizeHeader);
8534 -
8535 -enum : uint { RIDI_PREPARSEDDATA = 0x20000005 }
8536 -enum : uint { RIDI_DEVICENAME = 0x20000007 }
8537 -enum : uint { RIDI_DEVICEINFO = 0x2000000b }
8538 -
8539 -struct tagRID_DEVICE_INFO_MOUSE {
8540 - DWORD dwId;
8541 - DWORD dwNumberOfButtons;
8542 - DWORD dwSampleRate;
8543 -}
8544 -alias tagRID_DEVICE_INFO_MOUSE RID_DEVICE_INFO_MOUSE;
8545 -alias tagRID_DEVICE_INFO_MOUSE* PRID_DEVICE_INFO_MOUSE;
8546 -
8547 -struct tagRID_DEVICE_INFO_KEYBOARD {
8548 - DWORD dwType;
8549 - DWORD dwSubType;
8550 - DWORD dwKeyboardMode;
8551 - DWORD dwNumberOfFunctionKeys;
8552 - DWORD dwNumberOfIndicators;
8553 - DWORD dwNumberOfKeysTotal;
8554 -}
8555 -alias tagRID_DEVICE_INFO_KEYBOARD RID_DEVICE_INFO_KEYBOARD;
8556 -alias tagRID_DEVICE_INFO_KEYBOARD* PRID_DEVICE_INFO_KEYBOARD;
8557 -
8558 -struct tagRID_DEVICE_INFO_HID {
8559 - DWORD dwVendorId;
8560 - DWORD dwProductId;
8561 - DWORD dwVersionNumber;
8562 - USHORT usUsagePage;
8563 - USHORT usUsage;
8564 -}
8565 -alias tagRID_DEVICE_INFO_HID RID_DEVICE_INFO_HID;
8566 -alias tagRID_DEVICE_INFO_HID* PRID_DEVICE_INFO_HID;
8567 -
8568 -struct tagRID_DEVICE_INFO {
8569 - DWORD cbSize;
8570 - DWORD dwType;
8571 -union {
8572 - RID_DEVICE_INFO_MOUSE mouse;
8573 - RID_DEVICE_INFO_KEYBOARD keyboard;
8574 - RID_DEVICE_INFO_HID hid;
8575 -}
8576 -
8577 -}
8578 -alias tagRID_DEVICE_INFO RID_DEVICE_INFO;
8579 -alias tagRID_DEVICE_INFO* PRID_DEVICE_INFO;
8580 -alias tagRID_DEVICE_INFO* LPRID_DEVICE_INFO;
8581 -
8582 -extern(Windows) export UINT GetRawInputDeviceInfoA(
8583 - HANDLE hDevice,
8584 - UINT uiCommand,
8585 - LPVOID pData,
8586 - PUINT pcbSize);
8587 -extern(Windows) export UINT GetRawInputDeviceInfoW(
8588 - HANDLE hDevice,
8589 - UINT uiCommand,
8590 - LPVOID pData,
8591 - PUINT pcbSize);
8592 -// #ifdef UNICODE
8593 -alias GetRawInputDeviceInfoW GetRawInputDeviceInfo;
8594 -// #else
8595 -// #...
8596 -// #endif // !UNICODE
8597 -
8598 -extern(Windows) export UINT GetRawInputBuffer(
8599 - PRAWINPUT pData,
8600 - PUINT pcbSize,
8601 - UINT cbSizeHeader);
8602 -
8603 -struct tagRAWINPUTDEVICE {
8604 - USHORT usUsagePage;
8605 - USHORT usUsage;
8606 - DWORD dwFlags;
8607 - HWND hwndTarget;
8608 -}
8609 -alias tagRAWINPUTDEVICE RAWINPUTDEVICE;
8610 -alias tagRAWINPUTDEVICE* PRAWINPUTDEVICE;
8611 -alias tagRAWINPUTDEVICE* LPRAWINPUTDEVICE;
8612 -
8613 -alias RAWINPUTDEVICE* PCRAWINPUTDEVICE;
8614 -
8615 -enum : uint { RIDEV_REMOVE = 0x00000001 }
8616 -enum : uint { RIDEV_EXCLUDE = 0x00000010 }
8617 -enum : uint { RIDEV_PAGEONLY = 0x00000020 }
8618 -enum : uint { RIDEV_NOLEGACY = 0x00000030 }
8619 -enum : uint { RIDEV_CAPTUREMOUSE = 0x00000200 }
8620 -enum : uint { RIDEV_NOHOTKEYS = 0x00000200 }
8621 -enum : uint { RIDEV_EXMODEMASK = 0x000000F0 }
8622 -
8623 -// #define RIDEV_EXMODE(mode) ((mode) & RIDEV_EXMODEMASK)
8624 -
8625 -extern(Windows) export BOOL RegisterRawInputDevices(
8626 - PCRAWINPUTDEVICE pRawInputDevices,
8627 - UINT uiNumDevices,
8628 - UINT cbSize);
8629 -
8630 -extern(Windows) export UINT GetRegisteredRawInputDevices(
8631 - PRAWINPUTDEVICE pRawInputDevices,
8632 - PUINT puiNumDevices,
8633 - UINT cbSize);
8634 -
8635 -struct tagRAWINPUTDEVICELIST {
8636 - HANDLE hDevice;
8637 - DWORD dwType;
8638 -}
8639 -alias tagRAWINPUTDEVICELIST RAWINPUTDEVICELIST;
8640 -alias tagRAWINPUTDEVICELIST* PRAWINPUTDEVICELIST;
8641 -
8642 -extern(Windows) export UINT GetRawInputDeviceList(
8643 - PRAWINPUTDEVICELIST pRawInputDeviceList,
8644 - PUINT puiNumDevices,
8645 - UINT cbSize);
8646 -
8647 -extern(Windows) export LRESULT DefRawInputProc(
8648 - PRAWINPUT* paRawInput,
8649 - INT nInput,
8650 - UINT cbSizeHeader);
8651 -
8652 -// #endif /* _WIN32_WINNT >= 0x0501 */
8653 -
8654 -// #if !defined(RC_INVOKED) /* RC complains about long symbols in #ifs */
8655 -// #if ISOLATION_AWARE_ENABLED
8656 -// #...
8657 -// #endif /* ISOLATION_AWARE_ENABLED */
8658 -// #endif /* RC */
8659 -
8660 -// #ifdef __cplusplus
8661 -// }
8662 -// #endif /* __cplusplus */
8663 -
8664 -// #endif /* !_WINUSER_ */
8665 -
4754 +alias WNDCLASS* LPWNDCLASS, PWNDCLASS;
4755 +alias WNDCLASSEX* LPWNDCLASSEX, PWNDCLASSEX;
4756 +alias MENUITEMINFO* LPMENUITEMINFO;
4757 +alias MSGBOXPARAMS* PMSGBOXPARAMS, LPMSGBOXPARAMS;
4758 +alias HIGHCONTRAST* LPHIGHCONTRAST;
4759 +alias SERIALKEYS* LPSERIALKEYS;
4760 +alias SOUNDSENTRY* LPSOUNDSENTRY;
4761 +alias CREATESTRUCT* LPCREATESTRUCT;
4762 +alias CBT_CREATEWND* LPCBT_CREATEWND;
4763 +alias MDICREATESTRUCT* LPMDICREATESTRUCT;
4764 +alias MULTIKEYHELP* PMULTIKEYHELP, LPMULTIKEYHELP;
4765 +alias MONITORINFOEX* LPMONITORINFOEX;
4766 +alias ICONMETRICS* LPICONMETRICS;
4767 +alias NONCLIENTMETRICS* LPNONCLIENTMETRICS;