KERNEL_VERSION_MAJOR: 0 -> 5
[reactos.git] / include / defines.h
1 /*
2    Defines.h
3
4    Windows32 API definitions
5
6    Copyright (C) 1996, 1997 Free Software Foundation, Inc.
7
8    Author: Scott Christley <scottc@net-community.com>
9
10    This file is part of the Windows32 API Library.
11
12    This library is free software; you can redistribute it and/or
13    modify it under the terms of the GNU Library General Public
14    License as published by the Free Software Foundation; either
15    version 2 of the License, or (at your option) any later version.
16    
17    This library is distributed in the hope that it will be useful,
18    but WITHOUT ANY WARRANTY; without even the implied warranty of
19    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
20    Library General Public License for more details.
21
22    If you are interested in a warranty or support for this source code,
23    contact Scott Christley <scottc@net-community.com> for more information.
24    
25    You should have received a copy of the GNU Library General Public
26    License along with this library; see the file COPYING.LIB.
27    If not, write to the Free Software Foundation, 
28    59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
29 */
30 /* WARNING:  This file is automatically generated. */
31
32 #ifndef _GNU_H_WINDOWS32_DEFINES
33 #define _GNU_H_WINDOWS32_DEFINES
34
35 #ifndef RC_INVOKED
36 #include <ntos/ntdef.h>
37 #include <ntos/registry.h>
38 #endif
39
40 #define WINBASEAPI
41
42
43
44 #ifndef WIN32_NO_STATUS
45 /*
46 #define STATUS_WAIT_0                   (0x00000000L)
47 #define STATUS_ABANDONED_WAIT_0         (0x00000080L)
48 #define STATUS_USER_APC                 (0x000000C0L)
49 #define STATUS_TIMEOUT                  (0x00000102L)
50 #define STATUS_PENDING                  (0x00000103L)
51 */
52 #endif /* WIN32_NO_STATUS */
53
54 #define GA_PARENT               (1)
55 #define GA_ROOT                 (2)
56 #define GA_ROOTOWNER            (3)
57
58 /* CreateFile, GetFileAttributes, SetFileAttributes */
59
60 #define SECURITY_ANONYMOUS      (0)
61 #define SECURITY_IDENTIFICATION (65536)
62 #define SECURITY_IMPERSONATION  (131072)
63 #define SECURITY_DELEGATION     (196608)
64 #define SECURITY_CONTEXT_TRACKING       (262144)
65 #define SECURITY_EFFECTIVE_ONLY (524288)
66 #define SECURITY_SQOS_PRESENT   (1048576)
67
68
69
70
71 #ifndef WIN32_LEAN_AND_MEAN
72
73 #ifdef __cplusplus
74 extern "C" {
75 #endif /* __cplusplus */
76
77 #define MAX_PATH        (260)
78 #define UNICODE_NULL ((WCHAR)0)
79 #define LF_FACESIZE     (32)
80 #define LF_FULLFACESIZE (64)
81 #define ELF_VENDOR_SIZE (4)
82 #define MAX_DEFAULTCHAR (2)
83 #define MAX_LEADBYTES   (12)
84 #define MENU_TEXT_LEN   (40)
85 #define MAX_LANA        (254)
86 #define NCBNAMSZ        (16)
87 #define NETBIOS_NAME_LEN        (16)
88 #define OFS_MAXPATHNAME (128)
89 #define MAX_TAB_STOPS   (32)
90 #define RAS_MaxCallbackNumber   (128)
91 #define RAS_MaxDeviceName       (128)
92 #define RAS_MaxDeviceType       (16)
93 #define RAS_MaxEntryName        (256)
94 #define RAS_MaxIpAddress        (15)
95 #define RAS_MaxIpxAddress       (21)
96 #define RAS_MaxPhoneNumber      (128)
97 #define UNLEN   (256)
98 #define PWLEN   (256)
99 #define CNLEN   (15)
100 #define DNLEN   (15)
101 /* Unsigned types max */
102 #define MAXDWORD         (0xFFFFFFFF)
103 #define MAXWORD          (0xFFFF)
104 #define MAXBYTE          (0xFF)
105 /* Signed types max/min */
106 #define MINCHAR          (0x80)
107 #define MAXCHAR          (0x7F)
108 #define MINSHORT         (0x8000)
109 #define MAXSHORT         (0x7FFF)
110 #define MINLONG          (0x80000000)
111 #define MAXLONG          (0x7FFFFFFF)
112
113 /* _llseek */
114 #define FILE_BEGIN      (0)
115 #define FILE_CURRENT    (1)
116 #define FILE_END        (2)
117
118 /* _lopen, LZOpenFile, OpenFile */
119 #define OF_READ (0)
120 #define OF_READWRITE    (2)
121 #define OF_WRITE        (1)
122 #define OF_SHARE_COMPAT (0)
123 #define OF_SHARE_DENY_NONE      (64)
124 #define OF_SHARE_DENY_READ      (48)
125 #define OF_SHARE_DENY_WRITE     (32)
126 #define OF_SHARE_EXCLUSIVE      (16)
127 #define OF_CANCEL       (2048)
128 #define OF_CREATE       (4096)
129 #define OF_DELETE       (512)
130 #define OF_EXIST        (16384)
131 #define OF_PARSE        (256)
132 #define OF_PROMPT       (8192)
133 #define OF_REOPEN       (32768)
134 #define OF_VERIFY       (1024)
135
136 /* ActivateKeyboardLayout, LoadKeyboardLayout */
137 #define HKL_NEXT        (1)
138 #define HKL_PREV        (0)
139 #define KLF_REORDER     (8)
140 #define KLF_UNLOADPREVIOUS      (4)
141 #define KLF_ACTIVATE    (1)
142 #define KLF_NOTELLSHELL (128)
143 #define KLF_REPLACELANG (16)
144 #define KLF_SUBSTITUTE_OK       (2)
145
146 /* AppendMenu */
147 #define MF_BITMAP       (0x4L)
148 #define MF_DISABLED     (0x2L)
149 #define MF_ENABLED      (0L)
150 #define MF_GRAYED       (0x1L)
151 #define MF_HELP         (0x4000L)
152 #define MF_MENUBARBREAK (0x20L)
153 #define MF_MENUBREAK    (0x40L)
154 #define MF_MOUSESELECT  (0x8000L)
155 #define MF_OWNERDRAW    (0x100L)
156 #define MF_POPUP        (0x10L)
157 #define MF_SEPARATOR    (0x800L)
158 #define MF_STRING       (0L)
159 #define MF_SYSMENU      (0x2000L)
160 #define MF_USECHECKBITMAPS      (0x200L)
161 #define MF_RIGHTJUSTIFY MF_HELP
162
163 /* Ternary Raster Operations - BitBlt */
164 #define BLACKNESS       0x00000042
165 #define NOTSRCERASE     0x001100A6
166 #define NOTSRCCOPY      0x00330008
167 #define SRCERASE        0x00440328
168 #define DSTINVERT       0x00550009
169 #define PATINVERT       0x005A0049
170 #define SRCINVERT       0x00660046
171 #define SRCAND  0x008800C6
172 #define MERGEPAINT      0x00BB0226
173 #define MERGECOPY       0x00C000CA
174 #define SRCCOPY 0x00CC0020
175 #define SRCPAINT        0x00EE0086
176 #define PATCOPY 0x00F00021
177 #define PATPAINT        0x00FB0A09
178 #define WHITENESS       0x00FF0062
179
180 /* Binary Raster Operations */
181 #define R2_BLACK        (1)
182 #define R2_COPYPEN      (13)
183 #define R2_MASKNOTPEN   (3)
184 #define R2_MASKPEN      (9)
185 #define R2_MASKPENNOT   (5)
186 #define R2_MERGENOTPEN  (12)
187 #define R2_MERGEPEN     (15)
188 #define R2_MERGEPENNOT  (14)
189 #define R2_NOP  (11)
190 #define R2_NOT  (6)
191 #define R2_NOTCOPYPEN   (4)
192 #define R2_NOTMASKPEN   (8)
193 #define R2_NOTMERGEPEN  (2)
194 #define R2_NOTXORPEN    (10)
195 #define R2_WHITE        (16)
196 #define R2_XORPEN       (7)
197
198 /* BroadcastSystemMessage */
199 #define BSF_FLUSHDISK   (4)
200 #define BSF_FORCEIFHUNG (32)
201 #define BSF_IGNORECURRENTTASK   (2)
202 #define BSF_NOHANG      (8)
203 #define BSF_POSTMESSAGE (16)
204 #define BSF_QUERY       (1)
205 #define BSM_ALLCOMPONENTS       (0)
206 #define BSM_APPLICATIONS        (8)
207 #define BSM_INSTALLABLEDRIVERS  (4)
208 #define BSM_NETDRIVER   (2)
209 #define BSM_VXDS        (1)
210 #define BROADCAST_QUERY_DENY    (1112363332)
211
212 /* BrowseCallbackProc */
213
214 /* CallNamedPipe */
215 #define NMPWAIT_NOWAIT  (1)
216 #define NMPWAIT_WAIT_FOREVER    (-1)
217 #define NMPWAIT_USE_DEFAULT_WAIT        (0)
218
219 /* CascadeWindows, TileWindows */
220 #define MDITILE_SKIPDISABLED    (2)
221 #define MDITILE_HORIZONTAL      (1)
222 #define MDITILE_VERTICAL        (0)
223
224 /* CBTProc */
225 #define HCBT_ACTIVATE   (5)
226 #define HCBT_CLICKSKIPPED       (6)
227 #define HCBT_CREATEWND  (3)
228 #define HCBT_DESTROYWND (4)
229 #define HCBT_KEYSKIPPED (7)
230 #define HCBT_MINMAX     (1)
231 #define HCBT_MOVESIZE   (0)
232 #define HCBT_QS (2)
233 #define HCBT_SETFOCUS   (9)
234 #define HCBT_SYSCOMMAND (8)
235
236 /* ChangeDisplaySettings */
237 #define DM_BITSPERPEL   (0x40000L)
238 #define DM_PELSWIDTH    (0x80000L)
239 #define DM_PELSHEIGHT   (0x100000L)
240 #define DM_DISPLAYFLAGS (0x200000L)
241 #define DM_DISPLAYFREQUENCY     (0x400000L)
242 #define CDS_UPDATEREGISTRY      (1)
243 #define CDS_TEST        (2)
244 #define DISP_CHANGE_SUCCESSFUL  (0)
245 #define DISP_CHANGE_RESTART     (1)
246 #define DISP_CHANGE_BADFLAGS    (-4)
247 #define DISP_CHANGE_FAILED      (-1)
248 #define DISP_CHANGE_BADMODE     (-2)
249 #define DISP_CHANGE_NOTUPDATED  (-3)
250 #define DISP_CHANGE_BADPARAM    (-5)
251
252 /* ChangeServiceConfig */
253 #define SERVICE_NO_CHANGE       (-1)
254 #define SERVICE_KERNEL_DRIVER           (1)
255 #define SERVICE_FILE_SYSTEM_DRIVER      (2)
256 #define SERVICE_RECOGNIZER_DRIVER       (8)
257 #define SERVICE_WIN32_OWN_PROCESS       (16)
258 #define SERVICE_WIN32_SHARE_PROCESS     (32)
259 #define SERVICE_INTERACTIVE_PROCESS     (256)
260 #define SERVICE_BOOT_START      (0)
261 #define SERVICE_SYSTEM_START    (1)
262 #define SERVICE_AUTO_START      (2)
263 #define SERVICE_DEMAND_START    (3)
264 #define SERVICE_DISABLED        (4)
265 #define SERVICE_CONFIG_DESCRIPTION (1)
266 #define SERVICE_CONFIG_FAILURE_ACTIONS (2)
267
268 /* SERVICE_STATUS structure */
269 #define SERVICE_STOPPED (1)
270 #define SERVICE_START_PENDING   (2)
271 #define SERVICE_STOP_PENDING    (3)
272 #define SERVICE_RUNNING (4)
273 #define SERVICE_CONTINUE_PENDING        (5)
274 #define SERVICE_PAUSE_PENDING   (6)
275 #define SERVICE_PAUSED  (7)
276 #define SERVICE_ACCEPT_STOP     (1)
277 #define SERVICE_ACCEPT_PAUSE_CONTINUE   (2)
278 #define SERVICE_ACCEPT_SHUTDOWN (4)
279 #define SERVICE_ACCEPT_PARAMCHANGE (8)
280 #define SERVICE_ACCEPT_NETBINDCHANGE (16)
281 #define SERVICE_ACCEPT_HARDWAREPROFILECHANGE (32)
282 #define SERVICE_ACCEPT_POWEREVENT (64)
283 #define SERVICE_ACCEPT_SESSIONCHANGE (128)
284
285 /* CheckDlgButton */
286 #define BST_CHECKED     (1)
287 #define BST_INDETERMINATE       (2)
288 #define BST_UNCHECKED   (0)
289 #define BST_FOCUS       (8)
290 #define BST_PUSHED      (4)
291
292 /* CheckMenuItem, HiliteMenuItem */
293 #define MF_BYCOMMAND    (0L)
294 #define MF_BYPOSITION   (0x400L)
295 #define MF_CHECKED      (0x8L)
296 #define MF_UNCHECKED    (0L)
297 #define MF_HILITE       (0x80L)
298 #define MF_UNHILITE     (0L)
299
300 /* ChildWindowFromPointEx */
301 #define CWP_ALL (0)
302 #define CWP_SKIPINVISIBLE       (1)
303 #define CWP_SKIPDISABLED        (2)
304 #define CWP_SKIPTRANSPARENT     (4)
305
306 /* ClearCommError */
307 #define CE_BREAK        (16)
308 #define CE_DNS  (2048)
309 #define CE_FRAME        (8)
310 #define CE_IOE  (1024)
311 #define CE_MODE (32768)
312 #define CE_OOP  (4096)
313 #define CE_OVERRUN      (2)
314 #define CE_PTO  (512)
315 #define CE_RXOVER       (1)
316 #define CE_RXPARITY     (4)
317 #define CE_TXFULL       (256)
318
319 /* ChooseMatchToTarget */
320
321 /* CombineRgn */
322 #define RGN_AND (1)
323 #define RGN_COPY        (5)
324 #define RGN_DIFF        (4)
325 #define RGN_OR  (2)
326 #define RGN_XOR (3)
327 #define NULLREGION      (1)
328 #define SIMPLEREGION    (2)
329 #define COMPLEXREGION   (3)
330 #define ERROR   (0)
331
332 #define HW_PROFILE_GUIDLEN         39
333 #define MAX_PROFILE_LEN            80
334 /* CommonDlgExtendedError */
335 #define CDERR_DIALOGFAILURE     (0xffff)
336 #define CDERR_FINDRESFAILURE    (6)
337 #define CDERR_INITIALIZATION    (2)
338 #define CDERR_LOADRESFAILURE    (7)
339 #define CDERR_LOADSTRFAILURE    (5)
340 #define CDERR_LOCKRESFAILURE    (8)
341 #define CDERR_MEMALLOCFAILURE   (9)
342 #define CDERR_MEMLOCKFAILURE    (10)
343 #define CDERR_NOHINSTANCE       (4)
344 #define CDERR_NOHOOK            (11)
345 #define CDERR_NOTEMPLATE        (3)
346 #define CDERR_REGISTERMSGFAIL   (12)
347 #define CDERR_STRUCTSIZE        (1)
348 #define PDERR_CREATEICFAILURE   (0x1000 + 10)
349 #define PDERR_DEFAULTDIFFERENT  (0x1000 + 12)
350 #define PDERR_DNDMMISMATCH      (0x1000 + 9)
351 #define PDERR_GETDEVMODEFAIL    (0x1000 + 5)
352 #define PDERR_INITFAILURE       (0x1000 + 6)
353 #define PDERR_LOADDRVFAILURE    (0x1000 + 4)
354 #define PDERR_NODEFAULTPRN      (0x1000 + 8)
355 #define PDERR_NODEVICES         (0x1000 + 7)
356 #define PDERR_PARSEFAILURE      (0x1000 + 2)
357 #define PDERR_PRINTERNOTFOUND   (0x1000 + 11)
358 #define PDERR_RETDEFFAILURE     (0x1000 + 3)
359 #define PDERR_SETUPFAILURE      (0x1000 + 1)
360 #define CFERR_MAXLESSTHANMIN    (0x2000 + 2)
361 #define CFERR_NOFONTS           (0x2000 + 1)
362 #define FNERR_BUFFERTOOSMALL    (0x3000 + 3)
363 #define FNERR_INVALIDFILENAME   (0x3000 + 2)
364 #define FNERR_SUBCLASSFAILURE   (0x3000 + 1)
365 #define FRERR_BUFFERLENGTHZERO  (0x4000 + 1)
366
367 /* CompareString, LCMapString */
368 #define LOCALE_SYSTEM_DEFAULT   (0x800L)
369 #define LOCALE_USER_DEFAULT     (0x400L)
370 #define NORM_IGNORECASE (1)
371 #define NORM_IGNOREKANATYPE     (65536)
372 #define NORM_IGNORENONSPACE     (2)
373 #define NORM_IGNORESYMBOLS      (4)
374 #define NORM_IGNOREWIDTH        (131072)
375 #define SORT_STRINGSORT (4096)
376 #define LCMAP_BYTEREV   (2048)
377 #define LCMAP_FULLWIDTH (8388608)
378 #define LCMAP_HALFWIDTH (4194304)
379 #define LCMAP_HIRAGANA  (1048576)
380 #define LCMAP_KATAKANA  (2097152)
381 #define LCMAP_LOWERCASE (256)
382 #define LCMAP_SORTKEY   (1024)
383 #define LCMAP_UPPERCASE (512)
384
385 /* ContinueDebugEvent */
386 #define DBG_CONTINUE    (0x10002L)
387 #define DBG_CONTROL_BREAK       (0x40010008L)
388 #define DBG_CONTROL_C   (0x40010005L)
389 #define DBG_EXCEPTION_NOT_HANDLED       (0x80010001L)
390 #define DBG_TERMINATE_THREAD            (0x40010003L)
391 #define DBG_TERMINATE_PROCESS           (0x40010004L)
392
393 /* ControlService */
394 #define SERVICE_CONTROL_STOP    (1)
395 #define SERVICE_CONTROL_PAUSE   (2)
396 #define SERVICE_CONTROL_CONTINUE        (3)
397 #define SERVICE_CONTROL_INTERROGATE     (4)
398 #define SERVICE_CONTROL_SHUTDOWN        (5)
399 #define SERVICE_CONTROL_PARAMCHANGE (6)
400 #define SERVICE_CONTROL_NETBINDADD (7)
401 #define SERVICE_CONTROL_NETBINDREMOVE (8)
402 #define SERVICE_CONTROL_NETBINDENABLE (9)
403 #define SERVICE_CONTROL_NETBINDDISABLE (10)
404 #define SERVICE_CONTROL_DEVICEEVENT (11)
405 #define SERVICE_CONTROL_HARDWAREPROFILECHANGE (12)
406 #define SERVICE_CONTROL_POWEREVENT (13)
407 #define SERVICE_CONTROL_SESSIONCHANGE (14)
408
409 /* CopyImage, LoadImage */
410 #define IMAGE_BITMAP    (0)
411 #define IMAGE_CURSOR    (2)
412 #define IMAGE_ENHMETAFILE       (1)
413 #define IMAGE_ICON      (1)
414 #define LR_COPYDELETEORG        (8)
415 #define LR_COPYRETURNORG        (4)
416 #define LR_MONOCHROME   (1)
417 #define LR_CREATEDIBSECTION     (8192)
418 #define LR_DEFAULTSIZE  (64)
419 #define LR_SHARED       (32768)
420
421 /* CreateDesktop */
422 #define DF_ALLOWOTHERACCOUNTHOOK        (0x1L)
423 #define DESKTOP_CREATEMENU      (0x4L)
424 #define DESKTOP_CREATEWINDOW    (0x2L)
425 #define DESKTOP_ENUMERATE       (0x40L)
426 #define DESKTOP_HOOKCONTROL     (0x8L)
427 #define DESKTOP_JOURNALPLAYBACK (0x20L)
428 #define DESKTOP_JOURNALRECORD   (0x10L)
429 #define DESKTOP_READOBJECTS     (0x1L)
430 #define DESKTOP_SWITCHDESKTOP   (0x100L)
431 #define DESKTOP_WRITEOBJECTS    (0x80L)
432 #define WSF_VISIBLE     (0x1L)
433
434 /* CreateDIBitmap */
435 #define CBM_INIT        (0x4L)
436 #define DIB_PAL_COLORS  (1)
437 #define DIB_RGB_COLORS  (0)
438
439 /* CreateFileMapping, VirtualAlloc, VirtualFree, VirtualProtect */
440
441 /* CreateFont */
442 #define FW_DONTCARE     (0)
443 #define FW_THIN (100)
444 #define FW_EXTRALIGHT   (200)
445 #define FW_LIGHT        (300)
446 #define FW_NORMAL       (400)
447 #define FW_REGULAR FW_NORMAL
448 #define FW_MEDIUM       (500)
449 #define FW_SEMIBOLD     (600)
450 #define FW_BOLD (700)
451 #define FW_EXTRABOLD    (800)
452 #define FW_HEAVY        (900)
453 #define ANSI_CHARSET    (0)
454 #define DEFAULT_CHARSET (1)
455 #define SYMBOL_CHARSET  (2)
456 #define SHIFTJIS_CHARSET        (128)
457 #define HANGEUL_CHARSET (129)
458 #define GB2312_CHARSET  (134)
459 #define CHINESEBIG5_CHARSET     (136)
460 #define GREEK_CHARSET   (161)
461 #define TURKISH_CHARSET (162)
462 #define HEBREW_CHARSET  (177)
463 #define ARABIC_CHARSET  (178)
464 #define BALTIC_CHARSET  (186)
465 #define RUSSIAN_CHARSET (204)
466 #define THAI_CHARSET    (222)
467 #define EASTEUROPE_CHARSET      (238)
468 #define OEM_CHARSET     (255)
469 #define OUT_DEFAULT_PRECIS      (0)
470 #define OUT_STRING_PRECIS       (1)
471 #define OUT_CHARACTER_PRECIS    (2)
472 #define OUT_STROKE_PRECIS       (3)
473 #define OUT_TT_PRECIS   (4)
474 #define OUT_DEVICE_PRECIS       (5)
475 #define OUT_RASTER_PRECIS       (6)
476 #define OUT_TT_ONLY_PRECIS      (7)
477 #define OUT_OUTLINE_PRECIS      (8)
478 #define CLIP_DEFAULT_PRECIS     (0)
479 #define CLIP_CHARACTER_PRECIS   (1)
480 #define CLIP_STROKE_PRECIS      (2)
481 #define CLIP_MASK       (15)
482 #define CLIP_LH_ANGLES  (16)
483 #define CLIP_TT_ALWAYS  (32)
484 #define CLIP_EMBEDDED   (128)
485 #define DEFAULT_QUALITY (0)
486 #define DRAFT_QUALITY   (1)
487 #define PROOF_QUALITY   (2)
488 #define DEFAULT_PITCH   (0)
489 #define FIXED_PITCH     (1)
490 #define VARIABLE_PITCH  (2)
491 #define FF_DECORATIVE   (80)
492 #define FF_DONTCARE     (0)
493 #define FF_MODERN       (48)
494 #define FF_ROMAN        (16)
495 #define FF_SCRIPT       (64)
496 #define FF_SWISS        (32)
497
498 /* CreateHatchBrush */
499 #define HS_BDIAGONAL    (3)
500 #define HS_CROSS        (4)
501 #define HS_DIAGCROSS    (5)
502 #define HS_FDIAGONAL    (2)
503 #define HS_HORIZONTAL   (0)
504 #define HS_VERTICAL     (1)
505
506 /* CreateIconFromResourceEx */
507 #define LR_DEFAULTCOLOR (0)
508 #define LR_LOADREALSIZE (128)
509 #define LR_MONOCHROME   (1)
510
511 /* CreateMailslot, GetMailslotInfo */
512 #define MAILSLOT_WAIT_FOREVER   (0xffffffffL)
513 #define MAILSLOT_NO_MESSAGE     (0xffffffffL)
514
515 /* CreateMappedBitmap */
516 #define CMB_MASKED      (2)
517
518 /* CreateNamedPipe */
519 #define PIPE_ACCESS_DUPLEX      (3)
520 #define PIPE_ACCESS_INBOUND     (1)
521 #define PIPE_ACCESS_OUTBOUND    (2)
522 #define WRITE_DAC       (0x40000L)
523 #define WRITE_OWNER     (0x80000L)
524 #define ACCESS_SYSTEM_SECURITY  (0x1000000L)
525 #define PIPE_TYPE_BYTE  (0)
526 #define PIPE_TYPE_MESSAGE       (4)
527 #define PIPE_READMODE_BYTE      (0)
528 #define PIPE_READMODE_MESSAGE   (2)
529 #define PIPE_WAIT       (0)
530 #define PIPE_NOWAIT     (1)
531 #define PIPE_UNLIMITED_INSTANCES (255)
532
533 /* CreatePen, ExtCreatePen */
534 #define PS_GEOMETRIC    (65536)
535 #define PS_COSMETIC     (0)
536 #define PS_ALTERNATE    (8)
537 #define PS_SOLID        (0)
538 #define PS_DASH (1)
539 #define PS_DOT  (2)
540 #define PS_DASHDOT      (3)
541 #define PS_DASHDOTDOT   (4)
542 #define PS_NULL (5)
543 #define PS_USERSTYLE    (7)
544 #define PS_INSIDEFRAME  (6)
545 #define PS_ENDCAP_ROUND (0)
546 #define PS_ENDCAP_SQUARE        (256)
547 #define PS_ENDCAP_FLAT  (512)
548 #define PS_JOIN_BEVEL   (4096)
549 #define PS_JOIN_MITER   (8192)
550 #define PS_JOIN_ROUND   (0)
551 #define PS_STYLE_MASK   (15)
552 #define PS_ENDCAP_MASK  (3840)
553 #define PS_TYPE_MASK    (983040)
554
555 /* CreatePolygonRgn */
556 #define ALTERNATE       (1)
557 #define WINDING (2)
558
559
560 /* CreateService */
561 #define SERVICE_CHANGE_CONFIG   (2)
562 #define SERVICE_ENUMERATE_DEPENDENTS    (8)
563 #define SERVICE_INTERROGATE     (128)
564 #define SERVICE_PAUSE_CONTINUE  (64)
565 #define SERVICE_QUERY_CONFIG    (1)
566 #define SERVICE_QUERY_STATUS    (4)
567 #define SERVICE_START   (16)
568 #define SERVICE_STOP    (32)
569 #define SERVICE_USER_DEFINED_CONTROL    (256)
570 #define SERVICE_WIN32_OWN_PROCESS       (16)
571 #define SERVICE_WIN32_SHARE_PROCESS     (32)
572 #define SERVICE_KERNEL_DRIVER   (1)
573 #define SERVICE_FILE_SYSTEM_DRIVER      (2)
574 #define SERVICE_INTERACTIVE_PROCESS     (256)
575 #define SERVICE_BOOT_START      (0)
576 #define SERVICE_SYSTEM_START    (1)
577 #define SERVICE_AUTO_START      (2)
578 #define SERVICE_DEMAND_START    (3)
579 #define SERVICE_DISABLED        (4)
580 #define SERVICE_ERROR_IGNORE    (0)
581 #define SERVICE_ERROR_NORMAL    (1)
582 #define SERVICE_ERROR_SEVERE    (2)
583 #define SERVICE_ERROR_CRITICAL  (3)
584 #define SERVICE_RUNS_IN_SYSTEM_PROCESS (1)
585 #define SERVICE_ALL_ACCESS             (STANDARD_RIGHTS_REQUIRED     | \
586                                         SERVICE_QUERY_CONFIG         | \
587                                         SERVICE_CHANGE_CONFIG        | \
588                                         SERVICE_QUERY_STATUS         | \
589                                         SERVICE_ENUMERATE_DEPENDENTS | \
590                                         SERVICE_START                | \
591                                         SERVICE_STOP                 | \
592                                         SERVICE_PAUSE_CONTINUE       | \
593                                         SERVICE_INTERROGATE          | \
594                                         SERVICE_USER_DEFINED_CONTROL)
595
596 /* CreateTapePartition, WriteTapemark */
597 #define TAPE_FIXED_PARTITIONS   (0L)
598 #define TAPE_INITIATOR_PARTITIONS       (0x2L)
599 #define TAPE_SELECT_PARTITIONS  (0x1L)
600 #define TAPE_FILEMARKS  (0x1L)
601 #define TAPE_LONG_FILEMARKS     (0x3L)
602 #define TAPE_SETMARKS   (0L)
603 #define TAPE_SHORT_FILEMARKS    (0x2L)
604
605 /* CreateWindow */
606 #define CW_USEDEFAULT   (0x80000000L)
607 #define WS_BORDER       (0x800000L)
608 #define WS_CAPTION      (0xc00000L)
609 #define WS_CHILD        (0x40000000L)
610 #define WS_CHILDWINDOW  (0x40000000L)
611 #define WS_CLIPCHILDREN (0x2000000L)
612 #define WS_CLIPSIBLINGS (0x4000000L)
613 #define WS_DISABLED     (0x8000000L)
614 #define WS_DLGFRAME     (0x400000L)
615 #define WS_GROUP        (0x20000L)
616 #define WS_HSCROLL      (0x100000L)
617 #define WS_ICONIC       (0x20000000L)
618 #define WS_MAXIMIZE     (0x1000000L)
619 #define WS_MAXIMIZEBOX  (0x10000L)
620 #define WS_MINIMIZE     (0x20000000L)
621 #define WS_MINIMIZEBOX  (0x20000L)
622 #define WS_OVERLAPPED   (0L)
623 #define WS_OVERLAPPEDWINDOW     (0xcf0000L)
624 #define WS_POPUP        (0x80000000L)
625 #define WS_POPUPWINDOW  (0x80880000L)
626 #define WS_SIZEBOX      (0x40000L)
627 #define WS_SYSMENU      (0x80000L)
628 #define WS_TABSTOP      (0x10000L)
629 #define WS_THICKFRAME   (0x40000L)
630 #define WS_TILED        (0L)
631 #define WS_TILEDWINDOW  (0xcf0000L)
632 #define WS_VISIBLE      (0x10000000L)
633 #define WS_VSCROLL      (0x200000L)
634 #define MDIS_ALLCHILDSTYLES     (0x1)
635 #define BS_3STATE       (0x5L)
636 #define BS_AUTO3STATE   (0x6L)
637 #define BS_AUTOCHECKBOX (0x3L)
638 #define BS_AUTORADIOBUTTON      (0x9L)
639 #define BS_BITMAP       (0x80L)
640 #define BS_BOTTOM       (0x800L)
641 #define BS_CENTER       (0x300L)
642 #define BS_CHECKBOX     (0x2L)
643 #define BS_DEFPUSHBUTTON        (0x1L)
644 #define BS_GROUPBOX     (0x7L)
645 #define BS_ICON (0x40L)
646 #define BS_LEFT (0x100L)
647 #define BS_LEFTTEXT     (0x20L)
648 #define BS_MULTILINE    (0x2000L)
649 #define BS_NOTIFY       (0x4000L)
650 #define BS_OWNERDRAW    (0xbL)
651 #define BS_PUSHBUTTON   (0L)
652 #define BS_PUSHLIKE     (0x1000L)
653 #define BS_RADIOBUTTON  (0x4L)
654 #define BS_RIGHT        (0x200L)
655 #define BS_RIGHTBUTTON  (0x20L)
656 #define BS_TEXT (0L)
657 #define BS_TOP  (0x400L)
658 #define BS_USERBUTTON   (0x8L)
659 #define BS_VCENTER      (0xc00L)
660 #define BS_FLAT (0x8000L)
661 #define CBS_AUTOHSCROLL (0x40L)
662 #define CBS_DISABLENOSCROLL     (0x800L)
663 #define CBS_DROPDOWN    (0x2L)
664 #define CBS_DROPDOWNLIST        (0x3L)
665 #define CBS_HASSTRINGS  (0x200L)
666 #define CBS_LOWERCASE   (0x4000L)
667 #define CBS_NOINTEGRALHEIGHT    (0x400L)
668 #define CBS_OEMCONVERT  (0x80L)
669 #define CBS_OWNERDRAWFIXED      (0x10L)
670 #define CBS_OWNERDRAWVARIABLE   (0x20L)
671 #define CBS_SIMPLE      (0x1L)
672 #define CBS_SORT        (0x100L)
673 #define CBS_UPPERCASE   (0x2000L)
674 #define ES_AUTOHSCROLL  (0x80L)
675 #define ES_AUTOVSCROLL  (0x40L)
676 #define ES_CENTER       (0x1L)
677 #define ES_LEFT (0L)
678 #define ES_LOWERCASE    (0x10L)
679 #define ES_MULTILINE    (0x4L)
680 #define ES_NOHIDESEL    (0x100L)
681 #define ES_NUMBER       (0x2000L)
682 #define ES_OEMCONVERT   (0x400L)
683 #define ES_PASSWORD     (0x20L)
684 #define ES_READONLY     (0x800L)
685 #define ES_RIGHT        (0x2L)
686 #define ES_UPPERCASE    (0x8L)
687 #define ES_WANTRETURN   (0x1000L)
688 #define LBS_DISABLENOSCROLL     (0x1000L)
689 #define LBS_EXTENDEDSEL (0x800L)
690 #define LBS_HASSTRINGS  (0x40L)
691 #define LBS_MULTICOLUMN (0x200L)
692 #define LBS_MULTIPLESEL (0x8L)
693 #define LBS_NODATA      (0x2000L)
694 #define LBS_NOINTEGRALHEIGHT    (0x100L)
695 #define LBS_NOREDRAW    (0x4L)
696 #define LBS_NOSEL       (0x4000L)
697 #define LBS_NOTIFY      (0x1L)
698 #define LBS_OWNERDRAWFIXED      (0x10L)
699 #define LBS_OWNERDRAWVARIABLE   (0x20L)
700 #define LBS_SORT        (0x2L)
701 #define LBS_STANDARD    (0xa00003L)
702 #define LBS_USETABSTOPS (0x80L)
703 #define LBS_WANTKEYBOARDINPUT   (0x400L)
704 #define SBS_BOTTOMALIGN (0x4L)
705 #define SBS_HORZ        (0L)
706 #define SBS_LEFTALIGN   (0x2L)
707 #define SBS_RIGHTALIGN  (0x4L)
708 #define SBS_SIZEBOX     (0x8L)
709 #define SBS_SIZEBOXBOTTOMRIGHTALIGN     (0x4L)
710 #define SBS_SIZEBOXTOPLEFTALIGN (0x2L)
711 #define SBS_SIZEGRIP    (0x10L)
712 #define SBS_TOPALIGN    (0x2L)
713 #define SBS_VERT        (0x1L)
714 #define SS_BITMAP       (0xeL)
715 #define SS_BLACKFRAME   (0x7L)
716 #define SS_BLACKRECT    (0x4L)
717 #define SS_CENTER       (0x1L)
718 #define SS_CENTERIMAGE  (0x200L)
719 #define SS_ELLIPSISMASK (0xC000L)
720 #define SS_ENDELLIPSIS  (0x4000L)
721 #define SS_ENHMETAFILE  (0xfL)
722 #define SS_ETCHEDFRAME  (0x12L)
723 #define SS_ETCHEDHORZ   (0x10L)
724 #define SS_ETCHEDVERT   (0x11L)
725 #define SS_GRAYFRAME    (0x8L)
726 #define SS_GRAYRECT     (0x5L)
727 #define SS_ICON (0x3L)
728 #define SS_LEFT (0L)
729 #define SS_LEFTNOWORDWRAP       (0xcL)
730 #define SS_NOPREFIX     (0x80L)
731 #define SS_NOTIFY       (0x100L)
732 #define SS_OWNERDRAW    (0xdL)
733 #define SS_PATHELLIPSIS (0x8000L)
734 #define SS_REALSIZEIMAGE        (0x800L)
735 #define SS_RIGHT        (0x2L)
736 #define SS_RIGHTJUST    (0x400L)
737 #define SS_SIMPLE       (0xbL)
738 #define SS_SUNKEN       (0x1000L)
739 #define SS_TYPEMASK     (0x1FL)
740 #define SS_USERITEM     (0xaL)
741 #define SS_WHITEFRAME   (0x9L)
742 #define SS_WHITERECT    (0x6L)
743 #define SS_WORDELLIPSIS (0xC000L)
744 #define DS_3DLOOK       (0x4L)
745 #define DS_ABSALIGN     (0x1L)
746 #define DS_CENTER       (0x800L)
747 #define DS_CENTERMOUSE  (0x1000L)
748 #define DS_CONTEXTHELP  (0x2000L)
749 #define DS_CONTROL      (0x400L)
750 #define DS_FIXEDSYS     (0x8L)
751 #define DS_LOCALEDIT    (0x20L)
752 #define DS_MODALFRAME   (0x80L)
753 #define DS_NOFAILCREATE (0x10L)
754 #define DS_NOIDLEMSG    (0x100L)
755 #define DS_SETFONT      (0x40L)
756 #define DS_SETFOREGROUND        (0x200L)
757 #define DS_SYSMODAL     (0x2L)
758
759 /* CreateWindowEx */
760 #define WS_EX_ACCEPTFILES       (0x10L)
761 #define WS_EX_APPWINDOW (0x40000L)
762 #define WS_EX_CLIENTEDGE        (0x200L)
763 #define WS_EX_CONTEXTHELP       (0x400L)
764 #define WS_EX_CONTROLPARENT     (0x10000L)
765 #define WS_EX_DLGMODALFRAME     (0x1L)
766 #define WS_EX_LEFT      (0L)
767 #define WS_EX_LEFTSCROLLBAR     (0x4000L)
768 #define WS_EX_LTRREADING        (0L)
769 #define WS_EX_MDICHILD  (0x40L)
770 #define WS_EX_NOPARENTNOTIFY    (0x4L)
771 #define WS_EX_OVERLAPPEDWINDOW  (0x300L)
772 #define WS_EX_PALETTEWINDOW     (0x188L)
773 #define WS_EX_RIGHT     (0x1000L)
774 #define WS_EX_RIGHTSCROLLBAR    (0L)
775 #define WS_EX_RTLREADING        (0x2000L)
776 #define WS_EX_STATICEDGE        (0x20000L)
777 #define WS_EX_TOOLWINDOW        (0x80L)
778 #define WS_EX_TOPMOST   (0x8L)
779 #define WS_EX_TRANSPARENT       (0x20L)
780 #define WS_EX_WINDOWEDGE        (0x100L)
781
782 /* CreateWindowStation */
783 #define WINSTA_ACCESSCLIPBOARD  (0x4L)
784 #define WINSTA_ACCESSGLOBALATOMS        (0x20L)
785 #define WINSTA_CREATEDESKTOP    (0x8L)
786 #define WINSTA_ENUMDESKTOPS     (0x1L)
787 #define WINSTA_ENUMERATE        (0x100L)
788 #define WINSTA_EXITWINDOWS      (0x40L)
789 #define WINSTA_READATTRIBUTES   (0x2L)
790 #define WINSTA_READSCREEN       (0x200L)
791 #define WINSTA_WRITEATTRIBUTES  (0x10L)
792
793 /* DdeCallback */
794
795 /* DdeClientTransaction */
796
797 /* DdeEnableCallback */
798
799 /* DdeGetLastError */
800
801 /* DdeInitialize */
802
803 /* DdeNameService */
804
805 /* DebugProc */
806 #define WH_CALLWNDPROC  (4)
807 #define WH_CALLWNDPROCRET       (12)
808 #define WH_CBT  (5)
809 #define WH_DEBUG        (9)
810 #define WH_GETMESSAGE   (3)
811 #define WH_JOURNALPLAYBACK      (1)
812 #define WH_JOURNALRECORD        (0)
813 #define WH_KEYBOARD     (2)
814 #define WH_MOUSE        (7)
815 #define WH_MSGFILTER    (-1)
816 #define WH_SHELL        (10)
817 #define WH_SYSMSGFILTER (6)
818 #define WH_MSGFILTER    (-1)
819 #define WH_FOREGROUNDIDLE       (11)
820
821 /* DefineDosDevice */
822 #define DDD_RAW_TARGET_PATH     (1)
823 #define DDD_REMOVE_DEFINITION   (2)
824 #define DDD_EXACT_MATCH_ON_REMOVE       (4)
825
826 /* DeviceCapbilities */
827 #define DC_BINNAMES     (12)
828 #define DC_BINS (6)
829 #define DC_COPIES       (18)
830 #define DC_DRIVER       (11)
831 #define DC_DATATYPE_PRODUCED    (21)
832 #define DC_DUPLEX       (7)
833 #define DC_EMF_COMPLIANT        (20)
834 #define DC_ENUMRESOLUTIONS      (13)
835 #define DC_EXTRA        (9)
836 #define DC_FIELDS       (1)
837 #define DC_FILEDEPENDENCIES     (14)
838 #define DC_MAXEXTENT    (5)
839 #define DC_MINEXTENT    (4)
840 #define DC_ORIENTATION  (17)
841 #define DC_PAPERNAMES   (16)
842 #define DC_PAPERS       (2)
843 #define DC_PAPERSIZE    (3)
844 #define DC_SIZE (8)
845 #define DC_TRUETYPE     (15)
846 #define DCTT_BITMAP     (0x1L)
847 #define DCTT_DOWNLOAD   (0x2L)
848 #define DCTT_SUBDEV     (0x4L)
849 #define DC_VERSION      (10)
850 #define DC_BINADJUST    (19)
851 #define DC_DATATYPE_PRODUCED    (21)
852
853 /* DeviceIoControl */
854
855 /* DlgDirList */
856 #define DDL_ARCHIVE     (32)
857 #define DDL_DIRECTORY   (16)
858 #define DDL_DRIVES      (16384)
859 #define DDL_EXCLUSIVE   (32768)
860 #define DDL_HIDDEN      (2)
861 #define DDL_READONLY    (1)
862 #define DDL_READWRITE   (0)
863 #define DDL_SYSTEM      (4)
864 #define DDL_POSTMSGS    (8192)
865
866 /* DllEntryPoint */
867 #define DLL_PROCESS_ATTACH      (1)
868 #define DLL_THREAD_ATTACH       (2)
869 #define DLL_PROCESS_DETACH      (0)
870 #define DLL_THREAD_DETACH       (3)
871
872 /* DocumentProperties */
873 #define DM_IN_BUFFER    (8)
874 #define DM_MODIFY       (8)
875 #define DM_IN_PROMPT    (4)
876 #define DM_PROMPT       (4)
877 #define DM_OUT_BUFFER   (2)
878 #define DM_COPY (2)
879 #define DM_UPDATE       (1)
880
881 /* DrawAnimatedRects */
882 #define IDANI_OPEN      (1)
883 #define IDANI_CLOSE     (2)
884
885 /* DrawCaption */
886 #define DC_ACTIVE       1
887 #define DC_SMALLCAP     2
888 #define DC_ICON 4
889 #define DC_TEXT 8
890 #define DC_INBUTTON     16
891 #define DC_GRADIENT 32
892 #define DC_BUTTONS 64
893 #define DC_CAPTION      (DC_ICON|DC_TEXT|DC_BUTTONS|DC_GRADIENT)
894 #define DC_NC   (DC_CAPTION|DC_FRAME)
895
896 /* DrawEdge */
897 #define BDR_OUTER       (3)
898 #define BDR_INNER       (12)
899 #define BDR_RAISED      (5)
900 #define BDR_SUNKEN      (10)
901 #define BDR_RAISEDINNER (4)
902 #define BDR_SUNKENINNER (8)
903 #define BDR_RAISEDOUTER (1)
904 #define BDR_SUNKENOUTER (1)
905 #define EDGE_BUMP       (9)
906 #define EDGE_ETCHED     (6)
907 #define EDGE_RAISED     (5)
908 #define EDGE_SUNKEN     (10)
909 #define BF_ADJUST       (8192)
910 #define BF_BOTTOM       (8)
911 #define BF_BOTTOMLEFT   (9)
912 #define BF_BOTTOMRIGHT  (12)
913 #define BF_DIAGONAL     (16)
914 #define BF_DIAGONAL_ENDBOTTOMLEFT       (25)
915 #define BF_DIAGONAL_ENDBOTTOMRIGHT      (28)
916 #define BF_DIAGONAL_ENDTOPLEFT  (19)
917 #define BF_DIAGONAL_ENDTOPRIGHT (22)
918 #define BF_FLAT (16384)
919 #define BF_LEFT (1)
920 #define BF_MIDDLE       (2048)
921 #define BF_MONO (32768)
922 #define BF_RECT (15)
923 #define BF_RIGHT        (4)
924 #define BF_SOFT (4096)
925 #define BF_TOP  (2)
926 #define BF_TOPLEFT      (3)
927 #define BF_TOPRIGHT     (6)
928
929 /* DrawFrameControl */
930 #define DFC_BUTTON      (4)
931 #define DFC_POPUPMENU (5)
932 #define DFC_CAPTION     (1)
933 #define DFC_MENU        (2)
934 #define DFC_SCROLL      (3)
935 #define DFCS_BUTTON3STATE       (8)
936 #define DFCS_BUTTONCHECK        (0)
937 #define DFCS_BUTTONPUSH (16)
938 #define DFCS_BUTTONRADIO        (4)
939 #define DFCS_BUTTONRADIOIMAGE   (1)
940 #define DFCS_BUTTONRADIOMASK    (2)
941 #define DFCS_CAPTIONCLOSE       (0)
942 #define DFCS_CAPTIONHELP        (4)
943 #define DFCS_CAPTIONMAX (2)
944 #define DFCS_CAPTIONMIN (1)
945 #define DFCS_CAPTIONRESTORE     (3)
946 #define DFCS_MENUARROW  (0)
947 #define DFCS_MENUBULLET (2)
948 #define DFCS_MENUCHECK  (1)
949 #define DFCS_SCROLLCOMBOBOX     (5)
950 #define DFCS_SCROLLDOWN (1)
951 #define DFCS_SCROLLLEFT (2)
952 #define DFCS_SCROLLRIGHT        (3)
953 #define DFCS_SCROLLSIZEGRIP     (8)
954 #define DFCS_SCROLLUP   (0)
955 #define DFCS_ADJUSTRECT (8192)
956 #define DFCS_CHECKED    (1024)
957 #define DFCS_FLAT       (16384)
958 #define DFCS_INACTIVE   (256)
959 #define DFCS_MONO       (32768)
960 #define DFCS_PUSHED     (512)
961
962 /* DrawIconEx */
963 #define DI_COMPAT       (4)
964 #define DI_DEFAULTSIZE  (8)
965 #define DI_IMAGE        (2)
966 #define DI_MASK (1)
967 #define DI_NORMAL       (3)
968
969 /* DrawState */
970 #define DST_BITMAP      (4)
971 #define DST_COMPLEX     (0)
972 #define DST_ICON        (3)
973 #define DST_PREFIXTEXT  (2)
974 #define DST_TEXT        (1)
975 #define DSS_NORMAL      (0)
976 #define DSS_UNION       (16)
977 #define DSS_DISABLED    (32)
978 #define DSS_MONO        (128)
979 #define DSS_RIGHT   (0x8000)    /* Undocumented */
980
981 /* DrawStatusText */
982 #define SBT_NOBORDERS   (256)
983 #define SBT_OWNERDRAW   (4096)
984 #define SBT_POPOUT      (512)
985 #define SBT_RTLREADING  (1024)
986
987 /* DrawText, DrawTextEx */
988 #define DT_BOTTOM       (8)
989 #define DT_CALCRECT     (1024)
990 #define DT_CENTER       (1)
991 #define DT_EDITCONTROL  (8192)
992 #define DT_END_ELLIPSIS (32768)
993 #define DT_PATH_ELLIPSIS        (16384)
994 #define DT_EXPANDTABS   (64)
995 #define DT_EXTERNALLEADING      (512)
996 #define DT_LEFT (0)
997 #define DT_MODIFYSTRING (65536)
998 #define DT_NOCLIP       (256)
999 #define DT_NOPREFIX     (2048)
1000 #define DT_RIGHT        (2)
1001 #define DT_RTLREADING   (131072)
1002 #define DT_SINGLELINE   (32)
1003 #define DT_TABSTOP      (128)
1004 #define DT_TOP  (0)
1005 #define DT_VCENTER      (4)
1006 #define DT_WORDBREAK    (16)
1007 #define DT_WORD_ELLIPSIS        (262144)
1008 #define DT_INTERNAL     (4096)
1009
1010
1011 /* EditWordBreakProc */
1012 #define WB_ISDELIMITER  (2)
1013 #define WB_LEFT (0)
1014 #define WB_RIGHT        (1)
1015
1016 /* EnableScrollBar */
1017 #define SB_BOTH (3)
1018 #define SB_CTL  (2)
1019 #define SB_HORZ (0)
1020 #define SB_VERT (1)
1021 #define ESB_DISABLE_BOTH        (3)
1022 #define ESB_DISABLE_DOWN        (2)
1023 #define ESB_DISABLE_LEFT        (1)
1024 #define ESB_DISABLE_LTUP        (1)
1025 #define ESB_DISABLE_RIGHT       (2)
1026 #define ESB_DISABLE_RTDN        (2)
1027 #define ESB_DISABLE_UP  (1)
1028 #define ESB_ENABLE_BOTH (0)
1029
1030 /* Scroll Bar notifications*/
1031 #define SB_LINEUP       (0)
1032 #define SB_LINEDOWN     (1)
1033 #define SB_LINELEFT     (0)
1034 #define SB_LINERIGHT    (1)
1035 #define SB_PAGEUP       (2)
1036 #define SB_PAGEDOWN     (3)
1037 #define SB_PAGELEFT     (2)
1038 #define SB_PAGERIGHT    (3)
1039 #define SB_THUMBPOSITION        (4)
1040 #define SB_THUMBTRACK   (5)
1041 #define SB_ENDSCROLL    (8)
1042 #define SB_LEFT (6)
1043 #define SB_RIGHT        (7)
1044 #define SB_BOTTOM       (7)
1045 #define SB_TOP  (6)
1046
1047 /* EnumCalendarInfo */
1048 #define ENUM_ALL_CALENDARS      (-1)
1049
1050 /* EnumDateFormats */
1051 #define DATE_SHORTDATE  (1)
1052 #define DATE_LONGDATE   (2)
1053
1054 /* EnumDependentServices */
1055 #define SERVICE_ACTIVE  (1)
1056 #define SERVICE_INACTIVE        (2)
1057 #define SERVICE_STATE_ALL              (SERVICE_ACTIVE   | \
1058                                         SERVICE_INACTIVE)
1059
1060 /* EnumFontFamExProc */
1061 #define DEVICE_FONTTYPE (2)
1062 #define RASTER_FONTTYPE (1)
1063 #define TRUETYPE_FONTTYPE       (4)
1064
1065 /* EnumObjects, GetCurrentObject, GetObjectType */
1066 #define OBJ_BRUSH       (2)
1067 #define OBJ_PEN (1)
1068 #define OBJ_PAL (5)
1069 #define OBJ_FONT        (6)
1070 #define OBJ_BITMAP      (7)
1071 #define OBJ_EXTPEN      (11)
1072 #define OBJ_REGION      (8)
1073 #define OBJ_DC  (3)
1074 #define OBJ_MEMDC       (10)
1075 #define OBJ_METAFILE    (9)
1076 #define OBJ_METADC      (4)
1077 #define OBJ_ENHMETAFILE (13)
1078 #define OBJ_ENHMETADC   (12)
1079
1080 /* EnumPrinters */
1081
1082 /* EnumProtocols */
1083
1084 /* EnumResLangProc */
1085 #define RT_ACCELERATORA (MAKEINTRESOURCEA(9))
1086 #define RT_BITMAPA      (MAKEINTRESOURCEA(2))
1087 #define RT_DIALOGA      (MAKEINTRESOURCEA(5))
1088 #define RT_FONTA        (MAKEINTRESOURCEA(8))
1089 #define RT_FONTDIRA     (MAKEINTRESOURCEA(7))
1090 #define RT_MENUA        (MAKEINTRESOURCEA(4))
1091 #define RT_RCDATAA      (MAKEINTRESOURCEA(10))
1092 #define RT_STRINGA      (MAKEINTRESOURCEA(6))
1093 #define RT_MESSAGETABLEA        (MAKEINTRESOURCEA(11))
1094 #define RT_CURSORA      (MAKEINTRESOURCEA(1))
1095 #define RT_GROUP_CURSORA        (MAKEINTRESOURCEA(12))
1096 #define RT_ICONA        (MAKEINTRESOURCEA(3))
1097 #define RT_GROUP_ICONA  (MAKEINTRESOURCEA(13))
1098 #define RT_VERSIONA     (MAKEINTRESOURCEA(16))
1099
1100 #define RT_ACCELERATORW (MAKEINTRESOURCEW(9))
1101 #define RT_BITMAPW      (MAKEINTRESOURCEW(2))
1102 #define RT_DIALOGW      (MAKEINTRESOURCEW(5))
1103 #define RT_FONTW        (MAKEINTRESOURCEW(8))
1104 #define RT_FONTDIRW     (MAKEINTRESOURCEW(7))
1105 #define RT_MENUW        (MAKEINTRESOURCEW(4))
1106 #define RT_RCDATAW      (MAKEINTRESOURCEW(10))
1107 #define RT_STRINGW      (MAKEINTRESOURCEW(6))
1108 #define RT_MESSAGETABLEW        (MAKEINTRESOURCEW(11))
1109 #define RT_CURSORW      (MAKEINTRESOURCEW(1))
1110 #define RT_GROUP_CURSORW        (MAKEINTRESOURCEW(12))
1111 #define RT_ICONW        (MAKEINTRESOURCEW(3))
1112 #define RT_GROUP_ICONW  (MAKEINTRESOURCEW(13))
1113 #define RT_VERSIONW     (MAKEINTRESOURCEW(16))
1114
1115 #ifndef _DISABLE_TIDENT
1116 #ifdef UNICODE
1117 #define RT_ACCELERATOR  RT_ACCELERATORW
1118 #define RT_BITMAP       RT_BITMAPW
1119 #define RT_DIALOG       RT_DIALOGW
1120 #define RT_FONT RT_FONTW
1121 #define RT_FONTDIR      RT_FONTDIRW
1122 #define RT_MENU RT_MENUW
1123 #define RT_RCDATA       RT_RCDATAW
1124 #define RT_STRING       RT_STRINGW
1125 #define RT_MESSAGETABLE RT_MESSAGETABLEW
1126 #define RT_CURSOR       RT_CURSORW
1127 #define RT_GROUP_CURSOR RT_GROUP_CURSORW
1128 #define RT_ICON RT_ICONW
1129 #define RT_GROUP_ICON   RT_GROUP_ICONW
1130 #define RT_VERSION      RT_VERSIONW
1131 #else /* UNICODE */
1132 #define RT_ACCELERATOR  RT_ACCELERATORA
1133 #define RT_BITMAP       RT_BITMAPA
1134 #define RT_DIALOG       RT_DIALOGA
1135 #define RT_FONT RT_FONTA
1136 #define RT_FONTDIR      RT_FONTDIRA
1137 #define RT_MENU RT_MENUA
1138 #define RT_RCDATA       RT_RCDATAA
1139 #define RT_STRING       RT_STRINGA
1140 #define RT_MESSAGETABLE RT_MESSAGETABLEA
1141 #define RT_CURSOR       RT_CURSORA
1142 #define RT_GROUP_CURSOR RT_GROUP_CURSORA
1143 #define RT_ICON RT_ICONA
1144 #define RT_GROUP_ICON   RT_GROUP_ICONA
1145 #define RT_VERSION      RT_VERSIONA
1146 #endif /* UNICODE */
1147 #endif /* _DISABLE_TIDENT */
1148
1149 /* EnumServicesStatus */
1150 #define SERVICE_WIN32   (48)
1151 #define SERVICE_DRIVER  (11)
1152
1153 /* EnumSystemCodePages */
1154 #define CP_INSTALLED    (1)
1155 #define CP_SUPPORTED    (2)
1156
1157 /* EnumSystemLocales */
1158 #define LCID_INSTALLED  (1)
1159 #define LCID_SUPPORTED  (2)
1160
1161 /* EraseTape */
1162 #define TAPE_ERASE_LONG (0x1L)
1163 #define TAPE_ERASE_SHORT        (0L)
1164
1165 /* Escape */
1166 #define SP_ERROR        (-1)
1167 #define SP_OUTOFDISK    (-4)
1168 #define SP_OUTOFMEMORY  (-5)
1169 #define SP_USERABORT    (-3)
1170 #define PHYSICALWIDTH   (110)
1171 #define PHYSICALHEIGHT  (111)
1172 #define PHYSICALOFFSETX (112)
1173 #define PHYSICALOFFSETY (113)
1174 #define SCALINGFACTORX  (114)
1175 #define SCALINGFACTORY  (115)
1176 #define QUERYESCSUPPORT (8)
1177 #define ABORTDOC        (2)
1178 #define ENDDOC  (11)
1179 #define GETPHYSPAGESIZE (12)
1180 #define GETPRINTINGOFFSET       (13)
1181 #define GETSCALINGFACTOR        (14)
1182 #define NEWFRAME        (1)
1183 #define NEXTBAND        (3)
1184 #define PASSTHROUGH     (19)
1185 #define SETABORTPROC    (9)
1186 #define STARTDOC        (10)
1187
1188 /* EscapeCommFunction */
1189 #define CLRDTR  (6)
1190 #define CLRRTS  (4)
1191 #define SETDTR  (5)
1192 #define SETRTS  (3)
1193 #define SETXOFF (1)
1194 #define SETXON  (2)
1195 #define SETBREAK        (8)
1196 #define CLRBREAK        (9)
1197
1198 /* ExitWindowsEx */
1199 #define EWX_FORCE       (4)
1200 #define EWX_LOGOFF      (0)
1201 #define EWX_POWEROFF    (8)
1202 #define EWX_REBOOT      (2)
1203 #define EWX_SHUTDOWN    (1)
1204
1205 /* ExtFloodFill */
1206 #define FLOODFILLBORDER (0)
1207 #define FLOODFILLSURFACE        (1)
1208
1209 /* ExtTextOut */
1210 #define ETO_CLIPPED     (4)
1211 #define ETO_GLYPH_INDEX (16)
1212 #define ETO_OPAQUE      (2)
1213 #define ETO_RTLREADING  (128)
1214
1215 /* FillConsoleOutputAttribute */
1216 #define FOREGROUND_BLUE (1)
1217 #define FOREGROUND_GREEN        (2)
1218 #define FOREGROUND_RED  (4)
1219 #define FOREGROUND_INTENSITY    (8)
1220 #define BACKGROUND_BLUE (16)
1221 #define BACKGROUND_GREEN        (32)
1222 #define BACKGROUND_RED  (64)
1223 #define BACKGROUND_INTENSITY    (128)
1224
1225 /* FindFirstChangeNotification */
1226 #define FILE_NOTIFY_CHANGE_FILE_NAME    (1)
1227 #define FILE_NOTIFY_CHANGE_DIR_NAME     (2)
1228 #define FILE_NOTIFY_CHANGE_ATTRIBUTES   (4)
1229 #define FILE_NOTIFY_CHANGE_SIZE (8)
1230 #define FILE_NOTIFY_CHANGE_LAST_WRITE   (16)
1231 #define FILE_NOTIFY_CHANGE_SECURITY     (256)
1232
1233 /* FindFirstPrinterChangeNotification */
1234
1235 /* FindNextPrinterNotification */
1236
1237 /* FlsAlloc */
1238 #define FLS_OUT_OF_INDEXES (0xFFFFFFFF)
1239
1240 /* FMExtensionProc */
1241
1242 /* FoldString */
1243 #define MAP_FOLDCZONE   (16)
1244 #define MAP_FOLDDIGITS  (128)
1245 #define MAP_PRECOMPOSED (32)
1246 #define MAP_COMPOSITE   (64)
1247
1248 /* ForegroundIdleProc */
1249 #define HC_ACTION       (0)
1250
1251 /* FormatMessage */
1252 #define FORMAT_MESSAGE_ALLOCATE_BUFFER  (256)
1253 #define FORMAT_MESSAGE_IGNORE_INSERTS   (512)
1254 #define FORMAT_MESSAGE_FROM_STRING      (1024)
1255 #define FORMAT_MESSAGE_FROM_HMODULE     (2048)
1256 #define FORMAT_MESSAGE_FROM_SYSTEM      (4096)
1257 #define FORMAT_MESSAGE_ARGUMENT_ARRAY   (8192)
1258 #define FORMAT_MESSAGE_MAX_WIDTH_MASK   (255)
1259
1260 /* GdiComment */
1261 #define GDICOMMENT_WINDOWS_METAFILE     (-2147483647)
1262 #define GDICOMMENT_BEGINGROUP   (2)
1263 #define GDICOMMENT_ENDGROUP     (3)
1264 #define GDICOMMENT_MULTIFORMATS (1073741828)
1265 #define GDICOMMENT_IDENTIFIER   (1128875079)
1266
1267 /* GenerateConsoleCtrlEvent, HandlerRoutine */
1268 #define CTRL_C_EVENT    (0)
1269 #define CTRL_BREAK_EVENT        (1)
1270 #define CTRL_CLOSE_EVENT        (2)
1271 #define CTRL_LOGOFF_EVENT       (5)
1272 #define CTRL_SHUTDOWN_EVENT     (6)
1273
1274 /* GetAddressByName */
1275
1276 /* GetArcDirection */
1277 #define AD_COUNTERCLOCKWISE     (1)
1278 #define AD_CLOCKWISE    (2)
1279
1280 /* GetBinaryTypes */
1281 #define SCS_32BIT_BINARY        (0)
1282 #define SCS_DOS_BINARY  (1)
1283 #define SCS_OS216_BINARY        (5)
1284 #define SCS_PIF_BINARY  (3)
1285 #define SCS_POSIX_BINARY        (4)
1286 #define SCS_WOW_BINARY  (2)
1287
1288 /* GetBoundsRect, SetBoundsRect */
1289 #define DCB_DISABLE     (8)
1290 #define DCB_ENABLE      (4)
1291 #define DCB_RESET       (1)
1292 #define DCB_SET (3)
1293 #define DCB_ACCUMULATE  (2)
1294
1295 /* GetCharacterPlacement, GetFontLanguageInfo */
1296 #define GCP_DBCS        (1)
1297 #define GCP_ERROR       (0x8000)
1298 #define GCP_CLASSIN     (0x80000L)
1299 #define GCP_DIACRITIC   (256)
1300 #define GCP_DISPLAYZWG  (0x400000L)
1301 #define GCP_GLYPHSHAPE  (16)
1302 #define GCP_JUSTIFY     (0x10000L)
1303 #define GCP_JUSTIFYIN   (0x200000L)
1304 #define GCP_KASHIDA     (1024)
1305 #define GCP_LIGATE      (32)
1306 #define GCP_MAXEXTENT   (0x100000L)
1307 #define GCP_NEUTRALOVERRIDE     (0x2000000L)
1308 #define GCP_NUMERICOVERRIDE     (0x1000000L)
1309 #define GCP_NUMERICSLATIN       (0x4000000L)
1310 #define GCP_NUMERICSLOCAL       (0x8000000L)
1311 #define GCP_REORDER     (2)
1312 #define GCP_SYMSWAPOFF  (0x800000L)
1313 #define GCP_USEKERNING  (8)
1314 #define FLI_GLYPHS      (0x40000L)
1315 #define FLI_MASK        (0x103b)
1316
1317 /* GetClassLong, GetClassWord */
1318 #define GCW_ATOM        (-32)
1319 #define GCL_CBCLSEXTRA  (-20)
1320 #define GCL_CBWNDEXTRA  (-18)
1321 #define GCL_HBRBACKGROUND       (-10)
1322 #define GCL_HCURSOR     (-12)
1323 #define GCL_HICON       (-14)
1324 #define GCL_HICONSM     (-34)
1325 #define GCL_HMODULE     (-16)
1326 #define GCL_MENUNAME    (-8)
1327 #define GCL_STYLE       (-26)
1328 #define GCL_WNDPROC     (-24)
1329
1330 /* GetClipboardFormat, SetClipboardData */
1331 #define CF_BITMAP       (2)
1332 #define CF_DIB  (8)
1333 #define CF_PALETTE      (9)
1334 #define CF_ENHMETAFILE  (14)
1335 #define CF_METAFILEPICT (3)
1336 #define CF_OEMTEXT      (7)
1337 #define CF_TEXT (1)
1338 #define CF_UNICODETEXT  (13)
1339 #define CF_DIF  (5)
1340 #define CF_DSPBITMAP    (130)
1341 #define CF_DSPENHMETAFILE       (142)
1342 #define CF_DSPMETAFILEPICT      (131)
1343 #define CF_DSPTEXT      (129)
1344 #define CF_GDIOBJFIRST  (768)
1345 #define CF_GDIOBJLAST   (1023)
1346 #define CF_HDROP        (15)
1347 #define CF_LOCALE       (16)
1348 #define CF_OWNERDISPLAY (128)
1349 #define CF_PENDATA      (10)
1350 #define CF_PRIVATEFIRST (512)
1351 #define CF_PRIVATELAST  (767)
1352 #define CF_RIFF (11)
1353 #define CF_SYLK (4)
1354 #define CF_WAVE (12)
1355 #define CF_TIFF (6)
1356
1357 /* GetCommMask */
1358 #define EV_BREAK        (64)
1359 #define EV_CTS  (8)
1360 #define EV_DSR  (16)
1361 #define EV_ERR  (128)
1362 #define EV_EVENT1       (2048)
1363 #define EV_EVENT2       (4096)
1364 #define EV_PERR (512)
1365 #define EV_RING (256)
1366 #define EV_RLSD (32)
1367 #define EV_RX80FULL     (1024)
1368 #define EV_RXCHAR       (1)
1369 #define EV_RXFLAG       (2)
1370 #define EV_TXEMPTY      (4)
1371
1372 /* GetCommModemStatus */
1373 #define MS_CTS_ON       (0x10L)
1374 #define MS_DSR_ON       (0x20L)
1375 #define MS_RING_ON      (0x40L)
1376 #define MS_RLSD_ON      (0x80L)
1377
1378 /* GetComputerName */
1379 #define MAX_COMPUTERNAME_LENGTH (15)
1380
1381
1382 /* GetCPInfo */
1383 #define CP_ACP  (0)
1384 #define CP_MACCP        (2)
1385 #define CP_OEMCP        (1)
1386 #define CP_THREAD_ACP                   3                       /* ACP Current thread's ANSI code page */
1387 #define CP_SYMBOL                               42                      /* Symbol code page (42) */
1388 #define CP_UTF7                                 65000           /* Translate using UTF-7 */
1389 #define CP_UTF8                                 65001           /* Translate using UTF-8 */ 
1390
1391 /* GetDateFormat */
1392 #define DATE_SHORTDATE  (1)
1393 #define DATE_LONGDATE   (2)
1394 #define DATE_USE_ALT_CALENDAR   (4)
1395
1396 /* GetDCEx */
1397 #define DCX_WINDOW      (0x1L)
1398 #define DCX_CACHE       (0x2L)
1399 #define DCX_PARENTCLIP  (0x20L)
1400 #define DCX_CLIPSIBLINGS        (0x10L)
1401 #define DCX_CLIPCHILDREN        (0x8L)
1402 #define DCX_NORESETATTRS        (0x4L)
1403 #define DCX_LOCKWINDOWUPDATE    (0x400L)
1404 #define DCX_EXCLUDERGN  (0x40L)
1405 #define DCX_INTERSECTRGN        (0x80L)
1406 #define DCX_VALIDATE    (0x200000L)
1407 #define DCX_USESTYLE         (0x00010000L)
1408 #define DCX_NORECOMPUTE      (0x00100000L)
1409 #define DCX_EXCLUDEUPDATE    (0x00000100L)
1410 #define DCX_INTERSECTUPDATE  (0x00000200L)
1411
1412 /* GetDeviceCaps */
1413 #define DRIVERVERSION   (0)
1414 #define TECHNOLOGY      (2)
1415 #define DT_PLOTTER      (0)
1416 #define DT_RASDISPLAY   (1)
1417 #define DT_RASPRINTER   (2)
1418 #define DT_RASCAMERA    (3)
1419 #define DT_CHARSTREAM   (4)
1420 #define DT_METAFILE     (5)
1421 #define DT_DISPFILE     (6)
1422 #define HORZSIZE        (4)
1423 #define VERTSIZE        (6)
1424 #define HORZRES (8)
1425 #define VERTRES (10)
1426 #define LOGPIXELSX      (88)
1427 #define LOGPIXELSY      (90)
1428 #define BITSPIXEL       (12)
1429 #define PLANES  (14)
1430 #define NUMBRUSHES      (16)
1431 #define NUMPENS (18)
1432 #define NUMFONTS        (22)
1433 #define NUMCOLORS       (24)
1434 #define ASPECTX (40)
1435 #define ASPECTY (42)
1436 #define ASPECTXY        (44)
1437 #define PDEVICESIZE     (26)
1438 #define CLIPCAPS        (36)
1439 #define SIZEPALETTE     (104)
1440 #define NUMRESERVED     (106)
1441 #define COLORRES        (108)
1442 #define PHYSICALWIDTH   (110)
1443 #define PHYSICALHEIGHT  (111)
1444 #define PHYSICALOFFSETX (112)
1445 #define PHYSICALOFFSETY (113)
1446 #define SCALINGFACTORX  (114)
1447 #define SCALINGFACTORY  (115)
1448 #define VREFRESH        (116)
1449 #define DESKTOPHORZRES  (118)
1450 #define DESKTOPVERTRES  (117)
1451 #define BLTALIGNMENT    (119)
1452 #define RASTERCAPS      (38)
1453 #define RC_BANDING      (2)
1454 #define RC_BITBLT       (1)
1455 #define RC_BITMAP64     (8)
1456 #define RC_DI_BITMAP    (128)
1457 #define RC_DIBTODEV     (512)
1458 #define RC_FLOODFILL    (4096)
1459 #define RC_GDI20_OUTPUT (16)
1460 #define RC_PALETTE      (256)
1461 #define RC_SCALING      (4)
1462 #define RC_STRETCHBLT   (2048)
1463 #define RC_STRETCHDIB   (8192)
1464 #define CURVECAPS       (28)
1465 #define CC_NONE (0)
1466 #define CC_CIRCLES      (1)
1467 #define CC_PIE  (2)
1468 #define CC_CHORD        (4)
1469 #define CC_ELLIPSES     (8)
1470 #define CC_WIDE (16)
1471 #define CC_STYLED       (32)
1472 #define CC_WIDESTYLED   (64)
1473 #define CC_INTERIORS    (128)
1474 #define CC_ROUNDRECT    (256)
1475 #define LINECAPS        (30)
1476 #define LC_NONE (0)
1477 #define LC_POLYLINE     (2)
1478 #define LC_MARKER       (4)
1479 #define LC_POLYMARKER   (8)
1480 #define LC_WIDE (16)
1481 #define LC_STYLED       (32)
1482 #define LC_WIDESTYLED   (64)
1483 #define LC_INTERIORS    (128)
1484 #define POLYGONALCAPS   (32)
1485 #define PC_NONE (0)
1486 #define PC_POLYGON      (1)
1487 #define PC_RECTANGLE    (2)
1488 #define PC_WINDPOLYGON  (4)
1489 #define PC_SCANLINE     (8)
1490 #define PC_WIDE (16)
1491 #define PC_STYLED       (32)
1492 #define PC_WIDESTYLED   (64)
1493 #define PC_INTERIORS    (128)
1494 #define TEXTCAPS        (34)
1495 #define TC_OP_CHARACTER (1)
1496 #define TC_OP_STROKE    (2)
1497 #define TC_CP_STROKE    (4)
1498 #define TC_CR_90        (8)
1499 #define TC_CR_ANY       (16)
1500 #define TC_SF_X_YINDEP  (32)
1501 #define TC_SA_DOUBLE    (64)
1502 #define TC_SA_INTEGER   (128)
1503 #define TC_SA_CONTIN    (256)
1504 #define TC_EA_DOUBLE    (512)
1505 #define TC_IA_ABLE      (1024)
1506 #define TC_UA_ABLE      (2048)
1507 #define TC_SO_ABLE      (4096)
1508 #define TC_RA_ABLE      (8192)
1509 #define TC_VA_ABLE      (16384)
1510 #define TC_RESERVED     (32768)
1511 #define TC_SCROLLBLT    (65536)
1512 #define PC_PATHS        (512)
1513
1514 /* GetDriveType */
1515 #define DRIVE_REMOVABLE (2)
1516 #define DRIVE_FIXED     (3)
1517 #define DRIVE_REMOTE    (4)
1518 #define DRIVE_CDROM     (5)
1519 #define DRIVE_RAMDISK   (6)
1520 #define DRIVE_UNKNOWN   (0)
1521 #define DRIVE_NO_ROOT_DIR       (1)
1522
1523 /* GetExceptionCode */
1524 #define EXCEPTION_ACCESS_VIOLATION      (0xc0000005L)
1525 #define EXCEPTION_BREAKPOINT    (0x80000003L)
1526 #define EXCEPTION_DATATYPE_MISALIGNMENT (0x80000002L)
1527 #define EXCEPTION_SINGLE_STEP   (0x80000004L)
1528 #define EXCEPTION_ARRAY_BOUNDS_EXCEEDED (0xc000008cL)
1529 #define EXCEPTION_FLT_DENORMAL_OPERAND  (0xc000008dL)
1530 #define EXCEPTION_FLT_DIVIDE_BY_ZERO    (0xc000008eL)
1531 #define EXCEPTION_FLT_INEXACT_RESULT    (0xc000008fL)
1532 #define EXCEPTION_FLT_INVALID_OPERATION (0xc0000090L)
1533 #define EXCEPTION_FLT_OVERFLOW  (0xc0000091L)
1534 #define EXCEPTION_FLT_STACK_CHECK       (0xc0000092L)
1535 #define EXCEPTION_FLT_UNDERFLOW (0xc0000093L)
1536 #define EXCEPTION_INT_DIVIDE_BY_ZERO    (0xc0000094L)
1537 #define EXCEPTION_INT_OVERFLOW  (0xc0000095L)
1538 #define EXCEPTION_INVALID_HANDLE        (0xc0000008L)
1539 #define EXCEPTION_PRIV_INSTRUCTION      (0xc0000096L)
1540 #define EXCEPTION_NONCONTINUABLE_EXCEPTION      (0xc0000025L)
1541 #define EXCEPTION_STACK_OVERFLOW        (0xc00000fdL)
1542 #define EXCEPTION_INVALID_DISPOSITION   (0xc0000026L)
1543 #define EXCEPTION_CONTINUABLE           (0x0)
1544 #define EXCEPTION_NONCONTINUABLE        (0x1)
1545
1546 /* GetFileType */
1547 #define FILE_TYPE_UNKNOWN       (0)
1548 #define FILE_TYPE_DISK  (1)
1549 #define FILE_TYPE_CHAR  (2)
1550 #define FILE_TYPE_PIPE  (3)
1551
1552 /* GetGlyphOutline */
1553 #define GGO_BITMAP      (1)
1554 #define GGO_NATIVE      (2)
1555 #define GGO_METRICS     (0)
1556 #define GGO_GRAY2_BITMAP        (4)
1557 #define GGO_GRAY4_BITMAP        (5)
1558 #define GGO_GRAY8_BITMAP        (6)
1559 #define GDI_ERROR       (0xffffffffL)
1560
1561 /* GetGraphicsMode */
1562 #define GM_COMPATIBLE   (1)
1563 #define GM_ADVANCED     (2)
1564
1565 /* GetHandleInformation */
1566 #define HANDLE_FLAG_INHERIT     (1)
1567 #define HANDLE_FLAG_PROTECT_FROM_CLOSE  (2)
1568
1569 /* GetIconInfo */
1570 #define IDC_ARROW       (MAKEINTRESOURCEW(32512))
1571 #define IDC_IBEAM       (MAKEINTRESOURCEW(32513))
1572 #define IDC_WAIT        (MAKEINTRESOURCEW(32514))
1573 #define IDC_CROSS       (MAKEINTRESOURCEW(32515))
1574 #define IDC_UPARROW     (MAKEINTRESOURCEW(32516))
1575 #define IDC_SIZENWSE    (MAKEINTRESOURCEW(32642))
1576 #define IDC_SIZENESW    (MAKEINTRESOURCEW(32643))
1577 #define IDC_SIZEWE      (MAKEINTRESOURCEW(32644))
1578 #define IDC_SIZENS      (MAKEINTRESOURCEW(32645))
1579 #define IDC_SIZEALL     (MAKEINTRESOURCEW(32646))
1580 #define IDC_NO  (MAKEINTRESOURCEW(32648))
1581 #define IDC_APPSTARTING (MAKEINTRESOURCEW(32650))
1582 #define IDC_HELP        (MAKEINTRESOURCEW(32651))
1583 #define IDI_APPLICATION (MAKEINTRESOURCEW(32512))
1584 #define IDI_HAND        (MAKEINTRESOURCEW(32513))
1585 #define IDI_QUESTION    (MAKEINTRESOURCEW(32514))
1586 #define IDI_EXCLAMATION (MAKEINTRESOURCEW(32515))
1587 #define IDI_ASTERISK    (MAKEINTRESOURCEW(32516))
1588 #define IDI_WINLOGO     (MAKEINTRESOURCEW(32517))
1589 #define IDC_SIZE        (MAKEINTRESOURCEW(32640))
1590 #define IDC_ICON        (MAKEINTRESOURCEW(32641))
1591 #define IDC_HAND        (MAKEINTRESOURCEW(32649))
1592
1593 /* GetMapMode */
1594 #define MM_ANISOTROPIC  (8)
1595 #define MM_HIENGLISH    (5)
1596 #define MM_HIMETRIC     (3)
1597 #define MM_ISOTROPIC    (7)
1598 #define MM_LOENGLISH    (4)
1599 #define MM_LOMETRIC     (2)
1600 #define MM_TEXT (1)
1601 #define MM_TWIPS        (6)
1602
1603 /* GetMenuDefaultItem */
1604 #define GMDI_GOINTOPOPUPS       (0x2L)
1605 #define GMDI_USEDISABLED        (0x1L)
1606
1607 /* PeekMessage */
1608 #define PM_NOREMOVE     (0)
1609 #define PM_REMOVE       (1)
1610 #define PM_NOYIELD      (2)
1611
1612 /* GetNamedPipeHandleState */
1613 #define PIPE_NOWAIT     (1)
1614 #define PIPE_READMODE_MESSAGE   (2)
1615
1616 /* GetNamedPipeInfo */
1617 #define PIPE_CLIENT_END (0)
1618 #define PIPE_SERVER_END (1)
1619 #define PIPE_TYPE_MESSAGE       (4)
1620
1621 /* GetNextWindow, GetWindow */
1622 #define GW_HWNDNEXT     (2)
1623 #define GW_HWNDPREV     (3)
1624 #define GW_CHILD        (5)
1625 #define GW_HWNDFIRST    (0)
1626 #define GW_HWNDLAST     (1)
1627 #define GW_OWNER        (4)
1628
1629 /* GetPath */
1630 #define PT_MOVETO       (6)
1631 #define PT_LINETO       (2)
1632 #define PT_BEZIERTO     (4)
1633 #define PT_CLOSEFIGURE  (1)
1634
1635 /* GetProcessShutdownParameters */
1636 #define SHUTDOWN_NORETRY        (1)
1637
1638 /* GetQueueStatus */
1639 #define QS_ALLEVENTS    (191)
1640 #define QS_ALLINPUT     (255)
1641 #define QS_HOTKEY       (128)
1642 #define QS_INPUT        (7)
1643 #define QS_KEY  (1)
1644 #define QS_MOUSE        (6)
1645 #define QS_MOUSEBUTTON  (4)
1646 #define QS_MOUSEMOVE    (2)
1647 #define QS_PAINT        (32)
1648 #define QS_POSTMESSAGE  (8)
1649 #define QS_SENDMESSAGE  (64)
1650 #define QS_TIMER        (16)
1651
1652 /* GetScrollInfo, SetScrollInfo */
1653 #define SIF_ALL 23
1654 #define SIF_PAGE 2
1655 #define SIF_POS 4
1656 #define SIF_RANGE 1
1657 #define SIF_DISABLENOSCROLL 8
1658 #define SIF_TRACKPOS   16
1659
1660 /* GetStdHandle */
1661 #define STD_INPUT_HANDLE        (DWORD)(-10)
1662 #define STD_OUTPUT_HANDLE       (DWORD)(-11)
1663 #define STD_ERROR_HANDLE        (DWORD)(-12)
1664
1665 /* GetStockObject */
1666 #define BLACK_BRUSH     (4)
1667 #define DKGRAY_BRUSH    (3)
1668 #define GRAY_BRUSH      (2)
1669 #define HOLLOW_BRUSH    (5)
1670 #define LTGRAY_BRUSH    (1)
1671 #define NULL_BRUSH      (5)
1672 #define WHITE_BRUSH     (0)
1673 #define BLACK_PEN       (7)
1674 #define NULL_PEN        (8)
1675 #define WHITE_PEN       (6)
1676 #define ANSI_FIXED_FONT (11)
1677 #define ANSI_VAR_FONT   (12)
1678 #define DEVICE_DEFAULT_FONT     (14)
1679 #define DEFAULT_GUI_FONT        (17)
1680 #define OEM_FIXED_FONT  (10)
1681 #define SYSTEM_FONT     (13)
1682 #define SYSTEM_FIXED_FONT       (16)
1683 #define DEFAULT_PALETTE (15)
1684
1685 /* GetStringTypeA */
1686 #define CT_CTYPE1       (1)
1687 #define CT_CTYPE2       (2)
1688 #define CT_CTYPE3       (4)
1689 #define C1_UPPER        (1)
1690 #define C1_LOWER        (2)
1691 #define C1_DIGIT        (4)
1692 #define C1_SPACE        (8)
1693 #define C1_PUNCT        (16)
1694 #define C1_CNTRL        (32)
1695 #define C1_BLANK        (64)
1696 #define C1_XDIGIT       (128)
1697 #define C1_ALPHA        (256)
1698 #define C2_LEFTTORIGHT  (1)
1699 #define C2_RIGHTTOLEFT  (2)
1700 #define C2_EUROPENUMBER (3)
1701 #define C2_EUROPESEPARATOR      (4)
1702 #define C2_EUROPETERMINATOR     (5)
1703 #define C2_ARABICNUMBER (6)
1704 #define C2_COMMONSEPARATOR      (7)
1705 #define C2_BLOCKSEPARATOR       (8)
1706 #define C2_SEGMENTSEPARATOR     (9)
1707 #define C2_WHITESPACE   (10)
1708 #define C2_OTHERNEUTRAL (11)
1709 #define C2_NOTAPPLICABLE        (0)
1710 #define C3_NONSPACING   (1)
1711 #define C3_DIACRITIC    (2)
1712 #define C3_VOWELMARK    (4)
1713 #define C3_SYMBOL       (8)
1714 #define C3_KATAKANA     (16)
1715 #define C3_HIRAGANA     (32)
1716 #define C3_HALFWIDTH    (64)
1717 #define C3_FULLWIDTH    (128)
1718 #define C3_IDEOGRAPH    (256)
1719 #define C3_KASHIDA      (512)
1720 #define C3_ALPHA        (32768)
1721 #define C3_NOTAPPLICABLE        (0)
1722
1723 /* GetSysColor */
1724 #define COLOR_3DDKSHADOW        (21)
1725 #define COLOR_3DFACE    (15)
1726 #define COLOR_3DHILIGHT (20)
1727 #define COLOR_3DLIGHT   (22)
1728 #define COLOR_BTNHILIGHT        (20)
1729 #define COLOR_3DSHADOW  (16)
1730 #define COLOR_ACTIVEBORDER      (10)
1731 #define COLOR_ACTIVECAPTION     (2)
1732 #define COLOR_APPWORKSPACE      (12)
1733 #define COLOR_BACKGROUND        (1)
1734 #define COLOR_DESKTOP   (1)
1735 #define COLOR_BTNFACE   (15)
1736 #define COLOR_BTNHIGHLIGHT      (20)
1737 #define COLOR_BTNSHADOW (16)
1738 #define COLOR_BTNTEXT   (18)
1739 #define COLOR_CAPTIONTEXT       (9)
1740 #define COLOR_GRAYTEXT  (17)
1741 #define COLOR_HIGHLIGHT (13)
1742 #define COLOR_HIGHLIGHTTEXT     (14)
1743 #define COLOR_INACTIVEBORDER    (11)
1744 #define COLOR_INACTIVECAPTION   (3)
1745 #define COLOR_INACTIVECAPTIONTEXT       (19)
1746 #define COLOR_INFOBK    (24)
1747 #define COLOR_INFOTEXT  (23)
1748 #define COLOR_MENU      (4)
1749 #define COLOR_MENUTEXT  (7)
1750 #define COLOR_SCROLLBAR (0)
1751 #define COLOR_WINDOW    (5)
1752 #define COLOR_WINDOWFRAME       (6)
1753 #define COLOR_WINDOWTEXT        (8)
1754
1755 /* GetSystemMetrics */
1756 #define SM_CYMIN        (29)
1757 #define SM_CXMIN        (28)
1758 #define SM_ARRANGE      (56)
1759 #define SM_CLEANBOOT    (67)
1760 /* The right value for SM_CEMETRICS for NT 3.5 is 75.  For Windows 95
1761    and NT 4.0, it is 76.  The meaning is undocumented, anyhow.  */
1762 #define SM_CMETRICS     (76)
1763 #define SM_CMOUSEBUTTONS        (43)
1764 #define SM_CXBORDER     (5)
1765 #define SM_CYBORDER     (6)
1766 #define SM_CXCURSOR     (13)
1767 #define SM_CYCURSOR     (14)
1768 #define SM_CXDLGFRAME   (7)
1769 #define SM_CYDLGFRAME   (8)
1770 #define SM_CXDOUBLECLK  (36)
1771 #define SM_CYDOUBLECLK  (37)
1772 #define SM_CXDRAG       (68)
1773 #define SM_CYDRAG       (69)
1774 #define SM_CXEDGE       (45)
1775 #define SM_CYEDGE       (46)
1776 #define SM_CXFIXEDFRAME (7)
1777 #define SM_CYFIXEDFRAME (8)
1778 #define SM_CXFRAME      (32)
1779 #define SM_CYFRAME      (33)
1780 #define SM_CXFULLSCREEN (16)
1781 #define SM_CYFULLSCREEN (17)
1782 #define SM_CXHSCROLL    (21)
1783 #define SM_CYHSCROLL    (3)
1784 #define SM_CXHTHUMB     (10)
1785 #define SM_CXICON       (11)
1786 #define SM_CYICON       (12)
1787 #define SM_CXICONSPACING        (38)
1788 #define SM_CYICONSPACING        (39)
1789 #define SM_CXMAXIMIZED  (61)
1790 #define SM_CYMAXIMIZED  (62)
1791 #define SM_CXMAXTRACK   (59)
1792 #define SM_CYMAXTRACK   (60)
1793 #define SM_CXMENUCHECK  (71)
1794 #define SM_CYMENUCHECK  (72)
1795 #define SM_CXMENUSIZE   (54)
1796 #define SM_CYMENUSIZE   (55)
1797 #define SM_CXMINIMIZED  (57)
1798 #define SM_CYMINIMIZED  (58)
1799 #define SM_CXMINSPACING (47)
1800 #define SM_CYMINSPACING (48)
1801 #define SM_CXMINTRACK   (34)
1802 #define SM_CYMINTRACK   (35)
1803 #define SM_CXSCREEN     (0)
1804 #define SM_CYSCREEN     (1)
1805 #define SM_CXSIZE       (30)
1806 #define SM_CYSIZE       (31)
1807 #define SM_CXSIZEFRAME  (32)
1808 #define SM_CYSIZEFRAME  (33)
1809 #define SM_CXSMICON     (49)
1810 #define SM_CYSMICON     (50)
1811 #define SM_CXSMSIZE     (52)
1812 #define SM_CYSMSIZE     (53)
1813 #define SM_CXVSCROLL    (2)
1814 #define SM_CYHSCROLL    (3)
1815 #define SM_CXHSCROLL    (21)
1816 #define SM_CYVSCROLL    (20)
1817 #define SM_CYVTHUMB     (9)
1818 #define SM_CYCAPTION    (4)
1819 #define SM_CYKANJIWINDOW        (18)
1820 #define SM_CYMENU       (15)
1821 #define SM_CYSMCAPTION  (51)
1822 #define SM_DBCSENABLED  (42)
1823 #define SM_DEBUG        (22)
1824 #define SM_MENUDROPALIGNMENT    (40)
1825 #define SM_MIDEASTENABLED       (74)
1826 #define SM_MOUSEPRESENT (19)
1827 #define SM_MOUSEWHEELPRESENT    (75)
1828 #define SM_NETWORK      (63)
1829 #define SM_PENWINDOWS   (41)
1830 #define SM_SECURE       (44)
1831 #define SM_SHOWSOUNDS   (70)
1832 #define SM_SLOWMACHINE  (73)
1833 #define SM_SWAPBUTTON   (23)
1834 #define ARW_BOTTOMLEFT  (0L)
1835 #define ARW_BOTTOMRIGHT (0x1L)
1836 #define ARW_HIDE        (0x8L)
1837 #define ARW_TOPLEFT     (0x2L)
1838 #define ARW_TOPRIGHT    (0x3L)
1839 #define ARW_DOWN        (0x4L)
1840 #define ARW_LEFT        (0L)
1841 #define ARW_RIGHT       (0L)
1842 #define ARW_UP  (0x4L)
1843
1844 /* GetSystemPaletteUse */
1845 #define SYSPAL_NOSTATIC (2)
1846 #define SYSPAL_STATIC   (1)
1847 #define SYSPAL_ERROR    (0)
1848
1849 /* GetTapeParameters, SetTapeParameters */
1850 #define GET_TAPE_MEDIA_INFORMATION      (0)
1851 #define GET_TAPE_DRIVE_INFORMATION      (1)
1852 #define SET_TAPE_MEDIA_INFORMATION      (0)
1853 #define SET_TAPE_DRIVE_INFORMATION      (1)
1854
1855 /* GetTapePosition */
1856 #define TAPE_ABSOLUTE_POSITION  (0L)
1857 #define TAPE_LOGICAL_POSITION   (0x1L)
1858
1859 /* GetTextAlign */
1860 #define TA_BASELINE     (24)
1861 #define TA_BOTTOM       (8)
1862 #define TA_TOP  (0)
1863 #define TA_CENTER       (6)
1864 #define TA_LEFT (0)
1865 #define TA_RIGHT        (2)
1866 #define TA_RTLREADING   (256)
1867 #define TA_NOUPDATECP   (0)
1868 #define TA_UPDATECP     (1)
1869 #define VTA_BASELINE    (24)
1870 #define VTA_CENTER      (6)
1871
1872 /* GetThreadPriority */
1873 #define TLS_MINIMUM_AVAILABLE   (64)
1874
1875 /* GetTimeFormat */
1876 #define TIME_NOMINUTESORSECONDS (1)
1877 #define TIME_NOSECONDS  (2)
1878 #define TIME_NOTIMEMARKER       (4)
1879 #define TIME_FORCE24HOURFORMAT  (8)
1880
1881 /* GetTimeZoneInformation */
1882 #define TIME_ZONE_ID_INVALID    ((DWORD) -1)
1883 #define TIME_ZONE_ID_UNKNOWN    (0)
1884 #define TIME_ZONE_ID_STANDARD   (1)
1885 #define TIME_ZONE_ID_DAYLIGHT   (2)
1886
1887 /* GetUserObjectInformation */
1888 #define UOI_FLAGS       (1)
1889 #define UOI_NAME        (2)
1890 #define UOI_TYPE        (3)
1891
1892 /* GetWindowLong */
1893 #define GWL_EXSTYLE     (-20)
1894 #define GWL_STYLE       (-16)
1895 #define GWL_WNDPROC     (-4)
1896 #define GWL_HINSTANCE   (-6)
1897 #define GWL_HWNDPARENT  (-8)
1898 #define GWL_ID  (-12)
1899 #define GWL_USERDATA    (-21)
1900 #define DWL_DLGPROC     (4)
1901 #define DWL_MSGRESULT   (0)
1902 #define DWL_USER        (8)
1903
1904 /* GlobalAlloc, GlobalFlags */
1905 #define GMEM_FIXED      (0)
1906 #define GMEM_MOVEABLE   (2)
1907 #define GPTR    (64)
1908 #define GHND    (66)
1909 #define GMEM_DDESHARE   (8192)
1910 #define GMEM_DISCARDABLE        (256)
1911 #define GMEM_LOWER      (4096)
1912 #define GMEM_NOCOMPACT  (16)
1913 #define GMEM_NODISCARD  (32)
1914 #define GMEM_NOT_BANKED (4096)
1915 #define GMEM_NOTIFY     (16384)
1916 #define GMEM_SHARE      (8192)
1917 #define GMEM_ZEROINIT   (64)
1918 #define GMEM_DISCARDED  (16384)
1919 #define GMEM_INVALID_HANDLE     (32768)
1920 #define GMEM_LOCKCOUNT  (255)
1921    
1922 /* ImageList_Create */
1923 #define ILC_COLOR       (0)
1924 #define ILC_COLOR4      (4)
1925 #define ILC_COLOR8      (8)
1926 #define ILC_COLOR16     (16)
1927 #define ILC_COLOR24     (24)
1928 #define ILC_COLOR32     (32)
1929 #define ILC_COLORDDB    (254)
1930 #define ILC_MASK        (1)
1931 #define ILC_PALETTE     (2048)
1932
1933 /* ImageList_Draw, ImageList_DrawEx */
1934 #define ILD_BLEND25     (2)
1935 #define ILD_BLEND50     (4)
1936 #define ILD_SELECTED    (4)
1937 #define ILD_BLEND       (4)
1938 #define ILD_FOCUS       (2)
1939 #define ILD_MASK        (16)
1940 #define ILD_NORMAL      (0)
1941 #define ILD_TRANSPARENT (1)
1942 #define CLR_NONE        (0xffffffffL)
1943 #define CLR_DEFAULT     (0xff000000L)
1944
1945 /* ImageList_LoadImage */
1946 #define LR_DEFAULTCOLOR (0)
1947 #define LR_LOADFROMFILE (16)
1948 #define LR_LOADMAP3DCOLORS      (4096)
1949 #define LR_LOADTRANSPARENT      (32)
1950 #define LR_MONOCHROME   (1)
1951
1952 /* ImmConfigureIME */
1953 #define IME_CONFIG_GENERAL      (1)
1954 #define IME_CONFIG_REGISTERWORD (2)
1955 #define IME_CONFIG_SELECTDICTIONARY     (3)
1956
1957 /* ImmGetConversionList */
1958 #define GCL_CONVERSION  (1)
1959 #define GCL_REVERSECONVERSION   (2)
1960 #define GCL_REVERSE_LENGTH      (3)
1961
1962 /* ImmGetGuideLine */
1963 #define GGL_LEVEL       (1)
1964 #define GGL_INDEX       (2)
1965 #define GGL_STRING      (3)
1966 #define GGL_PRIVATE     (4)
1967 #define GL_LEVEL_ERROR  (2)
1968 #define GL_LEVEL_FATAL  (1)
1969 #define GL_LEVEL_INFORMATION    (4)
1970 #define GL_LEVEL_NOGUIDELINE    (0)
1971 #define GL_LEVEL_WARNING        (3)
1972 #define GL_ID_CANNOTSAVE        (17)
1973 #define GL_ID_NOCONVERT (32)
1974 #define GL_ID_NODICTIONARY      (16)
1975 #define GL_ID_NOMODULE  (1)
1976 #define GL_ID_READINGCONFLICT   (35)
1977 #define GL_ID_TOOMANYSTROKE     (34)
1978 #define GL_ID_TYPINGERROR       (33)
1979 #define GL_ID_UNKNOWN   (0)
1980 #define GL_ID_INPUTREADING      (36)
1981 #define GL_ID_INPUTRADICAL      (37)
1982 #define GL_ID_INPUTCODE (38)
1983 #define GL_ID_CHOOSECANDIDATE   (40)
1984 #define GL_ID_REVERSECONVERSION (41)
1985
1986 /* ImmGetProperty */
1987 #define IGP_PROPERTY    (4)
1988 #define IGP_CONVERSION  (8)
1989 #define IGP_SENTENCE    (12)
1990 #define IGP_UI  (16)
1991 #define IGP_SETCOMPSTR  (20)
1992 #define IGP_SELECT      (24)
1993 #define IME_PROP_AT_CARET       (65536)
1994 #define IME_PROP_SPECIAL_UI     (131072)
1995 #define IME_PROP_CANDLIST_START_FROM_1  (262144)
1996 #define IME_PROP_UNICODE        (524288)
1997 #define UI_CAP_2700     (1)
1998 #define UI_CAP_ROT90    (2)
1999 #define UI_CAP_ROTANY   (4)
2000 #define SCS_CAP_COMPSTR (1)
2001 #define SCS_CAP_MAKEREAD        (2)
2002 #define SELECT_CAP_CONVERSION   (1)
2003 #define SELECT_CAP_SENTENCE     (2)
2004
2005 /* ImmNotifyIME */
2006 #define NI_CHANGECANDIDATELIST  (19)
2007 #define NI_CLOSECANDIDATE       (17)
2008 #define NI_COMPOSITIONSTR       (21)
2009 #define NI_OPENCANDIDATE        (16)
2010 #define NI_SELECTCANDIDATESTR   (18)
2011 #define NI_SETCANDIDATE_PAGESIZE        (23)
2012 #define NI_SETCANDIDATE_PAGESTART       (22)
2013 #define CPS_CANCEL      (4)
2014 #define CPS_COMPLETE    (1)
2015 #define CPS_CONVERT     (2)
2016 #define CPS_REVERT      (3)
2017
2018 /* ImmSetCompositionString */
2019 #define SCS_SETSTR      (9)
2020 #define SCS_CHANGEATTR  (18)
2021 #define SCS_CHANGECLAUSE        (36)
2022
2023 /* ImmUnregisterWord */
2024 #define IME_REGWORD_STYLE_EUDC  (1)
2025 #define IME_REGWORD_STYLE_USER_FIRST    0x80000000
2026 #define IME_REGWORD_STYLE_USER_LAST     (-1)
2027
2028 /* InitializeSecurityDescriptor */
2029 #define SECURITY_DESCRIPTOR_REVISION    (1)
2030
2031 /* JournalPlaybackProc, KeyboardProc */
2032 #define HC_GETNEXT      (1)
2033 #define HC_SKIP (2)
2034 #define HC_SYSMODALOFF  (5)
2035 #define HC_SYSMODALON   (4)
2036 #define HC_NOREMOVE     (3)
2037
2038 /* keybd_event */
2039 #define KEYEVENTF_EXTENDEDKEY   (1)
2040 #define KEYEVENTF_KEYUP (2)
2041
2042 /* LoadBitmap */
2043 #define OBM_BTNCORNERS  (32758)
2044 #define OBM_BTSIZE      (32761)
2045 #define OBM_CHECK       (32760)
2046 #define OBM_CHECKBOXES  (32759)
2047 #define OBM_CLOSE       (32754)
2048 #define OBM_COMBO       (32738)
2049 #define OBM_DNARROW     (32752)
2050 #define OBM_DNARROWD    (32742)
2051 #define OBM_DNARROWI    (32736)
2052 #define OBM_LFARROW     (32750)
2053 #define OBM_LFARROWI    (32734)
2054 #define OBM_LFARROWD    (32740)
2055 #define OBM_MNARROW     (32739)
2056 #define OBM_OLD_CLOSE   (32767)
2057 #define OBM_OLD_DNARROW (32764)
2058 #define OBM_OLD_LFARROW (32762)
2059 #define OBM_OLD_REDUCE  (32757)
2060 #define OBM_OLD_RESTORE (32755)
2061 #define OBM_OLD_RGARROW (32763)
2062 #define OBM_OLD_UPARROW (32765)
2063 #define OBM_OLD_ZOOM    (32756)
2064 #define OBM_REDUCE      (32749)
2065 #define OBM_REDUCED     (32746)
2066 #define OBM_RESTORE     (32747)
2067 #define OBM_RESTORED    (32744)
2068 #define OBM_RGARROW     (32751)
2069 #define OBM_RGARROWD    (32741)
2070 #define OBM_RGARROWI    (32735)
2071 #define OBM_SIZE        (32766)
2072 #define OBM_UPARROW     (32753)
2073 #define OBM_UPARROWD    (32743)
2074 #define OBM_UPARROWI    (32737)
2075 #define OBM_ZOOM        (32748)
2076 #define OBM_ZOOMD       (32745)
2077
2078 /* LoadLibraryEx */
2079 #define DONT_RESOLVE_DLL_REFERENCES     (1)
2080 #define LOAD_LIBRARY_AS_DATAFILE        (2)
2081 #define LOAD_WITH_ALTERED_SEARCH_PATH   (8)
2082
2083 /* LocalAlloc, LocalFlags */
2084 #define LPTR    (64)
2085 #define LHND    (66)
2086 #define NONZEROLHND     (2)
2087 #define NONZEROLPTR     (0)
2088 #define LMEM_NONZEROLHND        (2)
2089 #define LMEM_NONZEROLPTR        (0)
2090 #define LMEM_FIXED      (0)
2091 #define LMEM_MOVEABLE   (2)
2092 #define LMEM_NOCOMPACT  (16)
2093 #define LMEM_NODISCARD  (32)
2094 #define LMEM_ZEROINIT   (64)
2095 #define LMEM_MODIFY     (128)
2096 #define LMEM_LOCKCOUNT  (255)
2097 #define LMEM_DISCARDABLE        (3840)
2098 #define LMEM_DISCARDED  (16384)
2099 #define LMEM_INVALID_HANDLE     (32768)
2100
2101 /* LockFileEx */
2102 #define LOCKFILE_FAIL_IMMEDIATELY       (1)
2103 #define LOCKFILE_EXCLUSIVE_LOCK (2)
2104
2105 /* LogonUser */
2106
2107 /* LZCopy, LZInit, LZRead */
2108
2109 /* MessageBeep, MessageBox */
2110 #define MB_USERICON     (0x80L)
2111 #define MB_ICONASTERISK (0x40L)
2112 #define MB_ICONEXCLAMATION      (0x30L)
2113 #define MB_ICONWARNING  (0x30L)
2114 #define MB_ICONERROR    (0x10L)
2115 #define MB_ICONHAND     (0x10L)
2116 #define MB_ICONQUESTION (0x20L)
2117 #define MB_OK   (0L)
2118 #define MB_ABORTRETRYIGNORE     (0x2L)
2119 #define MB_APPLMODAL    (0L)
2120 #define MB_DEFAULT_DESKTOP_ONLY (0x20000L)
2121 #define MB_HELP (0x4000L)
2122 #define MB_RIGHT        (0x80000L)
2123 #define MB_RTLREADING   (0x100000L)
2124 #define MB_TOPMOST      (0x40000L)
2125 #define MB_DEFBUTTON1   (0L)
2126 #define MB_DEFBUTTON2   (0x100L)
2127 #define MB_DEFBUTTON3   (0x200L)
2128 #define MB_DEFBUTTON4   (0x300L)
2129 #define MB_ICONINFORMATION      (0x40L)
2130 #define MB_ICONSTOP     (0x10L)
2131 #define MB_OKCANCEL     (0x1L)
2132 #define MB_RETRYCANCEL  (0x5L)
2133 #define MB_SERVICE_NOTIFICATION (0x40000L)
2134 #define MB_SETFOREGROUND        (0x10000L)
2135 #define MB_SYSTEMMODAL  (0x1000L)
2136 #define MB_TASKMODAL    (0x2000L)
2137 #define MB_YESNO        (0x4L)
2138 #define MB_YESNOCANCEL  (0x3L)
2139 #define MB_CANCELTRYCONTINUE    (0x6L)
2140 #define IDABORT (3)
2141 #define IDCANCEL        (2)
2142 #define IDCLOSE (8)
2143 #define IDHELP  (9)
2144 #define IDIGNORE        (5)
2145 #define IDNO    (7)
2146 #define IDOK    (1)
2147 #define IDRETRY (4)
2148 #define IDYES   (6)
2149 #define IDTRYAGAIN      (10)
2150 #define IDCONTINUE      (11)
2151
2152 /* MessageProc */
2153 #define MSGF_DIALOGBOX  (0)
2154 #define MSGF_MENU       (2)
2155 #define MSGF_NEXTWINDOW (6)
2156 #define MSGF_SCROLLBAR  (5)
2157 #define MSGF_MAINLOOP   (8)
2158 #define MSGF_USER       (4096)
2159
2160 /* ModifyWorldTransform */
2161 #define MWT_IDENTITY    (1)
2162 #define MWT_LEFTMULTIPLY        (2)
2163 #define MWT_RIGHTMULTIPLY       (3)
2164
2165 /* mouse_event */
2166 #define MOUSEEVENTF_ABSOLUTE    (32768)
2167 #define MOUSEEVENTF_MOVE        (1)
2168 #define MOUSEEVENTF_LEFTDOWN    (2)
2169 #define MOUSEEVENTF_LEFTUP      (4)
2170 #define MOUSEEVENTF_RIGHTDOWN   (8)
2171 #define MOUSEEVENTF_RIGHTUP     (16)
2172 #define MOUSEEVENTF_MIDDLEDOWN  (32)
2173 #define MOUSEEVENTF_MIDDLEUP    (64)
2174
2175 /* MoveFileEx */
2176 #define MOVEFILE_REPLACE_EXISTING       (1)
2177 #define MOVEFILE_COPY_ALLOWED   (2)
2178 #define MOVEFILE_DELAY_UNTIL_REBOOT     (4)
2179
2180 /* MsgWaitForMultipleObjects, WaitForMultipleObjectsEx */
2181 #define WAIT_OBJECT_0   (0L)
2182 #define WAIT_ABANDONED_0        (0x80L)
2183 #define WAIT_TIMEOUT    (0x102L)
2184 #define WAIT_IO_COMPLETION      (0xc0L)
2185 #define WAIT_ABANDONED  (0x80L)
2186 #define WAIT_FAILED     (0xffffffffL)
2187 #define MAXIMUM_WAIT_OBJECTS    (0x40)
2188 #define MAXIMUM_SUSPEND_COUNT   (0x7f)
2189
2190 /* MultiByteToWideChar */
2191 #define MB_PRECOMPOSED  (1)
2192 #define MB_COMPOSITE    (2)
2193 #define MB_ERR_INVALID_CHARS    (8)
2194 #define MB_USEGLYPHCHARS        (4)
2195
2196 /* NDdeSetTrustedShare */
2197
2198 /* NetAccessCheck */
2199
2200 /* NetServerEnum */
2201
2202 /* NetServiceControl */
2203
2204 /* NetUserEnum */
2205
2206 /* OpenProcessToken */
2207
2208 /* OpenSCManager */
2209 #define SC_MANAGER_CONNECT      (1)
2210 #define SC_MANAGER_CREATE_SERVICE       (2)
2211 #define SC_MANAGER_ENUMERATE_SERVICE    (4)
2212 #define SC_MANAGER_LOCK (8)
2213 #define SC_MANAGER_QUERY_LOCK_STATUS    (16)
2214 #define SC_MANAGER_MODIFY_BOOT_CONFIG   (32)
2215 #define SC_MANAGER_ALL_ACCESS          (STANDARD_RIGHTS_REQUIRED      | \
2216                                         SC_MANAGER_CONNECT            | \
2217                                         SC_MANAGER_CREATE_SERVICE     | \
2218                                         SC_MANAGER_ENUMERATE_SERVICE  | \
2219                                         SC_MANAGER_LOCK               | \
2220                                         SC_MANAGER_QUERY_LOCK_STATUS  | \
2221                                         SC_MANAGER_MODIFY_BOOT_CONFIG)
2222
2223 /* PostMessage */
2224 #define HWND_BROADCAST  ((HWND)0xFFFF)
2225
2226 /* PrepareTape */
2227 #define TAPE_FORMAT     (0x5L)
2228 #define TAPE_LOAD       (0L)
2229 #define TAPE_LOCK       (0x3L)
2230 #define TAPE_TENSION    (0x2L)
2231 #define TAPE_UNLOAD     (0x1L)
2232 #define TAPE_UNLOCK     (0x4L)
2233
2234 /* PropertySheet */
2235 #define IS_PSREBOOTSYSTEM       (3)
2236 #define IS_PSRESTARTWINDOWS     (2)
2237
2238 /* PropSheetPageProc */
2239 #define PSPCB_CREATE    (2)
2240 #define PSPCB_RELEASE   (1)
2241
2242 /* PurgeComm */
2243 #define PURGE_TXABORT   (1)
2244 #define PURGE_RXABORT   (2)
2245 #define PURGE_TXCLEAR   (4)
2246 #define PURGE_RXCLEAR   (8)
2247
2248 /* QueryServiceObjectSecurity */
2249 #define OWNER_SECURITY_INFORMATION      (0x1L)
2250 #define GROUP_SECURITY_INFORMATION      (0x2L)
2251 #define DACL_SECURITY_INFORMATION       (0x4L)
2252 #define SACL_SECURITY_INFORMATION       (0x8L)
2253
2254 /* ReadEventLog, ReportEvent */
2255 #define EVENTLOG_FORWARDS_READ  (4)
2256 #define EVENTLOG_BACKWARDS_READ (8)
2257 #define EVENTLOG_SEEK_READ      (2)
2258 #define EVENTLOG_SEQUENTIAL_READ        (1)
2259 #define EVENTLOG_ERROR_TYPE     (1)
2260 #define EVENTLOG_WARNING_TYPE   (2)
2261 #define EVENTLOG_INFORMATION_TYPE       (4)
2262 #define EVENTLOG_AUDIT_SUCCESS  (8)
2263 #define EVENTLOG_AUDIT_FAILURE  (16)
2264
2265 /* RedrawWindow */
2266 #define RDW_ERASE       (4)
2267 #define RDW_FRAME       (1024)
2268 #define RDW_INTERNALPAINT       (2)
2269 #define RDW_INVALIDATE  (1)
2270 #define RDW_NOERASE     (32)
2271 #define RDW_NOFRAME     (2048)
2272 #define RDW_NOINTERNALPAINT     (16)
2273 #define RDW_VALIDATE    (8)
2274 #define RDW_ERASENOW    (512)
2275 #define RDW_UPDATENOW   (256)
2276 #define RDW_ALLCHILDREN (128)
2277 #define RDW_NOCHILDREN  (64)
2278
2279 /* RegCreateKey */
2280 #define HKEY_CLASSES_ROOT       ((HKEY)0x80000000)
2281 #define HKEY_CURRENT_USER       ((HKEY)0x80000001)
2282 #define HKEY_LOCAL_MACHINE      ((HKEY)0x80000002)
2283 #define HKEY_USERS              ((HKEY)0x80000003)
2284 #define HKEY_PERFORMANCE_DATA   ((HKEY)0x80000004)
2285 #define HKEY_CURRENT_CONFIG     ((HKEY)0x80000005)
2286 #define HKEY_DYN_DATA           ((HKEY)0x00000006)
2287
2288 /* RegCreateKeyEx */
2289
2290 /* RegEnumValue */
2291
2292 /* RegisterHotKey */
2293 #define MOD_ALT (1)
2294 #define MOD_CONTROL     (2)
2295 #define MOD_SHIFT       (4)
2296 #define MOD_WIN (8)
2297 #define IDHOT_SNAPDESKTOP       (-2)
2298 #define IDHOT_SNAPWINDOW        (-1)
2299
2300 /* RegNotifyChangeKeyValue */
2301 #define REG_NOTIFY_CHANGE_NAME  (0x1L)
2302 #define REG_NOTIFY_CHANGE_ATTRIBUTES    (0x2L)
2303 #define REG_NOTIFY_CHANGE_LAST_SET      (0x4L)
2304 #define REG_NOTIFY_CHANGE_SECURITY      (0x8L)
2305
2306 /* ScrollWindowEx */
2307 #define SW_ERASE        (4)
2308 #define SW_INVALIDATE   (2)
2309 #define SW_SCROLLCHILDREN       (1)
2310
2311 /* SendMessageTimeout */
2312 #define SMTO_ABORTIFHUNG        (2)
2313 #define SMTO_BLOCK      (1)
2314 #define SMTO_NORMAL     (0)
2315
2316 /* SetBkMode */
2317 #define OPAQUE  (2)
2318 #define TRANSPARENT     (1)
2319
2320 /* SetDebugErrorLevel */
2321 #define SLE_ERROR       (1)
2322 #define SLE_MINORERROR  (2)
2323 #define SLE_WARNING     (3)
2324
2325 /* SetErrorMode */
2326 #define SEM_FAILCRITICALERRORS  (1)
2327 #define SEM_NOALIGNMENTFAULTEXCEPT      (4)
2328 #define SEM_NOGPFAULTERRORBOX   (2)
2329 #define SEM_NOOPENFILEERRORBOX  (32768)
2330
2331 /* SetICMMode */
2332 #define ICM_ON  (2)
2333 #define ICM_OFF (1)
2334 #define ICM_QUERY       (3)
2335
2336 /* SetJob */
2337
2338 /* Locale Information */
2339 #define LOCALE_ILANGUAGE        (1)
2340 #define LOCALE_SLANGUAGE        (2)
2341 #define LOCALE_SENGLANGUAGE     (4097)
2342 #define LOCALE_SABBREVLANGNAME  (3)
2343 #define LOCALE_SNATIVELANGNAME  (4)
2344 #define LOCALE_ICOUNTRY (5)
2345 #define LOCALE_SCOUNTRY (6)
2346 #define LOCALE_SENGCOUNTRY      (4098)
2347 #define LOCALE_SABBREVCTRYNAME  (7)
2348 #define LOCALE_SNATIVECTRYNAME  (8)
2349 #define LOCALE_IDEFAULTLANGUAGE (9)
2350 #define LOCALE_IDEFAULTCOUNTRY  (10)
2351 #define LOCALE_IDEFAULTANSICODEPAGE     (4100)
2352 #define LOCALE_IDEFAULTCODEPAGE (11)
2353 #define LOCALE_SLIST    (12)
2354 #define LOCALE_IMEASURE (13)
2355 #define LOCALE_SDECIMAL (14)
2356 #define LOCALE_STHOUSAND        (15)
2357 #define LOCALE_SGROUPING        (16)
2358 #define LOCALE_IDIGITS  (17)
2359 #define LOCALE_ILZERO   (18)
2360 #define LOCALE_INEGNUMBER       (4112)
2361 #define LOCALE_SCURRENCY        (20)
2362 #define LOCALE_SMONDECIMALSEP   (22)
2363 #define LOCALE_SMONTHOUSANDSEP  (23)
2364 #define LOCALE_SMONGROUPING     (24)
2365 #define LOCALE_ICURRDIGITS      (25)
2366 #define LOCALE_ICURRENCY        (27)
2367 #define LOCALE_INEGCURR (28)
2368 #define LOCALE_SDATE    (29)
2369 #define LOCALE_STIME    (30)
2370 #define LOCALE_STIMEFORMAT      (4099)
2371 #define LOCALE_SSHORTDATE       (31)
2372 #define LOCALE_SLONGDATE        (32)
2373 #define LOCALE_IDATE    (33)
2374 #define LOCALE_ILDATE   (34)
2375 #define LOCALE_ITIME    (35)
2376 #define LOCALE_ITLZERO  (37)
2377 #define LOCALE_IDAYLZERO        (38)
2378 #define LOCALE_IMONLZERO        (39)
2379 #define LOCALE_S1159    (40)
2380 #define LOCALE_S2359    (41)
2381 #define LOCALE_ICALENDARTYPE    (4105)
2382 #define LOCALE_IOPTIONALCALENDAR        (4107)
2383 #define LOCALE_IFIRSTDAYOFWEEK  (4108)
2384 #define LOCALE_IFIRSTWEEKOFYEAR (4109)
2385 #define LOCALE_SDAYNAME1        (42)
2386 #define LOCALE_SDAYNAME2        (43)
2387 #define LOCALE_SDAYNAME3        (44)
2388 #define LOCALE_SDAYNAME4        (45)
2389 #define LOCALE_SDAYNAME5        (46)
2390 #define LOCALE_SDAYNAME6        (47)
2391 #define LOCALE_SDAYNAME7        (48)
2392 #define LOCALE_SABBREVDAYNAME1  (49)
2393 #define LOCALE_SABBREVDAYNAME2  (50)
2394 #define LOCALE_SABBREVDAYNAME3  (51)
2395 #define LOCALE_SABBREVDAYNAME4  (52)
2396 #define LOCALE_SABBREVDAYNAME5  (53)
2397 #define LOCALE_SABBREVDAYNAME6  (54)
2398 #define LOCALE_SABBREVDAYNAME7  (55)
2399 #define LOCALE_SMONTHNAME1      (56)
2400 #define LOCALE_SMONTHNAME2      (57)
2401 #define LOCALE_SMONTHNAME3      (58)
2402 #define LOCALE_SMONTHNAME4      (59)
2403 #define LOCALE_SMONTHNAME5      (60)
2404 #define LOCALE_SMONTHNAME6      (61)
2405 #define LOCALE_SMONTHNAME7      (62)
2406 #define LOCALE_SMONTHNAME8      (63)
2407 #define LOCALE_SMONTHNAME9      (64)
2408 #define LOCALE_SMONTHNAME10     (65)
2409 #define LOCALE_SMONTHNAME11     (66)
2410 #define LOCALE_SMONTHNAME12     (67)
2411 #define LOCALE_SMONTHNAME13     (4110)
2412 #define LOCALE_SABBREVMONTHNAME1        (68)
2413 #define LOCALE_SABBREVMONTHNAME2        (69)
2414 #define LOCALE_SABBREVMONTHNAME3        (70)
2415 #define LOCALE_SABBREVMONTHNAME4        (71)
2416 #define LOCALE_SABBREVMONTHNAME5        (72)
2417 #define LOCALE_SABBREVMONTHNAME6        (73)
2418 #define LOCALE_SABBREVMONTHNAME7        (74)
2419 #define LOCALE_SABBREVMONTHNAME8        (75)
2420 #define LOCALE_SABBREVMONTHNAME9        (76)
2421 #define LOCALE_SABBREVMONTHNAME10       (77)
2422 #define LOCALE_SABBREVMONTHNAME11       (78)
2423 #define LOCALE_SABBREVMONTHNAME12       (79)
2424 #define LOCALE_SABBREVMONTHNAME13       (4111)
2425 #define LOCALE_SPOSITIVESIGN    (80)
2426 #define LOCALE_SNEGATIVESIGN    (81)
2427 #define LOCALE_IPOSSIGNPOSN     (82)
2428 #define LOCALE_INEGSIGNPOSN     (83)
2429 #define LOCALE_IPOSSYMPRECEDES  (84)
2430 #define LOCALE_IPOSSEPBYSPACE   (85)
2431 #define LOCALE_INEGSYMPRECEDES  (86)
2432 #define LOCALE_INEGSEPBYSPACE   (87)
2433 #define LOCALE_NOUSEROVERRIDE   (0x80000000)
2434
2435 /* Calendar Type Information */
2436 #define CAL_ICALINTVALUE        (1)
2437 #define CAL_IYEAROFFSETRANGE    (3)
2438 #define CAL_SABBREVDAYNAME1     (14)
2439 #define CAL_SABBREVDAYNAME2     (15)
2440 #define CAL_SABBREVDAYNAME3     (16)
2441 #define CAL_SABBREVDAYNAME4     (17)
2442 #define CAL_SABBREVDAYNAME5     (18)
2443 #define CAL_SABBREVDAYNAME6     (19)
2444 #define CAL_SABBREVDAYNAME7     (20)
2445 #define CAL_SABBREVMONTHNAME1   (34)
2446 #define CAL_SABBREVMONTHNAME2   (35)
2447 #define CAL_SABBREVMONTHNAME3   (36)
2448 #define CAL_SABBREVMONTHNAME4   (37)
2449 #define CAL_SABBREVMONTHNAME5   (38)
2450 #define CAL_SABBREVMONTHNAME6   (39)
2451 #define CAL_SABBREVMONTHNAME7   (40)
2452 #define CAL_SABBREVMONTHNAME8   (41)
2453 #define CAL_SABBREVMONTHNAME9   (42)
2454 #define CAL_SABBREVMONTHNAME10  (43)
2455 #define CAL_SABBREVMONTHNAME11  (44)
2456 #define CAL_SABBREVMONTHNAME12  (45)
2457 #define CAL_SABBREVMONTHNAME13  (46)
2458 #define CAL_SCALNAME    (2)
2459 #define CAL_SDAYNAME1   (7)
2460 #define CAL_SDAYNAME2   (8)
2461 #define CAL_SDAYNAME3   (9)
2462 #define CAL_SDAYNAME4   (10)
2463 #define CAL_SDAYNAME5   (11)
2464 #define CAL_SDAYNAME6   (12)
2465 #define CAL_SDAYNAME7   (13)
2466 #define CAL_SERASTRING  (4)
2467 #define CAL_SLONGDATE   (6)
2468 #define CAL_SMONTHNAME1 (21)
2469 #define CAL_SMONTHNAME2 (22)
2470 #define CAL_SMONTHNAME3 (23)
2471 #define CAL_SMONTHNAME4 (24)
2472 #define CAL_SMONTHNAME5 (25)
2473 #define CAL_SMONTHNAME6 (26)
2474 #define CAL_SMONTHNAME7 (27)
2475 #define CAL_SMONTHNAME8 (28)
2476 #define CAL_SMONTHNAME9 (29)
2477 #define CAL_SMONTHNAME10        (30)
2478 #define CAL_SMONTHNAME11        (31)
2479 #define CAL_SMONTHNAME12        (32)
2480 #define CAL_SMONTHNAME13        (33)
2481 #define CAL_SSHORTDATE  (5)
2482
2483 /* SetProcessWorkingSetSize */
2484
2485 /* SetPrinter */
2486
2487 /* SetService */
2488
2489 /* SetStretchBltMode */
2490 #define BLACKONWHITE    (1)
2491 #define COLORONCOLOR    (3)
2492 #define HALFTONE        (4)
2493 #define STRETCH_ANDSCANS        (1)
2494 #define STRETCH_DELETESCANS     (3)
2495 #define STRETCH_HALFTONE        (4)
2496 #define STRETCH_ORSCANS (2)
2497 #define WHITEONBLACK    (2)
2498
2499 /* SetSystemCursor */
2500 #define OCR_NORMAL      (32512)
2501 #define OCR_IBEAM       (32513)
2502 #define OCR_WAIT        (32514)
2503 #define OCR_CROSS       (32515)
2504 #define OCR_UP  (32516)
2505 #define OCR_SIZE        (32640)
2506 #define OCR_ICON        (32641)
2507 #define OCR_SIZENWSE    (32642)
2508 #define OCR_SIZENESW    (32643)
2509 #define OCR_SIZEWE      (32644)
2510 #define OCR_SIZENS      (32645)
2511 #define OCR_SIZEALL     (32646)
2512 #define OCR_NO  (32648)
2513 #define OCR_APPSTARTING (32650)
2514
2515 /* SetTapePosition */
2516 #define TAPE_ABSOLUTE_BLOCK     (0x1L)
2517 #define TAPE_LOGICAL_BLOCK      (0x2L)
2518 #define TAPE_REWIND     (0L)
2519 #define TAPE_SPACE_END_OF_DATA  (0x4L)
2520 #define TAPE_SPACE_FILEMARKS    (0x6L)
2521 #define TAPE_SPACE_RELATIVE_BLOCKS      (0x5L)
2522 #define TAPE_SPACE_SEQUENTIAL_FMKS      (0x7L)
2523 #define TAPE_SPACE_SEQUENTIAL_SMKS      (0x9L)
2524 #define TAPE_SPACE_SETMARKS     (0x8L)
2525
2526 /* SetUnhandledExceptionFilter */
2527 #define EXCEPTION_EXECUTE_HANDLER       (1)
2528 #define EXCEPTION_CONTINUE_EXECUTION    (-1)
2529 #define EXCEPTION_CONTINUE_SEARCH       (0)
2530
2531 /* SetWindowPos, DeferWindowPos */
2532 #define HWND_BOTTOM     ((HWND)1)
2533 #define HWND_NOTOPMOST  ((HWND)-2)
2534 #define HWND_TOP        ((HWND)0)
2535 #define HWND_TOPMOST    ((HWND)-1)
2536 #define SWP_DRAWFRAME   (32)
2537 #define SWP_FRAMECHANGED        (32)
2538 #define SWP_HIDEWINDOW  (128)
2539 #define SWP_NOACTIVATE  (16)
2540 #define SWP_NOCOPYBITS  (256)
2541 #define SWP_NOMOVE      (2)
2542 #define SWP_NOSIZE      (1)
2543 #define SWP_NOREDRAW    (8)
2544 #define SWP_NOZORDER    (4)
2545 #define SWP_SHOWWINDOW  (64)
2546 #define SWP_NOOWNERZORDER       (512)
2547 #define SWP_NOREPOSITION        (512)
2548 #define SWP_NOSENDCHANGING      (1024)
2549
2550 /* SHAddToRecentDocs */
2551
2552 /* SHAppBarMessage */
2553
2554 /* SHChangeNotify */
2555
2556 /* ShellProc */
2557 #define HSHELL_ACTIVATESHELLWINDOW      (3)
2558 #define HSHELL_GETMINRECT       (5)
2559 #define HSHELL_LANGUAGE (8)
2560 #define HSHELL_REDRAW   (6)
2561 #define HSHELL_TASKMAN  (7)
2562 #define HSHELL_WINDOWACTIVATED  (4)
2563 #define HSHELL_WINDOWCREATED    (1)
2564 #define HSHELL_WINDOWDESTROYED  (2)
2565
2566 /* SHGetFileInfo */
2567
2568 /* SHGetSpecialFolderLocation */
2569
2570 /* ShowWindow */
2571 #define SW_HIDE (0)
2572 #define SW_MAXIMIZE     (3)
2573 #define SW_MINIMIZE     (6)
2574 #define SW_NORMAL       (1)
2575 #define SW_RESTORE      (9)
2576 #define SW_SHOW (5)
2577 #define SW_SHOWDEFAULT  (10)
2578 #define SW_SHOWMAXIMIZED        (3)
2579 #define SW_SHOWMINIMIZED        (2)
2580 #define SW_SHOWMINNOACTIVE      (7)
2581 #define SW_SHOWNA       (8)
2582 #define SW_SHOWNOACTIVATE       (4)
2583 #define SW_SHOWNORMAL   (1)
2584 #define WPF_RESTORETOMAXIMIZED  (2)
2585 #define WPF_SETMINPOSITION      (1)
2586
2587 /* AnimageWindow */
2588 #define AW_SLIDE        (0x00040000)
2589 #define AW_ACTIVATE     (0x00020000)
2590 #define AW_BLEND        (0x00080000)
2591 #define AW_HIDE         (0x00010000)
2592 #define AW_CENTER       (0x00000010)
2593 #define AW_HOR_POSITIVE (0x00000001)
2594 #define AW_HOR_NEGATIVE (0x00000002)
2595 #define AW_VER_POSITIVE (0x00000004)
2596 #define AW_VER_NEGATIVE (0x00000008)
2597
2598 /* Sleep */
2599 #define INFINITE        0xFFFFFFFF
2600
2601 /* SystemParametersInfo */
2602 #define SPI_GETACCESSTIMEOUT    (60)
2603 #define SPI_GETANIMATION        (72)
2604 #define SPI_GETBEEP     (1)
2605 #define SPI_GETBORDER   (5)
2606 #define SPI_GETDEFAULTINPUTLANG (89)
2607 #define SPI_GETDRAGFULLWINDOWS  (38)
2608 #define SPI_GETFASTTASKSWITCH   (35)
2609 #define SPI_GETFILTERKEYS       (50)
2610 #define SPI_GETFONTSMOOTHING    (74)
2611 #define SPI_GETGRIDGRANULARITY  (18)
2612 #define SPI_GETHIGHCONTRAST     (66)
2613 #define SPI_GETICONMETRICS      (45)
2614 #define SPI_GETICONTITLELOGFONT (31)
2615 #define SPI_GETICONTITLEWRAP    (25)
2616 #define SPI_GETKEYBOARDDELAY    (22)
2617 #define SPI_GETKEYBOARDPREF     (68)
2618 #define SPI_GETKEYBOARDSPEED    (10)
2619 #define SPI_GETLOWPOWERACTIVE   (83)
2620 #define SPI_GETLOWPOWERTIMEOUT  (79)
2621 #define SPI_GETMENUDROPALIGNMENT        (27)
2622 #define SPI_GETMINIMIZEDMETRICS (43)
2623 #define SPI_GETMOUSE    (3)
2624 #define SPI_GETMOUSEKEYS        (54)
2625 #define SPI_GETMOUSETRAILS      (94)
2626 #define SPI_GETNONCLIENTMETRICS (41)
2627 #define SPI_GETPOWEROFFACTIVE   (84)
2628 #define SPI_GETPOWEROFFTIMEOUT  (80)
2629 #define SPI_GETSCREENREADER     (70)
2630 #define SPI_GETSCREENSAVEACTIVE (16)
2631 #define SPI_GETSCREENSAVETIMEOUT        (14)
2632 #define SPI_GETSERIALKEYS       (62)
2633 #define SPI_GETSHOWSOUNDS       (56)
2634 #define SPI_GETSOUNDSENTRY      (64)
2635 #define SPI_GETSTICKYKEYS       (58)
2636 #define SPI_GETTOGGLEKEYS       (52)
2637 #define SPI_GETWINDOWSEXTENSION (92)
2638 #define SPI_GETWORKAREA (48)
2639 #define SPI_ICONHORIZONTALSPACING       (13)
2640 #define SPI_ICONVERTICALSPACING (24)
2641 #define SPI_LANGDRIVER  (12)
2642 #define SPI_SCREENSAVERRUNNING  (97)
2643 #define SPI_SETACCESSTIMEOUT    (61)
2644 #define SPI_SETANIMATION        (73)
2645 #define SPI_SETBEEP     (2)
2646 #define SPI_SETBORDER   (6)
2647 #define SPI_SETDEFAULTINPUTLANG (90)
2648 #define SPI_SETDESKPATTERN      (21)
2649 #define SPI_SETDESKWALLPAPER    (20)
2650 #define SPI_SETDOUBLECLICKTIME  (32)
2651 #define SPI_SETDOUBLECLKHEIGHT  (30)
2652 #define SPI_SETDOUBLECLKWIDTH   (29)
2653 #define SPI_SETDRAGFULLWINDOWS  (37)
2654 #define SPI_SETDRAGHEIGHT       (77)
2655 #define SPI_SETDRAGWIDTH        (76)
2656 #define SPI_SETFASTTASKSWITCH   (36)
2657 #define SPI_SETFILTERKEYS       (51)
2658 #define SPI_SETFONTSMOOTHING    (75)
2659 #define SPI_SETGRIDGRANULARITY  (19)
2660 #define SPI_SETHANDHELD (78)
2661 #define SPI_SETHIGHCONTRAST     (67)
2662 #define SPI_SETICONMETRICS      (46)
2663 #define SPI_SETICONTITLELOGFONT (34)
2664 #define SPI_SETICONTITLEWRAP    (26)
2665 #define SPI_SETKEYBOARDDELAY    (23)
2666 #define SPI_SETKEYBOARDPREF     (69)
2667 #define SPI_SETKEYBOARDSPEED    (11)
2668 #define SPI_SETLANGTOGGLE       (91)
2669 #define SPI_SETLOWPOWERACTIVE   (85)
2670 #define SPI_SETLOWPOWERTIMEOUT  (81)
2671 #define SPI_SETMENUDROPALIGNMENT        (28)
2672 #define SPI_SETMINIMIZEDMETRICS (44)
2673 #define SPI_SETMOUSE    (4)
2674 #define SPI_SETMOUSEBUTTONSWAP  (33)
2675 #define SPI_SETMOUSEKEYS        (55)
2676 #define SPI_SETMOUSETRAILS      (93)
2677 #define SPI_SETNONCLIENTMETRICS (42)
2678 #define SPI_SETPENWINDOWS       (49)
2679 #define SPI_SETPOWEROFFACTIVE   (86)
2680 #define SPI_SETPOWEROFFTIMEOUT  (82)
2681 #define SPI_SETSCREENREADER     (71)
2682 #define SPI_SETSCREENSAVEACTIVE (17)
2683 #define SPI_SETSCREENSAVETIMEOUT        (15)
2684 #define SPI_SETSERIALKEYS       (63)
2685 #define SPI_SETSHOWSOUNDS       (57)
2686 #define SPI_SETSOUNDSENTRY      (65)
2687 #define SPI_SETSTICKYKEYS       (59)
2688 #define SPI_SETTOGGLEKEYS       (53)
2689 #define SPI_SETWORKAREA (47)
2690 #define SPIF_UPDATEINIFILE      (1)
2691 #define SPIF_SENDWININICHANGE   (2)
2692 #define SPIF_SENDCHANGE (2)
2693
2694 /* TrackPopupMenu, TrackPopMenuEx */
2695 #define TPM_CENTERALIGN (0x4L)
2696 #define TPM_LEFTALIGN   (0L)
2697 #define TPM_RIGHTALIGN  (0x8L)
2698 #define TPM_LEFTBUTTON  (0L)
2699 #define TPM_RIGHTBUTTON (0x2L)
2700 #define TPM_HORIZONTAL  (0L)
2701 #define TPM_VERTICAL    (0x40L)
2702
2703 /* TranslateCharsetInfo */
2704 #define TCI_SRCCHARSET  (1)
2705 #define TCI_SRCCODEPAGE (2)
2706 #define TCI_SRCFONTSIG  (3)
2707
2708 /* VerFindFile */
2709 #define VFFF_ISSHAREDFILE       (1)
2710 #define VFF_CURNEDEST   (1)
2711 #define VFF_FILEINUSE   (2)
2712 #define VFF_BUFFTOOSMALL        (4)
2713
2714 /* VerInstallFile */
2715 #define VIFF_FORCEINSTALL       (1)
2716 #define VIFF_DONTDELETEOLD      (2)
2717 #define VIF_TEMPFILE    (0x1L)
2718 #define VIF_MISMATCH    (0x2L)
2719 #define VIF_SRCOLD      (0x4L)
2720 #define VIF_DIFFLANG    (0x8L)
2721 #define VIF_DIFFCODEPG  (0x10L)
2722 #define VIF_DIFFTYPE    (0x20L)
2723 #define VIF_WRITEPROT   (0x40L)
2724 #define VIF_FILEINUSE   (0x80L)
2725 #define VIF_OUTOFSPACE  (0x100L)
2726 #define VIF_ACCESSVIOLATION     (0x200L)
2727 #define VIF_SHARINGVIOLATION    (0x400L)
2728 #define VIF_CANNOTCREATE        (0x800L)
2729 #define VIF_CANNOTDELETE        (0x1000L)
2730 #define VIF_CANNOTDELETECUR     (0x4000L)
2731 #define VIF_CANNOTRENAME        (0x2000L)
2732 #define VIF_OUTOFMEMORY (0x8000L)
2733 #define VIF_CANNOTREADSRC       (0x10000L)
2734 #define VIF_CANNOTREADDST       (0x20000L)
2735 #define VIF_BUFFTOOSMALL        (0x40000L)
2736
2737 /* WideCharToMultiByte */
2738 #define WC_COMPOSITECHECK       (512)
2739 #define WC_DISCARDNS    (16)
2740 #define WC_SEPCHARS     (32)
2741 #define WC_DEFAULTCHAR  (64)
2742
2743 /* WinHelp */
2744 #define HELP_COMMAND    (0x102L)
2745 #define HELP_CONTENTS   (0x3L)
2746 #define HELP_CONTEXT    (0x1L)
2747 #define HELP_CONTEXTPOPUP       (0x8L)
2748 #define HELP_FORCEFILE  (0x9L)
2749 #define HELP_HELPONHELP (0x4L)
2750 #define HELP_INDEX      (0x3L)
2751 #define HELP_KEY        (0x101L)
2752 #define HELP_MULTIKEY   (0x201L)
2753 #define HELP_SETWINPOS  (0x0203L)
2754 #define HELP_PARTIALKEY (0x105L)
2755 #define HELP_QUIT       (0x2L)
2756 #define HELP_SETCONTENTS        (0x5L)
2757 #define HELP_SETINDEX   (0x5L)
2758 #define HELP_CONTEXTMENU        (0xa)
2759 #define HELP_FINDER     (0xb)
2760 #define HELP_WM_HELP    (0xc)
2761 #define HELP_TCARD      (0x8000)
2762 #define HELP_TCARD_DATA (0x10)
2763 #define HELP_TCARD_OTHER_CALLER (0x11)
2764
2765 /* WNetAddConnectino2 */
2766 #define CONNECT_UPDATE_PROFILE  (1)
2767
2768 /* WNetConnectionDialog, WNetDisconnectDialog, WNetOpenEnum */
2769 #define RESOURCETYPE_DISK       (1)
2770 #define RESOURCETYPE_PRINT      (2)
2771 #define RESOURCETYPE_ANY        (0)
2772 #define RESOURCE_CONNECTED      (1)
2773 #define RESOURCE_GLOBALNET      (2)
2774 #define RESOURCE_REMEMBERED     (3)
2775 #define RESOURCEUSAGE_CONNECTABLE       (1)
2776 #define RESOURCEUSAGE_CONTAINER (2)
2777
2778 /* WNetGetResourceInformation, WNetGetResourceParent */
2779 #define WN_BAD_NETNAME  (0x43L)
2780 #define WN_EXTENDED_ERROR       (0x4b8L)
2781 #define WN_MORE_DATA    (0xeaL)
2782 #define WN_NO_NETWORK   (0x4c6L)
2783 #define WN_SUCCESS      (0L)
2784 #define WN_ACCESS_DENIED        (0x5L)
2785 #define WN_BAD_PROVIDER (0x4b4L)
2786 #define WN_NOT_AUTHENTICATED    (0x4dcL)
2787
2788 /* WNetGetUniversalName */
2789 #define UNIVERSAL_NAME_INFO_LEVEL       (1)
2790 #define REMOTE_NAME_INFO_LEVEL  (2)
2791
2792 /* GetExitCodeThread */
2793 #define STILL_ACTIVE    (0x103L)
2794
2795 /* COMMPROP structure */
2796 #define SP_SERIALCOMM   (0x1L)
2797 #define BAUD_075        (0x1L)
2798 #define BAUD_110        (0x2L)
2799 #define BAUD_134_5      (0x4L)
2800 #define BAUD_150        (0x8L)
2801 #define BAUD_300        (0x10L)
2802 #define BAUD_600        (0x20L)
2803 #define BAUD_1200       (0x40L)
2804 #define BAUD_1800       (0x80L)
2805 #define BAUD_2400       (0x100L)
2806 #define BAUD_4800       (0x200L)
2807 #define BAUD_7200       (0x400L)
2808 #define BAUD_9600       (0x800L)
2809 #define BAUD_14400      (0x1000L)
2810 #define BAUD_19200      (0x2000L)
2811 #define BAUD_38400      (0x4000L)
2812 #define BAUD_56K        (0x8000L)
2813 #define BAUD_57600      (0x40000L)
2814 #define BAUD_115200     (0x20000L)
2815 #define BAUD_128K       (0x10000L)
2816 #define BAUD_USER       (0x10000000L)
2817 #define PST_FAX (0x21L)
2818 #define PST_LAT (0x101L)
2819 #define PST_MODEM       (0x6L)
2820 #define PST_NETWORK_BRIDGE      (0x100L)
2821 #define PST_PARALLELPORT        (0x2L)
2822 #define PST_RS232       (0x1L)
2823 #define PST_RS422       (0x3L)
2824 #define PST_RS423       (0x4L)
2825 #define PST_RS449       (0x5L)
2826 #define PST_SCANNER     (0x22L)
2827 #define PST_TCPIP_TELNET        (0x102L)
2828 #define PST_UNSPECIFIED (0L)
2829 #define PST_X25 (0x103L)
2830 #define PCF_16BITMODE   (0x200L)
2831 #define PCF_DTRDSR      (0x1L)
2832 #define PCF_INTTIMEOUTS (0x80L)
2833 #define PCF_PARITY_CHECK        (0x8L)
2834 #define PCF_RLSD        (0x4L)
2835 #define PCF_RTSCTS      (0x2L)
2836 #define PCF_SETXCHAR    (0x20L)
2837 #define PCF_SPECIALCHARS        (0x100L)
2838 #define PCF_TOTALTIMEOUTS       (0x40L)
2839 #define PCF_XONXOFF     (0x10L)
2840 #define SP_BAUD (0x2L)
2841 #define SP_DATABITS     (0x4L)
2842 #define SP_HANDSHAKING  (0x10L)
2843 #define SP_PARITY       (0x1L)
2844 #define SP_PARITY_CHECK (0x20L)
2845 #define SP_RLSD (0x40L)
2846 #define SP_STOPBITS     (0x8L)
2847 #define DATABITS_5      (1)
2848 #define DATABITS_6      (2)
2849 #define DATABITS_7      (4)
2850 #define DATABITS_8      (8)
2851 #define DATABITS_16     (16)
2852 #define DATABITS_16X    (32)
2853 #define STOPBITS_10     (1)
2854 #define STOPBITS_15     (2)
2855 #define STOPBITS_20     (4)
2856 #define PARITY_NONE     (256)
2857 #define PARITY_ODD      (512)
2858 #define PARITY_EVEN     (1024)
2859 #define PARITY_MARK     (2048)
2860 #define PARITY_SPACE    (4096)
2861 #define COMMPROP_INITIALIZED    (0xe73cf52eL)
2862
2863 /* DCB structure */
2864 #define CBR_110 (110)
2865 #define CBR_300 (300)
2866 #define CBR_600 (600)
2867 #define CBR_1200        (1200)
2868 #define CBR_2400        (2400)
2869 #define CBR_4800        (4800)
2870 #define CBR_9600        (9600)
2871 #define CBR_14400       (14400)
2872 #define CBR_19200       (19200)
2873 #define CBR_38400       (38400)
2874 #define CBR_56000       (56000)
2875 #define CBR_57600       (57600)
2876 #define CBR_115200      (115200)
2877 #define CBR_128000      (128000)
2878 #define CBR_256000      (256000)
2879 #define DTR_CONTROL_DISABLE     (0)
2880 #define DTR_CONTROL_ENABLE      (1)
2881 #define DTR_CONTROL_HANDSHAKE   (2)
2882 #define RTS_CONTROL_DISABLE     (0)
2883 #define RTS_CONTROL_ENABLE      (1)
2884 #define RTS_CONTROL_HANDSHAKE   (2)
2885 #define RTS_CONTROL_TOGGLE      (3)
2886 #define EVENPARITY      (2)
2887 #define MARKPARITY      (3)
2888 #define NOPARITY        (0)
2889 #define ODDPARITY       (1)
2890 #define SPACEPARITY     (4)
2891 #define ONESTOPBIT      (0)
2892 #define ONE5STOPBITS    (1)
2893 #define TWOSTOPBITS     (2)
2894
2895 /* Debugging events */
2896 #define CREATE_PROCESS_DEBUG_EVENT      (3)
2897 #define CREATE_THREAD_DEBUG_EVENT       (2)
2898 #define EXCEPTION_DEBUG_EVENT   (1)
2899 #define EXIT_PROCESS_DEBUG_EVENT        (5)
2900 #define EXIT_THREAD_DEBUG_EVENT (4)
2901 #define LOAD_DLL_DEBUG_EVENT    (6)
2902 #define OUTPUT_DEBUG_STRING_EVENT       (8)
2903 #define UNLOAD_DLL_DEBUG_EVENT  (7)
2904 #define RIP_EVENT       (9)
2905
2906 /* PROCESS_HEAP_ENTRY structure */
2907 #define PROCESS_HEAP_REGION     (1)
2908 #define PROCESS_HEAP_UNCOMMITTED_RANGE  (2)
2909 #define PROCESS_HEAP_ENTRY_BUSY (4)
2910 #define PROCESS_HEAP_ENTRY_MOVEABLE     (16)
2911 #define PROCESS_HEAP_ENTRY_DDESHARE     (32)
2912
2913 /* Win32s */
2914 #define HINSTANCE_ERROR (32)
2915
2916 /* WIN32_STREAM_ID structure */
2917 #define BACKUP_DATA     (1)
2918 #define BACKUP_EA_DATA  (2)
2919 #define BACKUP_SECURITY_DATA    (3)
2920 #define BACKUP_ALTERNATE_DATA   (4)
2921 #define BACKUP_LINK     (5)
2922 #define STREAM_MODIFIED_WHEN_READ       (1)
2923 #define STREAM_CONTAINS_SECURITY        (2)
2924
2925 /* STARTUPINFO structure */
2926 #define STARTF_USESHOWWINDOW    (1)
2927 #define STARTF_USEPOSITION      (4)
2928 #define STARTF_USESIZE  (2)
2929 #define STARTF_USECOUNTCHARS    (8)
2930 #define STARTF_USEFILLATTRIBUTE (16)
2931 #define STARTF_RUNFULLSCREEN    (32) 
2932 #define STARTF_FORCEONFEEDBACK  (64)
2933 #define STARTF_FORCEOFFFEEDBACK (128)
2934 #define STARTF_USESTDHANDLES    (256)
2935 #define STARTF_USEHOTKEY        (512)
2936
2937 /* OSVERSIONINFO structure */
2938 #define VER_PLATFORM_WIN32s     (0)
2939 #define VER_PLATFORM_WIN32_WINDOWS (1)
2940 #define VER_PLATFORM_WIN32_NT   (2)
2941
2942 /* PROPSHEETPAGE structure */
2943 #define MAXPROPPAGES    (100)
2944 #define PSP_DEFAULT     (0)
2945 #define PSP_DLGINDIRECT (1)
2946 #define PSP_HASHELP     (32)
2947 #define PSP_USECALLBACK (128)
2948 #define PSP_USEHICON    (2)
2949 #define PSP_USEICONID   (4)
2950 #define PSP_USEREFPARENT        (64)
2951 #define PSP_USETITLE    (8)
2952 #define PSP_RTLREADING  (16)
2953
2954 /* PROPSHEETHEADER structure */
2955 #define PSH_DEFAULT     (0)
2956 #define PSH_HASHELP     (512)
2957 #define PSH_MODELESS    (1024)
2958 #define PSH_NOAPPLYNOW  (128)
2959 #define PSH_PROPSHEETPAGE       (8)
2960 #define PSH_PROPTITLE   (1)
2961 #define PSH_USECALLBACK (256)
2962 #define PSH_USEHICON    (2)
2963 #define PSH_USEICONID   (4)
2964 #define PSH_USEPSTARTPAGE       (64)
2965 #define PSH_WIZARD      (32)
2966 #define PSH_RTLREADING  (2048)
2967 #define PSCB_INITIALIZED        (1)
2968 #define PSCB_PRECREATE  (2)
2969
2970 /* PSN_APPLY message */
2971 #define PSNRET_NOERROR  (0)
2972 #define PSNRET_INVALID_NOCHANGEPAGE     (2)
2973
2974 /* Property Sheet */
2975 #define PSBTN_APPLYNOW  (4)
2976 #define PSBTN_BACK      (0)
2977 #define PSBTN_CANCEL    (5)
2978 #define PSBTN_FINISH    (2)
2979 #define PSBTN_HELP      (6)
2980 #define PSBTN_NEXT      (1)
2981 #define PSBTN_OK        (3)
2982 #define PSWIZB_BACK     (1)
2983 #define PSWIZB_NEXT     (2)
2984 #define PSWIZB_FINISH   (4)
2985 #define PSWIZB_DISABLEDFINISH   (8)
2986 #define ID_PSREBOOTSYSTEM       (3)
2987 #define ID_PSRESTARTWINDOWS     (2)
2988 #define WIZ_BODYCX      (184)
2989 #define WIZ_BODYX       (92)
2990 #define WIZ_CXBMP       (80)
2991 #define WIZ_CXDLG       (276)
2992 #define WIZ_CYDLG       (140)
2993
2994 /* VX_FIXEDFILEINFO structure */
2995 #define VS_FILE_INFO    (MAKEINTRESOURCE(16))
2996 #define VS_VERSION_INFO (1)
2997 #define VS_FF_DEBUG     (0x1L)
2998 #define VS_FF_INFOINFERRED      (0x10L)
2999 #define VS_FF_PATCHED   (0x4L)
3000 #define VS_FF_PRERELEASE        (0x2L)
3001 #define VS_FF_PRIVATEBUILD      (0x8L)
3002 #define VS_FF_SPECIALBUILD      (0x20L)
3003 #define VS_FFI_SIGNATURE        (0xfeef04bd)
3004 #define VS_FFI_STRUCVERSION     (0x00010000)
3005 #define VOS_UNKNOWN     (0L)
3006 #define VOS_DOS (0x10000L)
3007 #define VOS_OS216       (0x20000L)
3008 #define VOS_OS232       (0x30000L)
3009 #define VOS_NT  (0x40000L)
3010 #define VOS_DOS_WINDOWS16       (0x10001L)
3011 #define VOS_DOS_WINDOWS32       (0x10004L)
3012 #define VOS_OS216_PM16  (0x20002L)
3013 #define VOS_OS232_PM32  (0x30003L)
3014 #define VOS_NT_WINDOWS32        (0x40004L)
3015 #define VFT_UNKNOWN     (0L)
3016 #define VFT_APP (0x1L)
3017 #define VFT_DLL (0x2L)
3018 #define VFT_DRV (0x3L)
3019 #define VFT_FONT        (0x4L)
3020 #define VFT_VXD (0x5L)
3021 #define VFT_STATIC_LIB  (0x7L)
3022 #define VFT2_UNKNOWN    (0L)
3023 #define VFT2_DRV_PRINTER        (0x1L)
3024 #define VFT2_DRV_KEYBOARD       (0x2L)
3025 #define VFT2_DRV_LANGUAGE       (0x3L)
3026 #define VFT2_DRV_DISPLAY        (0x4L)
3027 #define VFT2_DRV_MOUSE  (0x5L)
3028 #define VFT2_DRV_NETWORK        (0x6L)
3029 #define VFT2_DRV_SYSTEM (0x7L)
3030 #define VFT2_DRV_INSTALLABLE    (0x8L)
3031 #define VFT2_DRV_SOUND  (0x9L)
3032 #define VFT2_FONT_RASTER        (0x1L)
3033 #define VFT2_FONT_VECTOR        (0x2L)
3034 #define VFT2_FONT_TRUETYPE      (0x3L)
3035
3036 /* PANOSE structure */
3037 #define PAN_ANY (0)
3038 #define PAN_NO_FIT      (1)
3039 #define PAN_FAMILY_TEXT_DISPLAY (2)
3040 #define PAN_FAMILY_SCRIPT       (3)
3041 #define PAN_FAMILY_DECORATIVE   (4)
3042 #define PAN_FAMILY_PICTORIAL    (5)
3043 #define PAN_SERIF_COVE  (2)
3044 #define PAN_SERIF_OBTUSE_COVE   (3)
3045 #define PAN_SERIF_SQUARE_COVE   (4)
3046 #define PAN_SERIF_OBTUSE_SQUARE_COVE    (5)
3047 #define PAN_SERIF_SQUARE        (6)
3048 #define PAN_SERIF_THIN  (7)
3049 #define PAN_SERIF_BONE  (8)
3050 #define PAN_SERIF_EXAGGERATED   (9)
3051 #define PAN_SERIF_TRIANGLE      (10)
3052 #define PAN_SERIF_NORMAL_SANS   (11)
3053 #define PAN_SERIF_OBTUSE_SANS   (12)
3054 #define PAN_SERIF_PERP_SANS     (13)
3055 #define PAN_SERIF_FLARED        (14)
3056 #define PAN_SERIF_ROUNDED       (15)
3057 #define PAN_WEIGHT_VERY_LIGHT   (2)
3058 #define PAN_WEIGHT_LIGHT        (3)
3059 #define PAN_WEIGHT_THIN (4)
3060 #define PAN_WEIGHT_BOOK (5)
3061 #define PAN_WEIGHT_MEDIUM       (6)
3062 #define PAN_WEIGHT_DEMI (7)
3063 #define PAN_WEIGHT_BOLD (8)
3064 #define PAN_WEIGHT_HEAVY        (9)
3065 #define PAN_WEIGHT_BLACK        (10)
3066 #define PAN_WEIGHT_NORD (11)
3067 #define PAN_PROP_OLD_STYLE      (2)
3068 #define PAN_PROP_MODERN (3)
3069 #define PAN_PROP_EVEN_WIDTH     (4)
3070 #define PAN_PROP_EXPANDED       (5)
3071 #define PAN_PROP_CONDENSED      (6)
3072 #define PAN_PROP_VERY_EXPANDED  (7)
3073 #define PAN_PROP_VERY_CONDENSED (8)
3074 #define PAN_PROP_MONOSPACED     (9)
3075 #define PAN_CONTRAST_NONE       (2)
3076 #define PAN_CONTRAST_VERY_LOW   (3)
3077 #define PAN_CONTRAST_LOW        (4)
3078 #define PAN_CONTRAST_MEDIUM_LOW (5)
3079 #define PAN_CONTRAST_MEDIUM     (6)
3080 #define PAN_CONTRAST_MEDIUM_HIGH        (7)
3081 #define PAN_CONTRAST_HIGH       (8)
3082 #define PAN_CONTRAST_VERY_HIGH  (9)
3083 #define PAN_STROKE_GRADUAL_DIAG (2)
3084 #define PAN_STROKE_GRADUAL_TRAN (3)
3085 #define PAN_STROKE_GRADUAL_VERT (4)
3086 #define PAN_STROKE_GRADUAL_HORZ (5)
3087 #define PAN_STROKE_RAPID_VERT   (6)
3088 #define PAN_STROKE_RAPID_HORZ   (7)
3089 #define PAN_STROKE_INSTANT_VERT (8)
3090 #define PAN_STRAIGHT_ARMS_HORZ  (2)
3091 #define PAN_STRAIGHT_ARMS_WEDGE (3)
3092 #define PAN_STRAIGHT_ARMS_VERT  (4)
3093 #define PAN_STRAIGHT_ARMS_SINGLE_SERIF  (5)
3094 #define PAN_STRAIGHT_ARMS_DOUBLE_SERIF  (6)
3095 #define PAN_BENT_ARMS_HORZ      (7)
3096 #define PAN_BENT_ARMS_VERT      (9)
3097 #define PAN_BENT_ARMS_WEDGE     (8)
3098 #define PAN_BENT_ARMS_SINGLE_SERIF      (10)
3099 #define PAN_BENT_ARMS_DOUBLE_SERIF      (11)
3100 #define PAN_LETT_NORMAL_CONTACT (2)
3101 #define PAN_LETT_NORMAL_WEIGHTED        (3)
3102 #define PAN_LETT_NORMAL_BOXED   (4)
3103 #define PAN_LETT_NORMAL_FLATTENED       (5)
3104 #define PAN_LETT_NORMAL_ROUNDED (6)
3105 #define PAN_LETT_NORMAL_OFF_CENTER      (7)
3106 #define PAN_LETT_NORMAL_SQUARE  (8)
3107 #define PAN_LETT_OBLIQUE_CONTACT        (9)
3108 #define PAN_LETT_OBLIQUE_WEIGHTED       (10)
3109 #define PAN_LETT_OBLIQUE_BOXED  (11)
3110 #define PAN_LETT_OBLIQUE_FLATTENED      (12)
3111 #define PAN_LETT_OBLIQUE_ROUNDED        (13)
3112 #define PAN_LETT_OBLIQUE_OFF_CENTER     (14)
3113 #define PAN_LETT_OBLIQUE_SQUARE (15)
3114 #define PAN_MIDLINE_STANDARD_TRIMMED    (2)
3115 #define PAN_MIDLINE_STANDARD_POINTED    (3)
3116 #define PAN_MIDLINE_STANDARD_SERIFED    (4)
3117 #define PAN_MIDLINE_HIGH_TRIMMED        (5)
3118 #define PAN_MIDLINE_HIGH_POINTED        (6)
3119 #define PAN_MIDLINE_HIGH_SERIFED        (7)
3120 #define PAN_MIDLINE_CONSTANT_TRIMMED    (8)
3121 #define PAN_MIDLINE_CONSTANT_POINTED    (9)
3122 #define PAN_MIDLINE_CONSTANT_SERIFED    (10)
3123 #define PAN_MIDLINE_LOW_TRIMMED (11)
3124 #define PAN_MIDLINE_LOW_POINTED (12)
3125 #define PAN_MIDLINE_LOW_SERIFED (13)
3126 #define PAN_XHEIGHT_CONSTANT_SMALL      (2)
3127 #define PAN_XHEIGHT_CONSTANT_STD        (3)
3128 #define PAN_XHEIGHT_CONSTANT_LARGE      (4)
3129 #define PAN_XHEIGHT_DUCKING_SMALL       (5)
3130 #define PAN_XHEIGHT_DUCKING_STD (6)
3131 #define PAN_XHEIGHT_DUCKING_LARGE       (7)
3132
3133 /* PALETTENTRY structure */
3134 #define PC_EXPLICIT     (2)
3135 #define PC_NOCOLLAPSE   (4)
3136 #define PC_RESERVED     (1)
3137
3138 /* LOGBRUSH structure */
3139 #define BS_DIBPATTERN   (5)
3140 #define BS_DIBPATTERN8X8        (8)
3141 #define BS_DIBPATTERNPT (6)
3142 #define BS_HATCHED      (2)
3143 #define BS_HOLLOW       (1)
3144 #define BS_NULL (1)
3145 #define BS_PATTERN      (3)
3146 #define BS_PATTERN8X8   (7)
3147 #define BS_SOLID        (0)
3148
3149 /* DEVMODE structure */
3150 #define DM_ORIENTATION  (0x1L)
3151 #define DM_PAPERSIZE    (0x2L)
3152 #define DM_PAPERLENGTH  (0x4L)
3153 #define DM_PAPERWIDTH   (0x8L)
3154 #define DM_SCALE        (0x10L)
3155 #define DM_COPIES       (0x100L)
3156 #define DM_DEFAULTSOURCE        (0x200L)
3157 #define DM_PRINTQUALITY (0x400L)
3158 #define DM_COLOR        (0x800L)
3159 #define DM_DUPLEX       (0x1000L)
3160 #define DM_YRESOLUTION  (0x2000L)
3161 #define DM_TTOPTION     (0x4000L)
3162 #define DM_COLLATE      (0x8000L)
3163 #define DM_FORMNAME     (0x10000L)
3164 #define DM_LOGPIXELS    (0x20000L)
3165 #define DM_BITSPERPEL   (0x40000L)
3166 #define DM_PELSWIDTH    (0x80000L)
3167 #define DM_PELSHEIGHT   (0x100000L)
3168 #define DM_DISPLAYFLAGS (0x200000L)
3169 #define DM_DISPLAYFREQUENCY     (0x400000L)
3170 #define DM_ICMMETHOD    (0x800000L)
3171 #define DM_ICMINTENT    (0x1000000L)
3172 #define DM_MEDIATYPE    (0x2000000L)
3173 #define DM_DITHERTYPE   (0x4000000L)
3174 #define DMORIENT_LANDSCAPE      (2)
3175 #define DMORIENT_PORTRAIT       (1)
3176 #define DMPAPER_LETTER  (1)
3177 #define DMPAPER_LEGAL   (5)
3178 #define DMPAPER_A4      (9)
3179 #define DMPAPER_CSHEET  (24)
3180 #define DMPAPER_DSHEET  (25)
3181 #define DMPAPER_ESHEET  (26)
3182 #define DMPAPER_LETTERSMALL     (2)
3183 #define DMPAPER_TABLOID (3)
3184 #define DMPAPER_LEDGER  (4)
3185 #define DMPAPER_STATEMENT       (6)
3186 #define DMPAPER_EXECUTIVE       (7)
3187 #define DMPAPER_A3      (8)
3188 #define DMPAPER_A4SMALL (10)
3189 #define DMPAPER_A5      (11)
3190 #define DMPAPER_B4      (12)
3191 #define DMPAPER_B5      (13)
3192 #define DMPAPER_FOLIO   (14)
3193 #define DMPAPER_QUARTO  (15)
3194 #define DMPAPER_10X14   (16)
3195 #define DMPAPER_11X17   (17)
3196 #define DMPAPER_NOTE    (18)
3197 #define DMPAPER_ENV_9   (19)
3198 #define DMPAPER_ENV_10  (20)
3199 #define DMPAPER_ENV_11  (21)
3200 #define DMPAPER_ENV_12  (22)
3201 #define DMPAPER_ENV_14  (23)
3202 #define DMPAPER_ENV_DL  (27)
3203 #define DMPAPER_ENV_C5  (28)
3204 #define DMPAPER_ENV_C3  (29)
3205 #define DMPAPER_ENV_C4  (30)
3206 #define DMPAPER_ENV_C6  (31)
3207 #define DMPAPER_ENV_C65 (32)
3208 #define DMPAPER_ENV_B4  (33)
3209 #define DMPAPER_ENV_B5  (34)
3210 #define DMPAPER_ENV_B6  (35)
3211 #define DMPAPER_ENV_ITALY       (36)
3212 #define DMPAPER_ENV_MONARCH     (37)
3213 #define DMPAPER_ENV_PERSONAL    (38)
3214 #define DMPAPER_FANFOLD_US      (39)
3215 #define DMPAPER_FANFOLD_STD_GERMAN      (40)
3216 #define DMPAPER_FANFOLD_LGL_GERMAN      (41)
3217 #define DMRES_HIGH      (-4)
3218 #define DMRES_MEDIUM    (-3)
3219 #define DMRES_LOW       (-2)
3220 #define DMRES_DRAFT     (-1)
3221 #define DMCOLOR_COLOR   (2)
3222 #define DMCOLOR_MONOCHROME      (1)
3223 #define DMDUP_SIMPLEX   (1)
3224 #define DMDUP_HORIZONTAL        (3)
3225 #define DMDUP_VERTICAL  (2)
3226 #define DMTT_BITMAP     (1)
3227 #define DMTT_DOWNLOAD   (2)
3228 #define DMTT_SUBDEV     (3)
3229 #define DMCOLLATE_TRUE  (1)
3230 #define DMCOLLATE_FALSE (0)
3231 #define DM_GRAYSCALE    (1)
3232 #define DM_INTERLACED   (2)
3233 #define DMICMMETHOD_NONE        (1)
3234 #define DMICMMETHOD_SYSTEM      (2)
3235 #define DMICMMETHOD_DRIVER      (3)
3236 #define DMICMMETHOD_DEVICE      (4)
3237 #define DMICMMETHOD_USER        (256)
3238 #define DMICM_SATURATE  (1)
3239 #define DMICM_CONTRAST  (2)
3240 #define DMICM_COLORMETRIC       (3)
3241 #define DMICM_USER      (256)
3242 #define DMMEDIA_STANDARD        (1)
3243 #define DMMEDIA_GLOSSY  (3)
3244 #define DMMEDIA_TRANSPARENCY    (2)
3245 #define DMMEDIA_USER    (256)
3246 #define DMDITHER_NONE   (1)
3247 #define DMDITHER_COARSE (2)
3248 #define DMDITHER_FINE   (3)
3249 #define DMDITHER_LINEART        (4)
3250 #define DMDITHER_GRAYSCALE      (10)
3251 #define DMDITHER_USER   (256)
3252
3253 /* RGNDATAHEADER structure */
3254 #define RDH_RECTANGLES  (1)
3255
3256 /* TTPOLYGONHEADER structure */
3257 #define TT_POLYGON_TYPE (24)
3258
3259 /* TTPOLYCURVE structure */
3260 #define TT_PRIM_LINE    (1)
3261 #define TT_PRIM_QSPLINE (2)
3262
3263 /* GCP_RESULTS structure */
3264 #define GCPCLASS_ARABIC (2)
3265 #define GCPCLASS_HEBREW (2)
3266 #define GCPCLASS_LATIN  (1)
3267 #define GCPCLASS_LATINNUMBER    (5)
3268 #define GCPCLASS_LOCALNUMBER    (4)
3269 #define GCPCLASS_LATINNUMERICSEPARATOR  (7)
3270 #define GCPCLASS_LATINNUMERICTERMINATOR (6)
3271 #define GCPCLASS_NEUTRAL        (3)
3272 #define GCPCLASS_NUMERICSEPARATOR       (8)
3273 #define GCPCLASS_PREBOUNDLTR    (128)
3274 #define GCPCLASS_PREBOUNDRTL    (64)
3275 #define GCPCLASS_POSTBOUNDLTR   (32)
3276 #define GCPCLASS_POSTBOUNDRTL   (16)
3277 #define GCPGLYPH_LINKBEFORE     (32768)
3278 #define GCPGLYPH_LINKAFTER      (16384)
3279
3280 /* RASTERIZER_STATUS structure */
3281 #define TT_AVAILABLE    (1)
3282 #define TT_ENABLED      (2)
3283
3284 /* COLORADJUSTMENT structure */
3285 #define CA_NEGATIVE     (1)
3286 #define CA_LOG_FILTER   (2)
3287 #define ILLUMINANT_DEVICE_DEFAULT       (0)
3288 #define ILLUMINANT_A    (1)
3289 #define ILLUMINANT_B    (2)
3290 #define ILLUMINANT_C    (3)
3291 #define ILLUMINANT_D50  (4)
3292 #define ILLUMINANT_D55  (5)
3293 #define ILLUMINANT_D65  (6)
3294 #define ILLUMINANT_D75  (7)
3295 #define ILLUMINANT_F2   (8)
3296 #define ILLUMINANT_TUNGSTEN     (1)
3297 #define ILLUMINANT_DAYLIGHT     (3)
3298 #define ILLUMINANT_FLUORESCENT  (8)
3299 #define ILLUMINANT_NTSC (3)
3300
3301 /* DOCINFO structure */
3302 #define DI_APPBANDING   (1)
3303
3304 /* EMRMETAHEADER structure */
3305 #define EMR_HEADER      (1)
3306 #define ENHMETA_SIGNATURE       (1179469088)
3307
3308 /* RTF event masks */
3309 #define ENM_CHANGE      (1)
3310 #define ENM_CORRECTTEXT (4194304)
3311 #define ENM_DROPFILES   (1048576)
3312 #define ENM_KEYEVENTS   (65536)
3313 #define ENM_MOUSEEVENTS (131072)
3314 #define ENM_PROTECTED   (2097152)
3315 #define ENM_REQUESTRESIZE       (262144)
3316 #define ENM_SCROLL      (4)
3317 #define ENM_SELCHANGE   (524288)
3318 #define ENM_UPDATE      (2)
3319 #define ENM_NONE        (0)
3320
3321 /* RTF styles */
3322 #define ES_DISABLENOSCROLL      (8192)
3323 #define ES_EX_NOCALLOLEINIT     (16777216)
3324 #define ES_NOIME        (524288)
3325 #define ES_SAVESEL      (32768)
3326 #define ES_SELFIME      (262144)
3327 #define ES_SUNKEN       (16384)
3328 #define ES_VERTICAL     (4194304)
3329 #define ES_SELECTIONBAR (16777216)
3330
3331 /* EM_SETOPTIONS message */
3332 #define ECOOP_SET       (1)
3333 #define ECOOP_OR        (2)
3334 #define ECOOP_AND       (3)
3335 #define ECOOP_XOR       (4)
3336 #define ECO_AUTOWORDSELECTION   (1)
3337 #define ECO_AUTOVSCROLL (64)
3338 #define ECO_AUTOHSCROLL (128)
3339 #define ECO_NOHIDESEL   (256)
3340 #define ECO_READONLY    (2048)
3341 #define ECO_WANTRETURN  (4096)
3342 #define ECO_SAVESEL     (32768)
3343 #define ECO_SELECTIONBAR        (16777216)
3344 #define ECO_VERTICAL    (4194304)
3345
3346 /* EM_SETCHARFORMAT message */
3347 #define SCF_WORD        (2)
3348 #define SCF_SELECTION   (1)
3349
3350 /* EM_STREAMOUT message */
3351 #define SF_TEXT (1)
3352 #define SF_RTF  (2)
3353 #define SF_RTFNOOBJS    (3)
3354 #define SF_TEXTIZED     (4)
3355 #define SFF_SELECTION   (32768)
3356 #define SFF_PLAINRTF    (16384)
3357
3358 /* EM_FINDWORDBREAK message */
3359 #define WB_CLASSIFY     (3)
3360 #define WB_ISDELIMITER  (2)
3361 #define WB_LEFT (0)
3362 #define WB_LEFTBREAK    (6)
3363 #define WB_PREVBREAK    (6)
3364 #define WB_MOVEWORDLEFT (4)
3365 #define WB_MOVEWORDPREV (4)
3366 #define WB_MOVEWORDRIGHT        (5)
3367 #define WB_MOVEWORDNEXT (5)
3368 #define WB_RIGHT        (1)
3369 #define WB_RIGHTBREAK   (7)
3370 #define WB_NEXTBREAK    (7)
3371
3372 /* EM_GETPUNCTUATION message */
3373 #define PC_LEADING      (2)
3374 #define PC_FOLLOWING    (1)
3375 #define PC_DELIMITER    (4)
3376 #define PC_OVERFLOW     (3)
3377
3378 /* EM_SETWORDWRAPMODE message */
3379 #define WBF_WORDWRAP    (16)
3380 #define WBF_WORDBREAK   (32)
3381 #define WBF_OVERFLOW    (64)
3382 #define WBF_LEVEL1      (128)
3383 #define WBF_LEVEL2      (256)
3384 #define WBF_CUSTOM      (512)
3385 #define WBF_BREAKAFTER  (64)
3386 #define WBF_BREAKLINE   (32)
3387 #define WBF_ISWHITE     (16)
3388
3389 /* CHARFORMAT structure */
3390 #define CFM_BOLD        (1)
3391 #define CFM_COLOR       (1073741824)
3392 #define CFM_FACE        (536870912)
3393 #define CFM_ITALIC      (2)
3394 #define CFM_OFFSET      (268435456)
3395 #define CFM_PROTECTED   (16)
3396 #define CFM_SIZE        (0x80000000)
3397 #define CFM_STRIKEOUT   (8)
3398 #define CFM_UNDERLINE   (4)
3399 #define CFE_AUTOCOLOR   (1073741824)
3400 #define CFE_BOLD        (1)
3401 #define CFE_ITALIC      (2)
3402 #define CFE_STRIKEOUT   (8)
3403 #define CFE_UNDERLINE   (4)
3404 #define CFE_PROTECTED   (16)
3405
3406 /* PARAFORMAT structure */
3407 #define PFM_ALIGNMENT   (8)
3408 #define PFM_NUMBERING   (32)
3409 #define PFM_OFFSET      (4)
3410 #define PFM_OFFSETINDENT        (0x80000000)
3411 #define PFM_RIGHTINDENT (2)
3412 #define PFM_STARTINDENT (1)
3413 #define PFM_TABSTOPS    (16)
3414 #define PFN_BULLET      (1)
3415 #define PFA_LEFT        (1)
3416 #define PFA_RIGHT       (2)
3417 #define PFA_CENTER      (3)
3418
3419 /* SELCHANGE structure */
3420 #define SEL_EMPTY       (0)
3421 #define SEL_TEXT        (1)
3422 #define SEL_OBJECT      (2)
3423 #define SEL_MULTICHAR   (4)
3424 #define SEL_MULTIOBJECT (8)
3425
3426 /* RTF clipboard formats */
3427 #define CF_RTF  "Rich Text Format"
3428 #define CF_RETEXTOBJ    "RichEdit Text and Objects"
3429
3430 /* DRAWITEMSTRUCT structure */
3431 #define ODT_BUTTON      (4)
3432 #define ODT_COMBOBOX    (3)
3433 #define ODT_LISTBOX     (2)
3434 #define ODT_LISTVIEW    (102)
3435 #define ODT_MENU        (1)
3436 #define ODT_STATIC      (5)
3437 #define ODT_TAB         (101)
3438 #define ODT_HEADER      (100)
3439 #define ODA_DRAWENTIRE  (1)
3440 #define ODA_FOCUS       (4)
3441 #define ODA_SELECT      (2)
3442 #define ODS_CHECKED     (8)
3443 #define ODS_COMBOBOXEDIT        (4096)
3444 #define ODS_DEFAULT     (32)
3445 #define ODS_DISABLED    (4)
3446 #define ODS_FOCUS       (16)
3447 #define ODS_GRAYED      (2)
3448 #define ODS_SELECTED    (1)
3449
3450 /* Common control window classes */
3451 #define ANIMATE_CLASSW  L"SysAnimate32"
3452 #define HOTKEY_CLASSW   L"msctls_hotkey32"
3453 #define PROGRESS_CLASSW L"msctls_progress32"
3454 #define STATUSCLASSNAMEW        L"msctls_statusbar32"
3455 #define TOOLBARCLASSNAMEW       L"ToolbarWindow32"
3456 #define TOOLTIPS_CLASSW L"tooltips_class32"
3457 #define TRACKBAR_CLASSW L"msctls_trackbar32"
3458 #define UPDOWN_CLASSW   L"msctls_updown32"
3459 #define WC_HEADERW      L"SysHeader32"
3460 #define WC_LISTVIEWW    L"SysListView32"
3461 #define WC_TABCONTROLW  L"SysTabControl32"
3462 #define WC_TREEVIEWW    L"SysTreeView32"
3463
3464 /* Common control styles */
3465 #define CCS_ADJUSTABLE  (0x20L)
3466 #define CCS_BOTTOM      (0x3L)
3467 #define CCS_NODIVIDER   (0x40L)
3468 #define CCS_NOMOVEY     (0x2L)
3469 #define CCS_NOPARENTALIGN       (0x8L)
3470 #define CCS_NORESIZE    (0x4L)
3471 #define CCS_TOP (0x1L)
3472 #define ANIMATE_CLASSA  "SysAnimate32"
3473 #define HOTKEY_CLASSA   "msctls_hotkey32"
3474 #define PROGRESS_CLASSA "msctls_progress32"
3475 #define STATUSCLASSNAMEA        "msctls_statusbar32"
3476 #define TOOLBARCLASSNAMEA       "ToolbarWindow32"
3477 #define TOOLTIPS_CLASSA "tooltips_class32"
3478 #define TRACKBAR_CLASSA "msctls_trackbar32"
3479 #define UPDOWN_CLASSA   "msctls_updown32"
3480 #define WC_HEADERA      "SysHeader32"
3481 #define WC_LISTVIEWA    "SysListView32"
3482 #define WC_TABCONTROLA  "SysTabControl32"
3483 #define WC_TREEVIEWA    "SysTreeView32"
3484 #ifndef _DISABLE_TIDENTS
3485 #ifdef UNICODE
3486 #define ANIMATE_CLASS ANIMATE_CLASSW
3487 #define HOTKEY_CLASS HOTKEY_CLASSW
3488 #define PROGRESS_CLASS PROGRESS_CLASSW
3489 #define STATUSCLASSNAME STATUSCLASSNAMEW
3490 #define TOOLBARCLASSNAME TOOLBARCLASSNAMEW
3491 #define TOOLTIPS_CLASS TOOLTIPS_CLASSW
3492 #define TRACKBAR_CLASS TRACKBAR_CLASSW
3493 #define UPDOWN_CLASS UPDOWN_CLASSW
3494 #define WC_HEADER WC_HEADERW
3495 #define WC_LISTVIEW WC_LISTVIEWW
3496 #define WC_TABCONTROL WC_TABCONTROLW
3497 #define WC_TREEVIEW WC_TREEVIEWW
3498 #else
3499 #define ANIMATE_CLASS ANIMATE_CLASSA
3500 #define HOTKEY_CLASS HOTKEY_CLASSA
3501 #define PROGRESS_CLASS PROGRESS_CLASSA
3502 #define STATUSCLASSNAME STATUSCLASSNAMEA
3503 #define TOOLBARCLASSNAME TOOLBARCLASSNAMEA
3504 #define TOOLTIPS_CLASS TOOLTIPS_CLASSA
3505 #define TRACKBAR_CLASS TRACKBAR_CLASSA
3506 #define UPDOWN_CLASS UPDOWN_CLASSA
3507 #define WC_HEADER WC_HEADERA
3508 #define WC_LISTVIEW WC_LISTVIEWA
3509 #define WC_TABCONTROL WC_TABCONTROLA
3510 #define WC_TREEVIEW WC_TREEVIEWA
3511 #endif /* UNICODE */
3512 #endif /* _DISABLE_TIDENTS */
3513
3514 /* Header control styles */
3515 #define HDS_BUTTONS     (2)
3516 #define HDS_HIDDEN      (8)
3517 #define HDS_HORZ        (0)
3518
3519 /* HD_ITEM structure */
3520 #define HDI_BITMAP      (16)
3521 #define HDI_FORMAT      (4)
3522 #define HDI_HEIGHT      (1)
3523 #define HDI_LPARAM      (8)
3524 #define HDI_TEXT        (2)
3525 #define HDI_WIDTH       (1)
3526 #define HDF_CENTER      (2)
3527 #define HDF_LEFT        (0)
3528 #define HDF_RIGHT       (1)
3529 #define HDF_RTLREADING  (4)
3530 #define HDF_BITMAP      (8192)
3531 #define HDF_OWNERDRAW   (32768)
3532 #define HDF_STRING      (16384)
3533 #define HDF_JUSTIFYMASK (3)
3534
3535 /* HD_HITTESTINFO structure */
3536 #define HHT_NOWHERE     (1)
3537 #define HHT_ONDIVIDER   (4)
3538 #define HHT_ONDIVOPEN   (8)
3539 #define HHT_ONHEADER    (2)
3540 #define HHT_TOLEFT      (2048)
3541 #define HHT_TORIGHT     (1024)
3542
3543 /* TBADDBITMAP structure */
3544 #define HINST_COMMCTRL  ((HINSTANCE)-1)
3545 #define IDB_STD_LARGE_COLOR     (1)
3546 #define IDB_STD_SMALL_COLOR     (0)
3547 #define IDB_VIEW_LARGE_COLOR    (5)
3548 #define IDB_VIEW_SMALL_COLOR    (4)
3549 #define STD_COPY        (1)
3550 #define STD_CUT (0)
3551 #define STD_DELETE      (5)
3552 #define STD_FILENEW     (6)
3553 #define STD_FILEOPEN    (7)
3554 #define STD_FILESAVE    (8)
3555 #define STD_FIND        (12)
3556 #define STD_HELP        (11)
3557 #define STD_PASTE       (2)
3558 #define STD_PRINT       (14)
3559 #define STD_PRINTPRE    (9)
3560 #define STD_PROPERTIES  (10)
3561 #define STD_REDOW       (4)
3562 #define STD_REPLACE     (13)
3563 #define STD_UNDO        (3)
3564 #define VIEW_LARGEICONS (0)
3565 #define VIEW_SMALLICONS (1)
3566 #define VIEW_LIST       (2)
3567 #define VIEW_DETAILS    (3)
3568 #define VIEW_SORTNAME   (4)
3569 #define VIEW_SORTSIZE   (5)
3570 #define VIEW_SORTDATE   (6)
3571 #define VIEW_SORTTYPE   (7)
3572
3573 /* Toolbar styles */
3574 #define TBSTYLE_ALTDRAG (1024)
3575 #define TBSTYLE_TOOLTIPS        (256)
3576 #define TBSTYLE_WRAPABLE        (512)
3577 #define TBSTYLE_BUTTON  (0)
3578 #define TBSTYLE_CHECK   (2)
3579 #define TBSTYLE_CHECKGROUP      (6)
3580 #define TBSTYLE_GROUP   (4)
3581 #define TBSTYLE_SEP     (1)
3582
3583 /* Toolbar states */
3584 #define TBSTATE_CHECKED (1)
3585 #define TBSTATE_ENABLED (4)
3586 #define TBSTATE_HIDDEN  (8)
3587 #define TBSTATE_INDETERMINATE   (16)
3588 #define TBSTATE_PRESSED (2)
3589 #define TBSTATE_WRAP    (32)
3590
3591 /* Tooltip styles */
3592 #define TTS_ALWAYSTIP   (1)
3593 #define TTS_NOPREFIX    (2)
3594
3595 /* TOOLINFO structure */
3596 #define TTF_IDISHWND    (1)
3597 #define TTF_CENTERTIP   (2)
3598 #define TTF_RTLREADING  (4)
3599 #define TTF_SUBCLASS    (16)
3600
3601 /* TTM_SETDELAYTIME message */
3602 #define TTDT_AUTOMATIC  (0)
3603 #define TTDT_AUTOPOP    (2)
3604 #define TTDT_INITIAL    (3)
3605 #define TTDT_RESHOW     (1)
3606
3607 /* Status window */
3608 #define SBARS_SIZEGRIP  (256)
3609 #define SBARS_SIZEGRIP  (256)
3610
3611 /* DL_DRAGGING message */
3612 #define DL_MOVECURSOR   (3)
3613 #define DL_COPYCURSOR   (2)
3614 #define DL_STOPCURSOR   (1)
3615
3616 /* Up-down control styles */
3617 #define UDS_ALIGNLEFT   (8)
3618 #define UDS_ALIGNRIGHT  (4)
3619 #define UDS_ARROWKEYS   (32)
3620 #define UDS_AUTOBUDDY   (16)
3621 #define UDS_HORZ        (64)
3622 #define UDS_NOTHOUSANDS (128)
3623 #define UDS_SETBUDDYINT (2)
3624 #define UDS_WRAP        (1)
3625
3626 /* UDM_SETRANGE message */
3627 #define UD_MAXVAL       (32767)
3628 #define UD_MINVAL       (-32767)
3629
3630 /* HKM_GETHOTKEY message */
3631 #define HOTKEYF_ALT     (4)
3632 #define HOTKEYF_CONTROL (2)
3633 #define HOTKEYF_EXT     (8)
3634 #define HOTKEYF_SHIFT   (1)
3635
3636 /* HKM_SETRULES message */
3637 #define HKCOMB_A        (8)
3638 #define HKCOMB_C        (4)
3639 #define HKCOMB_CA       (64)
3640 #define HKCOMB_NONE     (1)
3641 #define HKCOMB_S        (2)
3642 #define HKCOMB_SA       (32)
3643 #define HKCOMB_SC       (16)
3644 #define HKCOMB_SCA      (128)
3645
3646 /* Trackbar styles */
3647 #define TBS_HORZ        (0)
3648 #define TBS_VERT        (2)
3649 #define TBS_AUTOTICKS   (1)
3650 #define TBS_NOTICKS     (16)
3651 #define TBS_TOP (4)
3652 #define TBS_BOTTOM      (0)
3653 #define TBS_LEFT        (4)
3654 #define TBS_RIGHT       (0)
3655 #define TBS_BOTH        (8)
3656 #define TBS_ENABLESELRANGE      (32)
3657 #define TBS_FIXEDLENGTH (64)
3658 #define TBS_NOTHUMB     (128)
3659 #define TB_BOTTOM       (7)
3660 #define TB_ENDTRACK     (8)
3661 #define TB_LINEDOWN     (1)
3662 #define TB_LINEUP       (0)
3663 #define TB_PAGEDOWN     (3)
3664 #define TB_PAGEUP       (2)
3665 #define TB_THUMBPOSITION        (4)
3666 #define TB_THUMBTRACK   (5)
3667 #define TB_TOP  (6)
3668
3669 /* List view styles */
3670 #define LVS_ALIGNLEFT   (2048)
3671 #define LVS_ALIGNTOP    (0)
3672 #define LVS_AUTOARRANGE (256)
3673 #define LVS_EDITLABELS  (512)
3674 #define LVS_ICON        (0)
3675 #define LVS_LIST        (3)
3676 #define LVS_NOCOLUMNHEADER      (16384)
3677 #define LVS_NOLABELWRAP (128)
3678 #define LVS_NOSCROLL    (8192)
3679 #define LVS_NOSORTHEADER        (32768)
3680 #define LVS_OWNERDRAWFIXED      (1024)
3681 #define LVS_REPORT      (1)
3682 #define LVS_SHAREIMAGELISTS     (64)
3683 #define LVS_SHOWSELALWAYS       (8)
3684 #define LVS_SINGLESEL   (4)
3685 #define LVS_SMALLICON   (2)
3686 #define LVS_SORTASCENDING       (16)
3687 #define LVS_SORTDESCENDING      (32)
3688 #define LVS_OWNERDATA           0x1000
3689 #define LVS_TYPESTYLEMASK       (64512)
3690 #define LVSIL_NORMAL    (0)
3691 #define LVSIL_SMALL     (1)
3692 #define LVSIL_STATE     (2)
3693 #define LVIS_CUT        (4)
3694 #define LVIS_DROPHILITED        (8)
3695 #define LVIS_FOCUSED    (1)
3696 #define LVIS_SELECTED   (2)
3697 #define LVIS_OVERLAYMASK        (3840)
3698 #define LVIS_STATEIMAGEMASK     (61440)
3699 #define LPSTR_TEXTCALLBACKW     ((LPWSTR)-1L)
3700 #define LPSTR_TEXTCALLBACKA     ((LPSTR)-1L)
3701 #ifndef _DISABLE_TIDENTS
3702 #ifdef UNICODE
3703 #define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKW
3704 #else
3705 #define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKA
3706 #endif /* UNICODE */
3707 #endif /* _DISABLE_TIDENTS */
3708
3709 /* LV_ITEM structure */
3710 #define LVIF_TEXT       (1)
3711 #define LVIF_IMAGE      (2)
3712 #define LVIF_PARAM      (4)
3713 #define LVIF_STATE      (8)
3714 #define LVIF_DI_SETITEM (4096)
3715
3716 /* LVM_GETNEXTITEM structure */
3717 #define LVNI_ABOVE      (256)
3718 #define LVNI_ALL        (0)
3719 #define LVNI_BELOW      (512)
3720 #define LVNI_TOLEFT     (1024)
3721 #define LVNI_TORIGHT    (2048)
3722 #define LVNI_CUT        (4)
3723 #define LVNI_DROPHILITED        (8)
3724 #define LVNI_FOCUSED    (1)
3725 #define LVNI_SELECTED   (2)
3726
3727 /* LV_FINDINFO structure */
3728 #define LVFI_PARAM      (1)
3729 #define LVFI_PARTIAL    (8)
3730 #define LVFI_STRING     (2)
3731 #define LVFI_WRAP       (32)
3732 #define LVFI_NEARESTXY  (64)
3733
3734 /* LV_HITTESTINFO structure */
3735 #define LVHT_ABOVE      (8)
3736 #define LVHT_BELOW      (16)
3737 #define LVHT_NOWHERE    (1)
3738 #define LVHT_ONITEMICON (2)
3739 #define LVHT_ONITEMLABEL        (4)
3740 #define LVHT_ONITEMSTATEICON    (8)
3741 #define LVHT_TOLEFT     (64)
3742 #define LVHT_TORIGHT    (32)
3743
3744 /* LV_COLUMN structure */
3745 #define LVCF_FMT        (1)
3746 #define LVCF_SUBITEM    (8)
3747 #define LVCF_TEXT       (4)
3748 #define LVCF_WIDTH      (2)
3749 #define LVCFMT_CENTER   (2)
3750 #define LVCFMT_LEFT     (0)
3751 #define LVCFMT_RIGHT    (1)
3752
3753 /* ListView_GetItemRect */
3754 #define LVIR_BOUNDS     (0)
3755 #define LVIR_ICON       (1)
3756 #define LVIR_LABEL      (2)
3757 #define LVIR_SELECTBOUNDS       (3)
3758
3759 /* LVM_ARRANGE message */
3760 #define LVA_ALIGNLEFT   (1)
3761 #define LVA_ALIGNTOP    (2)
3762 #define LVA_DEFAULT     (0)
3763 #define LVA_SNAPTOGRID  (5)
3764
3765 /* LVM_SETCOLUMNWIDTH message */
3766 #define LVSCW_AUTOSIZE  (-1)
3767 #define LVSCW_AUTOSIZE_USEHEADER        (-2)
3768
3769 /* Tree View styles */
3770 #define TVS_DISABLEDRAGDROP     (16)
3771 #define TVS_EDITLABELS  (8)
3772 #define TVS_HASBUTTONS  (1)
3773 #define TVS_HASLINES    (2)
3774 #define TVS_LINESATROOT (4)
3775 #define TVS_SHOWSELALWAYS       (32)
3776
3777 /* Tree View states */
3778 #define TVIS_BOLD       (16)
3779 #define TVIS_CUT        (4)
3780 #define TVIS_DROPHILITED        (8)
3781 #define TVIS_EXPANDED   (32)
3782 #define TVIS_EXPANDEDONCE       (64)
3783 #define TVIS_FOCUSED    (1)
3784 #define TVIS_OVERLAYMASK        (3840)
3785 #define TVIS_SELECTED   (2)
3786 #define TVIS_STATEIMAGEMASK     (61440)
3787 #define TVIS_USERMASK   (61440)
3788
3789 /* TV_ITEM structure */
3790 #define TVIF_CHILDREN   (64)
3791 #define TVIF_HANDLE     (16)
3792 #define TVIF_IMAGE      (2)
3793 #define TVIF_PARAM      (4)
3794 #define TVIF_SELECTEDIMAGE      (32)
3795 #define TVIF_STATE      (8)
3796 #define TVIF_TEXT       (1)
3797 #define I_CHILDRENCALLBACK      (-1)
3798 #define I_IMAGECALLBACK (-1)
3799
3800 /* TV_INSERTSTRUCT structure */
3801 #define TVI_ROOT        ((HTREEITEM)0xFFFF0000)
3802 #define TVI_FIRST       ((HTREEITEM)0xFFFF0001)
3803 #define TVI_LAST        ((HTREEITEM)0xFFFF0002)
3804 #define TVI_SORT        ((HTREEITEM)0xFFFF0003)
3805
3806 /* TV_HITTESTINFO structure */
3807 #define TVHT_ABOVE      (256)
3808 #define TVHT_BELOW      (512)
3809 #define TVHT_NOWHERE    (1)
3810 #define TVHT_ONITEM     (70)
3811 #define TVHT_ONITEMBUTTON       (16)
3812 #define TVHT_ONITEMICON (2)
3813 #define TVHT_ONITEMINDENT       (8)
3814 #define TVHT_ONITEMLABEL        (4)
3815 #define TVHT_ONITEMRIGHT        (32)
3816 #define TVHT_ONITEMSTATEICON    (64)
3817 #define TVHT_TOLEFT     (2048)
3818 #define TVHT_TORIGHT    (1024)
3819
3820 /* TVM_EXPAND message */
3821 #define TVE_COLLAPSE    (1)
3822 #define TVE_COLLAPSERESET       (32768)
3823 #define TVE_EXPAND      (2)
3824 #define TVE_TOGGLE      (3)
3825
3826 /* TVM_GETIMAGELIST message */
3827 #define TVSIL_NORMAL    (0)
3828 #define TVSIL_STATE     (2)
3829
3830 /* TVM_GETNEXTITEM message */
3831 #define TVGN_CARET      (9)
3832 #define TVGN_CHILD      (4)
3833 #define TVGN_DROPHILITE (8)
3834 #define TVGN_FIRSTVISIBLE       (5)
3835 #define TVGN_NEXT       (1)
3836 #define TVGN_NEXTVISIBLE        (6)
3837 #define TVGN_PARENT     (3)
3838 #define TVGN_PREVIOUS   (2)
3839 #define TVGN_PREVIOUSVISIBLE    (7)
3840 #define TVGN_ROOT       (0)
3841
3842 /* TVN_SELCHANGED message */
3843 #define TVC_BYKEYBOARD  (2)
3844 #define TVC_BYMOUSE     (1)
3845 #define TVC_UNKNOWN     (0)
3846
3847 /* Tab control styles */
3848 #define TCS_BUTTONS     (256)
3849 #define TCS_FIXEDWIDTH  (1024)
3850 #define TCS_FOCUSNEVER  (32768)
3851 #define TCS_FOCUSONBUTTONDOWN   (4096)
3852 #define TCS_FORCEICONLEFT       (16)
3853 #define TCS_FORCELABELLEFT      (32)
3854 #define TCS_MULTILINE   (512)
3855 #define TCS_OWNERDRAWFIXED      (8192)
3856 #define TCS_RAGGEDRIGHT (2048)
3857 #define TCS_RIGHTJUSTIFY        (0)
3858 #define TCS_SINGLELINE  (0)
3859 #define TCS_TABS        (0)
3860 #define TCS_TOOLTIPS    (16384)
3861
3862 /* TC_ITEM structure */
3863 #define TCIF_TEXT       (1)
3864 #define TCIF_IMAGE      (2)
3865 #define TCIF_PARAM      (8)
3866 #define TCIF_RTLREADING (4)
3867
3868 /* TC_HITTESTINFO structure */
3869 #define TCHT_NOWHERE    (1)
3870 #define TCHT_ONITEM     (6)
3871 #define TCHT_ONITEMICON (2)
3872 #define TCHT_ONITEMLABEL        (4)
3873
3874 /* Animation control styles */
3875 #define ACS_AUTOPLAY    (4)
3876 #define ACS_CENTER      (1)
3877 #define ACS_TRANSPARENT (2)
3878
3879 /* MODEMDEVCAPS structure */
3880 #define DIALOPTION_BILLING      (64)
3881 #define DIALOPTION_QUIET        (128)
3882 #define DIALOPTION_DIALTONE     (256)
3883 #define MDMVOLFLAG_LOW  (1)
3884 #define MDMVOLFLAG_MEDIUM       (2)
3885 #define MDMVOLFLAG_HIGH (4)
3886 #define MDMVOL_LOW      (0)
3887 #define MDMVOL_MEDIUM   (1)
3888 #define MDMVOL_HIGH     (2)
3889 #define MDMSPKRFLAG_OFF (1)
3890 #define MDMSPKRFLAG_DIAL        (2)
3891 #define MDMSPKRFLAG_ON  (4)
3892 #define MDMSPKRFLAG_CALLSETUP   (8)
3893 #define MDMSPKR_OFF     (0)
3894 #define MDMSPKR_DIAL    (1)
3895 #define MDMSPKR_ON      (2)
3896 #define MDMSPKR_CALLSETUP       (3)
3897 #define MDM_BLIND_DIAL  (512)
3898 #define MDM_CCITT_OVERRIDE      (64)
3899 #define MDM_CELLULAR    (8)
3900 #define MDM_COMPRESSION (1)
3901 #define MDM_ERROR_CONTROL       (2)
3902 #define MDM_FLOWCONTROL_HARD    (16)
3903 #define MDM_FLOWCONTROL_SOFT    (32)
3904 #define MDM_FORCED_EC   (4)
3905 #define MDM_SPEED_ADJUST        (128)
3906 #define MDM_TONE_DIAL   (256)
3907 #define MDM_V23_OVERRIDE        (1024)
3908
3909 /* Languages */
3910 #define LANG_BULGARIAN  (2)
3911 #define LANG_CHINESE    (4)
3912 #define LANG_CROATIAN   (26)
3913 #define LANG_CZECH      (5)
3914 #define LANG_DANISH     (6)
3915 #define LANG_DUTCH      (19)
3916 #define LANG_ENGLISH    (9)
3917 #define LANG_FINNISH    (11)
3918 #define LANG_FRENCH     (12)
3919 #define LANG_GERMAN     (7)
3920 #define LANG_GREEK      (8)
3921 #define LANG_HUNGARIAN  (14)
3922 #define LANG_ICELANDIC  (15)
3923 #define LANG_ITALIAN    (16)
3924 #define LANG_JAPANESE   (17)
3925 #define LANG_KOREAN     (18)
3926 #define LANG_NEUTRAL    (0)
3927 #define LANG_NORWEGIAN  (20)
3928 #define LANG_POLISH     (21)
3929 #define LANG_PORTUGUESE (22)
3930 #define LANG_ROMANIAN   (24)
3931 #define LANG_RUSSIAN    (25)
3932 #define LANG_SLOVAK     (27)
3933 #define LANG_SLOVENIAN  (36)
3934 #define LANG_SPANISH    (10)
3935 #define LANG_SWEDISH    (29)
3936 #define LANG_TURKISH    (31)
3937 #define SUBLANG_CHINESE_SIMPLIFIED      (2)
3938 #define SUBLANG_CHINESE_TRADITIONAL     (1)
3939 #define SUBLANG_CHINESE_HONGKONG        (3)
3940 #define SUBLANG_CHINESE_SINGAPORE       (4)
3941 #define SUBLANG_DEFAULT (1)
3942 #define SUBLANG_DUTCH   (1)
3943 #define SUBLANG_DUTCH_BELGIAN   (2)
3944 #define SUBLANG_ENGLISH_AUS     (3)
3945 #define SUBLANG_ENGLISH_CAN     (4)
3946 #define SUBLANG_ENGLISH_EIRE    (6)
3947 #define SUBLANG_ENGLISH_NZ      (5)
3948 #define SUBLANG_ENGLISH_UK      (2)
3949 #define SUBLANG_ENGLISH_US      (1)
3950 #define SUBLANG_FRENCH  (1)
3951 #define SUBLANG_FRENCH_BELGIAN  (2)
3952 #define SUBLANG_FRENCH_CANADIAN (3)
3953 #define SUBLANG_FRENCH_SWISS    (4)
3954 #define SUBLANG_GERMAN  (1)
3955 #define SUBLANG_GERMAN_AUSTRIAN (3)
3956 #define SUBLANG_GERMAN_SWISS    (2)
3957 #define SUBLANG_ITALIAN (1)
3958 #define SUBLANG_ITALIAN_SWISS   (2)
3959 #define SUBLANG_NEUTRAL (0)
3960 #define SUBLANG_NORWEGIAN_BOKMAL        (1)
3961 #define SUBLANG_NORWEGIAN_NYNORSK       (2)
3962 #define SUBLANG_PORTUGUESE      (2)
3963 #define SUBLANG_PORTUGUESE_BRAZILIAN    (1)
3964 #define SUBLANG_SPANISH (1)
3965 #define SUBLANG_SPANISH_MEXICAN (2)
3966 #define SUBLANG_SPANISH_MODERN  (3)
3967 #define SUBLANG_SYS_DEFAULT     (2)
3968 #define NLS_VALID_LOCALE_MASK   (1048575)
3969 #define SORT_DEFAULT    (0)
3970 #define SORT_JAPANESE_XJIS      (0)
3971 #define SORT_JAPANESE_UNICODE   (1)
3972 #define SORT_CHINESE_BIG5       (0)
3973 #define SORT_CHINESE_UNICODE    (1)
3974 #define SORT_KOREAN_KSC (0)
3975 #define SORT_KOREAN_UNICODE     (1)
3976
3977 /* SYSTEM_INFO structure */
3978 #define PROCESSOR_INTEL_386     (386)
3979 #define PROCESSOR_INTEL_486     (486)
3980 #define PROCESSOR_INTEL_PENTIUM (586)
3981 #define PROCESSOR_MIPS_R4000    (4000)
3982 #define PROCESSOR_ALPHA_21064   (21064)
3983
3984 /* TAPE_GET_DRIVE_PARAMETERS structure */
3985 #define TAPE_DRIVE_COMPRESSION  (131072)
3986 #define TAPE_DRIVE_ECC  (65536)
3987 #define TAPE_DRIVE_ERASE_BOP_ONLY       (64)
3988 #define TAPE_DRIVE_ERASE_LONG   (32)
3989 #define TAPE_DRIVE_ERASE_IMMEDIATE      (128)
3990 #define TAPE_DRIVE_ERASE_SHORT  (16)
3991 #define TAPE_DRIVE_FIXED        (1)
3992 #define TAPE_DRIVE_FIXED_BLOCK  (1024)
3993 #define TAPE_DRIVE_INITIATOR    (4)
3994 #define TAPE_DRIVE_PADDING      (262144)
3995 #define TAPE_DRIVE_GET_ABSOLUTE_BLK     (1048576)
3996 #define TAPE_DRIVE_GET_LOGICAL_BLK      (2097152)
3997 #define TAPE_DRIVE_REPORT_SMKS  (524288)
3998 #define TAPE_DRIVE_SELECT       (2)
3999 #define TAPE_DRIVE_SET_EOT_WZ_SIZE      (4194304)
4000 #define TAPE_DRIVE_TAPE_CAPACITY        (256)
4001 #define TAPE_DRIVE_TAPE_REMAINING       (512)
4002 #define TAPE_DRIVE_VARIABLE_BLOCK       (2048)
4003 #define TAPE_DRIVE_WRITE_PROTECT        (4096)
4004 #define TAPE_DRIVE_ABS_BLK_IMMED        (-2147475456)
4005 #define TAPE_DRIVE_ABSOLUTE_BLK (-2147479552)
4006 #define TAPE_DRIVE_END_OF_DATA  (-2147418112)
4007 #define TAPE_DRIVE_FILEMARKS    (-2147221504)
4008 #define TAPE_DRIVE_LOAD_UNLOAD  (-2147483647)
4009 #define TAPE_DRIVE_LOAD_UNLD_IMMED      (-2147483616)
4010 #define TAPE_DRIVE_LOCK_UNLOCK  (-2147483644)
4011 #define TAPE_DRIVE_LOCK_UNLK_IMMED      (-2147483520)
4012 #define TAPE_DRIVE_LOG_BLK_IMMED        (-2147450880)
4013 #define TAPE_DRIVE_LOGICAL_BLK  (-2147467264)
4014 #define TAPE_DRIVE_RELATIVE_BLKS        (-2147352576)
4015 #define TAPE_DRIVE_REVERSE_POSITION     (-2143289344)
4016 #define TAPE_DRIVE_REWIND_IMMEDIATE     (-2147483640)
4017 #define TAPE_DRIVE_SEQUENTIAL_FMKS      (-2146959360)
4018 #define TAPE_DRIVE_SEQUENTIAL_SMKS      (-2145386496)
4019 #define TAPE_DRIVE_SET_BLOCK_SIZE       (-2147483632)
4020 #define TAPE_DRIVE_SET_COMPRESSION      (-2147483136)
4021 #define TAPE_DRIVE_SET_ECC      (-2147483392)
4022 #define TAPE_DRIVE_SET_PADDING  (-2147482624)
4023 #define TAPE_DRIVE_SET_REPORT_SMKS      (-2147481600)
4024 #define TAPE_DRIVE_SETMARKS     (-2146435072)
4025 #define TAPE_DRIVE_SPACE_IMMEDIATE      (-2139095040)
4026 #define TAPE_DRIVE_TENSION      (-2147483646)
4027 #define TAPE_DRIVE_TENSION_IMMED        (-2147483584)
4028 #define TAPE_DRIVE_WRITE_FILEMARKS      (-2113929216)
4029 #define TAPE_DRIVE_WRITE_LONG_FMKS      (-2013265920)
4030 #define TAPE_DRIVE_WRITE_MARK_IMMED     (-1879048192)
4031 #define TAPE_DRIVE_WRITE_SETMARKS       (-2130706432)
4032 #define TAPE_DRIVE_WRITE_SHORT_FMKS     (-2080374784)
4033
4034 /* OPENFILENAME structure */
4035 #define OFN_ALLOWMULTISELECT    (0x200)
4036 #define OFN_CREATEPROMPT        (0x2000)
4037 #define OFN_ENABLEHOOK  (0x20)
4038 #define OFN_ENABLETEMPLATE      (0x40)
4039 #define OFN_ENABLETEMPLATEHANDLE        (0x80)
4040 #define OFN_EXPLORER    (0x80000)
4041 #define OFN_EXTENSIONDIFFERENT  (0x400)
4042 #define OFN_FILEMUSTEXIST       (0x1000)
4043 #define OFN_HIDEREADONLY        (0x4)
4044 #define OFN_LONGNAMES   (0x200000)
4045 #define OFN_NOCHANGEDIR (0x8)
4046 #define OFN_NODEREFERENCELINKS  (0x100000)
4047 #define OFN_NOLONGNAMES (0x40000)
4048 #define OFN_NONETWORKBUTTON     (0x20000)
4049 #define OFN_NOREADONLYRETURN    (0x8000)
4050 #define OFN_NOTESTFILECREATE    (0x10000)
4051 #define OFN_NOVALIDATE  (0x100)
4052 #define OFN_OVERWRITEPROMPT     (0x2)
4053 #define OFN_PATHMUSTEXIST       (0x800)
4054 #define OFN_READONLY    (0x1)
4055 #define OFN_SHAREAWARE  (0x4000)
4056 #define OFN_SHOWHELP    (0x10)
4057
4058 /* SHAREVISTRING message */
4059 #define OFN_SHAREFALLTHROUGH    (0x2)
4060 #define OFN_SHARENOWARN (0x1)
4061 #define OFN_SHAREWARN   (0)
4062
4063 /* Open/Save notifications */
4064 #define CDN_INITDONE    (0xfffffda7)
4065 #define CDN_SELCHANGE   (0xfffffda6)
4066 #define CDN_FOLDERCHANGE        (0xfffffda5)
4067 #define CDN_SHAREVIOLATION      (0xfffffda4)
4068 #define CDN_HELP        (0xfffffda3)
4069 #define CDN_FILEOK      (0xfffffda2)
4070 #define CDN_TYPECHANGE  (0xfffffda1)
4071
4072 /* Open/Save messages */
4073 #define CDM_GETFILEPATH (0x465)
4074 #define CDM_GETFOLDERIDLIST     (0x467)
4075 #define CDM_GETFOLDERPATH       (0x466)
4076 #define CDM_GETSPEC     (0x464)
4077 #define CDM_HIDECONTROL (0x469)
4078 #define CDM_SETCONTROLTEXT      (0x468)
4079 #define CDM_SETDEFEXT   (0x46a)
4080
4081 /* CHOOSECOLOR structure */
4082 #define CC_ENABLEHOOK   (0x10)
4083 #define CC_ENABLETEMPLATE       (0x20)
4084 #define CC_ENABLETEMPLATEHANDLE (0x40)
4085 #define CC_FULLOPEN     (0x2)
4086 #define CC_PREVENTFULLOPEN      (0x4)
4087 #define CC_RGBINIT      (0x1)
4088 #define CC_SHOWHELP     (0x8)
4089 #define CC_SOLIDCOLOR   (0x80)
4090
4091 /* FINDREPLACE structure */
4092 #define FR_DIALOGTERM   (0x40)
4093 #define FR_DOWN (0x1)
4094 #define FR_ENABLEHOOK   (0x100)
4095 #define FR_ENABLETEMPLATE       (0x200)
4096 #define FR_ENABLETEMPLATEHANDLE (0x2000)
4097 #define FR_FINDNEXT     (0x8)
4098 #define FR_HIDEUPDOWN   (0x4000)
4099 #define FR_HIDEMATCHCASE        (0x8000)
4100 #define FR_HIDEWHOLEWORD        (0x10000)
4101 #define FR_MATCHCASE    (0x4)
4102 #define FR_NOMATCHCASE  (0x800)
4103 #define FR_NOUPDOWN     (0x400)
4104 #define FR_NOWHOLEWORD  (0x1000)
4105 #define FR_REPLACE      (0x10)
4106 #define FR_REPLACEALL   (0x20)
4107 #define FR_SHOWHELP     (0x80)
4108 #define FR_WHOLEWORD    (0x2)
4109
4110 /* CHOOSEFONT structure */
4111 #define CF_APPLY        (0x200L)
4112 #define CF_ANSIONLY     (0x400L)
4113 #define CF_BOTH (0x3)
4114 #define CF_TTONLY       (0x40000L)
4115 #define CF_EFFECTS      (0x100L)
4116 #define CF_ENABLEHOOK   (0x8L)
4117 #define CF_ENABLETEMPLATE       (0x10L)
4118 #define CF_ENABLETEMPLATEHANDLE (0x20L)
4119 #define CF_FIXEDPITCHONLY       (0x4000L)
4120 #define CF_FORCEFONTEXIST       (0x10000L)
4121 #define CF_INITTOLOGFONTSTRUCT  (0x40L)
4122 #define CF_LIMITSIZE    (0x2000L)
4123 #define CF_NOOEMFONTS   (0x800L)
4124 #define CF_NOFACESEL    (0x80000L)
4125 #define CF_NOSCRIPTSEL  (0x800000L)
4126 #define CF_NOSTYLESEL   (0x100000L)
4127 #define CF_NOSIZESEL    (0x200000L)
4128 #define CF_NOSIMULATIONS        (0x1000L)
4129 #define CF_NOVECTORFONTS        (0x800L)
4130 #define CF_NOVERTFONTS  (0x1000000L)
4131 #define CF_PRINTERFONTS (0x2)
4132 #define CF_SCALABLEONLY (0x20000L)
4133 #define CF_SCREENFONTS  (0x1)
4134 #define CF_SCRIPTSONLY  (0x400L)
4135 #define CF_SELECTSCRIPT (0x400000L)
4136 #define CF_SHOWHELP     (0x4L)
4137 #define CF_USESTYLE     (0x80L)
4138 #define CF_WYSIWYG      (0x8000L)
4139 #define BOLD_FONTTYPE   (0x100)
4140 #define ITALIC_FONTTYPE (0x200)
4141 #define PRINTER_FONTTYPE        (0x4000)
4142 #define REGULAR_FONTTYPE        (0x400)
4143 #define SCREEN_FONTTYPE (0x2000)
4144 #define SIMULATED_FONTTYPE      (0x8000)
4145
4146 /* Common dialog messages */
4147 #define COLOROKSTRINGW  L"commdlg_ColorOK"
4148 #define FILEOKSTRINGW   L"commdlg_FileNameOK"
4149 #define FINDMSGSTRINGW  L"commdlg_FindReplace"
4150 #define HELPMSGSTRINGW  L"commdlg_help"
4151 #define LBSELCHSTRINGW  L"commdlg_LBSelChangedNotify"
4152 #define SETRGBSTRINGW   L"commdlg_SetRGBColor"
4153 #define SHAREVISTRINGW  L"commdlg_ShareViolation"
4154 #define COLOROKSTRINGA  "commdlg_ColorOK"
4155 #define FILEOKSTRINGA   "commdlg_FileNameOK"
4156 #define FINDMSGSTRINGA  "commdlg_FindReplace"
4157 #define HELPMSGSTRINGA  "commdlg_help"
4158 #define LBSELCHSTRINGA  "commdlg_LBSelChangedNotify"
4159 #define SETRGBSTRINGA   "commdlg_SetRGBColor"
4160 #define SHAREVISTRINGA  "commdlg_ShareViolation"
4161 #ifndef _DISABLE_TIDENTS
4162 #ifdef UNICODE
4163 #define COLOROKSTRING COLOROKSTRINGW
4164 #define FILEOKSTRING FILEOKSTRINGW
4165 #define FINDMSGSTRING FINDMSGSTRINGW
4166 #define HELPMSGSTRING HELPMSGSTRINGW
4167 #define LBSELCHSTRING LBSELCHSTRINGW
4168 #define SETRGBSTRING SETRGBSTRINGW
4169 #define SHAREVISTRING SHAREVISTRINGW
4170 #else
4171 #define COLOROKSTRING COLOROKSTRINGA
4172 #define FILEOKSTRING FILEOKSTRINGA
4173 #define FINDMSGSTRING FINDMSGSTRINGA
4174 #define HELPMSGSTRING HELPMSGSTRINGA
4175 #define LBSELCHSTRING LBSELCHSTRINGA
4176 #define SETRGBSTRING SETRGBSTRINGA
4177 #define SHAREVISTRING SHAREVISTRINGA
4178 #endif /* UNICODE */
4179 #endif /* _DISABLE_TIDENTS */
4180
4181 /* LBSELCHSTRING message */
4182 #define CD_LBSELCHANGE  (0)
4183 #define CD_LBSELADD     (2)
4184 #define CD_LBSELSUB     (1)
4185 #define CD_LBSELNOITEMS (-1)
4186
4187 /* DEVNAMES structure */
4188 #define DN_DEFAULTPRN   (1)
4189
4190 /* PRINTDLG structure */
4191 #define PD_ALLPAGES     (0)
4192 #define PD_COLLATE      (16)
4193 #define PD_DISABLEPRINTTOFILE   (524288)
4194 #define PD_ENABLEPRINTHOOK      (4096)
4195 #define PD_ENABLEPRINTTEMPLATE  (16384)
4196 #define PD_ENABLEPRINTTEMPLATEHANDLE    (65536)
4197 #define PD_ENABLESETUPHOOK      (8192)
4198 #define PD_ENABLESETUPTEMPLATE  (32768)
4199 #define PD_ENABLESETUPTEMPLATEHANDLE    (131072)
4200 #define PD_HIDEPRINTTOFILE      (1048576)
4201 #define PD_NOPAGENUMS   (8)
4202 #define PD_NOSELECTION  (4)
4203 #define PD_NOWARNING    (128)
4204 #define PD_PAGENUMS     (2)
4205 #define PD_PRINTSETUP   (64)
4206 #define PD_PRINTTOFILE  (32)
4207 #define PD_RETURNDC     (256)
4208 #define PD_RETURNDEFAULT        (1024)
4209 #define PD_RETURNIC     (512)
4210 #define PD_SELECTION    (1)
4211 #define PD_SHOWHELP     (2048)
4212 #define PD_USEDEVMODECOPIES     (262144)
4213 #define PD_USEDEVMODECOPIESANDCOLLATE   (262144)
4214
4215 /* PAGESETUPDLG structure */
4216 #define PSD_DEFAULTMINMARGINS   (0)
4217 #define PSD_DISABLEMARGINS      (16)
4218 #define PSD_DISABLEORIENTATION  (256)
4219 #define PSD_DISABLEPAGEPAINTING (524288)
4220 #define PSD_DISABLEPAPER        (512)
4221 #define PSD_DISABLEPRINTER      (32)
4222 #define PSD_ENABLEPAGEPAINTHOOK (262144)
4223 #define PSD_ENABLEPAGESETUPHOOK (8192)
4224 #define PSD_ENABLEPAGESETUPTEMPLATE     (32768)
4225 #define PSD_ENABLEPAGESETUPTEMPLATEHANDLE       (131072)
4226 #define PSD_INHUNDREDTHSOFMILLIMETERS   (8)
4227 #define PSD_INTHOUSANDTHSOFINCHES       (4)
4228 #define PSD_INWININIINTLMEASURE (0)
4229 #define PSD_MARGINS     (2)
4230 #define PSD_MINMARGINS  (1)
4231 #define PSD_NOWARNING   (128)
4232 #define PSD_RETURNDEFAULT       (1024)
4233 #define PSD_SHOWHELP    (2048)
4234
4235 /* WM_SHOWWINDOW message */
4236 #define SW_OTHERUNZOOM  (4)
4237 #define SW_OTHERZOOM    (2)
4238 #define SW_PARENTCLOSING        (1)
4239 #define SW_PARENTOPENING        (3)
4240
4241 /* ImmGetVirtualKey */
4242 #define VK_PROCESSKEY   (229)
4243
4244 /* Keystroke Message Flags */
4245 #define KF_ALTDOWN      (8192)
4246 #define KF_DLGMODE      (2048)
4247 #define KF_EXTENDED     (256)
4248 #define KF_MENUMODE     (4096)
4249 #define KF_REPEAT       (16384)
4250 #define KF_UP   (32768)
4251
4252 /* GetKeyboardLayoutName */
4253 #define KL_NAMELENGTH   (9)
4254
4255 /* WM_ACTIVATE message */
4256 #define WA_ACTIVE       (1)
4257 #define WA_CLICKACTIVE  (2)
4258 #define WA_INACTIVE     (0)
4259
4260 /* WM_ACTIVATE message */
4261 #define PWR_CRITICALRESUME      (3)
4262 #define PWR_SUSPENDREQUEST      (1)
4263 #define PWR_SUSPENDRESUME       (2)
4264 #define PWR_FAIL        (-1)
4265 #define PWR_OK  (1)
4266
4267 /* WM_NOTIFYFORMAT message */
4268 #define NF_QUERY        (3)
4269 #define NF_REQUERY      (4)
4270 #define NFR_ANSI        (1)
4271 #define NFR_UNICODE     (2)
4272
4273 /* WM_SIZING message */
4274 #define WMSZ_BOTTOM     (6)
4275 #define WMSZ_BOTTOMLEFT (7)
4276 #define WMSZ_BOTTOMRIGHT        (8)
4277 #define WMSZ_LEFT       (1)
4278 #define WMSZ_RIGHT      (2)
4279 #define WMSZ_TOP        (3)
4280 #define WMSZ_TOPLEFT    (4)
4281 #define WMSZ_TOPRIGHT   (5)
4282
4283 /* WM_MOUSEACTIVATE message */
4284 #define MA_ACTIVATE     (1)
4285 #define MA_ACTIVATEANDEAT       (2)
4286 #define MA_NOACTIVATE   (3)
4287 #define MA_NOACTIVATEANDEAT     (4)
4288
4289 /* WM_SIZE message */
4290 #define SIZE_MAXHIDE    (4)
4291 #define SIZE_MAXIMIZED  (2)
4292 #define SIZE_MAXSHOW    (3)
4293 #define SIZE_MINIMIZED  (1)
4294 #define SIZE_RESTORED   (0)
4295
4296 /* WM_NCCALCSIZE message */
4297 #define WVR_ALIGNTOP    (16)
4298 #define WVR_ALIGNLEFT   (32)
4299 #define WVR_ALIGNBOTTOM (64)
4300 #define WVR_ALIGNRIGHT  (128)
4301 #define WVR_HREDRAW     (256)
4302 #define WVR_VREDRAW     (512)
4303 #define WVR_REDRAW      (768)
4304 #define WVR_VALIDRECTS  (1024)
4305
4306 /* WM_NCHITTEST message */
4307 #define HTBOTTOM        (15)
4308 #define HTBOTTOMLEFT    (16)
4309 #define HTBOTTOMRIGHT   (17)
4310 #define HTCAPTION       (2)
4311 #define HTCLIENT        (1)
4312 #define HTERROR         (-2)
4313 #define HTGROWBOX       (4)
4314 #define HTHSCROLL       (6)
4315 #define HTLEFT          (10)
4316 #define HTMENU          (5)
4317 #define HTNOWHERE       (0)
4318 #define HTREDUCE        (8)
4319 #define HTRIGHT         (11)
4320 #define HTSIZE          (4)
4321 #define HTSYSMENU       (3)
4322 #define HTTOP           (12)
4323 #define HTTOPLEFT       (13)
4324 #define HTTOPRIGHT      (14)
4325 #define HTTRANSPARENT   (-1)
4326 #define HTVSCROLL       (7)
4327 #define HTZOOM          (9)
4328 #define HTBORDER        (18)
4329 #define HTCLOSE         (20)
4330 #define HTMAXBUTTON HTZOOM
4331 #define HTMINBUTTON HTREDUCE
4332
4333 /* Mouse messages */
4334 #define MK_CONTROL      (8)
4335 #define MK_LBUTTON      (1)
4336 #define MK_MBUTTON      (16)
4337 #define MK_RBUTTON      (2)
4338 #define MK_SHIFT        (4)
4339
4340 /* WNDCLASS structure */
4341 #define CS_BYTEALIGNCLIENT      (4096)
4342 #define CS_BYTEALIGNWINDOW      (8192)
4343 #define CS_CLASSDC      (64)
4344 #define CS_DBLCLKS      (8)
4345 #define CS_GLOBALCLASS  (16384)
4346 #define CS_HREDRAW      (2)
4347 #define CS_KEYCVTWINDOW (4)
4348 #define CS_NOCLOSE      (512)
4349 #define CS_NOKEYCVT     (256)
4350 #define CS_OWNDC        (32)
4351 #define CS_PARENTDC     (128)
4352 #define CS_SAVEBITS     (2048)
4353 #define CS_VREDRAW      (1)
4354 #define DLGWINDOWEXTRA  (30)
4355
4356 /* ACCEL structure */
4357 #define FALT    (16)
4358 #define FCONTROL        (8)
4359 #define FNOINVERT       (2)
4360 #define FSHIFT  (4)
4361 #define FVIRTKEY        (1)
4362
4363 /* MENUINFO structure */
4364 #define MIM_MAXHEIGHT           0x00000001
4365 #define MIM_BACKGROUND          0x00000002
4366 #define MIM_HELPID              0x00000004
4367 #define MIM_MENUDATA            0x00000008
4368 #define MIM_STYLE               0x00000010
4369 #define MIM_APPLYTOSUBMENUS     0x80000000
4370
4371 /* MENUITEMINFO structure */
4372 #define MIIM_CHECKMARKS (8)
4373 #define MIIM_DATA       (32)
4374 #define MIIM_ID (2)
4375 #define MIIM_STATE      (1)
4376 #define MIIM_SUBMENU    (4)
4377 #define MIIM_TYPE       (16)
4378 #define MIIM_STRING     (0x40)
4379 #define MIIM_BITMAP     (0x80)
4380 #define MIIM_FTYPE      (0x100)
4381 #define MFT_BITMAP      (0x4L)
4382 #define MFT_MENUBARBREAK        (0x20L)
4383 #define MFT_MENUBREAK   (0x40L)
4384 #define MFT_OWNERDRAW   (0x100L)
4385 #define MFT_RADIOCHECK  (0x200L)
4386 #define MFT_RIGHTJUSTIFY        (0x4000L)
4387 #define MFT_SEPARATOR   (0x800L)
4388 #define MFT_STRING      (0L)
4389 #define MFS_CHECKED     (0x8L)
4390 #define MFS_DEFAULT     (0x1000L)
4391 #define MFS_DISABLED    (0x3L)
4392 #define MFS_ENABLED     (0L)
4393 #define MFS_GRAYED      (0x3L)
4394 #define MFS_HILITE      (0x80L)
4395 #define MFS_UNCHECKED   (0L)
4396 #define MFS_UNHILITE    (0L)
4397
4398 /* SERIALKEYS structure */
4399 #define SERKF_AVAILABLE (2)
4400 #define SERKF_INDICATOR (4)
4401 #define SERKF_SERIALKEYSON      (1)
4402
4403 /* FILTERKEYS structure */
4404 #define FKF_AVAILABLE   (2)
4405 #define FKF_CLICKON     (64)
4406 #define FKF_FILTERKEYSON        (1)
4407 #define FKF_HOTKEYACTIVE        (4)
4408 #define FKF_HOTKEYSOUND (16)
4409 #define FKF_CONFIRMHOTKEY       (8)
4410 #define FKF_INDICATOR   (32)
4411
4412 /* HELPINFO structure */
4413 #define HELPINFO_MENUITEM       (2)
4414 #define HELPINFO_WINDOW (1)
4415
4416 /* WM_PRINT message */
4417 #define PRF_CHECKVISIBLE        (0x1L)
4418 #define PRF_CHILDREN    (0x10L)
4419 #define PRF_CLIENT      (0x4L)
4420 #define PRF_ERASEBKGND  (0x8L)
4421 #define PRF_NONCLIENT   (0x2L)
4422 #define PRF_OWNED       (0x20L)
4423
4424 /* MapWindowPoints */
4425 #define HWND_DESKTOP    ((HWND)0)
4426
4427 /* WM_SYSCOMMAND message */
4428 #define SC_CLOSE        (61536)
4429 #define SC_CONTEXTHELP  (61824)
4430 #define SC_DEFAULT      (61792)
4431 #define SC_HOTKEY       (61776)
4432 #define SC_HSCROLL      (61568)
4433 #define SC_KEYMENU      (61696)
4434 #define SC_MAXIMIZE     (61488)
4435 #define SC_ZOOM (61488)
4436 #define SC_MINIMIZE     (61472)
4437 #define SC_ICON (61472)
4438 #define SC_MONITORPOWER (61808)
4439 #define SC_MOUSEMENU    (61584)
4440 #define SC_MOVE (61456)
4441 #define SC_NEXTWINDOW   (61504)
4442 #define SC_PREVWINDOW   (61520)
4443 #define SC_RESTORE      (61728)
4444 #define SC_SCREENSAVE   (61760)
4445 #define SC_SIZE (61440)
4446 #define SC_TASKLIST     (61744)
4447 #define SC_VSCROLL      (61552)
4448
4449 /* DM_GETDEFID message */
4450 #define DC_HASDEFID     (21323)
4451
4452 /* WM_GETDLGCODE message */
4453 #define DLGC_BUTTON     (8192)
4454 #define DLGC_DEFPUSHBUTTON      (16)
4455 #define DLGC_HASSETSEL  (8)
4456 #define DLGC_RADIOBUTTON        (64)
4457 #define DLGC_STATIC     (256)
4458 #define DLGC_UNDEFPUSHBUTTON    (32)
4459 #define DLGC_WANTALLKEYS        (4)
4460 #define DLGC_WANTARROWS (1)
4461 #define DLGC_WANTCHARS  (128)
4462 #define DLGC_WANTMESSAGE        (4)
4463 #define DLGC_WANTTAB    (2)
4464
4465 /* EM_SETMARGINS message */
4466 #define EC_LEFTMARGIN   (1)
4467 #define EC_RIGHTMARGIN  (2)
4468 #define EC_USEFONTINFO  (65535)
4469
4470 /* LB_SETCOUNT message */
4471 #define LB_ERR          (-1)
4472 #define LB_ERRSPACE     (-2)
4473 #define LB_OKAY         (0)
4474
4475 /* CB_DIR message */
4476 #define CB_ERR  (-1)
4477 #define CB_ERRSPACE     (-2)
4478
4479 /* WM_IME_CONTROL message */
4480 #define IMC_GETCANDIDATEPOS     (7)
4481 #define IMC_GETCOMPOSITIONFONT  (9)
4482 #define IMC_GETCOMPOSITIONWINDOW        (11)
4483 #define IMC_GETSTATUSWINDOWPOS  (15)
4484 #define IMC_CLOSESTATUSWINDOW   (33)
4485 #define IMC_OPENSTATUSWINDOW    (34)
4486 #define IMC_SETCANDIDATEPOS     (8)
4487 #define IMC_SETCOMPOSITIONFONT  (10)
4488 #define IMC_SETCOMPOSITIONWINDOW        (12)
4489 #define IMC_SETSTATUSWINDOWPOS  (16)
4490
4491 /* WM_IME_CONTROL message */
4492 #define IMN_CHANGECANDIDATE     (3)
4493 #define IMN_CLOSECANDIDATE      (4)
4494 #define IMN_CLOSESTATUSWINDOW   (1)
4495 #define IMN_GUIDELINE   (13)
4496 #define IMN_OPENCANDIDATE       (5)
4497 #define IMN_OPENSTATUSWINDOW    (2)
4498 #define IMN_SETCANDIDATEPOS     (9)
4499 #define IMN_SETCOMPOSITIONFONT  (10)
4500 #define IMN_SETCOMPOSITIONWINDOW        (11)
4501 #define IMN_SETCONVERSIONMODE   (6)
4502 #define IMN_SETOPENSTATUS       (8)
4503 #define IMN_SETSENTENCEMODE     (7)
4504 #define IMN_SETSTATUSWINDOWPOS  (12)
4505 #define IMN_PRIVATE     (14)
4506
4507 /* STICKYKEYS structure */
4508 #define SKF_AUDIBLEFEEDBACK     (64)
4509 #define SKF_AVAILABLE   (2)
4510 #define SKF_CONFIRMHOTKEY       (8)
4511 #define SKF_HOTKEYACTIVE        (4)
4512 #define SKF_HOTKEYSOUND (16)
4513 #define SKF_INDICATOR   (32)
4514 #define SKF_STICKYKEYSON        (1)
4515 #define SKF_TRISTATE    (128)
4516 #define SKF_TWOKEYSOFF  (256)
4517
4518 /* MOUSEKEYS structure */
4519 #define MKF_AVAILABLE   (2)
4520 #define MKF_CONFIRMHOTKEY       (8)
4521 #define MKF_HOTKEYACTIVE        (4)
4522 #define MKF_HOTKEYSOUND (16)
4523 #define MKF_INDICATOR   (32)
4524 #define MKF_MOUSEKEYSON (1)
4525 #define MKF_MODIFIERS   (64)
4526 #define MKF_REPLACENUMBERS      (128)
4527
4528 /* SOUNDSENTRY structure */
4529 #define SSF_AVAILABLE   (2)
4530 #define SSF_SOUNDSENTRYON       (1)
4531 #define SSTF_BORDER     (2)
4532 #define SSTF_CHARS      (1)
4533 #define SSTF_DISPLAY    (3)
4534 #define SSTF_NONE       (0)
4535 #define SSGF_DISPLAY    (3)
4536 #define SSGF_NONE       (0)
4537 #define SSWF_CUSTOM     (4)
4538 #define SSWF_DISPLAY    (3)
4539 #define SSWF_NONE       (0)
4540 #define SSWF_TITLE      (1)
4541 #define SSWF_WINDOW     (2)
4542
4543 /* ACCESSTIMEOUT structure */
4544 #define ATF_ONOFFFEEDBACK       (2)
4545 #define ATF_TIMEOUTON   (1)
4546
4547 /* HIGHCONTRAST structure */
4548 #define HCF_AVAILABLE   (2)
4549 #define HCF_CONFIRMHOTKEY       (8)
4550 #define HCF_HIGHCONTRASTON      (1)
4551 #define HCF_HOTKEYACTIVE        (4)
4552 #define HCF_HOTKEYAVAILABLE     (64)
4553 #define HCF_HOTKEYSOUND (16)
4554 #define HCF_INDICATOR   (32)
4555
4556 /* TOGGLEKEYS structure */
4557 #define TKF_AVAILABLE   (2)
4558 #define TKF_CONFIRMHOTKEY       (8)
4559 #define TKF_HOTKEYACTIVE        (4)
4560 #define TKF_HOTKEYSOUND (16)
4561 #define TKF_TOGGLEKEYSON        (1)
4562
4563 /* Installable Policy */
4564 #define PP_DISPLAYERRORS        (1)
4565
4566 /* SERVICE_INFO structure */
4567 #define RESOURCEDISPLAYTYPE_DOMAIN      (1)
4568 #define RESOURCEDISPLAYTYPE_FILE        (4)
4569 #define RESOURCEDISPLAYTYPE_GENERIC     (0)
4570 #define RESOURCEDISPLAYTYPE_GROUP       (5)
4571 #define RESOURCEDISPLAYTYPE_SERVER      (2)
4572 #define RESOURCEDISPLAYTYPE_SHARE       (3)
4573
4574 /* BITMAPINFOHEADER structure */
4575 #define BI_RGB  (0L)
4576 #define BI_RLE8 (1L)
4577 #define BI_RLE4 (2L)
4578 #define BI_BITFIELDS    (3L)
4579
4580 /* Extensions to OpenGL */
4581
4582 /* ChoosePixelFormat */
4583 #define PFD_DRAW_TO_WINDOW      (0x4)
4584 #define PFD_DRAW_TO_BITMAP      (0x8)
4585 #define PFD_SUPPORT_GDI (0x10)
4586 #define PFD_SUPPORT_OPENGL      (0x20)
4587 #define PFD_DOUBLEBUFFER        (0x1)
4588 #define PFD_STEREO      (0x2)
4589 #define PFD_DOUBLEBUFFER_DONTCARE       (0x40000000)
4590 #define PFD_STEREO_DONTCARE     (0x80000000)
4591 #define PFD_TYPE_RGBA   (0)
4592 #define PFD_TYPE_COLORINDEX     (1)
4593 #define PFD_MAIN_PLANE  (0)
4594 #define PFD_OVERLAY_PLANE       (1)
4595 #define PFD_UNDERLAY_PLANE      (-1)
4596
4597 /* wglUseFontOutlines */
4598 #define WGL_FONT_LINES  (0)
4599 #define WGL_FONT_POLYGONS       (1)
4600
4601 /* LAYERPLANEDESCRIPTOR structure */
4602
4603 /* PIXELFORMATDESCRIPTOR structure */
4604 #define PFD_GENERIC_FORMAT      (0x40)
4605 #define PFD_NEED_PALETTE        (0x80)
4606 #define PFD_NEED_SYSTEM_PALETTE (0x100)
4607 #define PFD_SWAP_COPY   (0x400)
4608 #define PFD_SWAP_EXCHANGE       (0x200)
4609
4610 /* TEXTMETRIC structure */
4611 #define TMPF_FIXED_PITCH        (0x1)
4612 #define TMPF_VECTOR             (0x2)
4613 #define TMPF_TRUETYPE           (0x4)
4614 #define TMPF_DEVICE             (0x8)
4615
4616 /* CopyFileEx options */
4617 #define COPY_FILE_FAIL_IF_EXISTS        (1)
4618
4619 /* CopyProgressRoutine callback */
4620 #define CALLBACK_CHUNK_FINISHED (0)
4621 #define CALLBACK_STREAM_SWITCH  (1)
4622
4623 #define PROGRESS_CONTINUE       (0)
4624 #define PROGRESS_CANCEL         (1)
4625 #define PROGRESS_STOP           (2)
4626 #define PROGRESS_QUIET          (3)
4627
4628 /* GetFileAttributes */
4629 #define INVALID_FILE_ATTRIBUTES ((DWORD)-1)
4630
4631 /* GetFileCompressedSize */
4632 #define INVALID_FILE_SIZE ((DWORD)-1)
4633
4634 /* system ids */
4635 #define OBJID_WINDOW        ((LONG)0x00000000)
4636 #define OBJID_SYSMENU       ((LONG)0xFFFFFFFF)
4637 #define OBJID_TITLEBAR      ((LONG)0xFFFFFFFE)
4638 #define OBJID_MENU          ((LONG)0xFFFFFFFD)
4639 #define OBJID_CLIENT        ((LONG)0xFFFFFFFC)
4640 #define OBJID_VSCROLL       ((LONG)0xFFFFFFFB)
4641 #define OBJID_HSCROLL       ((LONG)0xFFFFFFFA)
4642 #define OBJID_SIZEGRIP      ((LONG)0xFFFFFFF9)
4643 #define OBJID_CARET         ((LONG)0xFFFFFFF8)
4644 #define OBJID_CURSOR        ((LONG)0xFFFFFFF7)
4645 #define OBJID_ALERT         ((LONG)0xFFFFFFF6)
4646 #define OBJID_SOUND         ((LONG)0xFFFFFFF5)
4647 #define OBJID_QUERYCLASSNAMEIDX ((LONG)0xFFFFFFF4)
4648 #define OBJID_NATIVEOM      ((LONG)0xFFFFFFF0)
4649
4650 /* --------------------- old stuff, need to organize! --------------- */
4651
4652 /* BEGINNING of windowsx.h stuff from old headers: */
4653 #define __CRACK_VOID_F(fn,args) (void)(fn args)
4654 #define __CRACK_BOOL_F(fn,args) (BOOL)(fn args)
4655 #define __CRACK_HMENU_F(fn,args) (HMENU)(fn args)
4656 #define __CRACK_HWND_F(fn,args) (HWND)(fn args)
4657 #define __CRACK_LONG_F(fn, args) (LRESULT)(fn args)
4658 #define __CRACK_ZERO_F(fn, args)  (fn args,0)
4659 #define GetFirstChild(h) GetTopWindow(h)
4660 #define GetNextSibling(h) GetWindow(h, GW_HWNDNEXT)
4661 #define GetWindowID(h) GetDlgCtrlID(h)
4662 #define SubclassWindow(h, p) (SetWindowLong(h, GWL_WNDPROC, p))
4663
4664 #define GET_WM_COMMAND_CMD(w, l)        HIWORD(w)
4665 #define GET_WM_COMMAND_ID(w, l)         LOWORD(w)
4666 #define GET_WM_CTLCOLOR_HDC(w, l, msg)  (HDC)(w)
4667 #define GET_WM_CTLCOLOR_HWND(w, l, msg) (HWND)(l)
4668 #define GET_WM_HSCROLL_CODE(w, l)       LOWORD(w)
4669 #define GET_WM_HSCROLL_HWND(w, l)       (HWND)(l)
4670 #define GET_WM_HSCROLL_POS(w, l)        HIWORD(w)
4671 #define GET_WM_MDIACTIVATE_FACTIVATE(h, a, b)    (b == (LONG)h)
4672 #define GET_WM_MDIACTIVATE_HWNDACTIVATE(a, b) (HWND)(b)
4673 #define GET_WM_MDIACTIVATE_HWNDDEACT(a, b)      (HWND)(a)
4674 #define GET_WM_VSCROLL_CODE(w, l)        LOWORD(w)
4675 #define GET_WM_VSCROLL_HWND(w, l)       (HWND)(l)
4676 #define GET_WM_VSCROLL_POS(w, l)        HIWORD(w)
4677
4678 #define FORWARD_WM_CLOSE(h, fn)                 __CRACK_VOID_F(fn,(h, WM_CLOSE, 0, 0))
4679 #define FORWARD_WM_COMMAND(h, id, c, n, fn)     __CRACK_VOID_F(fn,(h, WM_COMMAND, MAKEWPARAM(id,n), (LPARAM)c))
4680 #define FORWARD_WM_CREATE(h, p, fn)             __CRACK_BOOL_F(fn,(h, WM_CREATE, 0, (LPARAM)p))
4681 #define FORWARD_WM_DESTROY(h, fn)               __CRACK_VOID_F(fn,(h, WM_DESTROY, 0, 0))
4682 #define FORWARD_WM_ENABLE(h, e, fn)             __CRACK_VOID_F(fn,(h, WM_ENABLE, (WPARAM)e, 0))
4683 #define FORWARD_WM_INITDIALOG(h, c, l, fn)      __CRACK_BOOL_F(fn,(h, WM_INITDIALOG, (WPARAM)c, l))
4684 #define FORWARD_WM_MDICASCADE(h, c, fn)         __CRACK_BOOL_F(fn,(h, WM_MDICASCADE, (WPARAM)c, 0))
4685 #define FORWARD_WM_MDIDESTROY(h, d, fn)         __CRACK_VOID_F(fn,(h, WM_MDIDESTROY, (WPARAM)d, 0))
4686 #define FORWARD_WM_MDIGETACTIVE(h, fn)          __CRACK_HWND_F(fn,(h, WM_MDIGETACTIVE, 0, 0))
4687 #define FORWARD_WM_MDIICONARRANGE(h, fn)        __CRACK_VOID_F(fn,(h, WM_MDIICONARRANGE, 0, 0))
4688 #define FORWARD_WM_MDISETMENU(h, fr, hf, hw, fn) __CRACK_HMENU_F(fn,(h, WM_MDISETMENU, (WPARAM)((fr) ? (hf) : 0), (LPARAM)(hw)))
4689 #define FORWARD_WM_MDITILE(h, c, fn)            __CRACK_BOOL_F(fn,(h, WM_MDITILE, (WPARAM)(c), 0))
4690 #define FORWARD_WM_PAINT(h, fn)                 __CRACK_VOID_F(fn,(h, WM_PAINT, 0, 0))
4691 #define FORWARD_WM_QUERYENDSESSION(h, fn)       __CRACK_BOOL_F(fn,(h, WM_QUERYENDSESSION, 0, 0))
4692 #define FORWARD_WM_SIZE(h, state, cx, cy, fn)   __CRACK_VOID_F(fn,(h, WM_SIZE, (WPARAM)state, MAKELPARAM(cx, cy)))
4693 #define FORWARD_WM_SYSCOMMAND(h, c, x, y, fn)   __CRACK_VOID_F(fn,(h, WM_SYSCOMMAND, (WPARAM)c, MAKELPARAM(x, y)))
4694
4695 #define HANDLE_WM_CLOSE(h, w, l, fn)            __CRACK_ZERO_F(fn,(h));
4696 #define HANDLE_WM_COMMAND(h, w, l, fn)          __CRACK_ZERO_F(fn,(h, SEXT_LOWORD(w), (HWND)l, HIWORD(w)))
4697 #define HANDLE_WM_CREATE(h, w, l, fn)           (LRESULT)((fn(h, (CREATESTRUCT *)l)) ? 0 : -1)
4698 #define HANDLE_WM_DESTROY(h, w, l, fn)          __CRACK_ZERO_F(fn,(h))
4699 #define HANDLE_WM_ENABLE(h, w, l, fn)           __CRACK_ZERO_F(fn,(h, (BOOL)w))
4700 #define HANDLE_WM_INITDIALOG(h, w, l, fn)       __CRACK_LONG_F(fn,(h, (HWND)w, l))
4701 #define HANDLE_WM_MDICASCADE(h, w, l, fn)       __CRACK_LONG_F(fn, (h, (UINT)w)
4702 #define HANDLE_WM_MDIDESTROY(h, w, l, fn)       __CRACK_ZERO_F(fn,(h, (HWND)w))
4703 #define HANDLE_WM_MDIGETACTIVE(h, w, l, fn)     __CRACK_LONG_F(fn,(h))
4704 #define HANDLE_WM_MDIICONARRANGE(h, w, l, fn)   __CRACK_ZERO_F(fn,(h))
4705 #define HANDLE_WM_MDISETMENU(h, w, l, fn)       __CRACK_LONG_F(fn,(h, (BOOL)w, (HMENU)w, (HMENU)l)
4706 #define HANDLE_WM_MDITILE(h, w, l, fn)          __CRACK_LONG_F(fn,(h, (UINT)w))
4707 #define HANDLE_WM_PAINT(h, w, l, fn)            __CRACK_ZERO_F(fn,(h))
4708 #define HANDLE_WM_QUERYENDSESSION(h, w, l, fn)  MAKELRESULT(fn(h), 0)
4709 #define HANDLE_WM_SIZE(h, w, l, fn)             __CRACK_ZERO_F(fn,(h, (UINT)w, SEXT_LOWORD(l), SEXT_HIWORD(l)))
4710 #define HANDLE_WM_SYSCOMMAND(h, w, l, fn)       __CRACK_ZERO_F(fn,(h, (UINT)w, SEXT_LOWORD(l), SEXT_HIWORD(l)))
4711
4712 /* Totally disgusting! get wParam and lParam from the environment ! */
4713 #define HANDLE_MSG(h, message, fn) case message: return HANDLE_##message(h, wParam, lParam, fn)
4714
4715 /* END OF windowsx.h stuff from old headers */
4716 /* ------------------------------------------------------------------ */
4717 /* BEGINNING of shellapi.h stuff from old headers */
4718
4719 #define SE_ERR_SHARE                    26
4720 #define SE_ERR_ASSOCINCOMPLETE          27
4721 #define SE_ERR_DDETIMEOUT               28
4722 #define SE_ERR_DDEFAIL                  29
4723 #define SE_ERR_DDEBUSY                  30
4724 #define SE_ERR_NOASSOC                  31
4725
4726 /* END OF shellapi.h stuff from old headers */
4727 /* ------------------------------------------------------------------ */
4728 /* From ddeml.h in old Cygnus headers */
4729
4730 #define XCLASS_BOOL             0x1000
4731 #define XCLASS_DATA             0x2000
4732 #define XCLASS_FLAGS            0x4000
4733 #define XCLASS_MASK             0xfc00
4734 #define XCLASS_NOTIFICATION     0x8000
4735 #define XTYPF_NOBLOCK           0x0002
4736 #define XTYP_ADVDATA            0x4010
4737 #define XTYP_ADVREQ             0x2022
4738 #define XTYP_ADVSTART           0x1030
4739 #define XTYP_ADVSTOP            0x8040
4740 #define XTYP_CONNECT            0x1062
4741 #define XTYP_CONNECT_CONFIRM    0x8072
4742 #define XTYP_DISCONNECT         0x80c2
4743 #define XTYP_EXECUTE            0x4050
4744 #define XTYP_POKE               0x4090
4745 #define XTYP_REQUEST            0x20b0
4746 #define XTYP_WILDCONNECT        0x20E2
4747 #define XTYP_REGISTER           0x80A2
4748 #define XTYP_ERROR              0x8002
4749 #define XTYP_XACT_COMPLETE      0x8080
4750 #define XTYP_UNREGISTER         0x80D2
4751
4752 #define DMLERR_DLL_USAGE        0x4004
4753 #define DMLERR_INVALIDPARAMETER 0x4006
4754 #define DMLERR_NOTPROCESSED     0x4009
4755 #define DMLERR_POSTMSG_FAILED   0x400c
4756 #define DMLERR_SERVER_DIED      0x400e
4757 #define DMLERR_SYS_ERROR        0x400f
4758 #define DMLERR_BUSY             0x4001
4759 #define DMLERR_DATAACKTIMEOUT   0x4002
4760 #define DMLERR_ADVACKTIMEOUT    0x4000
4761 #define DMLERR_DLL_NOT_INITIALIZED  0x4003
4762 #define DMLERR_LOW_MEMORY       0x4007
4763 #define DMLERR_MEMORY_ERROR     0x4008
4764 #define DMLERR_POKEACKTIMEOUT   0x400b
4765 #define DMLERR_NO_CONV_ESTABLISHED  0x400a
4766 #define DMLERR_REENTRANCY       0x400d
4767 #define DMLERR_UNFOUND_QUEUE_ID 0x4011
4768 #define DMLERR_UNADVACKTIMEOUT  0x4010
4769 #define DMLERR_EXECACKTIMEOUT   0x4005
4770 #define DDE_FACK                0x8000
4771 #define DDE_FNOTPROCESSED       0x0000
4772
4773 #define DNS_REGISTER 0x0001
4774 #define DNS_UNREGISTER 0x0002
4775 #define CP_WINANSI 1004
4776 #define CP_WINUNICODE 1200
4777 #define EXPENTRY CALLBACK
4778 #define APPCLASS_STANDARD  0x00000000
4779
4780 /* End of stuff from ddeml.h in old Cygnus headers */
4781 /* ----------------------------------------------- */
4782
4783 #define BKMODE_LAST     (2)
4784
4785 #define CTLCOLOR_MSGBOX         (0)
4786 #define CTLCOLOR_EDIT           (1)
4787 #define CTLCOLOR_LISTBOX        (2)
4788 #define CTLCOLOR_BTN            (3)
4789 #define CTLCOLOR_DLG            (4)
4790 #define CTLCOLOR_SCROLLBAR      (5)
4791 #define CTLCOLOR_STATIC         (6)
4792 #define CTLCOLOR_MAX            (7)
4793
4794 #define META_SETMAPMODE         (0x0103L)
4795 #define META_SETWINDOWORG       (0x020BL)
4796 #define META_SETWINDOWEXT       (0x020CL)
4797
4798 #define POLYFILL_LAST           (2)
4799
4800
4801 #define EXCEPTION_CTRL_C
4802
4803 #define PROCESSOR_ARCHITECTURE_INTEL 0
4804 #define PROCESSOR_ARCHITECTURE_MIPS  1
4805 #define PROCESSOR_ARCHITECTURE_ALPHA 2
4806 #define PROCESSOR_ARCHITECTURE_PPC   3
4807
4808 #define FreeModule(h) FreeLibrary(h)
4809 #define MakeProcInstance(p,i) (p)
4810 #define FreeProcInstance(p) (p)
4811
4812 #define _fmemcpy memcpy
4813
4814 /* Used by wxwindows. */
4815 #define SIZEFULLSCREEN  SIZE_MAXIMIZED
4816 #define SIZENORMAL      SIZE_RESTORED
4817 #define SIZEICONIC      SIZE_MINIMIZED
4818 #define NPLOGPALETTE    PLOGPALETTE
4819
4820 /* In the old winnt.h */
4821 #if 0
4822 #ifdef __ANAL__
4823 #define DECLARE_HANDLE(h) struct h##__ { int dummy; }; typedef struct h##__ *h
4824 #else
4825 #define DECLARE_HANDLE(h)  typedef void *h
4826 #endif
4827 DECLARE_HANDLE(HANDLE);
4828 #endif
4829
4830 #ifdef __PPC__
4831 #define CONTEXT_CONTROL         1L
4832 #define CONTEXT_FLOATING_POINT  2L
4833 #define CONTEXT_INTEGER         4L
4834 #define CONTEXT_DEBUG_REGISTERS 8L
4835
4836 #define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_FLOATING_POINT | CONTEXT_INTEGER)
4837 #define CONTEXT_DEBUGGER (CONTEXT_FULL)
4838
4839 #else /* x86 */
4840 /* The doc refered me to winnt.h, so I had to look... */
4841 #define SIZE_OF_80387_REGISTERS      80
4842
4843 /* Values for contextflags */
4844 #define CONTEXT_i386    0x10000
4845 #define CONTEXT_CONTROL         (CONTEXT_i386 | 1)      
4846 #define CONTEXT_INTEGER         (CONTEXT_i386 | 2)      
4847 #define CONTEXT_SEGMENTS        (CONTEXT_i386 | 4)      
4848 #define CONTEXT_FLOATING_POINT  (CONTEXT_i386 | 8)      
4849 #define CONTEXT_DEBUG_REGISTERS (CONTEXT_i386 | 0x10)
4850 #define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_SEGMENTS)
4851
4852 /* our own invention */
4853 #define FLAG_TRACE_BIT 0x100
4854 #define CONTEXT_DEBUGGER (CONTEXT_FULL | CONTEXT_FLOATING_POINT)
4855
4856 #endif
4857
4858 #define ASCIICHAR AsciiChar
4859 #define FAR
4860
4861 #define FILTER_TEMP_DUPLICATE_ACCOUNT       (0x0001)
4862 #define FILTER_NORMAL_ACCOUNT               (0x0002)
4863 #define FILTER_INTERDOMAIN_TRUST_ACCOUNT    (0x0008)
4864 #define FILTER_WORKSTATION_TRUST_ACCOUNT    (0x0010)
4865 #define FILTER_SERVER_TRUST_ACCOUNT         (0x0020)
4866
4867 #define LOGON32_LOGON_INTERACTIVE           (0x02)
4868 #define LOGON32_LOGON_BATCH                 (0x04)
4869 #define LOGON32_LOGON_SERVICE               (0x05)
4870 #define LOGON32_PROVIDER_DEFAULT            (0x00)
4871 #define LOGON32_PROVIDER_WINNT35            (0x01)
4872
4873 #define QID_SYNC 0xFFFFFFFF
4874
4875
4876 /* To mark direction in formal parameters list */
4877
4878 #ifndef IN
4879 #define IN
4880 #endif
4881 #ifndef OUT
4882 #define OUT
4883 #endif
4884 #ifndef OPTIONAL
4885 #define OPTIONAL
4886 #endif
4887
4888
4889 #ifndef __USE_W32API
4890
4891
4892 typedef enum _SC_STATUS_TYPE {
4893   SC_STATUS_PROCESS_INFO = 0
4894 } SC_STATUS_TYPE;
4895
4896 typedef enum _SC_ENUM_TYPE {
4897   SC_ENUM_PROCESS_INFO = 0
4898 } SC_ENUM_TYPE;
4899
4900 #endif /* !__USE_W32API */
4901
4902 typedef enum _SystemState {
4903   STATE_SYSTEM_UNAVAILABLE        = 0x00000001, /* Disabled */
4904   STATE_SYSTEM_SELECTED           = 0x00000002,
4905   STATE_SYSTEM_FOCUSED            = 0x00000004,
4906   STATE_SYSTEM_PRESSED            = 0x00000008,
4907   STATE_SYSTEM_CHECKED            = 0x00000010,
4908   STATE_SYSTEM_MIXED              = 0x00000020, /* 3-state checkbox or toolbar button */
4909   STATE_SYSTEM_READONLY           = 0x00000040,
4910   STATE_SYSTEM_HOTTRACKED         = 0x00000080,
4911   STATE_SYSTEM_DEFAULT            = 0x00000100,
4912   STATE_SYSTEM_EXPANDED           = 0x00000200,
4913   STATE_SYSTEM_COLLAPSED          = 0x00000400,
4914   STATE_SYSTEM_BUSY               = 0x00000800,
4915   STATE_SYSTEM_FLOATING           = 0x00001000, /* Children "owned" not "contained" by parent */
4916   STATE_SYSTEM_MARQUEED           = 0x00002000,
4917   STATE_SYSTEM_ANIMATED           = 0x00004000,
4918   STATE_SYSTEM_INVISIBLE          = 0x00008000,
4919   STATE_SYSTEM_OFFSCREEN          = 0x00010000,
4920   STATE_SYSTEM_SIZEABLE           = 0x00020000,
4921   STATE_SYSTEM_MOVEABLE           = 0x00040000,
4922   STATE_SYSTEM_SELFVOICING        = 0x00080000,
4923   STATE_SYSTEM_FOCUSABLE          = 0x00100000,
4924   STATE_SYSTEM_SELECTABLE         = 0x00200000,
4925   STATE_SYSTEM_LINKED             = 0x00400000,
4926   STATE_SYSTEM_TRAVERSED          = 0x00800000,
4927   STATE_SYSTEM_MULTISELECTABLE    = 0x01000000,  /* Supports multiple selection */
4928   STATE_SYSTEM_EXTSELECTABLE      = 0x02000000,  /* Supports extended selection */
4929   STATE_SYSTEM_ALERT_LOW          = 0x04000000,  /* This information is of low priority */
4930   STATE_SYSTEM_ALERT_MEDIUM       = 0x08000000,  /* This information is of medium priority */
4931   STATE_SYSTEM_ALERT_HIGH         = 0x10000000,  /* This information is of high priority */
4932   STATE_SYSTEM_VALID              = 0x1FFFFFFF
4933 } SystemState;
4934
4935 /*
4936  * From OS/2 2.0 exception handling
4937  * Win32 seems to use the same flags as ExceptionFlags in an EXCEPTION_RECORD
4938  */
4939
4940 #define EH_NONCONTINUABLE   0x01
4941 #define EH_UNWINDING        0x02
4942 #define EH_EXIT_UNWIND      0x04
4943 #define EH_STACK_INVALID    0x08
4944 #define EH_NESTED_CALL      0x10
4945
4946 #ifdef __cplusplus
4947 }
4948 #endif /* __cplusplus */
4949
4950 #endif /* WIN32_LEAN_AND_MEAN */
4951
4952 #endif /* _GNU_H_WINDOWS32_DEFINES */