Fixed Get/SetThreadContext to work properly on suspended threads.
[wine] / include / wine / wingdi16.h
1 /*
2  * Copyright (C) the Wine project
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17  */
18
19 #ifndef __WINE_WINE_WINGDI16_H
20 #define __WINE_WINE_WINGDI16_H
21
22 #include <stdarg.h>
23 #include <windef.h>
24 #include <winbase.h>
25 #include <wingdi.h>
26 #include <wine/winbase16.h>
27
28 #include <pshpack1.h>
29
30 typedef HANDLE16 HPQ16;
31 typedef HANDLE16 HPJOB16;
32
33 typedef struct
34 {
35     WORD   wFirst;
36     WORD   wSecond;
37     INT16  iKernAmount;
38 } KERNINGPAIR16, *LPKERNINGPAIR16;
39
40 typedef struct
41 {
42     INT16  bmType;
43     INT16  bmWidth;
44     INT16  bmHeight;
45     INT16  bmWidthBytes;
46     BYTE   bmPlanes;
47     BYTE   bmBitsPixel;
48     SEGPTR bmBits;
49 } BITMAP16, *LPBITMAP16;
50
51 typedef struct
52 {
53     UINT16     lbStyle;
54     COLORREF   lbColor;
55     INT16      lbHatch;
56 } LOGBRUSH16, *LPLOGBRUSH16;
57
58 typedef struct
59 {
60     INT16  lfHeight;
61     INT16  lfWidth;
62     INT16  lfEscapement;
63     INT16  lfOrientation;
64     INT16  lfWeight;
65     BYTE   lfItalic;
66     BYTE   lfUnderline;
67     BYTE   lfStrikeOut;
68     BYTE   lfCharSet;
69     BYTE   lfOutPrecision;
70     BYTE   lfClipPrecision;
71     BYTE   lfQuality;
72     BYTE   lfPitchAndFamily;
73     CHAR   lfFaceName[LF_FACESIZE];
74 } LOGFONT16, *LPLOGFONT16;
75
76 typedef struct
77 {
78   LOGFONT16  elfLogFont;
79   BYTE       elfFullName[LF_FULLFACESIZE];
80   BYTE       elfStyle[LF_FACESIZE];
81 } ENUMLOGFONT16, *LPENUMLOGFONT16;
82
83 typedef struct
84 {
85   LOGFONT16  elfLogFont;
86   BYTE       elfFullName[LF_FULLFACESIZE];
87   BYTE       elfStyle[LF_FACESIZE];
88   BYTE       elfScript[LF_FACESIZE];
89 } ENUMLOGFONTEX16, *LPENUMLOGFONTEX16;
90
91 typedef struct
92 {
93     INT16  txfHeight;
94     INT16  txfWidth;
95     INT16  txfEscapement;
96     INT16  txfOrientation;
97     INT16  txfWeight;
98     CHAR   txfItalic;
99     CHAR   txfUnderline;
100     CHAR   txfStrikeOut;
101     CHAR   txfOutPrecision;
102     CHAR   txfClipPrecision;
103     INT16  txfAccelerator;
104     INT16  txfOverhang;
105 } TEXTXFORM16, *LPTEXTXFORM16;
106
107 typedef struct
108 {
109     INT16 dfType;
110     INT16 dfPoints;
111     INT16 dfVertRes;
112     INT16 dfHorizRes;
113     INT16 dfAscent;
114     INT16 dfInternalLeading;
115     INT16 dfExternalLeading;
116     CHAR  dfItalic;
117     CHAR  dfUnderline;
118     CHAR  dfStrikeOut;
119     INT16 dfWeight;
120     BYTE  dfCharSet;
121     INT16 dfPixWidth;
122     INT16 dfPixHeight;
123     CHAR  dfPitchAndFamily;
124     INT16 dfAvgWidth;
125     INT16 dfMaxWidth;
126     CHAR  dfFirstChar;
127     CHAR  dfLastChar;
128     CHAR  dfDefaultChar;
129     CHAR  dfBreakChar;
130     INT16 dfWidthBytes;
131     LONG  dfDevice;
132     LONG  dfFace;
133     LONG  dfBitsPointer;
134     LONG  dfBitsOffset;
135     CHAR  dfReserved;
136     /* Fields, introduced for Windows 3.x fonts */
137     LONG  dfFlags;
138     INT16 dfAspace;
139     INT16 dfBspace;
140     INT16 dfCspace;
141     LONG  dfColorPointer;
142     LONG  dfReserved1[4];
143 } FONTINFO16, *LPFONTINFO16;
144
145 typedef struct {
146     WORD   dfVersion;
147     DWORD  dfSize;
148     CHAR   dfCopyright[60];
149     WORD   dfType;
150     WORD   dfPoints;
151     WORD   dfVertRes;
152     WORD   dfHorizRes;
153     WORD   dfAscent;
154     WORD   dfInternalLeading;
155     WORD   dfExternalLeading;
156     BYTE   dfItalic;
157     BYTE   dfUnderline;
158     BYTE   dfStrikeOut;
159     WORD   dfWeight;
160     BYTE   dfCharSet;
161     WORD   dfPixWidth;
162     WORD   dfPixHeight;
163     BYTE   dfPitchAndFamily;
164     WORD   dfAvgWidth;
165     WORD   dfMaxWidth;
166     BYTE   dfFirstChar;
167     BYTE   dfLastChar;
168     BYTE   dfDefaultChar;
169     BYTE   dfBreakChar;
170     WORD   dfWidthBytes;
171     DWORD  dfDevice;
172     DWORD  dfFace;
173     DWORD  dfReserved;
174     CHAR   szDeviceName[60]; /* FIXME: length unknown */
175     CHAR   szFaceName[60];   /* dito */
176 } FONTDIR16, *LPFONTDIR16;
177
178 typedef struct
179 {
180     INT16     tmHeight;
181     INT16     tmAscent;
182     INT16     tmDescent;
183     INT16     tmInternalLeading;
184     INT16     tmExternalLeading;
185     INT16     tmAveCharWidth;
186     INT16     tmMaxCharWidth;
187     INT16     tmWeight;
188     BYTE      tmItalic;
189     BYTE      tmUnderlined;
190     BYTE      tmStruckOut;
191     BYTE      tmFirstChar;
192     BYTE      tmLastChar;
193     BYTE      tmDefaultChar;
194     BYTE      tmBreakChar;
195     BYTE      tmPitchAndFamily;
196     BYTE      tmCharSet;
197     INT16     tmOverhang;
198     INT16     tmDigitizedAspectX;
199     INT16     tmDigitizedAspectY;
200 } TEXTMETRIC16, *LPTEXTMETRIC16;
201
202 typedef struct _OUTLINETEXTMETRIC16
203 {
204     UINT16          otmSize;
205     TEXTMETRIC16    otmTextMetrics;
206     BYTE            otmFiller;
207     PANOSE          otmPanoseNumber;
208     UINT16          otmfsSelection;
209     UINT16          otmfsType;
210     INT16           otmsCharSlopeRise;
211     INT16           otmsCharSlopeRun;
212     INT16           otmItalicAngle;
213     UINT16          otmEMSquare;
214     INT16           otmAscent;
215     INT16           otmDescent;
216     UINT16          otmLineGap;
217     UINT16          otmsCapEmHeight;
218     UINT16          otmsXHeight;
219     RECT16          otmrcFontBox;
220     INT16           otmMacAscent;
221     INT16           otmMacDescent;
222     UINT16          otmMacLineGap;
223     UINT16          otmusMinimumPPEM;
224     POINT16         otmptSubscriptSize;
225     POINT16         otmptSubscriptOffset;
226     POINT16         otmptSuperscriptSize;
227     POINT16         otmptSuperscriptOffset;
228     UINT16          otmsStrikeoutSize;
229     INT16           otmsStrikeoutPosition;
230     INT16           otmsUnderscoreSize;
231     INT           otmsUnderscorePosition;
232     LPSTR           otmpFamilyName;
233     LPSTR           otmpFaceName;
234     LPSTR           otmpStyleName;
235     LPSTR           otmpFullName;
236 } OUTLINETEXTMETRIC16,*LPOUTLINETEXTMETRIC16;
237
238 typedef struct
239 {
240     INT16     tmHeight;
241     INT16     tmAscent;
242     INT16     tmDescent;
243     INT16     tmInternalLeading;
244     INT16     tmExternalLeading;
245     INT16     tmAveCharWidth;
246     INT16     tmMaxCharWidth;
247     INT16     tmWeight;
248     BYTE      tmItalic;
249     BYTE      tmUnderlined;
250     BYTE      tmStruckOut;
251     BYTE      tmFirstChar;
252     BYTE      tmLastChar;
253     BYTE      tmDefaultChar;
254     BYTE      tmBreakChar;
255     BYTE      tmPitchAndFamily;
256     BYTE      tmCharSet;
257     INT16     tmOverhang;
258     INT16     tmDigitizedAspectX;
259     INT16     tmDigitizedAspectY;
260     DWORD     ntmFlags;
261     UINT16    ntmSizeEM;
262     UINT16    ntmCellHeight;
263     UINT16    ntmAvgWidth;
264 } NEWTEXTMETRIC16,*LPNEWTEXTMETRIC16;
265
266 typedef struct
267 {
268     NEWTEXTMETRIC16     ntmTm;
269     FONTSIGNATURE       ntmFontSig;
270 } NEWTEXTMETRICEX16,*LPNEWTEXTMETRICEX16;
271
272 typedef BOOL16 (CALLBACK *DCHOOKPROC)(HDC16,WORD,DWORD,LPARAM);
273 typedef INT16 (CALLBACK *FONTENUMPROC16)(SEGPTR,SEGPTR,UINT16,LPARAM);
274 typedef VOID  (CALLBACK *LINEDDAPROC16)(INT16,INT16,LPARAM);
275 typedef INT16 (CALLBACK *GOBJENUMPROC16)(SEGPTR,LPARAM);
276
277
278 typedef struct
279 {
280     UINT16      gmBlackBoxX;
281     UINT16      gmBlackBoxY;
282     POINT16     gmptGlyphOrigin;
283     INT16       gmCellIncX;
284     INT16       gmCellIncY;
285 } GLYPHMETRICS16, *LPGLYPHMETRICS16;
286
287 typedef struct
288 {
289     INT16   abcA;
290     UINT16  abcB;
291     INT16   abcC;
292 } ABC16, *LPABC16;
293
294 typedef struct
295 {
296     UINT16   lopnStyle;
297     POINT16  lopnWidth;
298     COLORREF lopnColor;
299 } LOGPEN16, *LPLOGPEN16;
300
301 typedef struct
302 {
303     HGDIOBJ16 objectHandle[1];
304 } HANDLETABLE16, *LPHANDLETABLE16;
305
306 typedef struct
307 {
308     INT16        mm;
309     INT16        xExt;
310     INT16        yExt;
311     HMETAFILE16  hMF;
312 } METAFILEPICT16, *LPMETAFILEPICT16;
313
314 typedef INT16 (CALLBACK *MFENUMPROC16)(HDC16,HANDLETABLE16*,METARECORD*,
315                                        INT16,LPARAM);
316 typedef struct
317 {
318     INT16    cbSize;
319     SEGPTR   lpszDocName;
320     SEGPTR   lpszOutput;
321     SEGPTR   lpszDatatype;
322     DWORD    fwType;
323 } DOCINFO16, *LPDOCINFO16;
324
325 typedef BOOL16 (CALLBACK *ABORTPROC16)(HDC16, INT16);
326
327 #define INT_PD_DEFAULT_DEVMODE  1
328 #define INT_PD_DEFAULT_MODEL    2
329
330 /* Escape: CLIP_TO_PATH modes */
331 #define CLIP_SAVE 0
332 #define CLIP_RESTORE 1
333 #define CLIP_INCLUSIVE 2
334 #define CLIP_EXCLUSIVE 3
335
336 /* Escape: END_PATH info */
337 struct PATH_INFO {
338     short RenderMode;
339     BYTE FillMode;
340     BYTE BkMode;
341     LOGPEN16 Pen;
342     LOGBRUSH16 Brush;
343     DWORD BkColor;
344 };
345
346 /* DC hook codes */
347 #define DCHC_INVALIDVISRGN      0x0001
348 #define DCHC_DELETEDC           0x0002
349
350 #define DCHF_INVALIDATEVISRGN   0x0001
351 #define DCHF_VALIDATEVISRGN     0x0002
352
353 /* RenderMode */
354 #define RENDERMODE_NO_DISPLAY 0
355 #define RENDERMODE_OPEN 1
356 #define RENDERMODE_CLOSED 2
357
358 /* For DRAWPATTERNRECT Escape, 16bit mode */
359 typedef struct _DRAWPATRECT16
360 {
361     POINT16     ptPosition;
362     POINT16     ptSize;
363     WORD        wStyle;
364     WORD        wPattern;
365 } DRAWPATRECT16, *PDRAWPATRECT16;
366
367 #include <poppack.h>
368
369
370 INT16       WINAPI AbortDoc16(HDC16);
371 BOOL16      WINAPI AbortPath16(HDC16);
372 INT16       WINAPI AddFontResource16(LPCSTR);
373 void        WINAPI AnimatePalette16(HPALETTE16,UINT16,UINT16,const PALETTEENTRY*);
374 BOOL16      WINAPI Arc16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,INT16,INT16);
375 BOOL16      WINAPI BeginPath16(HDC16);
376 BOOL16      WINAPI BitBlt16(HDC16,INT16,INT16,INT16,INT16,HDC16,INT16,INT16,DWORD);
377 BOOL16      WINAPI Chord16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,INT16,INT16);
378 BOOL16      WINAPI CloseFigure16(HDC16);
379 INT16       WINAPI CloseJob16(HPJOB16);
380 HMETAFILE16 WINAPI CloseMetaFile16(HDC16);
381 INT16       WINAPI CombineRgn16(HRGN16,HRGN16,HRGN16,INT16);
382 HMETAFILE16 WINAPI CopyMetaFile16(HMETAFILE16,LPCSTR);
383 HBITMAP16   WINAPI CreateBitmap16(INT16,INT16,UINT16,UINT16,LPCVOID);
384 HBITMAP16   WINAPI CreateBitmapIndirect16(const BITMAP16*);
385 HBRUSH16    WINAPI CreateBrushIndirect16(const LOGBRUSH16*);
386 HBITMAP16   WINAPI CreateCompatibleBitmap16(HDC16,INT16,INT16);
387 HDC16       WINAPI CreateCompatibleDC16(HDC16);
388 HDC16       WINAPI CreateDC16(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);
389 HBITMAP16   WINAPI CreateDIBitmap16(HDC16,const BITMAPINFOHEADER*,DWORD,
390                                     LPCVOID,const BITMAPINFO*,UINT16);
391 HBRUSH16    WINAPI CreateDIBPatternBrush16(HGLOBAL16,UINT16);
392 HBITMAP16   WINAPI CreateDIBSection16 (HDC16, const BITMAPINFO *, UINT16,
393                                        SEGPTR *, HANDLE, DWORD offset);
394 HBITMAP16   WINAPI CreateDiscardableBitmap16(HDC16,INT16,INT16);
395 HRGN16      WINAPI CreateEllipticRgn16(INT16,INT16,INT16,INT16);
396 HRGN16      WINAPI CreateEllipticRgnIndirect16(const RECT16 *);
397 HFONT16     WINAPI CreateFont16(INT16,INT16,INT16,INT16,INT16,BYTE,BYTE,BYTE,
398                                 BYTE,BYTE,BYTE,BYTE,BYTE,LPCSTR);
399 HFONT16     WINAPI CreateFontIndirect16(const LOGFONT16*);
400 HPALETTE16  WINAPI CreateHalftonePalette16(HDC16);
401 HBRUSH16    WINAPI CreateHatchBrush16(INT16,COLORREF);
402 HDC16       WINAPI CreateIC16(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);
403 HDC16       WINAPI CreateMetaFile16(LPCSTR);
404 HPALETTE16  WINAPI CreatePalette16(const LOGPALETTE*);
405 HBRUSH16    WINAPI CreatePatternBrush16(HBITMAP16);
406 HPEN16      WINAPI CreatePen16(INT16,INT16,COLORREF);
407 HPEN16      WINAPI CreatePenIndirect16(const LOGPEN16*);
408 HRGN16      WINAPI CreatePolyPolygonRgn16(const POINT16*,const INT16*,INT16,INT16);
409 HRGN16      WINAPI CreatePolygonRgn16(const POINT16*,INT16,INT16);
410 HRGN16      WINAPI CreateRectRgn16(INT16,INT16,INT16,INT16);
411 HRGN16      WINAPI CreateRectRgnIndirect16(const RECT16*);
412 HRGN16      WINAPI CreateRoundRectRgn16(INT16,INT16,INT16,INT16,INT16,INT16);
413 BOOL16      WINAPI CreateScalableFontResource16(UINT16,LPCSTR,LPCSTR,LPCSTR);
414 HBRUSH16    WINAPI CreateSolidBrush16(COLORREF);
415 VOID        WINAPI Death16(HDC16);
416 BOOL16      WINAPI DeleteDC16(HDC16);
417 INT16       WINAPI DeleteJob16(HPJOB16,INT16);
418 BOOL16      WINAPI DeleteMetaFile16(HMETAFILE16);
419 BOOL16      WINAPI DeleteObject16(HGDIOBJ16);
420 BOOL16      WINAPI DPtoLP16(HDC16,LPPOINT16,INT16);
421 DWORD       WINAPI DrvGetPrinterData16(LPSTR,LPSTR,LPDWORD,LPBYTE,int cbData,LPDWORD);
422 DWORD       WINAPI DrvSetPrinterData16(LPSTR,LPSTR,DWORD,LPBYTE,DWORD);
423 BOOL16      WINAPI Ellipse16(HDC16,INT16,INT16,INT16,INT16);
424 INT16       WINAPI EndDoc16(HDC16);
425 INT16       WINAPI EndPage16(HDC16);
426 BOOL16      WINAPI EndPath16(HDC16);
427 INT16       WINAPI EndSpoolPage16(HPJOB16);
428 INT16       WINAPI EnumFontFamilies16(HDC16,LPCSTR,FONTENUMPROC16,LPARAM);
429 INT16       WINAPI EnumFontFamiliesEx16(HDC16,LPLOGFONT16,FONTENUMPROC16,LPARAM,DWORD);
430 INT16       WINAPI EnumFonts16(HDC16,LPCSTR,FONTENUMPROC16,LPARAM);
431 BOOL16      WINAPI EnumMetaFile16(HDC16,HMETAFILE16,MFENUMPROC16,LPARAM);
432 INT16       WINAPI EnumObjects16(HDC16,INT16,GOBJENUMPROC16,LPARAM);
433 BOOL16      WINAPI EqualRgn16(HRGN16,HRGN16);
434 INT16       WINAPI Escape16(HDC16,INT16,INT16,SEGPTR,LPVOID);
435 INT16       WINAPI ExcludeClipRect16(HDC16,INT16,INT16,INT16,INT16);
436 INT16       WINAPI ExcludeVisRect16(HDC16,INT16,INT16,INT16,INT16);
437 HPEN16      WINAPI ExtCreatePen16(DWORD,DWORD,const LOGBRUSH16*,DWORD,const DWORD*);
438 BOOL16      WINAPI ExtFloodFill16(HDC16,INT16,INT16,COLORREF,UINT16);
439 BOOL16      WINAPI ExtTextOut16(HDC16,INT16,INT16,UINT16,const RECT16*,
440                                 LPCSTR,UINT16,const INT16*);
441 BOOL16      WINAPI FastWindowFrame16(HDC16,const RECT16*,INT16,INT16,DWORD);
442 BOOL16      WINAPI FillPath16(HDC16);
443 BOOL16      WINAPI FillRgn16(HDC16,HRGN16,HBRUSH16);
444 BOOL16      WINAPI FlattenPath16(HDC16);
445 BOOL16      WINAPI FloodFill16(HDC16,INT16,INT16,COLORREF);
446 BOOL16      WINAPI FrameRgn16(HDC16,HRGN16,HBRUSH16,INT16,INT16);
447 UINT16      WINAPI GDIRealizePalette16(HDC16);
448 DWORD       WINAPI GdiSeeGdiDo16(WORD,WORD,WORD,WORD);
449 HPALETTE16  WINAPI GDISelectPalette16(HDC16,HPALETTE16,WORD);
450 INT16       WINAPI GetArcDirection16(HDC16);
451 BOOL16      WINAPI GetAspectRatioFilterEx16(HDC16,LPSIZE16);
452 LONG        WINAPI GetBitmapBits16(HBITMAP16,LONG,LPVOID);
453 DWORD       WINAPI GetBitmapDimension16(HBITMAP16);
454 BOOL16      WINAPI GetBitmapDimensionEx16(HBITMAP16,LPSIZE16);
455 DWORD       WINAPI GetBrushOrg16(HDC16);
456 BOOL16      WINAPI GetBrushOrgEx16(HDC16,LPPOINT16);
457 COLORREF    WINAPI GetBkColor16(HDC16);
458 INT16       WINAPI GetBkMode16(HDC16);
459 UINT16      WINAPI GetBoundsRect16(HDC16,LPRECT16,UINT16);
460 BOOL16      WINAPI GetCharABCWidths16(HDC16,UINT16,UINT16,LPABC16);
461 BOOL16      WINAPI GetCharWidth16(HDC16,UINT16,UINT16,LPINT16);
462 INT16       WINAPI GetClipBox16(HDC16,LPRECT16);
463 HRGN16      WINAPI GetClipRgn16(HDC16);
464 HFONT16     WINAPI GetCurLogFont16(HDC16);
465 DWORD       WINAPI GetCurrentPosition16(HDC16);
466 BOOL16      WINAPI GetCurrentPositionEx16(HDC16,LPPOINT16);
467 DWORD       WINAPI GetDCHook16(HDC16,FARPROC16*);
468 DWORD       WINAPI GetDCOrg16(HDC16);
469 HDC16       WINAPI GetDCState16(HDC16);
470 INT16       WINAPI GetDeviceCaps16(HDC16,INT16);
471 UINT16      WINAPI GetDIBColorTable16(HDC16,UINT16,UINT16,RGBQUAD*);
472 INT16       WINAPI GetDIBits16(HDC16,HBITMAP16,UINT16,UINT16,LPVOID,LPBITMAPINFO,UINT16);
473 INT16       WINAPI GetEnvironment16(LPCSTR,LPDEVMODEA,UINT16);
474 DWORD       WINAPI GetFontData16(HDC16,DWORD,DWORD,LPVOID,DWORD);
475 DWORD       WINAPI GetFontLanguageInfo16(HDC16);
476 DWORD       WINAPI GetGlyphOutline16(HDC16,UINT16,UINT16,LPGLYPHMETRICS16,DWORD,LPVOID,const MAT2*);
477 INT16       WINAPI GetKerningPairs16(HDC16,INT16,LPKERNINGPAIR16);
478 INT16       WINAPI GetMapMode16(HDC16);
479 HMETAFILE16 WINAPI GetMetaFile16(LPCSTR);
480 HGLOBAL16   WINAPI GetMetaFileBits16(HMETAFILE16);
481 DWORD       WINAPI GetNearestColor16(HDC16,DWORD);
482 UINT16      WINAPI GetNearestPaletteIndex16(HPALETTE16,COLORREF);
483 INT16       WINAPI GetObject16(HANDLE16,INT16,LPVOID);
484 UINT16      WINAPI GetOutlineTextMetrics16(HDC16,UINT16,LPOUTLINETEXTMETRIC16);
485 UINT16      WINAPI GetPaletteEntries16(HPALETTE16,UINT16,UINT16,LPPALETTEENTRY);
486 INT16       WINAPI GetPath16(HDC16,LPPOINT16,LPBYTE,INT16);
487 COLORREF    WINAPI GetPixel16(HDC16,INT16,INT16);
488 INT16       WINAPI GetPolyFillMode16(HDC16);
489 BOOL16      WINAPI GetRasterizerCaps16(LPRASTERIZER_STATUS,UINT16);
490 DWORD       WINAPI GetRegionData16(HRGN16,DWORD,LPRGNDATA);
491 INT16       WINAPI GetRelAbs16(HDC16);
492 INT16       WINAPI GetRgnBox16(HRGN16,LPRECT16);
493 INT16       WINAPI GetROP216(HDC16);
494 DWORD       WINAPI GetSpoolJob16(int,LONG);
495 HGDIOBJ16   WINAPI GetStockObject16(INT16);
496 INT16       WINAPI GetStretchBltMode16(HDC16);
497 UINT16      WINAPI GetSystemPaletteEntries16(HDC16,UINT16,UINT16,LPPALETTEENTRY);
498 UINT16      WINAPI GetSystemPaletteUse16(HDC16);
499 UINT16      WINAPI GetTextAlign16(HDC16);
500 INT16       WINAPI GetTextCharacterExtra16(HDC16);
501 UINT16      WINAPI GetTextCharset16(HDC16);
502 COLORREF    WINAPI GetTextColor16(HDC16);
503 DWORD       WINAPI GetTextExtent16(HDC16,LPCSTR,INT16);
504 BOOL16      WINAPI GetTextExtentPoint16(HDC16,LPCSTR,INT16,LPSIZE16);
505 INT16       WINAPI GetTextFace16(HDC16,INT16,LPSTR);
506 BOOL16      WINAPI GetTextMetrics16(HDC16,LPTEXTMETRIC16);
507 DWORD       WINAPI GetViewportExt16(HDC16);
508 BOOL16      WINAPI GetViewportExtEx16(HDC16,LPSIZE16);
509 BOOL16      WINAPI GetViewportOrgEx16(HDC16,LPPOINT16);
510 DWORD       WINAPI GetViewportOrg16(HDC16);
511 DWORD       WINAPI GetWindowExt16(HDC16);
512 DWORD       WINAPI GetWindowOrg16(HDC16);
513 BOOL16      WINAPI GetWindowExtEx16(HDC16,LPSIZE16);
514 BOOL16      WINAPI GetWindowOrgEx16(HDC16,LPPOINT16);
515 HRGN16      WINAPI InquireVisRgn16(HDC16);
516 INT16       WINAPI IntersectClipRect16(HDC16,INT16,INT16,INT16,INT16);
517 INT16       WINAPI IntersectVisRect16(HDC16,INT16,INT16,INT16,INT16);
518 BOOL16      WINAPI InvertRgn16(HDC16,HRGN16);
519 BOOL16      WINAPI IsDCCurrentPalette16(HDC16);
520 BOOL16      WINAPI IsGDIObject16(HGDIOBJ16);
521 BOOL16      WINAPI IsValidMetaFile16(HMETAFILE16);
522 VOID        WINAPI LineDDA16(INT16,INT16,INT16,INT16,LINEDDAPROC16,LPARAM);
523 BOOL16      WINAPI LineTo16(HDC16,INT16,INT16);
524 BOOL16      WINAPI LPtoDP16(HDC16,LPPOINT16,INT16);
525 DWORD       WINAPI MoveTo16(HDC16,INT16,INT16);
526 BOOL16      WINAPI MoveToEx16(HDC16,INT16,INT16,LPPOINT16);
527 INT16       WINAPI MulDiv16(INT16,INT16,INT16);
528 INT16       WINAPI OffsetClipRgn16(HDC16,INT16,INT16);
529 INT16       WINAPI OffsetRgn16(HRGN16,INT16,INT16);
530 DWORD       WINAPI OffsetViewportOrg16(HDC16,INT16,INT16);
531 BOOL16      WINAPI OffsetViewportOrgEx16(HDC16,INT16,INT16,LPPOINT16);
532 INT16       WINAPI OffsetVisRgn16(HDC16,INT16,INT16);
533 DWORD       WINAPI OffsetWindowOrg16(HDC16,INT16,INT16);
534 BOOL16      WINAPI OffsetWindowOrgEx16(HDC16,INT16,INT16,LPPOINT16);
535 HANDLE16    WINAPI OpenJob16(LPCSTR,LPCSTR,HDC16);
536 BOOL16      WINAPI PaintRgn16(HDC16,HRGN16);
537 BOOL16      WINAPI PatBlt16(HDC16,INT16,INT16,INT16,INT16,DWORD);
538 HRGN16      WINAPI PathToRegion16(HDC16);
539 BOOL16      WINAPI Pie16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,INT16,INT16);
540 BOOL16      WINAPI PlayMetaFile16(HDC16,HMETAFILE16);
541 VOID        WINAPI PlayMetaFileRecord16(HDC16,LPHANDLETABLE16,LPMETARECORD,UINT16);
542 BOOL16      WINAPI PolyBezier16(HDC16,const POINT16*,INT16);
543 BOOL16      WINAPI PolyBezierTo16(HDC16,const POINT16*,INT16);
544 BOOL16      WINAPI PolyPolygon16(HDC16,const POINT16*,const INT16*,UINT16);
545 BOOL16      WINAPI Polygon16(HDC16,const POINT16*,INT16);
546 BOOL16      WINAPI Polyline16(HDC16,const POINT16*,INT16);
547 BOOL16      WINAPI PtInRegion16(HRGN16,INT16,INT16);
548 BOOL16      WINAPI PtVisible16(HDC16,INT16,INT16);
549 BOOL16      WINAPI QueryAbort16(HDC16,INT16);
550 UINT16      WINAPI RealizeDefaultPalette16(HDC16);
551 BOOL16      WINAPI Rectangle16(HDC16,INT16,INT16,INT16,INT16);
552 BOOL16      WINAPI RectInRegion16(HRGN16,const RECT16 *);
553 BOOL16      WINAPI RectVisible16(HDC16,const RECT16*);
554 BOOL16      WINAPI RemoveFontResource16(LPCSTR);
555 HDC16       WINAPI ResetDC16(HDC16,const DEVMODEA *);
556 BOOL16      WINAPI ResizePalette16(HPALETTE16,UINT16);
557 BOOL16      WINAPI RestoreDC16(HDC16,INT16);
558 INT16       WINAPI RestoreVisRgn16(HDC16);
559 VOID        WINAPI Resurrection16(HDC16,WORD,WORD,WORD,WORD,WORD,WORD);
560 BOOL16      WINAPI RoundRect16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16);
561 INT16       WINAPI SaveDC16(HDC16);
562 HRGN16      WINAPI SaveVisRgn16(HDC16);
563 DWORD       WINAPI ScaleViewportExt16(HDC16,INT16,INT16,INT16,INT16);
564 BOOL16      WINAPI ScaleViewportExtEx16(HDC16,INT16,INT16,INT16,INT16,LPSIZE16);
565 DWORD       WINAPI ScaleWindowExt16(HDC16,INT16,INT16,INT16,INT16);
566 BOOL16      WINAPI ScaleWindowExtEx16(HDC16,INT16,INT16,INT16,INT16,LPSIZE16);
567 BOOL16      WINAPI SelectClipPath16(HDC16,INT16);
568 INT16       WINAPI SelectClipRgn16(HDC16,HRGN16);
569 HGDIOBJ16   WINAPI SelectObject16(HDC16,HGDIOBJ16);
570 INT16       WINAPI SelectVisRgn16(HDC16,HRGN16);
571 INT16       WINAPI SetAbortProc16(HDC16,ABORTPROC16);
572 INT16       WINAPI SetArcDirection16(HDC16,INT16);
573 LONG        WINAPI SetBitmapBits16(HBITMAP16,LONG,LPCVOID);
574 DWORD       WINAPI SetBitmapDimension16(HBITMAP16,INT16,INT16);
575 BOOL16      WINAPI SetBitmapDimensionEx16(HBITMAP16,INT16,INT16,LPSIZE16);
576 COLORREF    WINAPI SetBkColor16(HDC16,COLORREF);
577 INT16       WINAPI SetBkMode16(HDC16,INT16);
578 UINT16      WINAPI SetBoundsRect16(HDC16,const RECT16*,UINT16);
579 DWORD       WINAPI SetBrushOrg16(HDC16,INT16,INT16);
580 BOOL        WINAPI SetDCHook(HDC,DCHOOKPROC,DWORD);
581 BOOL16      WINAPI SetDCHook16(HDC16,FARPROC16,DWORD);
582 DWORD       WINAPI SetDCOrg16(HDC16,INT16,INT16);
583 VOID        WINAPI SetDCState16(HDC16,HDC16);
584 UINT16      WINAPI SetDIBColorTable16(HDC16,UINT16,UINT16,RGBQUAD*);
585 INT16       WINAPI SetDIBits16(HDC16,HBITMAP16,UINT16,UINT16,LPCVOID,const BITMAPINFO*,UINT16);
586 INT16       WINAPI SetDIBitsToDevice16(HDC16,INT16,INT16,INT16,INT16,INT16,
587                          INT16,UINT16,UINT16,LPCVOID,const BITMAPINFO*,UINT16);
588 INT16       WINAPI SetEnvironment16(LPCSTR,LPDEVMODEA,UINT16);
589 WORD        WINAPI SetHookFlags16(HDC16,WORD);
590 INT16       WINAPI SetMapMode16(HDC16,INT16);
591 DWORD       WINAPI SetMapperFlags16(HDC16,DWORD);
592 HMETAFILE16 WINAPI SetMetaFileBits16(HGLOBAL16);
593 UINT16      WINAPI SetPaletteEntries16(HPALETTE16,UINT16,UINT16,const PALETTEENTRY*);
594 COLORREF    WINAPI SetPixel16(HDC16,INT16,INT16,COLORREF);
595 INT16       WINAPI SetPolyFillMode16(HDC16,INT16);
596 VOID        WINAPI SetRectRgn16(HRGN16,INT16,INT16,INT16,INT16);
597 INT16       WINAPI SetRelAbs16(HDC16,INT16);
598 INT16       WINAPI SetROP216(HDC16,INT16);
599 INT16       WINAPI SetStretchBltMode16(HDC16,INT16);
600 UINT16      WINAPI SetSystemPaletteUse16(HDC16,UINT16);
601 UINT16      WINAPI SetTextAlign16(HDC16,UINT16);
602 INT16       WINAPI SetTextCharacterExtra16(HDC16,INT16);
603 COLORREF    WINAPI SetTextColor16(HDC16,COLORREF);
604 INT16       WINAPI SetTextJustification16(HDC16,INT16,INT16);
605 DWORD       WINAPI SetViewportExt16(HDC16,INT16,INT16);
606 BOOL16      WINAPI SetViewportExtEx16(HDC16,INT16,INT16,LPSIZE16);
607 DWORD       WINAPI SetViewportOrg16(HDC16,INT16,INT16);
608 BOOL16      WINAPI SetViewportOrgEx16(HDC16,INT16,INT16,LPPOINT16);
609 DWORD       WINAPI SetWindowExt16(HDC16,INT16,INT16);
610 BOOL16      WINAPI SetWindowExtEx16(HDC16,INT16,INT16,LPSIZE16);
611 DWORD       WINAPI SetWindowOrg16(HDC16,INT16,INT16);
612 BOOL16      WINAPI SetWindowOrgEx16(HDC16,INT16,INT16,LPPOINT16);
613 INT16       WINAPI StartDoc16(HDC16,const DOCINFO16*);
614 INT16       WINAPI StartPage16(HDC16);
615 INT16       WINAPI StartSpoolPage16(HPJOB16);
616 BOOL16      WINAPI StretchBlt16(HDC16,INT16,INT16,INT16,INT16,HDC16,INT16,
617                                 INT16,INT16,INT16,DWORD);
618 INT16       WINAPI StretchDIBits16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,
619                        INT16,INT16,const VOID*,const BITMAPINFO*,UINT16,DWORD);
620 BOOL16      WINAPI StrokeAndFillPath16(HDC16);
621 BOOL16      WINAPI StrokePath16(HDC16);
622 BOOL16      WINAPI TextOut16(HDC16,INT16,INT16,LPCSTR,INT16);
623 BOOL16      WINAPI UnrealizeObject16(HGDIOBJ16);
624 INT16       WINAPI UpdateColors16(HDC16);
625 BOOL16      WINAPI WidenPath16(HDC16);
626 INT16       WINAPI WriteDialog16(HPJOB16,LPSTR,INT16);
627 INT16       WINAPI WriteSpool16(HPJOB16,LPSTR,INT16);
628
629 #endif /* __WINE_WINE_WINGDI16_H */