1 /* Initial draft attempt of windows.h, by Peter MacDonald, pmacdona@sanjuan.uvic.ca */
9 typedef unsigned short UINT;
10 typedef unsigned short WORD;
11 typedef unsigned long DWORD;
12 typedef unsigned short BOOL;
13 typedef unsigned char BYTE;
15 typedef const char *LPCSTR;
19 typedef long (*FARPROC)();
20 typedef FARPROC DLGPROC;
21 typedef int CATCHBUF[9];
22 typedef int *LPCATCHBUF;
23 typedef FARPROC HOOKPROC;
30 #define DECLARE_HANDLE(a) typedef HANDLE a;
32 DECLARE_HANDLE(HTASK);
33 DECLARE_HANDLE(HDRVR);
36 DECLARE_HANDLE(HCLASS);
37 DECLARE_HANDLE(HCURSOR);
38 DECLARE_HANDLE(HFONT);
41 DECLARE_HANDLE(HPALETTE);
42 DECLARE_HANDLE(HICON);
43 DECLARE_HANDLE(HINSTANCE);
44 DECLARE_HANDLE(HMENU);
45 DECLARE_HANDLE(HBITMAP);
46 DECLARE_HANDLE(HBRUSH);
47 DECLARE_HANDLE(LOCALHANDLE);
48 DECLARE_HANDLE(HMETAFILE);
52 #define CW_USEDEFAULT ((INT)0x8000)
58 #define CALLBACK PASCAL
60 #define NULL (void *)0
63 #define LOBYTE(w) ((BYTE)(w))
64 #define HIBYTE(w) ((BYTE)((UINT)(w) >> 8))
66 #define LOWORD(l) ((WORD)(l))
67 #define HIWORD(l) ((WORD)((DWORD)(l) >> 16))
69 #define MAKELONG(low, high) ((LONG)(((WORD)(low)) | \
70 (((DWORD)((WORD)(high))) << 16)))
73 #define max(a,b) (((a) > (b)) ? (a) : (b))
77 #define min(a,b) (((a) < (b)) ? (a) : (b))
85 typedef HANDLE HCLASS;
86 typedef HANDLE HCURSOR;
90 typedef HANDLE HPALETTE;
92 typedef HANDLE HINSTANCE;
94 typedef HANDLE HBITMAP;
95 typedef HANDLE HBRUSH;
96 typedef HANDLE LOCALHANDLE;
100 typedef void *LPVOID;
101 typedef long (*FARPROC)();
102 typedef int CATCHBUF[9];
103 typedef int *LPCATCHBUF;
107 #define CW_USEDEFAULT ((short)0x8000)
112 #define NULL (void *)0
116 typedef struct { INT x, y; } POINT;
117 typedef POINT *PPOINT;
118 typedef POINT *NPPOINT;
119 typedef POINT *LPPOINT;
127 #define MAKEPOINT(l) (*((POINT *)&(l)))
129 #define MAKELPARAM(low, high) ((LONG)(((WORD)(low)) | \
130 (((DWORD)((WORD)(high))) << 16)))
132 typedef struct { INT left, top, right, bottom; } RECT;
133 typedef RECT *LPRECT;
134 typedef RECT *NPRECT;
141 BOOL fRestore, fIncUpdate;
142 BYTE rgbReserved[16];
145 typedef PAINTSTRUCT *PPAINTSTRUCT;
146 typedef PAINTSTRUCT *NPPAINTSTRUCT;
147 typedef PAINTSTRUCT *LPPAINTSTRUCT;
152 #define WINE_PACKED __attribute__ ((packed))
158 typedef LONG (*WNDPROC)(HWND, UINT, WPARAM, LPARAM);
160 typedef LONG (* WNDPROC)() WINE_PACKED;
168 LONG (*lpfnWndProc)() WINE_PACKED;
170 INT cbClsExtra, cbWndExtra;
174 HBRUSH hbrBackground;
175 LPSTR lpszMenuName WINE_PACKED;
176 LPSTR lpszClassName WINE_PACKED;
177 } WNDCLASS, *LPWNDCLASS;
179 #define CS_VREDRAW 0x0001
180 #define CS_HREDRAW 0x0002
181 #define CS_KEYCVTWINDOW 0x0004
182 #define CS_DBLCLKS 0x0008
183 #define CS_OWNDC 0x0020
184 #define CS_CLASSDC 0x0040
185 #define CS_PARENTDC 0x0080
186 #define CS_NOKEYCVT 0x0100
187 #define CS_NOCLOSE 0x0200
188 #define CS_SAVEBITS 0x0800
189 #define CS_BYTEALIGNCLIENT 0x1000
190 #define CS_BYTEALIGNWINDOW 0x2000
191 #define CS_GLOBALCLASS 0x4000
193 /* Offsets for GetClassLong() and GetClassWord() */
194 #define GCL_MENUNAME (-8)
195 #define GCW_HBRBACKGROUND (-10)
196 #define GCW_HCURSOR (-12)
197 #define GCW_HICON (-14)
198 #define GCW_HMODULE (-16)
199 #define GCW_CBWNDEXTRA (-18)
200 #define GCW_CBCLSEXTRA (-20)
201 #define GCL_WNDPROC (-24)
202 #define GCW_STYLE (-26)
203 #define GCW_ATOM (-32)
208 void * lpCreateParams;
216 LONG style WINE_PACKED;
217 char * lpszName WINE_PACKED;
218 char * lpszClass WINE_PACKED;
219 DWORD dwExStyle WINE_PACKED;
220 } CREATESTRUCT, *LPCREATESTRUCT;
226 } CLIENTCREATESTRUCT, *LPCLIENTCREATESTRUCT;
237 LONG style WINE_PACKED;
238 LONG lParam WINE_PACKED;
239 } MDICREATESTRUCT, *LPMDICREATESTRUCT;
241 /* Offsets for GetWindowLong() and GetWindowWord() */
242 #define GWL_EXSTYLE (-20)
243 #define GWL_STYLE (-16)
245 #define GWW_HWNDPARENT (-8)
246 #define GWW_HINSTANCE (-6)
247 #define GWL_WNDPROC (-4)
248 #define DWL_MSGRESULT 0
249 #define DWL_DLGPROC 4
252 /* GetWindow() constants */
253 #define GW_HWNDFIRST 0
254 #define GW_HWNDLAST 1
255 #define GW_HWNDNEXT 2
256 #define GW_HWNDPREV 3
260 /* WM_GETMINMAXINFO struct */
266 POINT ptMinTrackSize;
267 POINT ptMaxTrackSize;
270 /* RedrawWindow() flags */
271 #define RDW_INVALIDATE 0x0001
272 #define RDW_INTERNALPAINT 0x0002
273 #define RDW_ERASE 0x0004
274 #define RDW_VALIDATE 0x0008
275 #define RDW_NOINTERNALPAINT 0x0010
276 #define RDW_NOERASE 0x0020
277 #define RDW_NOCHILDREN 0x0040
278 #define RDW_ALLCHILDREN 0x0080
279 #define RDW_UPDATENOW 0x0100
280 #define RDW_ERASENOW 0x0200
281 #define RDW_FRAME 0x0400
282 #define RDW_NOFRAME 0x0800
284 /* WM_WINDOWPOSCHANGING/CHANGED struct */
288 HWND hwndInsertAfter;
296 /* SetWindowPlacement() struct */
302 POINT ptMinPosition WINE_PACKED;
303 POINT ptMaxPosition WINE_PACKED;
304 RECT rcNormalPosition WINE_PACKED;
305 } WINDOWPLACEMENT, *LPWINDOWPLACEMENT;
307 /* WINDOWPLACEMENT flags */
308 #define WPF_SETMINPOSITION 0x0001
309 #define WPF_RESTORETOMAXIMIZED 0x0002
311 /* WM_MOUSEACTIVATE return values */
312 #define MA_ACTIVATE 1
313 #define MA_ACTIVATEANDEAT 2
314 #define MA_NOACTIVATE 3
315 #define MA_NOACTIVATEANDEAT 4
317 /* WM_ACTIVATE wParam values */
318 #define WA_INACTIVE 0
320 #define WA_CLICKACTIVE 2
322 /* WM_NCCALCSIZE parameter structure */
326 WINDOWPOS FAR* lppos;
329 /* WM_NCCALCSIZE return flags */
330 #define WVR_ALIGNTOP 0x0010
331 #define WVR_ALIGNLEFT 0x0020
332 #define WVR_ALIGNBOTTOM 0x0040
333 #define WVR_ALIGNRIGHT 0x0080
334 #define WVR_HREDRAW 0x0100
335 #define WVR_VREDRAW 0x0200
336 #define WVR_REDRAW (WVR_HREDRAW | WVR_VREDRAW)
337 #define WVR_VALIDRECTS 0x0400
339 /* WM_NCHITTEST return codes */
341 #define HTTRANSPARENT (-1)
350 #define HTMINBUTTON 8
351 #define HTMAXBUTTON 9
356 #define HTTOPRIGHT 14
358 #define HTBOTTOMLEFT 16
359 #define HTBOTTOMRIGHT 17
361 #define HTGROWBOX HTSIZE
362 #define HTREDUCE HTMINBUTTON
363 #define HTZOOM HTMAXBUTTON
365 /* WM_SYSCOMMAND parameters */
366 #define SC_SIZE 0xf000
367 #define SC_MOVE 0xf010
368 #define SC_MINIMIZE 0xf020
369 #define SC_MAXIMIZE 0xf030
370 #define SC_NEXTWINDOW 0xf040
371 #define SC_PREVWINDOW 0xf050
372 #define SC_CLOSE 0xf060
373 #define SC_VSCROLL 0xf070
374 #define SC_HSCROLL 0xf080
375 #define SC_MOUSEMENU 0xf090
376 #define SC_KEYMENU 0xf100
377 #define SC_ARRANGE 0xf110
378 #define SC_RESTORE 0xf120
379 #define SC_TASKLIST 0xf130
380 #define SC_SCREENSAVE 0xf140
381 #define SC_HOTKEY 0xf150
383 /***** Window hooks *****/
386 #define WH_JOURNALRECORD 0
387 #define WH_JOURNALPLAYBACK 1
388 #define WH_KEYBOARD 2
389 #define WH_GETMESSAGE 3
390 #define WH_CALLWNDPROC 4
392 #define WH_SYSMSGFILTER 6
394 #define WH_HARDWARE 8
397 #define WH_MSGFILTER (-1)
399 /* Hook action codes */
403 #define HC_NOREMOVE 3
404 #define HC_NOREM HC_NOREMOVE
405 #define HC_SYSMODALON 4
406 #define HC_SYSMODALOFF 5
408 /* CallMsgFilter() values */
409 #define MSGF_DIALOGBOX 0
413 #define MSGF_SCROLLBAR 5
414 #define MSGF_NEXTWINDOW 6
415 #define MSGF_MAINLOOP 8
416 #define MSGF_USER 4096
418 /* Journalling hook values */
421 #define HC_NOREMOVE 3
422 #define HC_NOREM HC_NOREMOVE
423 #define HC_SYSMODALON 4
424 #define HC_SYSMODALOFF 5
426 /* Journalling hook structure */
427 typedef struct tagEVENTMSG
432 DWORD time WINE_PACKED;
433 } EVENTMSG, *LPEVENTMSG;
435 /* Mouse hook structure */
436 typedef struct tagMOUSEHOOKSTRUCT
442 } MOUSEHOOKSTRUCT, *LPMOUSEHOOKSTRUCT;
444 /* Hardware hook structure */
445 typedef struct tagHARDWAREHOOKSTRUCT
450 LPARAM lParam WINE_PACKED;
451 } HARDWAREHOOKSTRUCT;
453 /* CBT hook values */
454 #define HCBT_MOVESIZE 0
455 #define HCBT_MINMAX 1
457 #define HCBT_CREATEWND 3
458 #define HCBT_DESTROYWND 4
459 #define HCBT_ACTIVATE 5
460 #define HCBT_CLICKSKIPPED 6
461 #define HCBT_KEYSKIPPED 7
462 #define HCBT_SYSCOMMAND 8
463 #define HCBT_SETFOCUS 9
465 /* CBT hook structures */
466 typedef struct tagCBT_CREATEWND
469 HWND hwndInsertAfter;
470 } CBT_CREATEWND, *LPCBT_CREATEWND;
472 typedef struct tagCBTACTIVATESTRUCT
478 /* Shell hook values */
479 #define HSHELL_WINDOWCREATED 1
480 #define HSHELL_WINDOWDESTROYED 2
481 #define HSHELL_ACTIVATESHELLWINDOW 3
483 /* Debug hook structure */
484 typedef struct tagDEBUGHOOKINFO
487 LPARAM reserved WINE_PACKED;
488 LPARAM lParam WINE_PACKED;
491 } DEBUGHOOKINFO, *LPDEBUGHOOKINFO;
494 /***** Dialogs *****/
496 /* cbWndExtra bytes for dialog class */
497 #define DLGWINDOWEXTRA 30
500 #define DS_ABSALIGN 0x001
501 #define DS_SYSMODAL 0x002
502 #define DS_LOCALEDIT 0x020
503 #define DS_SETFONT 0x040
504 #define DS_MODALFRAME 0x080
505 #define DS_NOIDLEMSG 0x100
507 /* Dialog messages */
508 #define DM_GETDEFID (WM_USER+0)
509 #define DM_SETDEFID (WM_USER+1)
511 #define DC_HASDEFID 0x534b
513 /* WM_GETDLGCODE values */
514 #define DLGC_WANTARROWS 0x0001
515 #define DLGC_WANTTAB 0x0002
516 #define DLGC_WANTALLKEYS 0x0004
517 #define DLGC_WANTMESSAGE 0x0004
518 #define DLGC_HASSETSEL 0x0008
519 #define DLGC_DEFPUSHBUTTON 0x0010
520 #define DLGC_UNDEFPUSHBUTTON 0x0020
521 #define DLGC_RADIOBUTTON 0x0040
522 #define DLGC_WANTCHARS 0x0080
523 #define DLGC_STATIC 0x0100
524 #define DLGC_BUTTON 0x2000
526 /* Standard dialog button IDs */
536 typedef struct tagMSG
541 DWORD lParam WINE_PACKED;
542 DWORD time WINE_PACKED;
543 POINT pt WINE_PACKED;
548 #define MAKEINTATOM(i) ((LPCSTR)MAKELP(0, (i)))
551 /* Raster operations */
554 #define R2_NOTMERGEPEN 2
555 #define R2_MASKNOTPEN 3
556 #define R2_NOTCOPYPEN 4
557 #define R2_MASKPENNOT 5
560 #define R2_NOTMASKPEN 8
562 #define R2_NOTXORPEN 10
564 #define R2_MERGENOTPEN 12
565 #define R2_COPYPEN 13
566 #define R2_MERGEPENNOT 14
567 #define R2_MERGEPEN 15
570 #define SRCCOPY 0xcc0020
571 #define SRCPAINT 0xee0086
572 #define SRCAND 0x8800c6
573 #define SRCINVERT 0x660046
574 #define SRCERASE 0x440328
575 #define NOTSRCCOPY 0x330008
576 #define NOTSRCERASE 0x1100a6
577 #define MERGECOPY 0xc000ca
578 #define MERGEPAINT 0xbb0226
579 #define PATCOPY 0xf00021
580 #define PATPAINT 0xfb0a09
581 #define PATINVERT 0x5a0049
582 #define DSTINVERT 0x550009
583 #define BLACKNESS 0x000042
584 #define WHITENESS 0xff0062
586 /* StretchBlt() modes */
587 #define BLACKONWHITE 1
588 #define WHITEONBLACK 2
589 #define COLORONCOLOR 3
591 #define STRETCH_ANDSCANS BLACKONWHITE
592 #define STRETCH_ORSCANS WHITEONBLACK
593 #define STRETCH_DELETESCANS COLORONCOLOR
598 typedef DWORD COLORREF;
600 #define RGB(r,g,b) ((COLORREF)((r) | ((g) << 8) | ((b) << 16)))
601 #define PALETTERGB(r,g,b) (0x02000000 | RGB(r,g,b))
602 #define PALETTEINDEX(i) ((COLORREF)(0x01000000 | (WORD)(i)))
604 #define GetRValue(rgb) ((rgb) & 0xff)
605 #define GetGValue(rgb) (((rgb) >> 8) & 0xff)
606 #define GetBValue(rgb) (((rgb) >> 16) & 0xff)
608 #define COLOR_SCROLLBAR 0
609 #define COLOR_BACKGROUND 1
610 #define COLOR_ACTIVECAPTION 2
611 #define COLOR_INACTIVECAPTION 3
613 #define COLOR_WINDOW 5
614 #define COLOR_WINDOWFRAME 6
615 #define COLOR_MENUTEXT 7
616 #define COLOR_WINDOWTEXT 8
617 #define COLOR_CAPTIONTEXT 9
618 #define COLOR_ACTIVEBORDER 10
619 #define COLOR_INACTIVEBORDER 11
620 #define COLOR_APPWORKSPACE 12
621 #define COLOR_HIGHLIGHT 13
622 #define COLOR_HIGHLIGHTTEXT 14
623 #define COLOR_BTNFACE 15
624 #define COLOR_BTNSHADOW 16
625 #define COLOR_GRAYTEXT 17
626 #define COLOR_BTNTEXT 18
627 #define COLOR_INACTIVECAPTIONTEXT 19
628 #define COLOR_BTNHIGHLIGHT 20
630 /* WM_CTLCOLOR values */
631 #define CTLCOLOR_MSGBOX 0
632 #define CTLCOLOR_EDIT 1
633 #define CTLCOLOR_LISTBOX 2
634 #define CTLCOLOR_BTN 3
635 #define CTLCOLOR_DLG 4
636 #define CTLCOLOR_SCROLLBAR 5
637 #define CTLCOLOR_STATIC 6
641 typedef struct tagBITMAP
649 void * bmBits WINE_PACKED;
652 typedef BITMAP *PBITMAP;
653 typedef BITMAP *NPBITMAP;
654 typedef BITMAP *LPBITMAP;
658 typedef struct tagLOGBRUSH
661 COLORREF lbColor WINE_PACKED;
663 } LOGBRUSH, *PLOGBRUSH, *NPLOGBRUSH, *LPLOGBRUSH;
672 #define BS_DIBPATTERN 5
675 #define HS_HORIZONTAL 0
676 #define HS_VERTICAL 1
677 #define HS_FDIAGONAL 2
678 #define HS_BDIAGONAL 3
680 #define HS_DIAGCROSS 5
684 #define LF_FACESIZE 32
685 typedef struct tagLOGFONT
687 INT lfHeight, lfWidth, lfEscapement, lfOrientation, lfWeight;
688 BYTE lfItalic, lfUnderline, lfStrikeOut, lfCharSet;
689 BYTE lfOutPrecision, lfClipPrecision, lfQuality, lfPitchAndFamily;
690 BYTE lfFaceName[LF_FACESIZE] WINE_PACKED;
691 } LOGFONT, *PLOGFONT, *NPLOGFONT, *LPLOGFONT;
693 /* lfWeight values */
694 #define FW_DONTCARE 0
696 #define FW_EXTRALIGHT 200
697 #define FW_ULTRALIGHT 200
699 #define FW_NORMAL 400
700 #define FW_REGULAR 400
701 #define FW_MEDIUM 500
702 #define FW_SEMIBOLD 600
703 #define FW_DEMIBOLD 600
705 #define FW_EXTRABOLD 800
706 #define FW_ULTRABOLD 800
710 /* lfCharSet values */
711 #define ANSI_CHARSET 0
712 #define DEFAULT_CHARSET 1
713 #define SYMBOL_CHARSET 2
714 #define SHIFTJIS_CHARSET 128
715 #define OEM_CHARSET 255
717 /* lfOutPrecision values */
718 #define OUT_DEFAULT_PRECIS 0
719 #define OUT_STRING_PRECIS 1
720 #define OUT_CHARACTER_PRECIS 2
721 #define OUT_STROKE_PRECIS 3
722 #define OUT_TT_PRECIS 4
723 #define OUT_DEVICE_PRECIS 5
724 #define OUT_RASTER_PRECIS 6
725 #define OUT_TT_ONLY_PRECIS 7
727 /* lfClipPrecision values */
728 #define CLIP_DEFAULT_PRECIS 0x00
729 #define CLIP_CHARACTER_PRECIS 0x01
730 #define CLIP_STROKE_PRECIS 0x02
731 #define CLIP_MASK 0x0F
732 #define CLIP_LH_ANGLES 0x10
733 #define CLIP_TT_ALWAYS 0x20
734 #define CLIP_EMBEDDED 0x80
736 /* lfQuality values */
737 #define DEFAULT_QUALITY 0
738 #define DRAFT_QUALITY 1
739 #define PROOF_QUALITY 2
741 /* lfPitchAndFamily pitch values */
742 #define DEFAULT_PITCH 0x00
743 #define FIXED_PITCH 0x01
744 #define VARIABLE_PITCH 0x02
745 #define FF_DONTCARE 0x00
746 #define FF_ROMAN 0x10
747 #define FF_SWISS 0x20
748 #define FF_MODERN 0x30
749 #define FF_SCRIPT 0x40
750 #define FF_DECORATIVE 0x50
752 typedef struct tagTEXTMETRIC
757 INT tmInternalLeading;
758 INT tmExternalLeading;
769 BYTE tmPitchAndFamily;
772 INT tmDigitizedAspectX;
773 INT tmDigitizedAspectY;
774 } TEXTMETRIC, *PTEXTMETRIC, *NPTEXTMETRIC, *LPTEXTMETRIC;
776 /* tmPitchAndFamily values */
777 #define TMPF_FIXED_PITCH 1
778 #define TMPF_VECTOR 2
779 #define TMPF_TRUETYPE 4
780 #define TMPF_DEVICE 8
783 #define TA_NOUPDATECP 0x00
784 #define TA_UPDATECP 0x01
786 #define TA_RIGHT 0x02
787 #define TA_CENTER 0x06
789 #define TA_BOTTOM 0x08
790 #define TA_BASELINE 0x18
793 typedef struct tagPALETTEENTRY
795 BYTE peRed, peGreen, peBlue, peFlags;
796 } PALETTEENTRY, *LPPALETTEENTRY;
798 typedef struct tagLOGPALETTE
802 PALETTEENTRY palPalEntry[1] WINE_PACKED;
803 } LOGPALETTE, *PLOGPALETTE, *NPLOGPALETTE, *LPLOGPALETTE;
808 typedef struct tagLOGPEN
811 POINT lopnWidth WINE_PACKED;
812 COLORREF lopnColor WINE_PACKED;
813 } LOGPEN, *PLOGPEN, *NPLOGPEN, *LPLOGPEN;
819 #define PS_DASHDOTDOT 4
821 #define PS_INSIDEFRAME 6
827 #define SIMPLEREGION 2
828 #define COMPLEXREGION 3
836 /* Device contexts */
839 #define DCX_WINDOW 0x00000001
840 #define DCX_CACHE 0x00000002
841 #define DCX_CLIPCHILDREN 0x00000008
842 #define DCX_CLIPSIBLINGS 0x00000010
843 #define DCX_PARENTCLIP 0x00000020
844 #define DCX_EXCLUDERGN 0x00000040
845 #define DCX_INTERSECTRGN 0x00000080
846 #define DCX_LOCKWINDOWUPDATE 0x00000400
847 #define DCX_USESTYLE 0x00010000
853 /* Background modes */
854 #define TRANSPARENT 1
859 #define MM_LOMETRIC 2
860 #define MM_HIMETRIC 3
861 #define MM_LOENGLISH 4
862 #define MM_HIENGLISH 5
864 #define MM_ISOTROPIC 7
865 #define MM_ANISOTROPIC 8
867 /* Coordinate modes */
871 /* Device parameters for GetDeviceCaps() */
872 #define DRIVERVERSION 0
880 #define NUMBRUSHES 16
882 #define NUMMARKERS 20
885 #define PDEVICESIZE 26
888 #define POLYGONALCAPS 32
891 #define RASTERCAPS 38
895 #define LOGPIXELSX 88
896 #define LOGPIXELSY 90
897 #define SIZEPALETTE 104
898 #define NUMRESERVED 106
903 #define DT_RASDISPLAY 1
904 #define DT_RASPRINTER 2
905 #define DT_RASCAMERA 3
906 #define DT_CHARSTREAM 4
907 #define DT_METAFILE 5
908 #define DT_DISPFILE 6
911 #define CC_NONE 0x0000
912 #define CC_CIRCLES 0x0001
913 #define CC_PIE 0x0002
914 #define CC_CHORD 0x0004
915 #define CC_ELLIPSES 0x0008
916 #define CC_WIDE 0x0010
917 #define CC_STYLED 0x0020
918 #define CC_WIDESTYLED 0x0040
919 #define CC_INTERIORS 0x0080
920 #define CC_ROUNDRECT 0x0100
923 #define LC_NONE 0x0000
924 #define LC_POLYLINE 0x0002
925 #define LC_MARKER 0x0004
926 #define LC_POLYMARKER 0x0008
927 #define LC_WIDE 0x0010
928 #define LC_STYLED 0x0020
929 #define LC_WIDESTYLED 0x0040
930 #define LC_INTERIORS 0x0080
933 #define PC_NONE 0x0000
934 #define PC_POLYGON 0x0001
935 #define PC_RECTANGLE 0x0002
936 #define PC_WINDPOLYGON 0x0004
937 #define PC_SCANLINE 0x0008
938 #define PC_WIDE 0x0010
939 #define PC_STYLED 0x0020
940 #define PC_WIDESTYLED 0x0040
941 #define PC_INTERIORS 0x0080
944 #define TC_OP_CHARACTER 0x0001
945 #define TC_OP_STROKE 0x0002
946 #define TC_CP_STROKE 0x0004
947 #define TC_CR_90 0x0008
948 #define TC_CR_ANY 0x0010
949 #define TC_SF_X_YINDEP 0x0020
950 #define TC_SA_DOUBLE 0x0040
951 #define TC_SA_INTEGER 0x0080
952 #define TC_SA_CONTIN 0x0100
953 #define TC_EA_DOUBLE 0x0200
954 #define TC_IA_ABLE 0x0400
955 #define TC_UA_ABLE 0x0800
956 #define TC_SO_ABLE 0x1000
957 #define TC_RA_ABLE 0x2000
958 #define TC_VA_ABLE 0x4000
959 #define TC_RESERVED 0x8000
962 #define CP_NONE 0x0000
963 #define CP_RECTANGLE 0x0001
964 #define CP_REGION 0x0002
967 #define RC_NONE 0x0000
968 #define RC_BITBLT 0x0001
969 #define RC_BANDING 0x0002
970 #define RC_SCALING 0x0004
971 #define RC_BITMAP64 0x0008
972 #define RC_GDI20_OUTPUT 0x0010
973 #define RC_GDI20_STATE 0x0020
974 #define RC_SAVEBITMAP 0x0040
975 #define RC_DI_BITMAP 0x0080
976 #define RC_PALETTE 0x0100
977 #define RC_DIBTODEV 0x0200
978 #define RC_BIGFONT 0x0400
979 #define RC_STRETCHBLT 0x0800
980 #define RC_FLOODFILL 0x1000
981 #define RC_STRETCHDIB 0x2000
982 #define RC_OP_DX_OUTPUT 0x4000
983 #define RC_DEVBITS 0x8000
985 /* GetSystemMetrics() codes */
986 #define SM_CXSCREEN 0
987 #define SM_CYSCREEN 1
988 #define SM_CXVSCROLL 2
989 #define SM_CYHSCROLL 3
990 #define SM_CYCAPTION 4
991 #define SM_CXBORDER 5
992 #define SM_CYBORDER 6
993 #define SM_CXDLGFRAME 7
994 #define SM_CYDLGFRAME 8
995 #define SM_CYVTHUMB 9
996 #define SM_CXHTHUMB 10
999 #define SM_CXCURSOR 13
1000 #define SM_CYCURSOR 14
1001 #define SM_CYMENU 15
1002 #define SM_CXFULLSCREEN 16
1003 #define SM_CYFULLSCREEN 17
1004 #define SM_CYKANJIWINDOW 18
1005 #define SM_MOUSEPRESENT 19
1006 #define SM_CYVSCROLL 20
1007 #define SM_CXHSCROLL 21
1009 #define SM_SWAPBUTTON 23
1010 #define SM_RESERVED1 24
1011 #define SM_RESERVED2 25
1012 #define SM_RESERVED3 26
1013 #define SM_RESERVED4 27
1016 #define SM_CXSIZE 30
1017 #define SM_CYSIZE 31
1018 #define SM_CXFRAME 32
1019 #define SM_CYFRAME 33
1020 #define SM_CXMINTRACK 34
1021 #define SM_CYMINTRACK 35
1022 #define SM_CXDOUBLECLK 36
1023 #define SM_CYDOUBLECLK 37
1024 #define SM_CXICONSPACING 38
1025 #define SM_CYICONSPACING 39
1026 #define SM_MENUDROPALIGNMENT 40
1027 #define SM_PENWINDOWS 41
1028 #define SM_DBCSENABLED 42
1030 #define SM_CMETRICS 43
1032 /* Device-independent bitmaps */
1034 typedef struct { BYTE rgbBlue, rgbGreen, rgbRed, rgbReserved; } RGBQUAD;
1035 typedef struct { BYTE rgbtBlue, rgbtGreen, rgbtRed; } RGBTRIPLE;
1037 typedef struct tagBITMAPINFOHEADER
1044 DWORD biCompression;
1046 DWORD biXPelsPerMeter;
1047 DWORD biYPelsPerMeter;
1049 DWORD biClrImportant;
1052 typedef BITMAPINFOHEADER * LPBITMAPINFOHEADER;
1053 typedef BITMAPINFOHEADER * NPBITMAPINFOHEADER;
1054 typedef BITMAPINFOHEADER * PBITMAPINFOHEADER;
1062 BITMAPINFOHEADER bmiHeader;
1063 RGBQUAD bmiColors[1];
1065 typedef BITMAPINFO *LPBITMAPINFO;
1066 typedef BITMAPINFO *NPBITMAPINFO;
1067 typedef BITMAPINFO *PBITMAPINFO;
1069 typedef struct tagBITMAPCOREHEADER
1071 unsigned long bcSize;
1078 #define DIB_RGB_COLORS 0
1079 #define DIB_PAL_COLORS 1
1083 BYTE i; /* much more .... */
1085 typedef KANJISTRUCT *LPKANJISTRUCT;
1086 typedef KANJISTRUCT *NPKANJISTRUCT;
1087 typedef KANJISTRUCT *PKANJISTRUCT;
1090 BYTE cBytes, fFixedDisk;
1092 BYTE reserved[4], szPathName[128];
1094 typedef OFSTRUCT *POFSTRUCT;
1095 typedef OFSTRUCT *NPOFSTRUCT;
1096 typedef OFSTRUCT *LPOFSTRUCT;
1098 #define OF_READ 0x0000
1099 #define OF_WRITE 0x0001
1100 #define OF_READWRITE 0x0002
1101 #define OF_CANCEL 0x0800
1102 #define OF_CREATE 0x1000
1103 #define OF_DELETE 0x0200
1104 #define OF_EXIST 0x4000
1105 #define OF_PARSE 0x0100
1106 #define OF_PROMPT 0x2000
1107 #define OF_REOPEN 0x8000
1108 #define OF_SHARE_COMPAT 0x0000
1109 #define OF_SHARE_DENY_NONE 0x0040
1110 #define OF_SHARE_DENY_READ 0x0030
1111 #define OF_SHARE_DENY_WRITE 0x0020
1112 #define OF_SHARE_EXCLUSIVE 0x0010
1113 #define OF_VERIFY 0x0400
1115 #define DRIVE_CANNOTDETERMINE 0
1116 #define DRIVE_DOESNOTEXIST 1
1117 #define DRIVE_REMOVABLE 2
1118 #define DRIVE_FIXED 3
1119 #define DRIVE_REMOTE 4
1121 #define HFILE_ERROR -1
1123 #define DDL_READWRITE 0x0000
1124 #define DDL_READONLY 0x0001
1125 #define DDL_HIDDEN 0x0002
1126 #define DDL_SYSTEM 0x0004
1127 #define DDL_DIRECTORY 0x0010
1128 #define DDL_ARCHIVE 0x0020
1130 #define DDL_POSTMSGS 0x2000
1131 #define DDL_DRIVES 0x4000
1132 #define DDL_EXCLUSIVE 0x8000
1136 #define CBR_110 0xFF10
1137 #define CBR_300 0xFF11
1138 #define CBR_600 0xFF12
1139 #define CBR_1200 0xFF13
1140 #define CBR_2400 0xFF14
1141 #define CBR_4800 0xFF15
1142 #define CBR_9600 0xFF16
1143 #define CBR_14400 0xFF17
1144 #define CBR_19200 0xFF18
1145 #define CBR_38400 0xFF1B
1146 #define CBR_56000 0xFF1F
1147 #define CBR_128000 0xFF23
1148 #define CBR_256000 0xFF27
1152 #define EVENPARITY 2
1153 #define MARKPARITY 3
1154 #define SPACEPARITY 4
1155 #define ONESTOPBIT 0
1156 #define ONE5STOPBITS 1
1157 #define TWOSTOPBITS 2
1159 #define INFINITE 0xFFFF
1161 #define CE_RXOVER 0x0001
1162 #define CE_OVERRUN 0x0002
1163 #define CE_RXPARITY 0x0004
1164 #define CE_FRAME 0x0008
1165 #define CE_BREAK 0x0010
1166 #define CE_CTSTO 0x0020
1167 #define CE_DSRTO 0x0040
1168 #define CE_RLSDTO 0x0080
1169 #define CE_TXFULL 0x0100
1170 #define CE_PTO 0x0200
1171 #define CE_IOE 0x0400
1172 #define CE_DNS 0x0800
1173 #define CE_OOP 0x1000
1174 #define CE_MODE 0x8000
1179 #define IE_MEMORY -4
1180 #define IE_DEFAULT -5
1181 #define IE_HARDWARE -10
1182 #define IE_BYTESIZE -11
1183 #define IE_BAUDRATE -12
1185 #define EV_RXCHAR 0x0001
1186 #define EV_RXFLAG 0x0002
1187 #define EV_TXEMPTY 0x0004
1188 #define EV_CTS 0x0008
1189 #define EV_DSR 0x0010
1190 #define EV_RLSD 0x0020
1191 #define EV_BREAK 0x0040
1192 #define EV_ERR 0x0080
1193 #define EV_RING 0x0100
1194 #define EV_PERR 0x0200
1195 #define EV_CTSS 0x0400
1196 #define EV_DSRS 0x0800
1197 #define EV_RLSDS 0x1000
1198 #define EV_RINGTE 0x2000
1199 #define EV_RingTe EV_RINGTE
1210 #define GETBASEIRQ 10
1212 #define CN_RECEIVE 0x0001
1213 #define CN_TRANSMIT 0x0002
1214 #define CN_EVENT 0x0004
1216 typedef struct tagDCB
1228 UINT fRtsDisable :1;
1230 UINT fOutxCtsFlow :1;
1231 UINT fOutxDsrFlow :1;
1233 UINT fDtrDisable :1;
1253 typedef DCB FAR* LPDCB;
1255 typedef struct tagCOMSTAT
1262 #define CSTF_CTSHOLD 0x01
1263 #define CSTF_DSRHOLD 0x02
1264 #define CSTF_RLSDHOLD 0x04
1265 #define CSTF_XOFFHOLD 0x08
1266 #define CSTF_XOFFSENT 0x10
1267 #define CSTF_EOF 0x20
1268 #define CSTF_TXIM 0x40
1270 /* SystemParametersInfo */
1272 #define SPI_GETBEEP 1
1273 #define SPI_SETBEEP 2
1274 #define SPI_GETMOUSE 3
1275 #define SPI_SETMOUSE 4
1276 #define SPI_GETBORDER 5
1277 #define SPI_SETBORDER 6
1278 #define SPI_GETKEYBOARDSPEED 10
1279 #define SPI_SETKEYBOARDSPEED 11
1280 #define SPI_LANGDRIVER 12
1281 #define SPI_ICONHORIZONTALSPACING 13
1282 #define SPI_GETSCREENSAVETIMEOUT 14
1283 #define SPI_SETSCREENSAVETIMEOUT 15
1284 #define SPI_GETSCREENSAVEACTIVE 16
1285 #define SPI_SETSCREENSAVEACTIVE 17
1286 #define SPI_GETGRIDGRANULARITY 18
1287 #define SPI_SETGRIDGRANULARITY 19
1288 #define SPI_SETDESKWALLPAPER 20
1289 #define SPI_SETDESKPATTERN 21
1290 #define SPI_GETKEYBOARDDELAY 22
1291 #define SPI_SETKEYBOARDDELAY 23
1292 #define SPI_ICONVERTICALSPACING 24
1293 #define SPI_GETICONTITLEWRAP 25
1294 #define SPI_SETICONTITLEWRAP 26
1295 #define SPI_GETMENUDROPALIGNMENT 27
1296 #define SPI_SETMENUDROPALIGNMENT 28
1297 #define SPI_SETDOUBLECLKWIDTH 29
1298 #define SPI_SETDOUBLECLKHEIGHT 30
1299 #define SPI_GETICONTITLELOGFONT 31
1300 #define SPI_SETDOUBLECLICKTIME 32
1301 #define SPI_SETMOUSEBUTTONSWAP 33
1302 #define SPI_SETICONTITLELOGFONT 34
1303 #define SPI_GETFASTTASKSWITCH 35
1304 #define SPI_SETFASTTASKSWITCH 36
1306 /* SystemParametersInfo flags */
1308 #define SPIF_UPDATEINIFILE 1
1309 #define SPIF_SENDWININICHANGE 2
1313 #define WF_PMODE 0x0001
1314 #define WF_CPU286 0x0002
1315 #define WF_CPU386 0x0004
1316 #define WF_CPU486 0x0008
1317 #define WF_STANDARD 0x0010
1318 #define WF_WIN286 0x0010
1319 #define WF_ENHANCED 0x0020
1320 #define WF_WIN386 0x0020
1321 #define WF_CPU086 0x0040
1322 #define WF_CPU186 0x0080
1323 #define WF_LARGEFRAME 0x0100
1324 #define WF_SMALLFRAME 0x0200
1325 #define WF_80x87 0x0400
1326 #define WF_PAGING 0x0800
1327 #define WF_WLO 0x8000
1329 #define MAKEINTRESOURCE(i) (LPSTR)((DWORD)((WORD)(i)))
1331 #define IDI_APPLICATION MAKEINTRESOURCE(32512)
1332 #define IDI_HAND MAKEINTRESOURCE(32513)
1333 #define IDI_QUESTION MAKEINTRESOURCE(32514)
1334 #define IDI_EXCLAMATION MAKEINTRESOURCE(32515)
1335 #define IDI_ASTERISK MAKEINTRESOURCE(32516)
1337 #define IDC_ARROW MAKEINTRESOURCE(32512)
1338 #define IDC_IBEAM MAKEINTRESOURCE(32513)
1339 #define IDC_WAIT MAKEINTRESOURCE(32514)
1340 #define IDC_CROSS MAKEINTRESOURCE(32515)
1341 #define IDC_UPARROW MAKEINTRESOURCE(32516)
1342 #define IDC_SIZE MAKEINTRESOURCE(32540)
1343 #define IDC_ICON MAKEINTRESOURCE(32541)
1344 #define IDC_SIZENWSE MAKEINTRESOURCE(32542)
1345 #define IDC_SIZENESW MAKEINTRESOURCE(32543)
1346 #define IDC_SIZEWE MAKEINTRESOURCE(32544)
1347 #define IDC_SIZENS MAKEINTRESOURCE(32545)
1349 /* OEM Resource Ordinal Numbers */
1350 #define OBM_CLOSE 32754
1351 #define OBM_UPARROW 32753
1352 #define OBM_DNARROW 32752
1353 #define OBM_RGARROW 32751
1354 #define OBM_LFARROW 32750
1355 #define OBM_REDUCE 32749
1356 #define OBM_ZOOM 32748
1357 #define OBM_RESTORE 32747
1358 #define OBM_REDUCED 32746
1359 #define OBM_ZOOMD 32745
1360 #define OBM_RESTORED 32744
1361 #define OBM_UPARROWD 32743
1362 #define OBM_DNARROWD 32742
1363 #define OBM_RGARROWD 32741
1364 #define OBM_LFARROWD 32740
1365 #define OBM_MNARROW 32739
1366 #define OBM_COMBO 32738
1367 #define OBM_UPARROWI 32737
1368 #define OBM_DNARROWI 32736
1369 #define OBM_RGARROWI 32735
1370 #define OBM_LFARROWI 32734
1372 #define OBM_OLD_CLOSE 32767
1373 #define OBM_SIZE 32766
1374 #define OBM_OLD_UPARROW 32765
1375 #define OBM_OLD_DNARROW 32764
1376 #define OBM_OLD_RGARROW 32763
1377 #define OBM_OLD_LFARROW 32762
1378 #define OBM_BTSIZE 32761
1379 #define OBM_CHECK 32760
1380 #define OBM_CHECKBOXES 32759
1381 #define OBM_BTNCORNERS 32758
1382 #define OBM_OLD_REDUCE 32757
1383 #define OBM_OLD_ZOOM 32756
1384 #define OBM_OLD_RESTORE 32755
1386 #define OCR_NORMAL 32512
1387 #define OCR_IBEAM 32513
1388 #define OCR_WAIT 32514
1389 #define OCR_CROSS 32515
1390 #define OCR_UP 32516
1391 #define OCR_SIZE 32640
1392 #define OCR_ICON 32641
1393 #define OCR_SIZENWSE 32642
1394 #define OCR_SIZENESW 32643
1395 #define OCR_SIZEWE 32644
1396 #define OCR_SIZENS 32645
1397 #define OCR_SIZEALL 32646
1398 #define OCR_ICOCUR 32647
1400 #define OIC_SAMPLE 32512
1401 #define OIC_HAND 32513
1402 #define OIC_QUES 32514
1403 #define OIC_BANG 32515
1404 #define OIC_NOTE 32516
1406 /* Stock GDI objects for GetStockObject() */
1408 #define WHITE_BRUSH 0
1409 #define LTGRAY_BRUSH 1
1410 #define GRAY_BRUSH 2
1411 #define DKGRAY_BRUSH 3
1412 #define BLACK_BRUSH 4
1413 #define NULL_BRUSH 5
1414 #define HOLLOW_BRUSH 5
1418 #define OEM_FIXED_FONT 10
1419 #define ANSI_FIXED_FONT 11
1420 #define ANSI_VAR_FONT 12
1421 #define SYSTEM_FONT 13
1422 #define DEVICE_DEFAULT_FONT 14
1423 #define DEFAULT_PALETTE 15
1424 #define SYSTEM_FIXED_FONT 16
1427 enum { WM_NULL, WM_CREATE, WM_DESTROY, WM_MOVE, WM_UNUSED0, WM_SIZE, WM_ACTIVATE,
1428 WM_SETFOCUS, WM_KILLFOCUS, WM_UNUSED1, WM_ENABLE, WM_SETREDRAW,
1429 WM_SETTEXT, WM_GETTEXT, WM_GETTEXTLENGTH, WM_PAINT, WM_CLOSE,
1430 WM_QUERYENDSESSION, WM_QUIT, WM_QUERYOPEN, WM_ERASEBKGND,
1431 WM_SYSCOLORCHANGE, WM_ENDSESSION, WM_UNUSED2,
1432 WM_SHOWWINDOW, WM_CTLCOLOR, WM_WININICHANGE, WM_DEVMODECHANGE,
1433 WM_ACTIVATEAPP, WM_FONTCHANGE, WM_TIMECHANGE, WM_CANCELMODE, WM_SETCURSOR,
1434 WM_MOUSEACTIVATE, WM_CHILDACTIVATE, WM_QUEUESYNC, WM_GETMINMAXINFO,
1435 WM_UNUSED3, WM_PAINTICON, WM_ICONERASEBKGND, WM_NEXTDLGCTL,
1436 WM_UNUSED4, WM_SPOOLERSTATUS, WM_DRAWITEM, WM_MEASUREITEM,
1437 WM_DELETEITEM, WM_VKEYTOITEM,
1438 WM_CHARTOITEM, WM_SETFONT, WM_GETFONT };
1440 #define WM_WINDOWPOSCHANGING 0x0046
1441 #define WM_WINDOWPOSCHANGED 0x0047
1443 #define WM_NCCREATE 0x0081
1444 #define WM_NCDESTROY 0x0082
1445 #define WM_NCCALCSIZE 0x0083
1446 #define WM_NCHITTEST 0x0084
1447 #define WM_NCPAINT 0x0085
1448 #define WM_NCACTIVATE 0x0086
1450 #define WM_GETDLGCODE 0x0087
1452 /* Non-client mouse messages */
1453 #define WM_NCMOUSEMOVE 0x00a0
1454 #define WM_NCLBUTTONDOWN 0x00a1
1455 #define WM_NCLBUTTONUP 0x00a2
1456 #define WM_NCLBUTTONDBLCLK 0x00a3
1457 #define WM_NCRBUTTONDOWN 0x00a4
1458 #define WM_NCRBUTTONUP 0x00a5
1459 #define WM_NCRBUTTONDBLCLK 0x00a6
1460 #define WM_NCMBUTTONDOWN 0x00a7
1461 #define WM_NCMBUTTONUP 0x00a8
1462 #define WM_NCMBUTTONDBLCLK 0x00a9
1464 /* Keyboard messages */
1465 #define WM_KEYDOWN 0x0100
1466 #define WM_KEYUP 0x0101
1467 #define WM_CHAR 0x0102
1468 #define WM_DEADCHAR 0x0103
1469 #define WM_SYSKEYDOWN 0x0104
1470 #define WM_SYSKEYUP 0x0105
1471 #define WM_SYSCHAR 0x0106
1472 #define WM_SYSDEADCHAR 0x0107
1473 #define WM_KEYFIRST WM_KEYDOWN
1474 #define WM_KEYLAST 0x0108
1476 #define WM_INITDIALOG 0x0110
1477 #define WM_COMMAND 0x0111
1478 #define WM_SYSCOMMAND 0x0112
1479 #define WM_TIMER 0x0113
1480 #define WM_SYSTIMER 0x0118
1482 /* scroll messages */
1483 #define WM_HSCROLL 0x0114
1484 #define WM_VSCROLL 0x0115
1486 /* Mouse messages */
1487 #define WM_MOUSEMOVE 0x0200
1488 #define WM_LBUTTONDOWN 0x0201
1489 #define WM_LBUTTONUP 0x0202
1490 #define WM_LBUTTONDBLCLK 0x0203
1491 #define WM_RBUTTONDOWN 0x0204
1492 #define WM_RBUTTONUP 0x0205
1493 #define WM_RBUTTONDBLCLK 0x0206
1494 #define WM_MBUTTONDOWN 0x0207
1495 #define WM_MBUTTONUP 0x0208
1496 #define WM_MBUTTONDBLCLK 0x0209
1497 #define WM_MOUSEFIRST WM_MOUSEMOVE
1498 #define WM_MOUSELAST WM_MBUTTONDBLCLK
1500 #define WM_PARENTNOTIFY 0x0210
1502 #define WM_MDICREATE 0x0220
1503 #define WM_MDIDESTROY 0x0221
1504 #define WM_MDIACTIVATE 0x0222
1505 #define WM_MDIRESTORE 0x0223
1506 #define WM_MDINEXT 0x0224
1507 #define WM_MDIMAXIMIZE 0x0225
1508 #define WM_MDITILE 0x0226
1509 #define WM_MDICASCADE 0x0227
1510 #define WM_MDIICONARRANGE 0x0228
1511 #define WM_MDIGETACTIVE 0x0229
1512 #define WM_MDISETMENU 0x0230
1514 #define WM_ENTERSIZEMOVE 0x0231
1515 #define WM_EXITSIZEMOVE 0x0232
1518 #define WM_NULL 0x0000
1519 #define WM_USER 0x0400
1522 /* Key status flags for mouse events */
1523 #define MK_LBUTTON 0x0001
1524 #define MK_RBUTTON 0x0002
1525 #define MK_SHIFT 0x0004
1526 #define MK_CONTROL 0x0008
1527 #define MK_MBUTTON 0x0010
1529 /* Queue status flags */
1530 #define QS_KEY 0x0001
1531 #define QS_MOUSEMOVE 0x0002
1532 #define QS_MOUSEBUTTON 0x0004
1533 #define QS_MOUSE (QS_MOUSEMOVE | QS_MOUSEBUTTON)
1534 #define QS_POSTMESSAGE 0x0008
1535 #define QS_TIMER 0x0010
1536 #define QS_PAINT 0x0020
1537 #define QS_SENDMESSAGE 0x0040
1538 #define QS_ALLINPUT 0x007f
1540 /* PeekMessage() options */
1541 #define PM_NOREMOVE 0x0000
1542 #define PM_REMOVE 0x0001
1543 #define PM_NOYIELD 0x0002
1545 #define WM_SHOWWINDOW 0x0018
1547 /* WM_SHOWWINDOW wParam codes */
1548 #define SW_PARENTCLOSING 1
1549 #define SW_OTHERMAXIMIZED 2
1550 #define SW_PARENTOPENING 3
1551 #define SW_OTHERRESTORED 4
1553 enum { SW_HIDE, SW_SHOWNORMAL, SW_NORMAL, SW_SHOWMINIMIZED, SW_SHOWMAXIMIZED,
1554 SW_MAXIMIZE, SW_SHOWNOACTIVATE, SW_SHOW, SW_MINIMIZE,
1555 SW_SHOWMINNOACTIVE, SW_SHOWNA, SW_RESTORE };
1557 /* WM_SIZE message wParam values */
1558 #define SIZE_RESTORED 0
1559 #define SIZE_MINIMIZED 1
1560 #define SIZE_MAXIMIZED 2
1561 #define SIZE_MAXSHOW 3
1562 #define SIZE_MAXHIDE 4
1564 /* SetWindowPos() and WINDOWPOS flags */
1565 #define SWP_NOSIZE 0x0001
1566 #define SWP_NOMOVE 0x0002
1567 #define SWP_NOZORDER 0x0004
1568 #define SWP_NOREDRAW 0x0008
1569 #define SWP_NOACTIVATE 0x0010
1570 #define SWP_FRAMECHANGED 0x0020 /* The frame changed: send WM_NCCALCSIZE */
1571 #define SWP_SHOWWINDOW 0x0040
1572 #define SWP_HIDEWINDOW 0x0080
1573 #define SWP_NOCOPYBITS 0x0100
1574 #define SWP_NOOWNERZORDER 0x0200 /* Don't do owner Z ordering */
1576 #define SWP_DRAWFRAME SWP_FRAMECHANGED
1577 #define SWP_NOREPOSITION SWP_NOOWNERZORDER
1579 #define SWP_NOSENDCHANGING 0x0400
1580 #define SWP_DEFERERASE 0x2000
1582 /* SetWindowPos() hwndInsertAfter field values */
1583 #define HWND_TOP ((HWND)0)
1584 #define HWND_BOTTOM ((HWND)1)
1585 #define HWND_TOPMOST ((HWND)-1)
1586 #define HWND_NOTOPMOST ((HWND)-2)
1588 /* Flags for TrackPopupMenu */
1589 #define TPM_LEFTBUTTON 0x0000
1590 #define TPM_RIGHTBUTTON 0x0002
1591 #define TPM_LEFTALIGN 0x0000
1592 #define TPM_CENTERALIGN 0x0004
1593 #define TPM_RIGHTALIGN 0x0008
1596 #define WM_INITMENU 0x0116
1597 #define WM_INITMENUPOPUP 0x0117
1599 #define WM_MENUSELECT 0x011F
1600 #define WM_MENUCHAR 0x0120
1603 #define MF_CHANGE 0x0080
1604 #define MF_APPEND 0x0100
1605 #define MF_DELETE 0x0200
1606 #define MF_REMOVE 0x1000
1607 #define MF_BYCOMMAND 0
1608 #define MF_BYPOSITION 0x0400
1609 #define MF_SEPARATOR 0x0800
1610 #define MF_ENABLED 0
1611 #define MF_GRAYED 0x0001
1612 #define MF_DISABLED 0x0002
1613 #define MF_UNCHECKED 0
1614 #define MF_CHECKED 0x0008
1615 #define MF_USECHECKBITMAPS 0x0200
1617 #define MF_BITMAP 0x0004
1618 #define MF_OWNERDRAW 0x0100
1619 #define MF_POPUP 0x0010
1620 #define MF_MENUBARBREAK 0x0020
1621 #define MF_MENUBREAK 0x0040
1622 #define MF_UNHILITE 0
1623 #define MF_HILITE 0x0080
1624 #define MF_SYSMENU 0x2000
1625 #define MF_HELP 0x4000
1626 #define MF_MOUSESELECT 0x8000
1627 #define MF_END 0x0080
1629 #ifndef NOWINOFFSETS
1630 #define GCW_HBRBACKGROUND (-10)
1633 #define MB_OK 0x0000
1634 #define MB_OKCANCEL 0x0001
1635 #define MB_ABORTRETRYIGNORE 0x0002
1636 #define MB_YESNOCANCEL 0x0003
1637 #define MB_YESNO 0x0004
1638 #define MB_RETRYCANCEL 0x0005
1639 #define MB_TYPEMASK 0x000F
1641 #define MB_ICONHAND 0x0010
1642 #define MB_ICONQUESTION 0x0020
1643 #define MB_ICONEXCLAMATION 0x0030
1644 #define MB_ICONASTERISK 0x0040
1645 #define MB_ICONMASK 0x00F0
1647 #define MB_ICONINFORMATION MB_ICONASTERISK
1648 #define MB_ICONSTOP MB_ICONHAND
1650 #define MB_DEFBUTTON1 0x0000
1651 #define MB_DEFBUTTON2 0x0100
1652 #define MB_DEFBUTTON3 0x0200
1653 #define MB_DEFMASK 0x0F00
1655 #define MB_APPLMODAL 0x0000
1656 #define MB_SYSTEMMODAL 0x1000
1657 #define MB_TASKMODAL 0x2000
1659 #define MB_NOFOCUS 0x8000
1666 #define DT_VCENTER 4
1668 #define DT_WORDBREAK 16
1669 #define DT_SINGLELINE 32
1670 #define DT_EXPANDTABS 64
1671 #define DT_TABSTOP 128
1672 #define DT_NOCLIP 256
1673 #define DT_EXTERNALLEADING 512
1674 #define DT_CALCRECT 1024
1675 #define DT_NOPREFIX 2048
1676 #define DT_INTERNAL 4096
1679 #define WS_OVERLAPPED 0x00000000L
1680 #define WS_POPUP 0x80000000L
1681 #define WS_CHILD 0x40000000L
1682 #define WS_MINIMIZE 0x20000000L
1683 #define WS_VISIBLE 0x10000000L
1684 #define WS_DISABLED 0x08000000L
1685 #define WS_CLIPSIBLINGS 0x04000000L
1686 #define WS_CLIPCHILDREN 0x02000000L
1687 #define WS_MAXIMIZE 0x01000000L
1688 #define WS_CAPTION 0x00C00000L
1689 #define WS_BORDER 0x00800000L
1690 #define WS_DLGFRAME 0x00400000L
1691 #define WS_VSCROLL 0x00200000L
1692 #define WS_HSCROLL 0x00100000L
1693 #define WS_SYSMENU 0x00080000L
1694 #define WS_THICKFRAME 0x00040000L
1695 #define WS_GROUP 0x00020000L
1696 #define WS_TABSTOP 0x00010000L
1697 #define WS_MINIMIZEBOX 0x00020000L
1698 #define WS_MINIMIZEBOX 0x00020000L
1699 #define WS_MAXIMIZEBOX 0x00010000L
1700 #define WS_TILED WS_OVERLAPPED
1701 #define WS_ICONIC WS_MINIMIZE
1702 #define WS_SIZEBOX WS_THICKFRAME
1703 #define WS_OVERLAPPEDWINDOW (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME| WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
1704 #define WS_POPUPWINDOW (WS_POPUP | WS_BORDER | WS_SYSMENU)
1705 #define WS_CHILDWINDOW (WS_CHILD)
1706 #define WS_TILEDWINDOW (WS_OVERLAPPEDWINDOW)
1708 /* Window extended styles */
1709 #define WS_EX_DLGMODALFRAME 0x00000001L
1710 #define WS_EX_NOPARENTNOTIFY 0x00000004L
1711 #define WS_EX_TOPMOST 0x00000008L
1712 #define WS_EX_ACCEPTFILES 0x00000010L
1713 #define WS_EX_TRANSPARENT 0x00000020L
1715 /* Window scrolling */
1716 #define SW_SCROLLCHILDREN 0x0001
1717 #define SW_INVALIDATE 0x0002
1718 #define SW_ERASE 0x0003
1720 /* Button control styles */
1721 #define BS_PUSHBUTTON 0x00000000L
1722 #define BS_DEFPUSHBUTTON 0x00000001L
1723 #define BS_CHECKBOX 0x00000002L
1724 #define BS_AUTOCHECKBOX 0x00000003L
1725 #define BS_RADIOBUTTON 0x00000004L
1726 #define BS_3STATE 0x00000005L
1727 #define BS_AUTO3STATE 0x00000006L
1728 #define BS_GROUPBOX 0x00000007L
1729 #define BS_USERBUTTON 0x00000008L
1730 #define BS_AUTORADIOBUTTON 0x00000009L
1731 #define BS_OWNERDRAW 0x0000000BL
1732 #define BS_LEFTTEXT 0x00000020L
1734 /* Button control messages */
1735 #define BM_GETCHECK (WM_USER+0)
1736 #define BM_SETCHECK (WM_USER+1)
1737 #define BM_GETSTATE (WM_USER+2)
1738 #define BM_SETSTATE (WM_USER+3)
1739 #define BM_SETSTYLE (WM_USER+4)
1741 /* Button notification codes */
1742 #define BN_CLICKED 0
1745 #define BN_UNHILITE 3
1746 #define BN_DISABLE 4
1747 #define BN_DOUBLECLICKED 5
1749 /* Static Control Styles */
1750 #define SS_LEFT 0x00000000L
1751 #define SS_CENTER 0x00000001L
1752 #define SS_RIGHT 0x00000002L
1753 #define SS_ICON 0x00000003L
1754 #define SS_BLACKRECT 0x00000004L
1755 #define SS_GRAYRECT 0x00000005L
1756 #define SS_WHITERECT 0x00000006L
1757 #define SS_BLACKFRAME 0x00000007L
1758 #define SS_GRAYFRAME 0x00000008L
1759 #define SS_WHITEFRAME 0x00000009L
1760 #define SS_SIMPLE 0x0000000BL
1761 #define SS_LEFTNOWORDWRAP 0x0000000CL
1762 #define SS_NOPREFIX 0x00000080L
1764 /* Static Control Mesages */
1765 #define STM_SETICON (WM_USER+0)
1766 #define STM_GETICON (WM_USER+1)
1768 /* WM_H/VSCROLL commands */
1770 #define SB_LINELEFT 0
1771 #define SB_LINEDOWN 1
1772 #define SB_LINERIGHT 1
1774 #define SB_PAGELEFT 2
1775 #define SB_PAGEDOWN 3
1776 #define SB_PAGERIGHT 3
1777 #define SB_THUMBPOSITION 4
1778 #define SB_THUMBTRACK 5
1783 #define SB_ENDSCROLL 8
1785 /* Scroll bar selection constants */
1791 /* Scrollbar styles */
1792 #define SBS_HORZ 0x0000L
1793 #define SBS_VERT 0x0001L
1794 #define SBS_TOPALIGN 0x0002L
1795 #define SBS_LEFTALIGN 0x0002L
1796 #define SBS_BOTTOMALIGN 0x0004L
1797 #define SBS_RIGHTALIGN 0x0004L
1798 #define SBS_SIZEBOXTOPLEFTALIGN 0x0002L
1799 #define SBS_SIZEBOXBOTTOMRIGHTALIGN 0x0004L
1800 #define SBS_SIZEBOX 0x0008L
1802 /* EnableScrollBar() flags */
1803 #define ESB_ENABLE_BOTH 0x0000
1804 #define ESB_DISABLE_BOTH 0x0003
1806 #define ESB_DISABLE_LEFT 0x0001
1807 #define ESB_DISABLE_RIGHT 0x0002
1809 #define ESB_DISABLE_UP 0x0001
1810 #define ESB_DISABLE_DOWN 0x0002
1812 #define ESB_DISABLE_LTUP ESB_DISABLE_LEFT
1813 #define ESB_DISABLE_RTDN ESB_DISABLE_RIGHT
1815 /* Listbox styles */
1816 #define LBS_NOTIFY 0x0001L
1817 #define LBS_SORT 0x0002L
1818 #define LBS_NOREDRAW 0x0004L
1819 #define LBS_MULTIPLESEL 0x0008L
1820 #define LBS_OWNERDRAWFIXED 0x0010L
1821 #define LBS_OWNERDRAWVARIABLE 0x0020L
1822 #define LBS_HASSTRINGS 0x0040L
1823 #define LBS_USETABSTOPS 0x0080L
1824 #define LBS_NOINTEGRALHEIGHT 0x0100L
1825 #define LBS_MULTICOLUMN 0x0200L
1826 #define LBS_WANTKEYBOARDINPUT 0x0400L
1827 #define LBS_EXTENDEDSEL 0x0800L
1828 #define LBS_DISABLENOSCROLL 0x1000L
1829 #define LBS_STANDARD (LBS_NOTIFY | LBS_SORT | WS_VSCROLL | WS_BORDER)
1831 /* Listbox messages */
1832 #define LB_ADDSTRING (WM_USER+1)
1833 #define LB_INSERTSTRING (WM_USER+2)
1834 #define LB_DELETESTRING (WM_USER+3)
1835 #define LB_RESETCONTENT (WM_USER+5)
1836 #define LB_SETSEL (WM_USER+6)
1837 #define LB_SETCURSEL (WM_USER+7)
1838 #define LB_GETSEL (WM_USER+8)
1839 #define LB_GETCURSEL (WM_USER+9)
1840 #define LB_GETTEXT (WM_USER+10)
1841 #define LB_GETTEXTLEN (WM_USER+11)
1842 #define LB_GETCOUNT (WM_USER+12)
1843 #define LB_SELECTSTRING (WM_USER+13)
1844 #define LB_DIR (WM_USER+14)
1845 #define LB_GETTOPINDEX (WM_USER+15)
1846 #define LB_FINDSTRING (WM_USER+16)
1847 #define LB_GETSELCOUNT (WM_USER+17)
1848 #define LB_GETSELITEMS (WM_USER+18)
1849 #define LB_SETTABSTOPS (WM_USER+19)
1850 #define LB_GETHORIZONTALEXTENT (WM_USER+20)
1851 #define LB_SETHORIZONTALEXTENT (WM_USER+21)
1852 #define LB_SETCOLUMNWIDTH (WM_USER+22)
1853 #define LB_SETTOPINDEX (WM_USER+24)
1854 #define LB_GETITEMRECT (WM_USER+25)
1855 #define LB_GETITEMDATA (WM_USER+26)
1856 #define LB_SETITEMDATA (WM_USER+27)
1857 #define LB_SELITEMRANGE (WM_USER+28)
1858 #define LB_SETCARETINDEX (WM_USER+31)
1859 #define LB_GETCARETINDEX (WM_USER+32)
1860 #define LB_SETITEMHEIGHT (WM_USER+33)
1861 #define LB_GETITEMHEIGHT (WM_USER+34)
1862 #define LB_FINDSTRINGEXACT (WM_USER+35)
1864 /* Listbox notification codes */
1865 #define LBN_ERRSPACE (-2)
1866 #define LBN_SELCHANGE 1
1867 #define LBN_DBLCLK 2
1868 #define LBN_SELCANCEL 3
1869 #define LBN_SETFOCUS 4
1870 #define LBN_KILLFOCUS 5
1872 /* Listbox notification messages */
1873 #define WM_VKEYTOITEM 0x002E
1874 #define WM_CHARTOITEM 0x002F
1876 /* Listbox message return values */
1879 #define LB_ERRSPACE (-2)
1881 #define LB_CTLCODE 0L
1883 /* Combo box styles */
1884 #define CBS_SIMPLE 0x0001L
1885 #define CBS_DROPDOWN 0x0002L
1886 #define CBS_DROPDOWNLIST 0x0003L
1887 #define CBS_OWNERDRAWFIXED 0x0010L
1888 #define CBS_OWNERDRAWVARIABLE 0x0020L
1889 #define CBS_AUTOHSCROLL 0x0040L
1890 #define CBS_OEMCONVERT 0x0080L
1891 #define CBS_SORT 0x0100L
1892 #define CBS_HASSTRINGS 0x0200L
1893 #define CBS_NOINTEGRALHEIGHT 0x0400L
1894 #define CBS_DISABLENOSCROLL 0x0800L
1896 /* Combo box messages */
1897 #define CB_GETEDITSEL (WM_USER+0)
1898 #define CB_LIMITTEXT (WM_USER+1)
1899 #define CB_SETEDITSEL (WM_USER+2)
1900 #define CB_ADDSTRING (WM_USER+3)
1901 #define CB_DELETESTRING (WM_USER+4)
1902 #define CB_DIR (WM_USER+5)
1903 #define CB_GETCOUNT (WM_USER+6)
1904 #define CB_GETCURSEL (WM_USER+7)
1905 #define CB_GETLBTEXT (WM_USER+8)
1906 #define CB_GETLBTEXTLEN (WM_USER+9)
1907 #define CB_INSERTSTRING (WM_USER+10)
1908 #define CB_RESETCONTENT (WM_USER+11)
1909 #define CB_FINDSTRING (WM_USER+12)
1910 #define CB_SELECTSTRING (WM_USER+13)
1911 #define CB_SETCURSEL (WM_USER+14)
1912 #define CB_SHOWDROPDOWN (WM_USER+15)
1913 #define CB_GETITEMDATA (WM_USER+16)
1914 #define CB_SETITEMDATA (WM_USER+17)
1915 #define CB_GETDROPPEDCONTROLRECT (WM_USER+18)
1916 #define CB_SETITEMHEIGHT (WM_USER+19)
1917 #define CB_GETITEMHEIGHT (WM_USER+20)
1918 #define CB_SETEXTENDEDUI (WM_USER+21)
1919 #define CB_GETEXTENDEDUI (WM_USER+22)
1920 #define CB_GETDROPPEDSTATE (WM_USER+23)
1921 #define CB_FINDSTRINGEXACT (WM_USER+24)
1923 /* Combo box notification codes */
1924 #define CBN_ERRSPACE (-1)
1925 #define CBN_SELCHANGE 1
1926 #define CBN_DBLCLK 2
1927 #define CBN_SETFOCUS 3
1928 #define CBN_KILLFOCUS 4
1929 #define CBN_EDITCHANGE 5
1930 #define CBN_EDITUPDATE 6
1931 #define CBN_DROPDOWN 7
1932 #define CBN_CLOSEUP 8
1933 #define CBN_SELENDOK 9
1934 #define CBN_SELENDCANCEL 10
1936 /* Combo box message return values */
1939 #define CB_ERRSPACE (-2)
1942 /* Owner draw control types */
1944 #define ODT_LISTBOX 2
1945 #define ODT_COMBOBOX 3
1946 #define ODT_BUTTON 4
1948 /* Owner draw actions */
1949 #define ODA_DRAWENTIRE 0x0001
1950 #define ODA_SELECT 0x0002
1951 #define ODA_FOCUS 0x0004
1953 /* Owner draw state */
1954 #define ODS_SELECTED 0x0001
1955 #define ODS_GRAYED 0x0002
1956 #define ODS_DISABLED 0x0004
1957 #define ODS_CHECKED 0x0008
1958 #define ODS_FOCUS 0x0010
1960 /* Edit control styles */
1961 #define ES_LEFT 0x00000000L
1962 #define ES_CENTER 0x00000001L
1963 #define ES_RIGHT 0x00000002L
1964 #define ES_MULTILINE 0x00000004L
1965 #define ES_UPPERCASE 0x00000008L
1966 #define ES_LOWERCASE 0x00000010L
1967 #define ES_PASSWORD 0x00000020L
1968 #define ES_AUTOVSCROLL 0x00000040L
1969 #define ES_AUTOHSCROLL 0x00000080L
1970 #define ES_NOHISESEL 0x00000100L
1971 #define ES_OEMCONVERT 0x00000400L
1972 #define ES_READONLY 0x00000800L
1973 #define ES_WANTRETURN 0x00001000L
1975 /* Edit control messages */
1976 #define EM_GETSEL (WM_USER+0)
1977 #define EM_SETSEL (WM_USER+1)
1978 #define EM_GETRECT (WM_USER+2)
1979 #define EM_SETRECT (WM_USER+3)
1980 #define EM_SETRECTNP (WM_USER+4)
1981 #define EM_LINESCROLL (WM_USER+6)
1982 #define EM_GETMODIFY (WM_USER+8)
1983 #define EM_SETMODIFY (WM_USER+9)
1984 #define EM_GETLINECOUNT (WM_USER+10)
1985 #define EM_LINEINDEX (WM_USER+11)
1986 #define EM_SETHANDLE (WM_USER+12)
1987 #define EM_GETHANDLE (WM_USER+13)
1988 #define EM_LINELENGTH (WM_USER+17)
1989 #define EM_REPLACESEL (WM_USER+18)
1990 #define EM_GETLINE (WM_USER+20)
1991 #define EM_LIMITTEXT (WM_USER+21)
1992 #define EM_CANUNDO (WM_USER+22)
1993 #define EM_UNDO (WM_USER+23)
1994 #define EM_FMTLINES (WM_USER+24)
1995 #define EM_LINEFROMCHAR (WM_USER+25)
1996 #define EM_SETTABSTOPS (WM_USER+27)
1997 #define EM_SETPASSWORDCHAR (WM_USER+28)
1998 #define EM_EMPTYUNDOBUFFER (WM_USER+29)
1999 #define EM_GETFIRSTVISIBLELINE (WM_USER+30)
2000 #define EM_SETREADONLY (WM_USER+31)
2001 #define EM_SETWORDBREAKPROC (WM_USER+32)
2002 #define EM_GETWORDBREAKPROC (WM_USER+33)
2003 #define EM_GETPASSWORDCHAR (WM_USER+34)
2005 typedef int (CALLBACK *EDITWORDBREAKPROC)(LPSTR lpch, int ichCurrent,
2008 /* EDITWORDBREAKPROC code values */
2011 #define WB_ISDELIMITER 2
2013 /* Edit control notification codes */
2014 #define EN_SETFOCUS 0x0100
2015 #define EN_KILLFOCUS 0x0200
2016 #define EN_CHANGE 0x0300
2017 #define EN_UPDATE 0x0400
2018 #define EN_ERRSPACE 0x0500
2019 #define EN_MAXTEXT 0x0501
2020 #define EN_HSCROLL 0x0601
2021 #define EN_VSCROLL 0x0602
2024 #define WM_DRAWITEM 0x002B
2026 typedef struct tagDRAWITEMSTRUCT
2038 typedef DRAWITEMSTRUCT NEAR* PDRAWITEMSTRUCT;
2039 typedef DRAWITEMSTRUCT FAR* LPDRAWITEMSTRUCT;
2041 #define WM_MEASUREITEM 0x002C
2043 typedef struct tagMEASUREITEMSTRUCT
2051 } MEASUREITEMSTRUCT;
2052 typedef MEASUREITEMSTRUCT NEAR* PMEASUREITEMSTRUCT;
2053 typedef MEASUREITEMSTRUCT FAR* LPMEASUREITEMSTRUCT;
2055 #define WM_DELETEITEM 0x002D
2057 typedef struct tagDELETEITEMSTRUCT
2065 typedef DELETEITEMSTRUCT NEAR* PDELETEITEMSTRUCT;
2066 typedef DELETEITEMSTRUCT FAR* LPDELETEITEMSTRUCT;
2068 #define WM_COMPAREITEM 0x0039
2070 typedef struct tagCOMPAREITEMSTRUCT
2079 } COMPAREITEMSTRUCT;
2080 typedef COMPAREITEMSTRUCT NEAR* PCOMPAREITEMSTRUCT;
2081 typedef COMPAREITEMSTRUCT FAR* LPCOMPAREITEMSTRUCT;
2083 /* Virtual key codes */
2084 #define VK_LBUTTON 0x01
2085 #define VK_RBUTTON 0x02
2086 #define VK_CANCEL 0x03
2087 #define VK_MBUTTON 0x04
2088 #define VK_BACK 0x08
2090 #define VK_CLEAR 0x0C
2091 #define VK_RETURN 0x0D
2092 #define VK_SHIFT 0x10
2093 #define VK_CONTROL 0x11
2094 #define VK_MENU 0x12
2095 #define VK_PAUSE 0x13
2096 #define VK_CAPITAL 0x14
2097 #define VK_ESCAPE 0x1B
2098 #define VK_SPACE 0x20
2099 #define VK_PRIOR 0x21
2100 #define VK_NEXT 0x22
2102 #define VK_HOME 0x24
2103 #define VK_LEFT 0x25
2105 #define VK_RIGHT 0x27
2106 #define VK_DOWN 0x28
2107 #define VK_SELECT 0x29
2108 #define VK_PRINT 0x2A
2109 #define VK_EXECUTE 0x2B
2110 #define VK_SNAPSHOT 0x2C
2111 #define VK_INSERT 0x2D
2112 #define VK_DELETE 0x2E
2113 #define VK_HELP 0x2F
2114 #define VK_NUMPAD0 0x60
2115 #define VK_NUMPAD1 0x61
2116 #define VK_NUMPAD2 0x62
2117 #define VK_NUMPAD3 0x63
2118 #define VK_NUMPAD4 0x64
2119 #define VK_NUMPAD5 0x65
2120 #define VK_NUMPAD6 0x66
2121 #define VK_NUMPAD7 0x67
2122 #define VK_NUMPAD8 0x68
2123 #define VK_NUMPAD9 0x69
2124 #define VK_MULTIPLY 0x6A
2126 #define VK_SEPARATOR 0x6C
2127 #define VK_SUBTRACT 0x6D
2128 #define VK_DECIMAL 0x6E
2129 #define VK_DIVIDE 0x6F
2154 #define VK_NUMLOCK 0x90
2155 #define VK_SCROLL 0x91
2158 #define LMEM_FIXED 0
2159 #define LMEM_MOVEABLE 0x0002
2160 #define LMEM_ZEROINIT 0x0040
2161 #define LMEM_DISCARDABLE 0x0F00
2162 #define LMEM_WINE_ALIGN 0x1000
2164 #define GMEM_FIXED 0x0000
2165 #define GMEM_MOVEABLE 0x0002
2166 #define GMEM_NOCOMPACT 0x0010
2167 #define GMEM_NODISCARD 0x0020
2168 #define GMEM_ZEROINIT 0x0040
2169 #define GMEM_MODIFY 0x0080
2170 #define GMEM_DISCARDABLE 0x0100
2171 #define GMEM_NOT_BANKED 0x1000
2172 #define GMEM_SHARE 0x2000
2173 #define GMEM_DDESHARE 0x2000
2174 #define GMEM_NOTIFY 0x4000
2175 #define GMEM_LOWER GMEM_NOT_BANKED
2177 #define GHND (GMEM_MOVEABLE | GMEM_ZEROINIT)
2178 #define GPTR (GMEM_FIXED | GMEM_ZEROINIT)
2181 /* Predefined Clipboard Formats */
2184 #define CF_METAFILEPICT 3
2188 #define CF_OEMTEXT 7
2190 #define CF_PALETTE 9
2191 #define CF_PENDATA 10
2195 #define CF_OWNERDISPLAY 0x0080
2196 #define CF_DSPTEXT 0x0081
2197 #define CF_DSPBITMAP 0x0082
2198 #define CF_DSPMETAFILEPICT 0x0083
2200 /* "Private" formats don't get GlobalFree()'d */
2201 #define CF_PRIVATEFIRST 0x0200
2202 #define CF_PRIVATELAST 0x02FF
2204 /* "GDIOBJ" formats do get DeleteObject()'d */
2205 #define CF_GDIOBJFIRST 0x0300
2206 #define CF_GDIOBJLAST 0x03FF
2208 /* Clipboard command messages */
2209 #define WM_CUT 0x0300
2210 #define WM_COPY 0x0301
2211 #define WM_PASTE 0x0302
2212 #define WM_CLEAR 0x0303
2213 #define WM_UNDO 0x0304
2215 /* Clipboard owner messages */
2216 #define WM_RENDERFORMAT 0x0305
2217 #define WM_RENDERALLFORMATS 0x0306
2218 #define WM_DESTROYCLIPBOARD 0x0307
2220 /* Clipboard viewer messages */
2221 #define WM_DRAWCLIPBOARD 0x0308
2222 #define WM_PAINTCLIPBOARD 0x0309
2223 #define WM_SIZECLIPBOARD 0x030B
2224 #define WM_VSCROLLCLIPBOARD 0x030A
2225 #define WM_HSCROLLCLIPBOARD 0x030E
2226 #define WM_ASKCBFORMATNAME 0x030C
2227 #define WM_CHANGECBCHAIN 0x030D
2229 /* Metafile header structure */
2230 typedef struct tagMETAHEADER
2235 DWORD mtSize __attribute__ ((packed));
2237 DWORD mtMaxRecord __attribute__ ((packed));
2238 WORD mtNoParameters;
2241 /* Metafile typical record structure */
2242 typedef struct tagMETARECORD
2248 typedef METARECORD *PMETARECORD;
2249 typedef METARECORD *LPMETARECORD;
2251 /* Handle table structure */
2252 typedef struct tagHANDLETABLE
2254 HANDLE objectHandle[1];
2256 typedef HANDLETABLE *PHANDLETABLE;
2257 typedef HANDLETABLE *LPHANDLETABLE;
2259 /* Clipboard metafile picture structure */
2260 typedef struct tagMETAFILEPICT
2267 typedef METAFILEPICT *LPMETAFILEPICT;
2269 /* Metafile functions */
2270 #define META_SETBKCOLOR 0x0201
2271 #define META_SETBKMODE 0x0102
2272 #define META_SETMAPMODE 0x0103
2273 #define META_SETROP2 0x0104
2274 #define META_SETRELABS 0x0105
2275 #define META_SETPOLYFILLMODE 0x0106
2276 #define META_SETSTRETCHBLTMODE 0x0107
2277 #define META_SETTEXTCHAREXTRA 0x0108
2278 #define META_SETTEXTCOLOR 0x0209
2279 #define META_SETTEXTJUSTIFICATION 0x020A
2280 #define META_SETWINDOWORG 0x020B
2281 #define META_SETWINDOWEXT 0x020C
2282 #define META_SETVIEWPORTORG 0x020D
2283 #define META_SETVIEWPORTEXT 0x020E
2284 #define META_OFFSETWINDOWORG 0x020F
2285 #define META_SCALEWINDOWEXT 0x0410
2286 #define META_OFFSETVIEWPORTORG 0x0211
2287 #define META_SCALEVIEWPORTEXT 0x0412
2288 #define META_LINETO 0x0213
2289 #define META_MOVETO 0x0214
2290 #define META_EXCLUDECLIPRECT 0x0415
2291 #define META_INTERSECTCLIPRECT 0x0416
2292 #define META_ARC 0x0817
2293 #define META_ELLIPSE 0x0418
2294 #define META_FLOODFILL 0x0419
2295 #define META_PIE 0x081A
2296 #define META_RECTANGLE 0x041B
2297 #define META_ROUNDRECT 0x061C
2298 #define META_PATBLT 0x061D
2299 #define META_SAVEDC 0x001E
2300 #define META_SETPIXEL 0x041F
2301 #define META_OFFSETCLIPRGN 0x0220
2302 #define META_TEXTOUT 0x0521
2303 #define META_BITBLT 0x0922
2304 #define META_STRETCHBLT 0x0B23
2305 #define META_POLYGON 0x0324
2306 #define META_POLYLINE 0x0325
2307 #define META_ESCAPE 0x0626
2308 #define META_RESTOREDC 0x0127
2309 #define META_FILLREGION 0x0228
2310 #define META_FRAMEREGION 0x0429
2311 #define META_INVERTREGION 0x012A
2312 #define META_PAINTREGION 0x012B
2313 #define META_SELECTCLIPREGION 0x012C
2314 #define META_SELECTOBJECT 0x012D
2315 #define META_SETTEXTALIGN 0x012E
2316 #define META_DRAWTEXT 0x062F
2317 #define META_CHORD 0x0830
2318 #define META_SETMAPPERFLAGS 0x0231
2319 #define META_SETTEXTOUT 0x0A32
2320 #define META_SETDIBTODEV 0x0D33
2321 #define META_SELECTPALETTE 0x0234
2322 #define META_REALIZEPALETTE 0x0035
2323 #define META_ANIMATEPALETTE 0x0436
2324 #define META_SETPALENTRIES 0x0037
2325 #define META_POLYPOLYGON 0x0538
2326 #define META_RESIZEPALETTE 0x0139
2327 #define META_DIBBITBLT 0x0940
2328 #define META_DIBSTRETCHBLT 0x0B41
2329 #define META_DIBCREATEPATTERNBRUSH 0x0142
2330 #define META_STRETCHDIB 0x0F43
2331 #define META_EXTFLOODFILL 0x0548
2332 #define META_RESETDC 0x014C
2333 #define META_STARTDOC 0x014D
2334 #define META_STARTPAGE 0x004F
2335 #define META_ENDPAGE 0x0050
2336 #define META_ABORTDOC 0x0052
2337 #define META_ENDDOC 0x005E
2338 #define META_DELETEOBJECT 0x01F0
2339 #define META_CREATEPALETTE 0x00F7
2340 #define META_CREATEBRUSH 0x00F8
2341 #define META_CREATEPATTERNBRUSH 0x01F9
2342 #define META_CREATEPENINDIRECT 0x02FA
2343 #define META_CREATEFONTINDIRECT 0x02FB
2344 #define META_CREATEBRUSHINDIRECT 0x02FC
2345 #define META_CREATEBITMAPINDIRECT 0x02FD
2346 #define META_CREATEBITMAP 0x06FE
2347 #define META_CREATEREGION 0x06FF
2350 #define F(ret,name) ret name(void);
2351 #define Fa(ret,name,t1,a1) ret name(t1 a1);
2352 #define Fb(ret,name,t1,a1,t2,a2) ret name(t1 a1,t2 a2);
2353 #define Fc(ret,name,t1,a1,t2,a2,t3,a3) ret name(t1 a1,t2 a2,t3 a3);
2354 #define Fd(ret,name,t1,a1,t2,a2,t3,a3,t4,a4) ret name(t1 a1,t2 a2,t3 a3,t4 a4);
2355 #define Fe(ret,name,t1,a1,t2,a2,t3,a3,t4,a4,t5,a5) ret name( t1 a1,t2 a2,t3 a3,t4 a4,t5 a5);
2356 #define Ff(ret,name,t1,a1,t2,a2,t3,a3,t4,a4,t5,a5,t6,a6) ret name(t1 a1,t2 a2,t3 a3,t4 a4,t5 a5,t6 a6);
2357 #define Fg(ret,name,t1,a1,t2,a2,t3,a3,t4,a4,t5,a5,t6,a6,t7,a7) ret name( t1 a1,t2 a2,t3 a3,t4 a4,t5 a5,t6 a6,t7 a7);
2358 #define Fh(ret,name,t1,a1,t2,a2,t3,a3,t4,a4,t5,a5,t6,a6,t7,a7,t8,a8) ret name(t1 a1,t2 a2,t3 a3,t4 a4,t5 a5,t6 a6,t7 a7,t8 a8);
2359 #define Fi(ret,name,t1,a1,t2,a2,t3,a3,t4,a4,t5,a5,t6,a6,t7,a7,t8,a8,t9,a9) ret name(t1 a1,t2 a2,t3 a3,t4 a4,t5 a5,t6 a6,t7 a7,t8 a8,t9 a9);
2360 #define Fj(ret,name,t1,a1,t2,a2,t3,a3,t4,a4,t5,a5,t6,a6,t7,a7,t8,a8,t9,a9,t10,a10) ret name(t1 a1,t2 a2,t3 a3,t4 a4,t5 a5,t6 a6,t7 a7,t8 a8,t9 a9,t10 a10);
2361 #define Fk(ret,name,t1,a1,t2,a2,t3,a3,t4,a4,t5,a5,t6,a6,t7,a7,t8,a8,t9,a9,t10,a10,t11,a11) ret name (t1 a1,t2 a2,t3 a3,t4 a4,t5 a5,t6 a6,t7 a7,t8 a8,t9 a9,t10 a10,t11 a11);
2362 #define Fl(ret,name,t1,a1,t2,a2,t3,a3,t4,a4,t5,a5,t6,a6,t7,a7,t8,a8,t9,a9,t10,a10,t11,a11,t12,a12) ret name(t1 a1,t2 a2,t3 a3,t4 a4,t5 a5,t6 a6,t7 a7,t8 a8,t9 a9,t10 a10,t11 a11,t12 a12);
2363 #define Fm(ret,name,t1,a1,t2,a2,t3,a3,t4,a4,t5,a5,t6,a6,t7,a7,t8,a8,t9,a9,t10,a10,t11,a11,t12,a12,t13,a13) ret name(t1 a1,t2 a2,t3 a3,t4 a4,t5 a5,t6 a6,t7 a7,t8 a8,t9 a9,t10 a10,t11 a11,t12 a12,t13 a13);
2364 #define Fn(ret,name,t1,a1,t2,a2,t3,a3,t4,a4,t5,a5,t6,a6,t7,a7,t8,a8,t9,a9,t10,a10,t11,a11,t12,a12,t13,a13,t14,a14) ret name(t1 a1,t2 a2,t3 a3,t4 a4,t5 a5,t6 a6,t7 a7,t8 a8,t9 a9,t10 a10,t11 a11,t12 a12,t13 a13,t14 a14);
2366 int wsprintf(LPSTR a,LPSTR b,...);
2369 /* Implemented functions */
2372 F(BOOL,GetInputState)
2373 F(BOOL,SetDeskPattern)
2374 F(LPSTR,GetDOSEnvironment)
2375 F(DWORD,GetMessagePos)
2376 F(LONG,GetMessageTime)
2377 F(LONG,GetMessageExtraInfo)
2379 F(BOOL,CloseClipboard)
2380 F(BOOL,EmptyClipboard)
2381 F(BOOL,InSendMessage)
2382 F(DWORD,GetCurrentTime)
2383 F(DWORD,GetDialogBaseUnits)
2384 F(DWORD,GetTickCount)
2385 F(HANDLE,GetCurrentTask)
2386 F(HMENU,CreatePopupMenu)
2387 F(HWND,GetActiveWindow)
2389 F(HWND,GetClipboardOwner)
2390 F(HWND,GetOpenClipboardWindow)
2391 F(HWND,GetClipboardViewer)
2392 F(HWND,GetDesktopHwnd)
2393 F(HWND,GetDesktopWindow)
2395 F(HWND,GetSysModalWindow)
2396 F(DWORD,GetMenuCheckMarkDimensions)
2398 F(LPINT,GetThresholdEvent)
2399 F(LPSTR,ValidateFreeSpaces)
2400 F(void,ValidateCodeSegments)
2401 F(WORD,GetCaretBlinkTime)
2402 F(WORD,GetCurrentPDB)
2403 F(WORD,GetDoubleClickTime)
2406 F(int,CountClipboardFormats)
2407 F(int,GetKBCodePage)
2408 F(int,GetThresholdStatus)
2413 F(int,SyncAllVoices)
2416 F(void,DestroyCaret)
2422 F(void,ReleaseCapture)
2423 F(void,SwitchStackBack)
2426 Fa(BOOL,IsCharAlpha,char,ch)
2427 Fa(BOOL,IsCharAlphaNumeric,char,ch)
2428 Fa(BOOL,IsCharLower,char,ch)
2429 Fa(BOOL,IsCharUpper,char,ch)
2430 Fa(ATOM,RegisterClass,LPWNDCLASS,a)
2431 Fa(BOOL,TranslateMessage,LPMSG,a)
2432 Fa(void,PostQuitMessage,int,a)
2433 Fa(BOOL,SetMessageQueue,int,a)
2434 Fa(INT,_lclose,INT,a)
2435 Fb(INT,_lopen,LPSTR,a,INT,b)
2436 Fa(INT,lstrlen,LPCSTR,a)
2437 Fa(LONG,DispatchMessage,LPMSG,msg)
2438 Fa(void,UpdateWindow,HWND,a)
2439 Fa(ATOM,AddAtom,LPCSTR,a)
2440 Fa(ATOM,DeleteAtom,ATOM,a)
2441 Fa(ATOM,FindAtom,LPCSTR,a)
2442 Fa(ATOM,GlobalAddAtom,LPCSTR,a)
2443 Fa(ATOM,GlobalDeleteAtom,ATOM,a)
2444 Fa(ATOM,GlobalFindAtom,LPCSTR,a)
2445 Fa(BOOL,BringWindowToTop,HWND,a)
2446 Fa(BOOL,DeleteDC,HDC,a)
2447 Fa(BOOL,DeleteMetaFile,HMETAFILE,a)
2448 Fa(BOOL,DeleteObject,HANDLE,a)
2449 Fa(BOOL,DestroyCursor,HCURSOR,a)
2450 Fa(BOOL,DestroyIcon,HICON,a)
2451 Fa(BOOL,DestroyMenu,HMENU,a)
2452 Fa(BOOL,DestroyWindow,HWND,a)
2453 Fa(BOOL,EnableHardwareInput,BOOL,a)
2454 Fa(BOOL,FreeModule,HANDLE,a)
2455 Fa(BOOL,FreeResource,HANDLE,a)
2456 #ifndef GLOBAL_SOURCE
2457 Fa(BOOL,GlobalUnWire,HANDLE,a)
2458 Fa(BOOL,GlobalUnfix,HANDLE,a)
2459 Fa(BOOL,GlobalUnlock,HANDLE,a)
2461 Fa(BOOL,InitAtomTable,WORD,a)
2462 Fa(BOOL,IsClipboardFormatAvailable,WORD,a)
2463 Fa(BOOL,IsIconic,HWND,a)
2464 Fa(BOOL,IsRectEmpty,LPRECT,a)
2465 Fa(BOOL,IsTwoByteCharPrefix,char,a)
2466 Fa(BOOL,IsWindow,HWND,a)
2467 Fa(BOOL,IsWindowEnabled,HWND,a)
2468 Fa(BOOL,IsWindowVisible,HWND,a)
2469 Fa(BOOL,IsZoomed,HWND,a)
2470 Fa(BOOL,LocalUnlock,HANDLE,a)
2471 Fa(BOOL,OpenClipboard,HWND,a)
2472 Fa(BOOL,OpenIcon,HWND,a)
2473 Fa(BOOL,RemoveFontResource,LPSTR,a)
2474 Fa(BOOL,SetDeskWallPaper,LPSTR,a)
2475 Fa(BOOL,SetErrorMode,WORD,a)
2476 Fa(BOOL,SwapMouseButton,BOOL,a)
2477 Fa(BOOL,UnhookWindowsHookEx,HHOOK,a)
2478 Fa(BOOL,UnrealizeObject,HBRUSH,a)
2479 Fa(BYTE,GetTempDrive,BYTE,a)
2480 Fa(DWORD,GetAspectRatioFilter,HDC,a)
2481 Fa(DWORD,GetBitmapDimension,HBITMAP,a)
2482 Fa(COLORREF,GetBkColor,HDC,a)
2483 Fa(DWORD,GetBrushOrg,HDC,a)
2484 Fa(DWORD,GetCurrentPosition,HDC,a)
2485 Fa(DWORD,GetDCOrg,HDC,a)
2486 Fa(DWORD,GetFreeSpace,WORD,a)
2487 Fa(COLORREF,GetSysColor,short,a)
2488 Fa(COLORREF,GetTextColor,HDC,a)
2489 Fa(DWORD,GetViewportExt,HDC,a)
2490 Fa(DWORD,GetViewportOrg,HDC,a)
2491 Fa(DWORD,GetWindowExt,HDC,a)
2492 Fa(DWORD,GetWindowOrg,HDC,a)
2493 #ifndef GLOBAL_SOURCE
2494 Fa(DWORD,GlobalCompact,DWORD,a)
2495 Fa(DWORD,GlobalHandle,WORD,a)
2496 Fa(DWORD,GlobalSize,HANDLE,a)
2498 Fa(DWORD,OemKeyScan,WORD,a)
2499 Fa(FARPROC,LocalNotify,FARPROC,a)
2500 Fa(HANDLE,BeginDeferWindowPos,int,nNumWindows)
2501 Fa(HMETAFILE,CloseMetaFile,HANDLE,a)
2502 Fa(HANDLE,CreateMetaFile,LPSTR,a)
2503 Fa(HANDLE,GetAtomHandle,ATOM,a)
2504 Fa(HANDLE,GetClipboardData,WORD,a)
2505 Fa(HANDLE,GetCodeHandle,FARPROC,a)
2506 Fa(HANDLE,GetMetaFile,LPSTR,a)
2507 Fa(HANDLE,GetMetaFileBits,HANDLE,a)
2508 Fa(HANDLE,GetModuleHandle,LPSTR,a)
2509 Fa(HANDLE,GetStockObject,int,a)
2510 Fa(HANDLE,GetWindowTask,HWND,a)
2511 #ifndef GLOBAL_SOURCE
2512 Fa(HANDLE,GlobalFree,HANDLE,a)
2513 Fa(HANDLE,GlobalLRUNewest,HANDLE,a)
2514 Fa(HANDLE,GlobalLRUOldest,HANDLE,a)
2516 Fa(HANDLE,LoadLibrary,LPSTR,a)
2517 Fa(HANDLE,LocalFree,HANDLE,a)
2518 Fa(HANDLE,LocalHandle,WORD,a)
2519 Fa(HANDLE,LockSegment,WORD,a)
2520 Fa(HANDLE,SetMetaFileBits,HANDLE,a)
2521 Fa(HANDLE,UnlockSegment,WORD,a)
2522 Fa(HBITMAP,CreateBitmapIndirect,BITMAP FAR*,a)
2523 Fa(HBRUSH,CreateBrushIndirect,LOGBRUSH FAR*,a)
2524 Fa(HBRUSH,CreatePatternBrush,HBITMAP,a)
2525 Fa(HBRUSH,CreateSolidBrush,DWORD,a)
2526 Fa(HCURSOR,SetCursor,HCURSOR,a)
2527 Fa(HDC,CreateCompatibleDC,HDC,a)
2528 Fa(HDC,GetDC,HWND,a)
2529 Fa(HDC,GetDCState,HDC,a)
2530 Fa(HDC,GetWindowDC,HWND,a)
2531 Fa(HFONT,CreateFontIndirect,LOGFONT FAR*,a)
2532 Fa(HMENU,GetMenu,HWND,a)
2533 Fa(HMENU,LoadMenuIndirect,LPSTR,a)
2534 Fa(HPALETTE,CreatePalette,LPLOGPALETTE,a)
2535 Fa(HPEN,CreatePenIndirect,LOGPEN FAR*,a)
2536 Fa(HRGN,CreateEllipticRgnIndirect,LPRECT,a)
2537 Fa(HRGN,CreateRectRgnIndirect,LPRECT,a)
2538 Fa(HRGN,GetClipRgn,HDC,a)
2539 Fa(HRGN,InquireVisRgn,HDC,a)
2540 Fa(HRGN,SaveVisRgn,HDC,a)
2541 Fa(HWND,GetLastActivePopup,HWND,a)
2542 Fa(HWND,GetParent,HWND,a)
2543 Fa(HWND,GetTopWindow,HWND,a)
2544 Fa(HWND,SetActiveWindow,HWND,a)
2545 Fa(HWND,SetCapture,HWND,a)
2546 Fa(HWND,SetClipboardViewer,HWND,a)
2547 Fa(HWND,SetFocus,HWND,a)
2548 Fa(HWND,SetSysModalWindow,HWND,a)
2549 Fa(HWND,WindowFromPoint,POINT,a)
2550 Fa(LONG,SetSwapAreaSize,WORD,a)
2551 Fa(LPSTR,AnsiLower,LPSTR,a)
2552 Fa(LPSTR,AnsiNext,LPSTR,a)
2553 Fa(LPSTR,AnsiUpper,LPSTR,a)
2554 #ifndef GLOBAL_SOURCE
2555 Fa(LPSTR,GlobalLock,HANDLE,a)
2556 Fa(LPSTR,GlobalWire,HANDLE,a)
2558 Fa(LPSTR,LockResource,HANDLE,a)
2559 #ifndef GLOBAL_SOURCE
2560 Fa(void,GlobalFix,HANDLE,a)
2561 Fa(void,GlobalNotify,FARPROC,a)
2563 Fa(void,LimitEmsPages,DWORD,a)
2564 Fa(void,SetConvertHook,BOOL,a)
2565 Fa(UINT,GDIRealizePalette,HDC,a)
2566 Fa(UINT,RealizePalette,HDC,a)
2567 Fa(WORD,AllocDStoCSAlias,WORD,a)
2568 Fa(WORD,AllocSelector,WORD,a)
2569 Fa(WORD,ArrangeIconicWindows,HWND,a)
2570 Fa(WORD,EnumClipboardFormats,WORD,a)
2571 Fa(WORD,FreeSelector,WORD,a)
2572 Fa(WORD,GetDriveType,INT,a)
2573 Fa(WORD,GetMenuItemCount,HMENU,a)
2574 Fa(WORD,GetTaskQueue,HANDLE,a)
2575 Fa(WORD,GetTextAlign,HDC,a)
2576 #ifndef GLOBAL_SOURCE
2577 Fa(WORD,GlobalFlags,HANDLE,a)
2578 Fa(WORD,GlobalPageLock,HANDLE,a)
2579 Fa(WORD,GlobalPageUnlock,HANDLE,a)
2581 Fa(WORD,LocalCompact,WORD,a)
2582 Fa(WORD,LocalFlags,HANDLE,a)
2583 Fa(WORD,LocalSize,HANDLE,a)
2584 Fa(WORD,RealizeDefaultPalette,HDC,a)
2585 Fa(WORD,RegisterClipboardFormat,LPCSTR,a)
2586 Fa(WORD,RegisterWindowMessage,LPCSTR,a)
2587 Fa(WORD,SetHandleCount,WORD,a)
2588 Fa(WORD,VkKeyScan,WORD,a)
2589 Fa(char NEAR*,LocalLock,HANDLE,a)
2590 Fa(int,AddFontResource,LPSTR,a)
2591 Fa(int,Catch,LPCATCHBUF,a)
2592 Fa(int,ClearCommBreak,int,a)
2593 Fa(int,CloseComm,int,a)
2594 Fa(int,CountVoiceNotes,int,a)
2595 Fa(int,GetAsyncKeyState,int,a)
2596 Fa(WORD,GetBkMode,HDC,a)
2597 Fa(int,GetDlgCtrlID,HWND,a)
2598 Fa(int,GetKeyState,int,a)
2599 Fa(int,GetKeyboardType,int,a)
2600 Fa(WORD,GetMapMode,HDC,a)
2601 Fa(int,GetModuleUsage,HANDLE,a)
2602 Fa(WORD,GetPolyFillMode,HDC,a)
2603 Fa(WORD,GetRelAbs,HDC,a)
2604 Fa(WORD,GetROP2,HDC,a)
2605 Fa(WORD,GetStretchBltMode,HDC,a)
2606 Fa(int,GetSystemMetrics,WORD,a)
2607 Fa(int,GetWindowTextLength,HWND,a)
2608 Fa(int,RestoreVisRgn,HDC,a)
2609 Fa(int,SaveDC,HDC,a)
2610 Fa(int,SetCommBreak,int,a)
2611 Fa(int,SetCommState,DCB*,a)
2612 Fa(int,ShowCursor,BOOL,a)
2613 Fa(int,UpdateColors,HDC,a)
2614 Fa(int,WaitSoundState,int,a)
2615 Fa(short,GetTextCharacterExtra,HDC,a)
2616 Fa(void,ClipCursor,LPRECT,a)
2617 Fa(void,CloseWindow,HWND,a)
2618 Fa(void,DrawMenuBar,HWND,a)
2619 Fa(void,EndDeferWindowPos,HANDLE,hWinPosInfo)
2620 Fa(void,FatalExit,int,a)
2621 Fa(void,FreeLibrary,HANDLE,a)
2622 Fa(void,FreeProcInstance,FARPROC,a)
2623 Fa(void,GetCaretPos,LPPOINT,a)
2624 Fa(void,GetCursorPos,LPPOINT,a)
2625 Fa(void,GetKeyboardState,BYTE FAR*,a)
2626 Fa(void,HideCaret,HWND,a)
2627 Fa(void,MessageBeep,WORD,a)
2628 Fa(void,OutputDebugString,LPSTR,a)
2629 Fa(void,ReplyMessage,LONG,a)
2630 Fa(void,SetCaretBlinkTime,WORD,a)
2631 Fa(void,SetDoubleClickTime,WORD,a)
2632 Fa(void,SetKeyboardState,BYTE FAR*,a)
2633 Fa(void,SetRectEmpty,LPRECT,a)
2634 Fa(void,ShowCaret,HWND,a)
2635 Fa(void,SwapRecording,WORD,a)
2636 Fb(BOOL,ExitWindows,DWORD,dwReserved,WORD,wReturnCode)
2637 Fb(BOOL,GetBitmapDimensionEx,HBITMAP,a,LPSIZE,b)
2638 Fb(BOOL,GetWindowPlacement,HWND,a,LPWINDOWPLACEMENT,b)
2639 Fb(BOOL,SetWindowPlacement,HWND,a,LPWINDOWPLACEMENT,b)
2640 Fb(BOOL,ShowWindow,HWND,a,int,b)
2641 Fb(HDC,BeginPaint,HWND,a,LPPAINTSTRUCT,b)
2642 Fb(LPSTR,lstrcat,LPSTR,a,LPCSTR,b )
2643 Fb(LPSTR,lstrcpy,LPSTR,a,LPCSTR,b )
2644 Fb(INT,_lcreat,LPSTR,a,INT,b)
2645 Fb(INT,lstrcmp,LPCSTR,a,LPCSTR,b )
2646 Fb(INT,lstrcmpi,LPCSTR,a,LPCSTR,b )
2647 Fb(void,EndPaint,HWND,a,LPPAINTSTRUCT,b)
2648 Fb(void,GetClientRect,HWND,a,LPRECT,b)
2649 Fb(void,SetDCState,HDC,a,HDC,b)
2650 Fb(BOOL,UnregisterClass,LPSTR,a,HANDLE,b)
2651 Fb(BOOL,CallMsgFilter,LPMSG,a,short,b)
2652 Fb(BOOL,ChangeClipboardChain,HWND,a,HWND,b)
2653 Fb(BOOL,EnableWindow,HWND,a,BOOL,b)
2654 Fb(BOOL,EnumWindows,FARPROC,a,LONG,b)
2655 Fb(BOOL,EqualRect,LPRECT,a,LPRECT,b)
2656 Fb(BOOL,EqualRgn,HRGN,a,HRGN,b)
2657 Fb(BOOL,FlashWindow,HWND,a,BOOL,b)
2658 Fb(BOOL,GetBrushOrgEx,HDC,a,LPPOINT,b)
2659 Fb(BOOL,GetTextMetrics,HDC,a,LPTEXTMETRIC,b)
2660 Fb(BOOL,InvertRgn,HDC,a,HRGN,b)
2661 Fb(BOOL,IsChild,HWND,a,HWND,b)
2662 Fb(BOOL,IsDialogMessage,HWND,a,LPMSG,b)
2663 Fb(BOOL,KillTimer,HWND,a,WORD,b)
2664 Fb(BOOL,OemToAnsi,LPSTR,a,LPSTR,b)
2665 Fb(BOOL,PaintRgn,HDC,a,HRGN,b)
2666 Fb(BOOL,PlayMetaFile,HDC,a,HANDLE,b)
2667 Fb(BOOL,PtInRect,LPRECT,a,POINT,b)
2668 Fb(BOOL,RectInRegion,HRGN,a,LPRECT,b)
2669 Fb(BOOL,RectVisible,HDC,a,LPRECT,b)
2670 Fb(BOOL,ResizePalette,HPALETTE,a,WORD,b)
2671 Fb(BOOL,RestoreDC,HDC,a,short,b)
2672 Fb(BOOL,SetConvertParams,int,a,int,b)
2673 Fb(BOOL,SetMenu,HWND,a,HMENU,b)
2674 Fb(BOOL,TranslateMDISysAccel,HWND,a,LPMSG,b)
2675 Fb(BOOL,UnhookWindowsHook,short,a,HHOOK,b)
2676 Fb(DWORD,GetNearestColor,HDC,a,DWORD,b)
2677 Fb(DWORD,SetBkColor,HDC,a,COLORREF,b)
2678 Fb(DWORD,SetMapperFlags,HDC,a,DWORD,b)
2679 Fb(DWORD,SetTextColor,HDC,a,DWORD,b)
2680 Fb(FARPROC,GetProcAddress,HANDLE,a,LPSTR,b)
2681 Fb(FARPROC,MakeProcInstance,FARPROC,a,HANDLE,b)
2682 Fb(HHOOK,SetWindowsHook,short,a,HOOKPROC,b)
2683 Fb(HANDLE,CopyMetaFile,HANDLE,a,LPSTR,b)
2684 Fb(HANDLE,GetProp,HWND,a,LPSTR,b)
2685 #ifndef GLOBAL_SOURCE
2686 Fb(HANDLE,GlobalAlloc,WORD,a,DWORD,b)
2688 Fb(HANDLE,LoadAccelerators,HANDLE,a,LPSTR,b)
2689 Fb(HANDLE,LoadModule,LPSTR,a,LPVOID,b)
2690 Fb(HANDLE,LoadResource,HANDLE,a,HANDLE,b)
2691 Fb(HANDLE,LocalAlloc,WORD,a,WORD,b)
2692 Fb(HANDLE,RemoveProp,HWND,a,LPSTR,b)
2693 Fb(HANDLE,SelectObject,HDC,a,HANDLE,b)
2694 Fb(HANDLE,SetClipboardData,WORD,a,HANDLE,b)
2695 Fb(HBITMAP,LoadBitmap,HANDLE,a,LPSTR,b)
2696 Fb(HBRUSH,CreateDIBPatternBrush,HANDLE,a,WORD,b)
2697 Fb(HBRUSH,CreateHatchBrush,short,a,COLORREF,b)
2698 Fb(HCURSOR,LoadCursor,HANDLE,a,LPSTR,b)
2699 Fb(HICON,LoadIcon,HANDLE,a,LPSTR,b)
2700 Fb(HPALETTE,GDISelectPalette,HDC,a,HPALETTE,b)
2701 Fb(HMENU,GetSubMenu,HMENU,a,short,b)
2702 Fb(HMENU,GetSystemMenu,HWND,a,BOOL,b)
2703 Fb(HMENU,LoadMenu,HANDLE,a,LPSTR,b)
2704 Fb(HWND,ChildWindowFromPoint,HWND,a,POINT,b)
2705 Fb(HWND,FindWindow,LPSTR,a,LPSTR,b)
2706 Fb(HWND,GetDlgItem,HWND,a,WORD,b)
2707 Fb(HWND,GetNextWindow,HWND,a,WORD,b)
2708 Fb(HWND,GetWindow,HWND,a,WORD,b)
2709 Fb(BOOL,GetCurrentPositionEx,HDC,a,LPPOINT,b)
2710 Fb(BOOL,GetViewportExtEx,HDC,a,LPPOINT,b)
2711 Fb(BOOL,GetViewportOrgEx,HDC,a,LPPOINT,b)
2712 Fb(BOOL,GetWindowExtEx,HDC,a,LPPOINT,b)
2713 Fb(BOOL,GetWindowOrgEx,HDC,a,LPPOINT,b)
2714 Fb(HWND,SetParent,HWND,a,HWND,b)
2715 Fb(LONG,GetClassLong,HWND,a,short,b)
2716 Fb(LONG,GetWindowLong,HWND,a,short,b)
2717 Fb(LPSTR,AnsiPrev,LPSTR,a,LPSTR,b)
2718 Fb(WORD FAR*,SetCommEventMask,int,a,WORD,b)
2719 Fb(WORD,AnsiLowerBuff,LPSTR,a,WORD,b)
2720 Fb(WORD,AnsiUpperBuff,LPSTR,a,WORD,b)
2721 Fb(WORD,ChangeSelector,WORD,a,WORD,b)
2722 Fb(WORD,GetClassWord,HWND,a,short,b)
2723 Fb(WORD,GetCommEventMask,int,a,int,b)
2724 Fb(WORD,GetMenuItemID,HMENU,a,int,b)
2725 Fb(WORD,GetNearestPaletteIndex,HPALETTE,a,DWORD,b)
2726 Fb(WORD,GetSystemDirectory,LPSTR,a,WORD,b)
2727 Fb(WORD,GetSystemPaletteUse,HDC,a,WORD,b)
2728 Fb(WORD,GetWindowWord,HWND,a,short,b)
2729 Fb(WORD,GetWindowsDirectory,LPSTR,a,WORD,b)
2730 Fb(WORD,IsDlgButtonChecked,HWND,a,WORD,b)
2731 Fb(WORD,LocalShrink,HANDLE,a,WORD,b)
2732 Fb(WORD,MapVirtualKey,WORD,a,WORD,b)
2733 Fb(WORD,SetSystemPaletteUse,HDC,a,WORD,b)
2734 Fb(WORD,SetBkMode,HDC,a,WORD,b)
2735 Fb(WORD,SetMapMode,HDC,a,WORD,b)
2736 Fb(WORD,SetPolyFillMode,HDC,a,WORD,b)
2737 Fb(WORD,SetRelAbs,HDC,a,WORD,b)
2738 Fb(WORD,SetROP2,HDC,a,WORD,b)
2739 Fb(WORD,SetStretchBltMode,HDC,a,WORD,b)
2740 Fb(WORD,SetTaskQueue,HANDLE,a,HANDLE,b)
2741 Fb(WORD,SetTextAlign,HDC,a,WORD,b)
2742 Fb(WORD,SizeofResource,HANDLE,a,HANDLE,b)
2743 Fb(WORD,WinExec,LPSTR,a,WORD,b)
2744 Fb(int,AccessResource,HANDLE,a,HANDLE,b)
2745 Fb(INT,AnsiToOem,LPSTR,a,LPSTR,b)
2746 Fb(int,BuildCommDCB,LPSTR,a,DCB*,b)
2747 Fb(int,ConvertRequest,HWND,a,LPKANJISTRUCT,b)
2748 Fb(void,CopyRect,LPRECT,a,LPRECT,b)
2749 Fb(int,EnumProps,HWND,a,FARPROC,b)
2750 Fb(LONG,EscapeCommFunction,int,a,int,b)
2751 Fb(int,ExcludeUpdateRgn,HDC,a,HWND,b)
2752 Fb(int,FlushComm,int,a,int,b)
2753 Fb(int,GetClipBox,HDC,a,LPRECT,b)
2754 Fb(int,GetCommError,int,a,COMSTAT*,b)
2755 Fb(int,GetCommState,int,a,DCB*,b)
2756 Fb(int,GetDeviceCaps,HDC,a,WORD,b)
2757 Fb(int,GetPriorityClipboardFormat,WORD FAR*,a,short,b)
2758 Fb(int,GetRgnBox,HRGN,a,LPRECT,b)
2759 Fb(int,GetScrollPos,HWND,a,int,b)
2760 Fb(int,ReleaseDC,HWND,a,HDC,b)
2761 Fb(int,SelectClipRgn,HDC,a,HRGN,b)
2762 Fb(int,SelectVisRgn,HDC,a,HRGN,b)
2763 Fb(int,SetSoundNoise,int,a,int,b)
2764 Fb(int,SetVoiceQueueSize,int,a,int,b)
2765 Fb(int,SetVoiceThreshold,int,a,int,b)
2766 Fb(int,TransmitCommChar,int,a,char,b)
2767 Fb(int,UngetCommChar,int,a,char,b)
2768 Fb(short,SetTextCharacterExtra,HDC,a,short,b)
2769 Fb(void,ClientToScreen,HWND,a,LPPOINT,b)
2770 Fb(void,DrawFocusRect,HDC,a,LPRECT,b)
2771 Fb(void,EndDialog,HWND,a,short,b)
2772 Fb(void,GetCodeInfo,FARPROC,lpProc,LPVOID,lpSegInfo)
2773 Fb(void,GetWindowRect,HWND,a,LPRECT,b)
2774 Fb(void,InvertRect,HDC,a,LPRECT,b)
2775 Fb(void,MapDialogRect,HWND,a,LPRECT,b)
2776 Fb(void,ProfSampRate,int,a,int,b)
2777 Fb(void,ProfSetup,int,a,int,b)
2778 Fb(void,ScreenToClient,HWND,a,LPPOINT,b)
2779 Fb(void,SetCaretPos,short,a,short,b)
2780 Fb(void,SetCursorPos,short,a,short,b)
2781 Fb(void,SetWindowText,HWND,a,LPSTR,b)
2782 Fb(void,ShowOwnedPopups,HWND,a,BOOL,b)
2783 Fb(void,Throw,LPCATCHBUF,a,int,b)
2784 Fb(void,ValidateRect,HWND,a,LPRECT,b)
2785 Fb(void,ValidateRgn,HWND,a,HRGN,b)
2786 Fc(BOOL,LineTo,HDC,a,short,b,short,c)
2787 Fc(WORD,GetInternalWindowPos,HWND,a,LPRECT,b,LPPOINT,c)
2788 Fc(LONG,_llseek,INT,a,LONG,b,INT,c)
2789 Fc(INT,_lread,INT,a,LPSTR,b,INT,c)
2790 Fc(INT,_lwrite,INT,a,LPSTR,b,INT,c)
2791 Fc(int,FillRect,HDC,a,LPRECT,b,HBRUSH,c)
2792 Fc(DWORD,MoveTo,HDC,a,short,b,short,c)
2793 Fc(BOOL,CheckMenuItem,HMENU,a,WORD,b,WORD,c)
2794 Fc(BOOL,DPtoLP,HDC,a,LPPOINT,b,int,c)
2795 Fc(BOOL,DeleteMenu,HMENU,a,WORD,b,WORD,c)
2796 Fc(BOOL,DlgDirSelect,HWND,a,LPSTR,b,int,c)
2797 Fc(BOOL,DlgDirSelectComboBox,HWND,a,LPSTR,b,int,c)
2798 Fc(BOOL,EnableMenuItem,HMENU,a,WORD,b,WORD,c)
2799 Fc(BOOL,EnumChildWindows,HWND,a,FARPROC,b,LONG,c)
2800 Fc(BOOL,EnumTaskWindows,HANDLE,a,FARPROC,b,LONG,c)
2801 Fc(BOOL,FillRgn,HDC,a,HRGN,b,HBRUSH,c)
2802 Fc(BOOL,GetClassInfo,HANDLE,a,LPSTR,b,LPWNDCLASS,c)
2803 Fc(BOOL,GetUpdateRect,HWND,a,LPRECT,b,BOOL,c)
2804 Fc(BOOL,LPtoDP,HDC,a,LPPOINT,b,int,c)
2805 Fc(BOOL,LocalInit,WORD,a,WORD,b,WORD,c)
2806 Fc(BOOL,Polygon,HDC,a,LPPOINT,b,int,c)
2807 Fc(BOOL,Polyline,HDC,a,LPPOINT,b,int,c)
2808 Fc(BOOL,PtInRegion,HRGN,a,short,b,short,c)
2809 Fc(BOOL,PtVisible,HDC,a,short,b,short,c)
2810 Fc(BOOL,RemoveMenu,HMENU,a,WORD,b,WORD,c)
2811 Fc(BOOL,SetProp,HWND,a,LPSTR,b,HANDLE,c)
2812 Fc(BOOL,WriteProfileString,LPSTR,a,LPSTR,b,LPSTR,c)
2813 Fc(BOOL,IntersectRect,LPRECT,a,LPRECT,b,LPRECT,c)
2814 Fc(BOOL,UnionRect,LPRECT,a,LPRECT,b,LPRECT,c)
2815 Fc(BOOL,SubtractRect,LPRECT,a,LPRECT,b,LPRECT,c)
2816 Fc(DWORD,GetPixel,HDC,a,short,b,short,c)
2817 Fc(DWORD,GetTextExtent,HDC,a,LPSTR,b,short,c)
2818 Fc(DWORD,OffsetViewportOrg,HDC,a,short,b,short,c)
2819 Fc(DWORD,OffsetWindowOrg,HDC,a,short,b,short,c)
2820 Fc(DWORD,SetBitmapDimension,HBITMAP,a,short,b,short,c)
2821 Fc(DWORD,SetBrushOrg,HDC,a,short,b,short,c)
2822 Fc(DWORD,SetViewportExt,HDC,a,short,b,short,c)
2823 Fc(DWORD,SetViewportOrg,HDC,a,short,b,short,c)
2824 Fc(DWORD,SetWindowExt,HDC,a,short,b,short,c)
2825 Fc(DWORD,SetWindowOrg,HDC,a,short,b,short,c)
2826 Fc(FARPROC,SetResourceHandler,HANDLE,a,LPSTR,b,FARPROC,c)
2827 Fc(HANDLE,AllocResource,HANDLE,a,HANDLE,b,DWORD,c)
2828 Fc(HANDLE,FindResource,HANDLE,a,LPSTR,b,LPSTR,c)
2829 #ifndef GLOBAL_SOURCE
2830 Fc(HANDLE,GlobalReAlloc,HANDLE,a,DWORD,b,WORD,c)
2832 Fc(HANDLE,LocalReAlloc,HANDLE,a,WORD,b,WORD,c)
2833 Fc(HBITMAP,CreateCompatibleBitmap,HDC,a,short,b,short,c)
2834 Fc(HBITMAP,CreateDiscardableBitmap,HDC,a,short,b,short,c)
2835 Fc(HDC,GetDCEx,HWND,a,HRGN,b,DWORD,c)
2836 Fc(HPALETTE,SelectPalette,HDC,a,HPALETTE,b,BOOL,c)
2837 Fc(HPEN,CreatePen,short,a,short,b,COLORREF,c)
2838 Fc(HRGN,CreatePolygonRgn,LPPOINT,a,short,b,short,c)
2839 Fc(HWND,GetNextDlgGroupItem,HWND,a,HWND,b,BOOL,c)
2840 Fc(HWND,GetNextDlgTabItem,HWND,a,HWND,b,BOOL,c)
2841 Fc(LONG,GetBitmapBits,HBITMAP,a,LONG,b,LPSTR,c)
2842 Fc(LONG,SetBitmapBits,HBITMAP,a,LONG,b,LPSTR,c)
2843 Fc(LONG,SetClassLong,HWND,a,short,b,LONG,c)
2844 Fc(LONG,SetWindowLong,HWND,a,short,b,LONG,c)
2845 Fc(WORD,GetAtomName,ATOM,a,LPSTR,b,short,c)
2846 Fc(WORD,GetMenuState,HMENU,a,WORD,b,WORD,c)
2847 Fc(WORD,GetProfileInt,LPSTR,a,LPSTR,b,int,c)
2848 Fc(WORD,GlobalGetAtomName,ATOM,a,LPSTR,b,short,c)
2849 Fc(WORD,SetClassWord,HWND,a,short,b,WORD,c)
2850 Fc(WORD,SetWindowWord,HWND,a,short,b,WORD,c)
2851 Fc(int,FrameRect,HDC,a,LPRECT,b,HBRUSH,c)
2852 Fc(int,GetClassName,HWND,a,LPSTR,b,short,c)
2853 Fc(int,GetClipboardFormatName,WORD,a,LPSTR,b,short,c)
2854 Fc(int,GetEnvironment,LPSTR,a,LPSTR,b,WORD,c)
2855 Fc(int,GetInstanceData,HANDLE,a,NPSTR,b,int,c)
2856 Fc(int,GetKeyNameText,LONG,a,LPSTR,b,int,c)
2857 Fc(int,GetModuleFileName,HANDLE,a,LPSTR,b,short,c)
2858 Fc(int,GetObject,HANDLE,a,int,b,LPSTR,c)
2859 Fc(int,GetTextFace,HDC,a,int,b,LPSTR,c)
2860 Fc(int,GetUpdateRgn,HWND,a,HRGN,b,BOOL,c)
2861 Fc(int,GetWindowText,HWND,a,LPSTR,b,int,c)
2862 Fc(int,MulDiv,int,a,int,b,int,c)
2863 Fc(int,OffsetClipRgn,HDC,a,short,b,short,c)
2864 Fc(int,OffsetRgn,HRGN,a,short,b,short,c)
2865 Fc(int,OpenComm,LPSTR,a,WORD,b,WORD,c)
2866 Fc(INT,OpenFile,LPSTR,a,LPOFSTRUCT,b,WORD,c)
2867 Fc(int,ReadComm,int,a,LPSTR,b,int,c)
2868 Fc(int,SetEnvironment,LPSTR,a,LPSTR,b,WORD,c)
2869 Fc(int,SetVoiceEnvelope,int,a,int,b,int,c)
2870 Fc(int,SetVoiceSound,int,a,LONG,b,int,c)
2871 Fc(int,TranslateAccelerator,HWND,a,HANDLE,b,LPMSG,c)
2872 Fc(int,WriteComm,int,a,LPSTR,b,int,c)
2873 Fc(int,wvsprintf,LPSTR,a,LPSTR,b,LPSTR,c)
2874 Fc(short,SetTextJustification,HDC,a,short,b,short,c)
2875 Fc(void,AdjustWindowRect,LPRECT,a,DWORD,b,BOOL,c)
2876 Fc(void,AnsiToOemBuff,LPSTR,a,LPSTR,b,INT,c)
2877 Fc(void,CheckDlgButton,HWND,a,WORD,b,WORD,c)
2878 Fc(void,InflateRect,LPRECT,a,short,b,short,c)
2879 Fc(void,InvalidateRect,HWND,a,LPRECT,b,BOOL,c)
2880 Fc(void,InvalidateRgn,HWND,a,HRGN,b,BOOL,c)
2881 Fc(void,OemToAnsiBuff,LPSTR,a,LPSTR,b,INT,c)
2882 Fc(void,OffsetRect,LPRECT,a,short,b,short,c)
2883 Fc(void,SetDlgItemText,HWND,a,WORD,b,LPSTR,c)
2884 Fc(void,SetSysColors,int,a,LPINT,b,COLORREF*,c)
2885 Fc(void,ShowScrollBar,HWND,a,WORD,b,BOOL,c)
2886 Fc(void,SwitchStackTo,WORD,a,WORD,b,WORD,c)
2887 Fd(BOOL,AppendMenu,HMENU,a,WORD,b,WORD,c,LPSTR,d)
2888 Fd(BOOL,PostMessage,HWND,a,WORD,b,WORD,c,LONG,d)
2889 Fd(LONG,SendMessage,HWND,a,WORD,b,WORD,c,LONG,d)
2890 Fd(BOOL,GetMessage,LPMSG,msg,HWND,b,WORD,c,WORD,d)
2891 Fd(BOOL,GetTextExtentPoint,HDC,a,LPSTR,b,short,c,LPSIZE,d)
2892 Fd(BOOL,DrawIcon,HDC,a,short,b,short,c,HICON,d)
2893 Fd(BOOL,EnumMetaFile,HDC,a,LOCALHANDLE,b,FARPROC,c,BYTE FAR*,d)
2894 Fd(BOOL,FloodFill,HDC,a,short,b,short,c,DWORD,d)
2895 Fd(BOOL,GetCharWidth,HDC,a,WORD,b,WORD,c,LPINT,d)
2896 Fd(BOOL,HiliteMenuItem,HWND,a,HMENU,b,WORD,c,WORD,d)
2897 Fd(BOOL,MoveToEx,HDC,a,short,b,short,c,LPPOINT,d)
2898 Fd(BOOL,PolyPolygon,HDC,a,LPPOINT,b,LPINT,c,int,d)
2899 Fd(BOOL,PostAppMessage,HANDLE,a,WORD,b,WORD,c,LONG,d)
2900 Fd(BOOL,RedrawWindow,HWND,a,LPRECT,b,HRGN,c,UINT,d)
2901 Fd(BOOL,SetBitmapDimensionEx,HBITMAP,a,short,b,short,c,LPSIZE,d)
2902 Fd(BOOL,WinHelp,HWND,hwndMain,LPSTR,lpszHelp,WORD,usCommand,DWORD,ulData)
2903 Fd(BOOL,WritePrivateProfileString,LPSTR,a,LPSTR,b,LPSTR,c,LPSTR,d)
2904 Fd(DWORD,DefHookProc,short,a,WORD,b,DWORD,c,HHOOK FAR*,d)
2905 Fd(DWORD,CallNextHookEx,HHOOK,a,short,b,WPARAM,c,LPARAM,d)
2906 Fd(COLORREF,SetPixel,HDC,a,short,b,short,c,COLORREF,d)
2907 Fd(HDC,CreateDC,LPSTR,a,LPSTR,b,LPSTR,c,LPSTR,d)
2908 Fd(HDC,CreateIC,LPSTR,a,LPSTR,b,LPSTR,c,LPSTR,d)
2909 Fd(HHOOK,SetWindowsHookEx,short,a,HOOKPROC,b,HINSTANCE,c,HTASK,d)
2910 Fd(HRGN,CreateEllipticRgn,short,a,short,b,short,c,short,d)
2911 Fd(HRGN,CreatePolyPolygonRgn,LPPOINT,a,LPINT,b,short,c,short,d)
2912 Fd(HRGN,CreateRectRgn,short,a,short,b,short,c,short,d)
2913 Fd(HWND,CreateDialog,HANDLE,a,LPCSTR,b,HWND,c,FARPROC,d)
2914 Fd(HWND,CreateDialogIndirect,HANDLE,a,LPCSTR,b,HWND,c,FARPROC,d)
2915 Fd(LONG,DefDlgProc,HWND,a,WORD,b,WORD,c,LONG,d)
2916 Fd(LONG,DefMDIChildProc,HWND,a,WORD,b,WORD,c,LONG,d)
2917 Fd(LONG,DefWindowProc,HWND,a,WORD,b,WORD,c,LONG,d)
2918 Fd(WORD,GetDlgItemInt,HWND,a,WORD,b,BOOL FAR*,c,BOOL,d)
2919 Fd(WORD,GetPaletteEntries,HPALETTE,a,WORD,b,WORD,c,LPPALETTEENTRY,d)
2920 Fd(WORD,GetPrivateProfileInt,LPSTR,a,LPSTR,b,short,c,LPSTR,d)
2921 Fd(WORD,GetSystemPaletteEntries,HDC,a,WORD,b,WORD,c,LPPALETTEENTRY,d)
2922 Fd(WORD,SetPaletteEntries,HPALETTE,a,WORD,b,WORD,c,LPPALETTEENTRY,d)
2923 Fd(WORD,SetTimer,HWND,a,WORD,d,WORD,b,FARPROC,c)
2924 Fd(BOOL,SetViewportExtEx,HDC,a,short,b,short,c,LPSIZE,d)
2925 Fd(BOOL,SetViewportOrgEx,HDC,a,short,b,short,c,LPPOINT,d)
2926 Fd(BOOL,SetWindowExtEx,HDC,a,short,b,short,c,LPSIZE,d)
2927 Fd(BOOL,SetWindowOrgEx,HDC,a,short,b,short,c,LPPOINT,d)
2928 Fd(BOOL,OffsetViewportOrgEx,HDC,a,short,b,short,c,LPPOINT,d)
2929 Fd(BOOL,OffsetWindowOrgEx,HDC,a,short,b,short,c,LPPOINT,d)
2930 Fd(int,CombineRgn,HRGN,a,HRGN,b,HRGN,c,short,d)
2931 Fd(int,DialogBox,HINSTANCE,a,LPCSTR,b,HWND,c,FARPROC,d)
2932 Fd(int,DialogBoxIndirect,HANDLE,a,HANDLE,b,HWND,c,FARPROC,d)
2933 Fd(int,EnumFonts,HDC,a,LPSTR,b,FARPROC,c,LPSTR,d)
2934 Fd(int,EnumObjects,HDC,a,int,b,FARPROC,c,LPSTR,d)
2935 Fd(int,GetDlgItemText,HWND,a,WORD,b,LPSTR,c,WORD,d)
2936 Fd(INT,GetTempFileName,BYTE,a,LPCSTR,b,UINT,c,LPSTR,d)
2937 Fd(int,LoadString,HANDLE,a,WORD,b,LPSTR,c,int,d)
2938 Fd(int,MessageBox,HWND,a,LPSTR,b,LPSTR,c,WORD,d)
2939 Fd(int,SetScrollPos,HWND,a,int,b,int,c,BOOL,d)
2940 Fd(int,SetVoiceNote,int,a,int,b,int,c,int,d)
2941 Fd(void,AdjustWindowRectEx,LPRECT,a,DWORD,b,BOOL,c,DWORD,d)
2942 Fd(void,AnimatePalette,HPALETTE,a,WORD,b,WORD,c,LPPALETTEENTRY,d)
2943 Fd(void,CheckRadioButton,HWND,a,WORD,b,WORD,c,WORD,d)
2944 Fd(void,CreateCaret,HWND,a,HBITMAP,b,short,c,short,d)
2945 Fd(void,FillWindow,HWND,a,HWND,b,HDC,c,HBRUSH,d)
2946 Fd(void,GetScrollRange,HWND,a,int,b,LPINT,c,LPINT,d)
2947 Fd(void,MapWindowPoints,HWND,a,HWND,b,LPPOINT,c,WORD,d)
2948 Fd(void,PlayMetaFileRecord,HDC,a,LPHANDLETABLE,b,LPMETARECORD,c,WORD,d)
2949 Fd(void,SetInternalWindowPos,HWND,a,WORD,b,LPRECT,c,LPPOINT,d)
2950 Fd(void,SetDlgItemInt,HWND,a,WORD,b,WORD,c,BOOL,d)
2951 Fe(BOOL,Rectangle,HDC,a,int,xLeft,int,yTop,int,xRight,int,yBottom)
2952 Fe(int,DrawText,HDC,a,LPSTR,str,int,c,LPRECT,d,WORD,flag)
2953 Fe(BOOL,PeekMessage,LPMSG,a,HWND,b,WORD,c,WORD,d,WORD,e)
2954 Fe(LONG,CallWindowProc,FARPROC,a,HWND,b,WORD,c,WORD,d,LONG,e)
2955 Fe(BOOL,ChangeMenu,HMENU,a,WORD,b,LPSTR,c,WORD,d,WORD,e)
2956 Fe(BOOL,Ellipse,HDC,a,int,b,int,c,int,d,int,e)
2957 Fe(BOOL,ExtFloodFill,HDC,a,int,b,int,c,DWORD,d,WORD,e)
2958 Fe(BOOL,FrameRgn,HDC,a,HRGN,b,HBRUSH,e,int,c,int,d)
2959 Fe(BOOL,InsertMenu,HMENU,a,WORD,b,WORD,c,WORD,d,LPSTR,e)
2960 Fe(BOOL,ModifyMenu,HMENU,a,WORD,b,WORD,c,WORD,d,LPSTR,e)
2961 Fe(BOOL,SetMenuItemBitmaps,HMENU,a,WORD,b,WORD,c,HBITMAP,d,HBITMAP,e)
2962 Fe(BOOL,TextOut,HDC,a,short,b,short,c,LPSTR,d,short,e)
2963 Fe(DWORD,GetTabbedTextExtent,HDC,a,LPSTR,b,int,c,int,d,LPINT,e)
2964 Fe(DWORD,ScaleViewportExt,HDC,a,short,b,short,c,short,d,short,e)
2965 Fe(DWORD,ScaleWindowExt,HDC,a,short,b,short,c,short,d,short,e)
2966 Fe(HBITMAP,CreateBitmap,short,a,short,b,BYTE,c,BYTE,d,LPSTR,e)
2967 Fe(HWND,CreateDialogIndirectParam,HANDLE,a,LPCSTR,b,HWND,c,FARPROC,d,LPARAM,e)
2968 Fe(HWND,CreateDialogParam,HANDLE,a,LPCSTR,b,HWND,c,FARPROC,d,LPARAM,e)
2969 Fe(LONG,DefFrameProc,HWND,a,HWND,b,WORD,c,WORD,d,LONG,e)
2970 Fe(LONG,SendDlgItemMessage,HWND,a,WORD,b,WORD,c,WORD,d,LONG,e)
2971 Fe(int,DialogBoxIndirectParam,HANDLE,a,HANDLE,b,HWND,c,FARPROC,d,LONG,e)
2972 Fe(int,DialogBoxParam,HANDLE,a,LPCSTR,b,HWND,c,FARPROC,d,LONG,e)
2973 Fe(int,DlgDirList,HWND,a,LPSTR,b,int,c,int,d,WORD,e)
2974 Fe(int,DlgDirListComboBox,HWND,a,LPSTR,b,int,c,int,d,WORD,e)
2975 Fe(int,Escape,HDC,a,int,b,int,c,LPSTR,d,LPSTR,e)
2976 Fe(int,ExcludeClipRect,HDC,a,short,b,short,c,short,d,short,e)
2977 Fe(int,ExcludeVisRect,HDC,a,short,b,short,c,short,d,short,e)
2978 Fe(int,GetMenuString,HMENU,a,WORD,b,LPSTR,c,short,d,WORD,e)
2979 Fe(int,GetProfileString,LPSTR,a,LPSTR,b,LPSTR,c,LPSTR,d,int,e)
2980 Fe(int,IntersectClipRect,HDC,a,short,b,short,c,short,d,short,e)
2981 Fe(int,IntersectVisRect,HDC,a,short,b,short,c,short,d,short,e)
2982 Fe(int,SetVoiceAccent,int,a,int,b,int,c,int,d,int,e)
2983 Fe(int,ToAscii,WORD,wVirtKey,WORD,wScanCode,LPSTR,lpKeyState,LPVOID,lpChar,WORD,wFlags)
2984 Fe(void,PaintRect,HWND,a,HWND,b,HDC,c,HBRUSH,d,LPRECT,e)
2985 Fe(void,ScrollWindow,HWND,a,short,b,short,c,LPRECT,d,LPRECT,e)
2986 Fe(void,SetRect,LPRECT,a,short,b,short,c,short,d,short,e)
2987 Fe(void,SetRectRgn,HRGN,a,short,b,short,c,short,d,short,e)
2988 Fe(void,SetScrollRange,HWND,a,int,b,int,c,int,d,BOOL,e)
2989 Ff(BOOL,PatBlt,HDC,a,short,b,short,c,short,d,short,e,DWORD,f)
2990 Ff(HBITMAP,CreateDIBitmap,HDC,a,LPBITMAPINFOHEADER,b,DWORD,c,LPSTR,d,LPBITMAPINFO,e,WORD,f)
2991 Ff(HRGN,CreateRoundRectRgn,short,a,short,b,short,c,short,d,short,e,short,f)
2992 Ff(short,GetPrivateProfileString,LPSTR,a,LPSTR,b,LPSTR,c,LPSTR,d,short,e,LPSTR,f)
2993 Ff(void,LineDDA,short,a,short,b,short,c,short,d,FARPROC,e,long,f)
2994 Ff(BOOL,MoveWindow,HWND,a,short,b,short,c,short,d,short,e,BOOL,f)
2995 Ff(BOOL,ScaleViewportExtEx,HDC,a,short,b,short,c,short,d,short,e,LPSIZE,f)
2996 Ff(BOOL,ScaleWindowExtEx,HDC,a,short,b,short,c,short,d,short,e,LPSIZE,f)
2997 Fg(BOOL,RoundRect,HDC,a,short,b,short,c,short,d,short,e,short,f,short,g)
2998 Fg(BOOL,ScrollDC,HDC,a,short,b,short,c,LPRECT,d,LPRECT,e,HRGN,f,LPRECT,g)
2999 Fg(BOOL,TrackPopupMenu,HMENU,a,WORD,b,short,c,short,d,short,e,HWND,f,LPRECT,g)
3000 Fg(HCURSOR,CreateCursor,HANDLE,a,short,b,short,c,short,d,short,e,LPSTR,f,LPSTR,g)
3001 Fg(HICON,CreateIcon,HANDLE,a,int,b,int,c,BYTE,d,BYTE,e,LPSTR,f,LPSTR,g)
3002 Fg(int,GetDIBits,HDC,a,HANDLE,a2,WORD,b,WORD,c,LPSTR,d,LPBITMAPINFO,e,WORD,f)
3003 Fg(int,SetDIBits,HDC,a,HANDLE,a2,WORD,b,WORD,c,LPSTR,d,LPBITMAPINFO,e,WORD,f)
3004 Fg(BOOL,SetWindowPos,HWND,a,HWND,b,short,c,short,d,short,e,short,f,WORD,g)
3005 Fh(BOOL,ExtTextOut,HDC,a,short,b,short,c,WORD,d,LPRECT,e,LPSTR,f,WORD,g,LPINT,h)
3006 Fh(HANDLE,DeferWindowPos,HANDLE,hWinPosInfo,HWND,hWnd,HWND,hWndInsertAfter,int,x,int,y,int,cx,int,cy,WORD,wFlags)
3007 Fh(LONG,TabbedTextOut,HDC,a,int,b,int,c,LPSTR,d,int,e,int,f,LPINT,g,int,h)
3008 Fh(int,ScrollWindowEx,HWND,a,short,b,short,c,LPRECT,d,LPRECT,e,HRGN,f,LPRECT,g,WORD,h)
3009 Fi(BOOL,Arc,HDC,a,int,xLeft,int,yTop,int,xRight,int,yBottom,int,xStart,int,yStart,int,xEnd,int,yEnd)
3010 Fi(BOOL,Chord,HDC,a,int,xLeft,int,yTop,int,xRight,int,yBottom,int,xStart,int,yStart,int,xEnd,int,yEnd)
3011 Fi(BOOL,BitBlt,HDC,a,short,b,short,c,short,d,short,e,HDC,f,short,g,short,h,DWORD,i)
3012 Fi(BOOL,GrayString,HDC,a,HBRUSH,b,FARPROC,gsprc,LPARAM,lParam,INT,cch,INT,x,INT,y,INT,cx,INT,cy)
3013 Fi(BOOL,Pie,HDC,a,int,xLeft,int,yTop,int,xRight,int,yBottom,int,xStart,int,yStart,int,xEnd,int,yEnd)
3014 Fk(HWND,CreateWindow,LPSTR,szAppName,LPSTR,Label,DWORD,ol,short,x,short,y,short,w,short,h,HWND,d,HMENU,e,,HANDLE i,LPSTR,g)
3015 Fk(BOOL,StretchBlt,HDC,a,short,b,short,c,short,d,short,e,HDC,f,short,g,short,h,short,i,short,j,DWORD,k)
3016 Fl(HWND,CreateWindowEx,DWORD,a,LPSTR,b,LPSTR,c,DWORD,d,short,e,short,f,short,g,short,h,HWND,i,HMENU,j,HANDLE,k,LPSTR,l)
3017 Fl(int,SetDIBitsToDevice,HDC,a,short,b,short,c,WORD,d,WORD,e,WORD,f,WORD,g,WORD,h,WORD,i,LPSTR,j,LPBITMAPINFO,k,WORD,l)
3018 Fm(int,StretchDIBits,HDC,a,WORD,b,WORD,c,WORD,d,WORD,e,WORD,f,WORD,g,WORD,h,WORD,i,LPSTR,j,LPBITMAPINFO,k,WORD,l,DWORD,m)
3019 Fn(HFONT,CreateFont,int,a,int,b,int,c,int,d,int,e,BYTE,f,BYTE,g,BYTE,h,BYTE,i,BYTE,j,BYTE,k,BYTE,l,BYTE,m,LPSTR,n)
3021 #endif /* WINDOWS_H */