Better separation of the palette functions.
[wine/multimedia.git] / include / wine / wingdi16.h
blobd1bcee0844c4b9f2ea57477940c4e7de37bc3d7e
1 /*
2 * Copyright (C) the Wine project
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.
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.
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
19 #ifndef __WINE_WINE_WINGDI16_H
20 #define __WINE_WINE_WINGDI16_H
22 #include "windef.h"
23 #include "wingdi.h"
24 #include "wine/winbase16.h"
26 #include "pshpack1.h"
28 typedef HANDLE16 HPQ16;
29 typedef HANDLE16 HPJOB16;
31 typedef struct
33 WORD wFirst;
34 WORD wSecond;
35 INT16 iKernAmount;
36 } KERNINGPAIR16, *LPKERNINGPAIR16;
38 typedef struct
40 INT16 bmType;
41 INT16 bmWidth;
42 INT16 bmHeight;
43 INT16 bmWidthBytes;
44 BYTE bmPlanes;
45 BYTE bmBitsPixel;
46 SEGPTR bmBits;
47 } BITMAP16, *LPBITMAP16;
49 typedef struct
51 UINT16 lbStyle;
52 COLORREF lbColor;
53 INT16 lbHatch;
54 } LOGBRUSH16, *LPLOGBRUSH16;
56 typedef struct
58 INT16 lfHeight;
59 INT16 lfWidth;
60 INT16 lfEscapement;
61 INT16 lfOrientation;
62 INT16 lfWeight;
63 BYTE lfItalic;
64 BYTE lfUnderline;
65 BYTE lfStrikeOut;
66 BYTE lfCharSet;
67 BYTE lfOutPrecision;
68 BYTE lfClipPrecision;
69 BYTE lfQuality;
70 BYTE lfPitchAndFamily;
71 CHAR lfFaceName[LF_FACESIZE];
72 } LOGFONT16, *LPLOGFONT16;
74 typedef struct
76 LOGFONT16 elfLogFont;
77 BYTE elfFullName[LF_FULLFACESIZE];
78 BYTE elfStyle[LF_FACESIZE];
79 } ENUMLOGFONT16, *LPENUMLOGFONT16;
81 typedef struct
83 LOGFONT16 elfLogFont;
84 BYTE elfFullName[LF_FULLFACESIZE];
85 BYTE elfStyle[LF_FACESIZE];
86 BYTE elfScript[LF_FACESIZE];
87 } ENUMLOGFONTEX16, *LPENUMLOGFONTEX16;
89 typedef struct
91 INT16 txfHeight;
92 INT16 txfWidth;
93 INT16 txfEscapement;
94 INT16 txfOrientation;
95 INT16 txfWeight;
96 CHAR txfItalic;
97 CHAR txfUnderline;
98 CHAR txfStrikeOut;
99 CHAR txfOutPrecision;
100 CHAR txfClipPrecision;
101 INT16 txfAccelerator;
102 INT16 txfOverhang;
103 } TEXTXFORM16, *LPTEXTXFORM16;
105 typedef struct
107 INT16 dfType;
108 INT16 dfPoints;
109 INT16 dfVertRes;
110 INT16 dfHorizRes;
111 INT16 dfAscent;
112 INT16 dfInternalLeading;
113 INT16 dfExternalLeading;
114 CHAR dfItalic;
115 CHAR dfUnderline;
116 CHAR dfStrikeOut;
117 INT16 dfWeight;
118 BYTE dfCharSet;
119 INT16 dfPixWidth;
120 INT16 dfPixHeight;
121 CHAR dfPitchAndFamily;
122 INT16 dfAvgWidth;
123 INT16 dfMaxWidth;
124 CHAR dfFirstChar;
125 CHAR dfLastChar;
126 CHAR dfDefaultChar;
127 CHAR dfBreakChar;
128 INT16 dfWidthBytes;
129 LONG dfDevice;
130 LONG dfFace;
131 LONG dfBitsPointer;
132 LONG dfBitsOffset;
133 CHAR dfReserved;
134 /* Fields, introduced for Windows 3.x fonts */
135 LONG dfFlags;
136 INT16 dfAspace;
137 INT16 dfBspace;
138 INT16 dfCspace;
139 LONG dfColorPointer;
140 LONG dfReserved1[4];
141 } FONTINFO16, *LPFONTINFO16;
143 typedef struct
145 INT16 tmHeight;
146 INT16 tmAscent;
147 INT16 tmDescent;
148 INT16 tmInternalLeading;
149 INT16 tmExternalLeading;
150 INT16 tmAveCharWidth;
151 INT16 tmMaxCharWidth;
152 INT16 tmWeight;
153 BYTE tmItalic;
154 BYTE tmUnderlined;
155 BYTE tmStruckOut;
156 BYTE tmFirstChar;
157 BYTE tmLastChar;
158 BYTE tmDefaultChar;
159 BYTE tmBreakChar;
160 BYTE tmPitchAndFamily;
161 BYTE tmCharSet;
162 INT16 tmOverhang;
163 INT16 tmDigitizedAspectX;
164 INT16 tmDigitizedAspectY;
165 } TEXTMETRIC16, *LPTEXTMETRIC16;
167 typedef struct _OUTLINETEXTMETRIC16
169 UINT16 otmSize;
170 TEXTMETRIC16 otmTextMetrics;
171 BYTE otmFiller;
172 PANOSE otmPanoseNumber;
173 UINT16 otmfsSelection;
174 UINT16 otmfsType;
175 INT16 otmsCharSlopeRise;
176 INT16 otmsCharSlopeRun;
177 INT16 otmItalicAngle;
178 UINT16 otmEMSquare;
179 INT16 otmAscent;
180 INT16 otmDescent;
181 UINT16 otmLineGap;
182 UINT16 otmsCapEmHeight;
183 UINT16 otmsXHeight;
184 RECT16 otmrcFontBox;
185 INT16 otmMacAscent;
186 INT16 otmMacDescent;
187 UINT16 otmMacLineGap;
188 UINT16 otmusMinimumPPEM;
189 POINT16 otmptSubscriptSize;
190 POINT16 otmptSubscriptOffset;
191 POINT16 otmptSuperscriptSize;
192 POINT16 otmptSuperscriptOffset;
193 UINT16 otmsStrikeoutSize;
194 INT16 otmsStrikeoutPosition;
195 INT16 otmsUnderscoreSize;
196 INT otmsUnderscorePosition;
197 LPSTR otmpFamilyName;
198 LPSTR otmpFaceName;
199 LPSTR otmpStyleName;
200 LPSTR otmpFullName;
201 } OUTLINETEXTMETRIC16,*LPOUTLINETEXTMETRIC16;
203 typedef struct
205 INT16 tmHeight;
206 INT16 tmAscent;
207 INT16 tmDescent;
208 INT16 tmInternalLeading;
209 INT16 tmExternalLeading;
210 INT16 tmAveCharWidth;
211 INT16 tmMaxCharWidth;
212 INT16 tmWeight;
213 BYTE tmItalic;
214 BYTE tmUnderlined;
215 BYTE tmStruckOut;
216 BYTE tmFirstChar;
217 BYTE tmLastChar;
218 BYTE tmDefaultChar;
219 BYTE tmBreakChar;
220 BYTE tmPitchAndFamily;
221 BYTE tmCharSet;
222 INT16 tmOverhang;
223 INT16 tmDigitizedAspectX;
224 INT16 tmDigitizedAspectY;
225 DWORD ntmFlags;
226 UINT16 ntmSizeEM;
227 UINT16 ntmCellHeight;
228 UINT16 ntmAvgWidth;
229 } NEWTEXTMETRIC16,*LPNEWTEXTMETRIC16;
231 typedef struct
233 NEWTEXTMETRIC16 ntmTm;
234 FONTSIGNATURE ntmFontSig;
235 } NEWTEXTMETRICEX16,*LPNEWTEXTMETRICEX16;
237 typedef BOOL16 (CALLBACK *DCHOOKPROC)(HDC16,WORD,DWORD,LPARAM);
238 typedef INT16 (CALLBACK *FONTENUMPROC16)(SEGPTR,SEGPTR,UINT16,LPARAM);
239 typedef INT16 (CALLBACK *FONTENUMPROCEX16)(SEGPTR,SEGPTR,UINT16,LPARAM);
240 typedef VOID (CALLBACK *LINEDDAPROC16)(INT16,INT16,LPARAM);
241 typedef INT16 (CALLBACK *GOBJENUMPROC16)(SEGPTR,LPARAM);
244 typedef struct
246 UINT16 gmBlackBoxX;
247 UINT16 gmBlackBoxY;
248 POINT16 gmptGlyphOrigin;
249 INT16 gmCellIncX;
250 INT16 gmCellIncY;
251 } GLYPHMETRICS16, *LPGLYPHMETRICS16;
253 typedef struct
255 INT16 abcA;
256 UINT16 abcB;
257 INT16 abcC;
258 } ABC16, *LPABC16;
260 typedef struct
262 UINT16 lopnStyle;
263 POINT16 lopnWidth;
264 COLORREF lopnColor;
265 } LOGPEN16, *LPLOGPEN16;
267 typedef struct
269 HGDIOBJ16 objectHandle[1];
270 } HANDLETABLE16, *LPHANDLETABLE16;
272 typedef struct
274 INT16 mm;
275 INT16 xExt;
276 INT16 yExt;
277 HMETAFILE16 hMF;
278 } METAFILEPICT16, *LPMETAFILEPICT16;
280 typedef struct {
281 EMR emr;
282 RECTL rclBounds;
283 DWORD cpts;
284 POINT16 apts[1];
285 } EMRPOLYLINE16, *PEMRPOLYLINE16,
286 EMRPOLYBEZIER16, *PEMRPOLYBEZIER16,
287 EMRPOLYGON16, *PEMRPOLYGON16,
288 EMRPOLYBEZIERTO16, *PEMRPOLYBEZIERTO16,
289 EMRPOLYLINETO16, *PEMRPOLYLINETO16;
291 typedef struct {
292 EMR emr;
293 RECTL rclBounds;
294 DWORD cpts;
295 POINT16 apts[1];
296 BYTE abTypes[1];
297 } EMRPOLYDRAW16, *PEMRPOLYDRAW16;
299 typedef struct {
300 EMR emr;
301 RECTL rclBounds;
302 DWORD nPolys;
303 DWORD cpts;
304 DWORD aPolyCounts[1];
305 POINT16 apts[1];
306 } EMRPOLYPOLYLINE16, *PEMRPOLYPOLYLINE16,
307 EMRPOLYPOLYGON16, *PEMRPOLYPOLYGON16;
309 typedef INT16 (CALLBACK *MFENUMPROC16)(HDC16,HANDLETABLE16*,METARECORD*,
310 INT16,LPARAM);
311 typedef struct
313 INT16 cbSize;
314 SEGPTR lpszDocName;
315 SEGPTR lpszOutput;
316 SEGPTR lpszDatatype;
317 DWORD fwType;
318 } DOCINFO16, *LPDOCINFO16;
320 typedef BOOL16 (CALLBACK *ABORTPROC16)(HDC16, INT16);
322 #define INT_PD_DEFAULT_DEVMODE 1
323 #define INT_PD_DEFAULT_MODEL 2
325 #include "poppack.h"
328 INT16 WINAPI AbortDoc16(HDC16);
329 BOOL16 WINAPI AbortPath16(HDC16);
330 INT16 WINAPI AddFontResource16(LPCSTR);
331 void WINAPI AnimatePalette16(HPALETTE16,UINT16,UINT16,const PALETTEENTRY*);
332 BOOL16 WINAPI Arc16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,INT16,INT16);
333 BOOL16 WINAPI BeginPath16(HDC16);
334 BOOL16 WINAPI BitBlt16(HDC16,INT16,INT16,INT16,INT16,HDC16,INT16,INT16,DWORD);
335 BOOL16 WINAPI Chord16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,INT16,INT16);
336 BOOL16 WINAPI CloseFigure16(HDC16);
337 INT16 WINAPI CloseJob16(HPJOB16);
338 HMETAFILE16 WINAPI CloseMetaFile16(HDC16);
339 INT16 WINAPI CombineRgn16(HRGN16,HRGN16,HRGN16,INT16);
340 HMETAFILE16 WINAPI CopyMetaFile16(HMETAFILE16,LPCSTR);
341 HBITMAP16 WINAPI CreateBitmap16(INT16,INT16,UINT16,UINT16,LPCVOID);
342 HBITMAP16 WINAPI CreateBitmapIndirect16(const BITMAP16*);
343 HBRUSH16 WINAPI CreateBrushIndirect16(const LOGBRUSH16*);
344 HBITMAP16 WINAPI CreateCompatibleBitmap16(HDC16,INT16,INT16);
345 HDC16 WINAPI CreateCompatibleDC16(HDC16);
346 HDC16 WINAPI CreateDC16(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);
347 HBITMAP16 WINAPI CreateDIBitmap16(HDC16,const BITMAPINFOHEADER*,DWORD,
348 LPCVOID,const BITMAPINFO*,UINT16);
349 HBRUSH16 WINAPI CreateDIBPatternBrush16(HGLOBAL16,UINT16);
350 HBITMAP16 WINAPI CreateDIBSection16 (HDC16, BITMAPINFO *, UINT16,
351 SEGPTR *, HANDLE, DWORD offset);
352 HBITMAP16 WINAPI CreateDiscardableBitmap16(HDC16,INT16,INT16);
353 HRGN16 WINAPI CreateEllipticRgn16(INT16,INT16,INT16,INT16);
354 HRGN16 WINAPI CreateEllipticRgnIndirect16(const RECT16 *);
355 HFONT16 WINAPI CreateFont16(INT16,INT16,INT16,INT16,INT16,BYTE,BYTE,BYTE,
356 BYTE,BYTE,BYTE,BYTE,BYTE,LPCSTR);
357 HFONT16 WINAPI CreateFontIndirect16(const LOGFONT16*);
358 HPALETTE16 WINAPI CreateHalftonePalette16(HDC16);
359 HBRUSH16 WINAPI CreateHatchBrush16(INT16,COLORREF);
360 HDC16 WINAPI CreateIC16(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);
361 HDC16 WINAPI CreateMetaFile16(LPCSTR);
362 HPALETTE16 WINAPI CreatePalette16(const LOGPALETTE*);
363 HBRUSH16 WINAPI CreatePatternBrush16(HBITMAP16);
364 HPEN16 WINAPI CreatePen16(INT16,INT16,COLORREF);
365 HPEN16 WINAPI CreatePenIndirect16(const LOGPEN16*);
366 HRGN16 WINAPI CreatePolyPolygonRgn16(const POINT16*,const INT16*,INT16,INT16);
367 HRGN16 WINAPI CreatePolygonRgn16(const POINT16*,INT16,INT16);
368 HRGN16 WINAPI CreateRectRgn16(INT16,INT16,INT16,INT16);
369 HRGN16 WINAPI CreateRectRgnIndirect16(const RECT16*);
370 HRGN16 WINAPI CreateRoundRectRgn16(INT16,INT16,INT16,INT16,INT16,INT16);
371 BOOL16 WINAPI CreateScalableFontResource16(UINT16,LPCSTR,LPCSTR,LPCSTR);
372 HBRUSH16 WINAPI CreateSolidBrush16(COLORREF);
373 VOID WINAPI Death16(HDC16);
374 BOOL16 WINAPI DeleteDC16(HDC16);
375 INT16 WINAPI DeleteJob16(HPJOB16,INT16);
376 BOOL16 WINAPI DeleteMetaFile16(HMETAFILE16);
377 BOOL16 WINAPI DeleteObject16(HGDIOBJ16);
378 BOOL16 WINAPI DPtoLP16(HDC16,LPPOINT16,INT16);
379 DWORD WINAPI DrvGetPrinterData16(LPSTR,LPSTR,LPDWORD,LPBYTE,int cbData,LPDWORD);
380 DWORD WINAPI DrvSetPrinterData16(LPSTR,LPSTR,DWORD,LPBYTE,DWORD);
381 BOOL16 WINAPI Ellipse16(HDC16,INT16,INT16,INT16,INT16);
382 INT16 WINAPI EndDoc16(HDC16);
383 INT16 WINAPI EndPage16(HDC16);
384 BOOL16 WINAPI EndPath16(HDC16);
385 INT16 WINAPI EndSpoolPage16(HPJOB16);
386 INT16 WINAPI EnumFontFamilies16(HDC16,LPCSTR,FONTENUMPROC16,LPARAM);
387 INT16 WINAPI EnumFontFamiliesEx16(HDC16,LPLOGFONT16,FONTENUMPROCEX16,LPARAM,DWORD);
388 INT16 WINAPI EnumFonts16(HDC16,LPCSTR,FONTENUMPROC16,LPARAM);
389 BOOL16 WINAPI EnumMetaFile16(HDC16,HMETAFILE16,MFENUMPROC16,LPARAM);
390 INT16 WINAPI EnumObjects16(HDC16,INT16,GOBJENUMPROC16,LPARAM);
391 BOOL16 WINAPI EqualRgn16(HRGN16,HRGN16);
392 INT16 WINAPI Escape16(HDC16,INT16,INT16,SEGPTR,LPVOID);
393 INT16 WINAPI ExcludeClipRect16(HDC16,INT16,INT16,INT16,INT16);
394 INT16 WINAPI ExcludeVisRect16(HDC16,INT16,INT16,INT16,INT16);
395 HPEN16 WINAPI ExtCreatePen16(DWORD,DWORD,const LOGBRUSH16*,DWORD,const DWORD*);
396 BOOL16 WINAPI ExtFloodFill16(HDC16,INT16,INT16,COLORREF,UINT16);
397 BOOL16 WINAPI ExtTextOut16(HDC16,INT16,INT16,UINT16,const RECT16*,
398 LPCSTR,UINT16,const INT16*);
399 BOOL16 WINAPI FastWindowFrame16(HDC16,const RECT16*,INT16,INT16,DWORD);
400 BOOL16 WINAPI FillPath16(HDC16);
401 BOOL16 WINAPI FillRgn16(HDC16,HRGN16,HBRUSH16);
402 BOOL16 WINAPI FlattenPath16(HDC16);
403 BOOL16 WINAPI FloodFill16(HDC16,INT16,INT16,COLORREF);
404 BOOL16 WINAPI FrameRgn16(HDC16,HRGN16,HBRUSH16,INT16,INT16);
405 UINT16 WINAPI GDIRealizePalette16(HDC16);
406 DWORD WINAPI GdiSeeGdiDo16(WORD,WORD,WORD,WORD);
407 HPALETTE16 WINAPI GDISelectPalette16(HDC16,HPALETTE16,WORD);
408 INT16 WINAPI GetArcDirection16(HDC16);
409 BOOL16 WINAPI GetAspectRatioFilterEx16(HDC16,LPSIZE16);
410 LONG WINAPI GetBitmapBits16(HBITMAP16,LONG,LPVOID);
411 DWORD WINAPI GetBitmapDimension16(HBITMAP16);
412 BOOL16 WINAPI GetBitmapDimensionEx16(HBITMAP16,LPSIZE16);
413 DWORD WINAPI GetBrushOrg16(HDC16);
414 BOOL16 WINAPI GetBrushOrgEx16(HDC16,LPPOINT16);
415 COLORREF WINAPI GetBkColor16(HDC16);
416 INT16 WINAPI GetBkMode16(HDC16);
417 UINT16 WINAPI GetBoundsRect16(HDC16,LPRECT16,UINT16);
418 BOOL16 WINAPI GetCharABCWidths16(HDC16,UINT16,UINT16,LPABC16);
419 BOOL16 WINAPI GetCharWidth16(HDC16,UINT16,UINT16,LPINT16);
420 INT16 WINAPI GetClipBox16(HDC16,LPRECT16);
421 HRGN16 WINAPI GetClipRgn16(HDC16);
422 HFONT16 WINAPI GetCurLogFont16(HDC16);
423 DWORD WINAPI GetCurrentPosition16(HDC16);
424 BOOL16 WINAPI GetCurrentPositionEx16(HDC16,LPPOINT16);
425 DWORD WINAPI GetDCHook(HDC16,FARPROC16*);
426 DWORD WINAPI GetDCOrg16(HDC16);
427 HDC16 WINAPI GetDCState16(HDC16);
428 INT16 WINAPI GetDeviceCaps16(HDC16,INT16);
429 UINT16 WINAPI GetDIBColorTable16(HDC16,UINT16,UINT16,RGBQUAD*);
430 INT16 WINAPI GetDIBits16(HDC16,HBITMAP16,UINT16,UINT16,LPVOID,LPBITMAPINFO,UINT16);
431 INT16 WINAPI GetEnvironment16(LPCSTR,LPDEVMODEA,UINT16);
432 DWORD WINAPI GetFontData16(HDC16,DWORD,DWORD,LPVOID,DWORD);
433 DWORD WINAPI GetFontLanguageInfo16(HDC16);
434 DWORD WINAPI GetGlyphOutline16(HDC16,UINT16,UINT16,LPGLYPHMETRICS16,DWORD,LPVOID,const MAT2*);
435 INT16 WINAPI GetKerningPairs16(HDC16,INT16,LPKERNINGPAIR16);
436 INT16 WINAPI GetMapMode16(HDC16);
437 HMETAFILE16 WINAPI GetMetaFile16(LPCSTR);
438 HGLOBAL16 WINAPI GetMetaFileBits16(HMETAFILE16);
439 DWORD WINAPI GetNearestColor16(HDC16,DWORD);
440 UINT16 WINAPI GetNearestPaletteIndex16(HPALETTE16,COLORREF);
441 INT16 WINAPI GetObject16(HANDLE16,INT16,LPVOID);
442 UINT16 WINAPI GetOutlineTextMetrics16(HDC16,UINT16,LPOUTLINETEXTMETRIC16);
443 UINT16 WINAPI GetPaletteEntries16(HPALETTE16,UINT16,UINT16,LPPALETTEENTRY);
444 INT16 WINAPI GetPath16(HDC16,LPPOINT16,LPBYTE,INT16);
445 COLORREF WINAPI GetPixel16(HDC16,INT16,INT16);
446 INT16 WINAPI GetPolyFillMode16(HDC16);
447 BOOL16 WINAPI GetRasterizerCaps16(LPRASTERIZER_STATUS,UINT16);
448 DWORD WINAPI GetRegionData16(HRGN16,DWORD,LPRGNDATA);
449 INT16 WINAPI GetRelAbs16(HDC16);
450 INT16 WINAPI GetRgnBox16(HRGN16,LPRECT16);
451 INT16 WINAPI GetROP216(HDC16);
452 DWORD WINAPI GetSpoolJob16(int,LONG);
453 HGDIOBJ16 WINAPI GetStockObject16(INT16);
454 INT16 WINAPI GetStretchBltMode16(HDC16);
455 UINT16 WINAPI GetSystemPaletteEntries16(HDC16,UINT16,UINT16,LPPALETTEENTRY);
456 UINT16 WINAPI GetSystemPaletteUse16(HDC16);
457 UINT16 WINAPI GetTextAlign16(HDC16);
458 INT16 WINAPI GetTextCharacterExtra16(HDC16);
459 UINT16 WINAPI GetTextCharset16(HDC16);
460 COLORREF WINAPI GetTextColor16(HDC16);
461 DWORD WINAPI GetTextExtent16(HDC16,LPCSTR,INT16);
462 BOOL16 WINAPI GetTextExtentPoint16(HDC16,LPCSTR,INT16,LPSIZE16);
463 INT16 WINAPI GetTextFace16(HDC16,INT16,LPSTR);
464 BOOL16 WINAPI GetTextMetrics16(HDC16,LPTEXTMETRIC16);
465 DWORD WINAPI GetViewportExt16(HDC16);
466 BOOL16 WINAPI GetViewportExtEx16(HDC16,LPSIZE16);
467 BOOL16 WINAPI GetViewportOrgEx16(HDC16,LPPOINT16);
468 DWORD WINAPI GetViewportOrg16(HDC16);
469 DWORD WINAPI GetWindowExt16(HDC16);
470 DWORD WINAPI GetWindowOrg16(HDC16);
471 BOOL16 WINAPI GetWindowExtEx16(HDC16,LPSIZE16);
472 BOOL16 WINAPI GetWindowOrgEx16(HDC16,LPPOINT16);
473 HRGN16 WINAPI InquireVisRgn16(HDC16);
474 INT16 WINAPI IntersectClipRect16(HDC16,INT16,INT16,INT16,INT16);
475 INT16 WINAPI IntersectVisRect16(HDC16,INT16,INT16,INT16,INT16);
476 BOOL16 WINAPI InvertRgn16(HDC16,HRGN16);
477 BOOL16 WINAPI IsDCCurrentPalette16(HDC16);
478 BOOL16 WINAPI IsGDIObject16(HGDIOBJ16);
479 BOOL16 WINAPI IsValidMetaFile16(HMETAFILE16);
480 VOID WINAPI LineDDA16(INT16,INT16,INT16,INT16,LINEDDAPROC16,LPARAM);
481 BOOL16 WINAPI LineTo16(HDC16,INT16,INT16);
482 BOOL16 WINAPI LPtoDP16(HDC16,LPPOINT16,INT16);
483 DWORD WINAPI MoveTo16(HDC16,INT16,INT16);
484 BOOL16 WINAPI MoveToEx16(HDC16,INT16,INT16,LPPOINT16);
485 INT16 WINAPI MulDiv16(INT16,INT16,INT16);
486 INT16 WINAPI OffsetClipRgn16(HDC16,INT16,INT16);
487 INT16 WINAPI OffsetRgn16(HRGN16,INT16,INT16);
488 DWORD WINAPI OffsetViewportOrg16(HDC16,INT16,INT16);
489 BOOL16 WINAPI OffsetViewportOrgEx16(HDC16,INT16,INT16,LPPOINT16);
490 INT16 WINAPI OffsetVisRgn16(HDC16,INT16,INT16);
491 DWORD WINAPI OffsetWindowOrg16(HDC16,INT16,INT16);
492 BOOL16 WINAPI OffsetWindowOrgEx16(HDC16,INT16,INT16,LPPOINT16);
493 HANDLE16 WINAPI OpenJob16(LPCSTR,LPCSTR,HDC16);
494 BOOL16 WINAPI PaintRgn16(HDC16,HRGN16);
495 BOOL16 WINAPI PatBlt16(HDC16,INT16,INT16,INT16,INT16,DWORD);
496 HRGN16 WINAPI PathToRegion16(HDC16);
497 BOOL16 WINAPI Pie16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,INT16,INT16);
498 BOOL16 WINAPI PlayMetaFile16(HDC16,HMETAFILE16);
499 VOID WINAPI PlayMetaFileRecord16(HDC16,LPHANDLETABLE16,LPMETARECORD,UINT16);
500 BOOL16 WINAPI PolyBezier16(HDC16,const POINT16*,INT16);
501 BOOL16 WINAPI PolyBezierTo16(HDC16,const POINT16*,INT16);
502 BOOL16 WINAPI PolyPolygon16(HDC16,const POINT16*,const INT16*,UINT16);
503 BOOL16 WINAPI Polygon16(HDC16,const POINT16*,INT16);
504 BOOL16 WINAPI Polyline16(HDC16,const POINT16*,INT16);
505 BOOL16 WINAPI PtInRegion16(HRGN16,INT16,INT16);
506 BOOL16 WINAPI PtVisible16(HDC16,INT16,INT16);
507 BOOL16 WINAPI QueryAbort16(HDC16,INT16);
508 UINT16 WINAPI RealizeDefaultPalette16(HDC16);
509 BOOL16 WINAPI Rectangle16(HDC16,INT16,INT16,INT16,INT16);
510 BOOL16 WINAPI RectInRegion16(HRGN16,const RECT16 *);
511 BOOL16 WINAPI RectVisible16(HDC16,const RECT16*);
512 BOOL16 WINAPI RemoveFontResource16(LPCSTR);
513 HDC16 WINAPI ResetDC16(HDC16,const DEVMODEA *);
514 BOOL16 WINAPI ResizePalette16(HPALETTE16,UINT16);
515 BOOL16 WINAPI RestoreDC16(HDC16,INT16);
516 INT16 WINAPI RestoreVisRgn16(HDC16);
517 VOID WINAPI Resurrection16(HDC16,WORD,WORD,WORD,WORD,WORD,WORD);
518 BOOL16 WINAPI RoundRect16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16);
519 INT16 WINAPI SaveDC16(HDC16);
520 HRGN16 WINAPI SaveVisRgn16(HDC16);
521 DWORD WINAPI ScaleViewportExt16(HDC16,INT16,INT16,INT16,INT16);
522 BOOL16 WINAPI ScaleViewportExtEx16(HDC16,INT16,INT16,INT16,INT16,LPSIZE16);
523 DWORD WINAPI ScaleWindowExt16(HDC16,INT16,INT16,INT16,INT16);
524 BOOL16 WINAPI ScaleWindowExtEx16(HDC16,INT16,INT16,INT16,INT16,LPSIZE16);
525 BOOL16 WINAPI SelectClipPath16(HDC16,INT16);
526 INT16 WINAPI SelectClipRgn16(HDC16,HRGN16);
527 HGDIOBJ16 WINAPI SelectObject16(HDC16,HGDIOBJ16);
528 INT16 WINAPI SelectVisRgn16(HDC16,HRGN16);
529 INT16 WINAPI SetAbortProc16(HDC16,ABORTPROC16);
530 INT16 WINAPI SetArcDirection16(HDC16,INT16);
531 LONG WINAPI SetBitmapBits16(HBITMAP16,LONG,LPCVOID);
532 DWORD WINAPI SetBitmapDimension16(HBITMAP16,INT16,INT16);
533 BOOL16 WINAPI SetBitmapDimensionEx16(HBITMAP16,INT16,INT16,LPSIZE16);
534 COLORREF WINAPI SetBkColor16(HDC16,COLORREF);
535 INT16 WINAPI SetBkMode16(HDC16,INT16);
536 UINT16 WINAPI SetBoundsRect16(HDC16,const RECT16*,UINT16);
537 DWORD WINAPI SetBrushOrg16(HDC16,INT16,INT16);
538 BOOL WINAPI SetDCHook(HDC,DCHOOKPROC,DWORD);
539 BOOL16 WINAPI SetDCHook16(HDC16,FARPROC16,DWORD);
540 DWORD WINAPI SetDCOrg16(HDC16,INT16,INT16);
541 VOID WINAPI SetDCState16(HDC16,HDC16);
542 UINT16 WINAPI SetDIBColorTable16(HDC16,UINT16,UINT16,RGBQUAD*);
543 INT16 WINAPI SetDIBits16(HDC16,HBITMAP16,UINT16,UINT16,LPCVOID,const BITMAPINFO*,UINT16);
544 INT16 WINAPI SetDIBitsToDevice16(HDC16,INT16,INT16,INT16,INT16,INT16,
545 INT16,UINT16,UINT16,LPCVOID,const BITMAPINFO*,UINT16);
546 INT16 WINAPI SetEnvironment16(LPCSTR,LPDEVMODEA,UINT16);
547 WORD WINAPI SetHookFlags16(HDC16,WORD);
548 INT16 WINAPI SetMapMode16(HDC16,INT16);
549 DWORD WINAPI SetMapperFlags16(HDC16,DWORD);
550 HMETAFILE16 WINAPI SetMetaFileBits16(HGLOBAL16);
551 UINT16 WINAPI SetPaletteEntries16(HPALETTE16,UINT16,UINT16,const PALETTEENTRY*);
552 COLORREF WINAPI SetPixel16(HDC16,INT16,INT16,COLORREF);
553 INT16 WINAPI SetPolyFillMode16(HDC16,INT16);
554 VOID WINAPI SetRectRgn16(HRGN16,INT16,INT16,INT16,INT16);
555 INT16 WINAPI SetRelAbs16(HDC16,INT16);
556 INT16 WINAPI SetROP216(HDC16,INT16);
557 INT16 WINAPI SetStretchBltMode16(HDC16,INT16);
558 UINT16 WINAPI SetSystemPaletteUse16(HDC16,UINT16);
559 UINT16 WINAPI SetTextAlign16(HDC16,UINT16);
560 INT16 WINAPI SetTextCharacterExtra16(HDC16,INT16);
561 COLORREF WINAPI SetTextColor16(HDC16,COLORREF);
562 INT16 WINAPI SetTextJustification16(HDC16,INT16,INT16);
563 DWORD WINAPI SetViewportExt16(HDC16,INT16,INT16);
564 BOOL16 WINAPI SetViewportExtEx16(HDC16,INT16,INT16,LPSIZE16);
565 DWORD WINAPI SetViewportOrg16(HDC16,INT16,INT16);
566 BOOL16 WINAPI SetViewportOrgEx16(HDC16,INT16,INT16,LPPOINT16);
567 DWORD WINAPI SetWindowExt16(HDC16,INT16,INT16);
568 BOOL16 WINAPI SetWindowExtEx16(HDC16,INT16,INT16,LPSIZE16);
569 DWORD WINAPI SetWindowOrg16(HDC16,INT16,INT16);
570 BOOL16 WINAPI SetWindowOrgEx16(HDC16,INT16,INT16,LPPOINT16);
571 INT16 WINAPI StartDoc16(HDC16,const DOCINFO16*);
572 INT16 WINAPI StartPage16(HDC16);
573 INT16 WINAPI StartSpoolPage16(HPJOB16);
574 BOOL16 WINAPI StretchBlt16(HDC16,INT16,INT16,INT16,INT16,HDC16,INT16,
575 INT16,INT16,INT16,DWORD);
576 INT16 WINAPI StretchDIBits16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,
577 INT16,INT16,const VOID*,const BITMAPINFO*,UINT16,DWORD);
578 BOOL16 WINAPI StrokeAndFillPath16(HDC16);
579 BOOL16 WINAPI StrokePath16(HDC16);
580 BOOL16 WINAPI TextOut16(HDC16,INT16,INT16,LPCSTR,INT16);
581 BOOL16 WINAPI UnrealizeObject16(HGDIOBJ16);
582 INT16 WINAPI UpdateColors16(HDC16);
583 BOOL16 WINAPI WidenPath16(HDC16);
584 INT16 WINAPI WriteDialog16(HPJOB16,LPSTR,INT16);
585 INT16 WINAPI WriteSpool16(HPJOB16,LPSTR,INT16);
588 inline static void CONV_POINT16TO32( const POINT16 *p16, POINT *p32 )
590 p32->x = p16->x;
591 p32->y = p16->y;
594 inline static void CONV_POINT32TO16( const POINT *p32, POINT16 *p16 )
596 p16->x = (INT16)p32->x;
597 p16->y = (INT16)p32->y;
600 inline static void CONV_RECT16TO32( const RECT16 *r16, RECT *r32 )
602 r32->left = r16->left;
603 r32->top = r16->top;
604 r32->right = r16->right;
605 r32->bottom = r16->bottom;
608 inline static void CONV_RECT32TO16( const RECT *r32, RECT16 *r16 )
610 r16->left = (INT16)r32->left;
611 r16->top = (INT16)r32->top;
612 r16->right = (INT16)r32->right;
613 r16->bottom = (INT16)r32->bottom;
616 #endif /* __WINE_WINE_WINGDI16_H */