Don't free ALSA device string when the device is closed since it might
[wine.git] / include / wine / wingdi16.h
blobf2b4955a1791b621cb03ce0810355cf46cc7241b
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 <stdarg.h>
23 #include <windef.h>
24 #include <winbase.h>
25 #include <wingdi.h>
26 #include <wine/winbase16.h>
28 #include <pshpack1.h>
30 typedef HANDLE16 HPQ16;
31 typedef HANDLE16 HPJOB16;
33 typedef struct
35 WORD wFirst;
36 WORD wSecond;
37 INT16 iKernAmount;
38 } KERNINGPAIR16, *LPKERNINGPAIR16;
40 typedef struct
42 INT16 bmType;
43 INT16 bmWidth;
44 INT16 bmHeight;
45 INT16 bmWidthBytes;
46 BYTE bmPlanes;
47 BYTE bmBitsPixel;
48 SEGPTR bmBits;
49 } BITMAP16, *LPBITMAP16;
51 typedef struct
53 UINT16 lbStyle;
54 COLORREF lbColor;
55 INT16 lbHatch;
56 } LOGBRUSH16, *LPLOGBRUSH16;
58 typedef struct
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;
76 typedef struct
78 LOGFONT16 elfLogFont;
79 BYTE elfFullName[LF_FULLFACESIZE];
80 BYTE elfStyle[LF_FACESIZE];
81 } ENUMLOGFONT16, *LPENUMLOGFONT16;
83 typedef struct
85 LOGFONT16 elfLogFont;
86 BYTE elfFullName[LF_FULLFACESIZE];
87 BYTE elfStyle[LF_FACESIZE];
88 BYTE elfScript[LF_FACESIZE];
89 } ENUMLOGFONTEX16, *LPENUMLOGFONTEX16;
91 typedef struct
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;
107 typedef struct
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;
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;
178 typedef struct
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;
202 typedef struct _OUTLINETEXTMETRIC16
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;
238 typedef struct
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;
266 typedef struct
268 NEWTEXTMETRIC16 ntmTm;
269 FONTSIGNATURE ntmFontSig;
270 } NEWTEXTMETRICEX16,*LPNEWTEXTMETRICEX16;
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);
278 typedef struct
280 UINT16 gmBlackBoxX;
281 UINT16 gmBlackBoxY;
282 POINT16 gmptGlyphOrigin;
283 INT16 gmCellIncX;
284 INT16 gmCellIncY;
285 } GLYPHMETRICS16, *LPGLYPHMETRICS16;
287 typedef struct
289 INT16 abcA;
290 UINT16 abcB;
291 INT16 abcC;
292 } ABC16, *LPABC16;
294 typedef struct
296 UINT16 lopnStyle;
297 POINT16 lopnWidth;
298 COLORREF lopnColor;
299 } LOGPEN16, *LPLOGPEN16;
301 typedef struct
303 HGDIOBJ16 objectHandle[1];
304 } HANDLETABLE16, *LPHANDLETABLE16;
306 typedef struct
308 INT16 mm;
309 INT16 xExt;
310 INT16 yExt;
311 HMETAFILE16 hMF;
312 } METAFILEPICT16, *LPMETAFILEPICT16;
314 typedef INT16 (CALLBACK *MFENUMPROC16)(HDC16,HANDLETABLE16*,METARECORD*,
315 INT16,LPARAM);
316 typedef struct
318 INT16 cbSize;
319 SEGPTR lpszDocName;
320 SEGPTR lpszOutput;
321 SEGPTR lpszDatatype;
322 DWORD fwType;
323 } DOCINFO16, *LPDOCINFO16;
325 typedef BOOL16 (CALLBACK *ABORTPROC16)(HDC16, INT16);
327 #define INT_PD_DEFAULT_DEVMODE 1
328 #define INT_PD_DEFAULT_MODEL 2
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
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;
346 /* DC hook codes */
347 #define DCHC_INVALIDVISRGN 0x0001
348 #define DCHC_DELETEDC 0x0002
350 #define DCHF_INVALIDATEVISRGN 0x0001
351 #define DCHF_VALIDATEVISRGN 0x0002
353 /* RenderMode */
354 #define RENDERMODE_NO_DISPLAY 0
355 #define RENDERMODE_OPEN 1
356 #define RENDERMODE_CLOSED 2
358 #include <poppack.h>
361 INT16 WINAPI AbortDoc16(HDC16);
362 BOOL16 WINAPI AbortPath16(HDC16);
363 INT16 WINAPI AddFontResource16(LPCSTR);
364 void WINAPI AnimatePalette16(HPALETTE16,UINT16,UINT16,const PALETTEENTRY*);
365 BOOL16 WINAPI Arc16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,INT16,INT16);
366 BOOL16 WINAPI BeginPath16(HDC16);
367 BOOL16 WINAPI BitBlt16(HDC16,INT16,INT16,INT16,INT16,HDC16,INT16,INT16,DWORD);
368 BOOL16 WINAPI Chord16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,INT16,INT16);
369 BOOL16 WINAPI CloseFigure16(HDC16);
370 INT16 WINAPI CloseJob16(HPJOB16);
371 HMETAFILE16 WINAPI CloseMetaFile16(HDC16);
372 INT16 WINAPI CombineRgn16(HRGN16,HRGN16,HRGN16,INT16);
373 HMETAFILE16 WINAPI CopyMetaFile16(HMETAFILE16,LPCSTR);
374 HBITMAP16 WINAPI CreateBitmap16(INT16,INT16,UINT16,UINT16,LPCVOID);
375 HBITMAP16 WINAPI CreateBitmapIndirect16(const BITMAP16*);
376 HBRUSH16 WINAPI CreateBrushIndirect16(const LOGBRUSH16*);
377 HBITMAP16 WINAPI CreateCompatibleBitmap16(HDC16,INT16,INT16);
378 HDC16 WINAPI CreateCompatibleDC16(HDC16);
379 HDC16 WINAPI CreateDC16(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);
380 HBITMAP16 WINAPI CreateDIBitmap16(HDC16,const BITMAPINFOHEADER*,DWORD,
381 LPCVOID,const BITMAPINFO*,UINT16);
382 HBRUSH16 WINAPI CreateDIBPatternBrush16(HGLOBAL16,UINT16);
383 HBITMAP16 WINAPI CreateDIBSection16 (HDC16, const BITMAPINFO *, UINT16,
384 SEGPTR *, HANDLE, DWORD offset);
385 HBITMAP16 WINAPI CreateDiscardableBitmap16(HDC16,INT16,INT16);
386 HRGN16 WINAPI CreateEllipticRgn16(INT16,INT16,INT16,INT16);
387 HRGN16 WINAPI CreateEllipticRgnIndirect16(const RECT16 *);
388 HFONT16 WINAPI CreateFont16(INT16,INT16,INT16,INT16,INT16,BYTE,BYTE,BYTE,
389 BYTE,BYTE,BYTE,BYTE,BYTE,LPCSTR);
390 HFONT16 WINAPI CreateFontIndirect16(const LOGFONT16*);
391 HPALETTE16 WINAPI CreateHalftonePalette16(HDC16);
392 HBRUSH16 WINAPI CreateHatchBrush16(INT16,COLORREF);
393 HDC16 WINAPI CreateIC16(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);
394 HDC16 WINAPI CreateMetaFile16(LPCSTR);
395 HPALETTE16 WINAPI CreatePalette16(const LOGPALETTE*);
396 HBRUSH16 WINAPI CreatePatternBrush16(HBITMAP16);
397 HPEN16 WINAPI CreatePen16(INT16,INT16,COLORREF);
398 HPEN16 WINAPI CreatePenIndirect16(const LOGPEN16*);
399 HRGN16 WINAPI CreatePolyPolygonRgn16(const POINT16*,const INT16*,INT16,INT16);
400 HRGN16 WINAPI CreatePolygonRgn16(const POINT16*,INT16,INT16);
401 HRGN16 WINAPI CreateRectRgn16(INT16,INT16,INT16,INT16);
402 HRGN16 WINAPI CreateRectRgnIndirect16(const RECT16*);
403 HRGN16 WINAPI CreateRoundRectRgn16(INT16,INT16,INT16,INT16,INT16,INT16);
404 BOOL16 WINAPI CreateScalableFontResource16(UINT16,LPCSTR,LPCSTR,LPCSTR);
405 HBRUSH16 WINAPI CreateSolidBrush16(COLORREF);
406 VOID WINAPI Death16(HDC16);
407 BOOL16 WINAPI DeleteDC16(HDC16);
408 INT16 WINAPI DeleteJob16(HPJOB16,INT16);
409 BOOL16 WINAPI DeleteMetaFile16(HMETAFILE16);
410 BOOL16 WINAPI DeleteObject16(HGDIOBJ16);
411 BOOL16 WINAPI DPtoLP16(HDC16,LPPOINT16,INT16);
412 DWORD WINAPI DrvGetPrinterData16(LPSTR,LPSTR,LPDWORD,LPBYTE,int cbData,LPDWORD);
413 DWORD WINAPI DrvSetPrinterData16(LPSTR,LPSTR,DWORD,LPBYTE,DWORD);
414 BOOL16 WINAPI Ellipse16(HDC16,INT16,INT16,INT16,INT16);
415 INT16 WINAPI EndDoc16(HDC16);
416 INT16 WINAPI EndPage16(HDC16);
417 BOOL16 WINAPI EndPath16(HDC16);
418 INT16 WINAPI EndSpoolPage16(HPJOB16);
419 INT16 WINAPI EnumFontFamilies16(HDC16,LPCSTR,FONTENUMPROC16,LPARAM);
420 INT16 WINAPI EnumFontFamiliesEx16(HDC16,LPLOGFONT16,FONTENUMPROC16,LPARAM,DWORD);
421 INT16 WINAPI EnumFonts16(HDC16,LPCSTR,FONTENUMPROC16,LPARAM);
422 BOOL16 WINAPI EnumMetaFile16(HDC16,HMETAFILE16,MFENUMPROC16,LPARAM);
423 INT16 WINAPI EnumObjects16(HDC16,INT16,GOBJENUMPROC16,LPARAM);
424 BOOL16 WINAPI EqualRgn16(HRGN16,HRGN16);
425 INT16 WINAPI Escape16(HDC16,INT16,INT16,SEGPTR,LPVOID);
426 INT16 WINAPI ExcludeClipRect16(HDC16,INT16,INT16,INT16,INT16);
427 INT16 WINAPI ExcludeVisRect16(HDC16,INT16,INT16,INT16,INT16);
428 HPEN16 WINAPI ExtCreatePen16(DWORD,DWORD,const LOGBRUSH16*,DWORD,const DWORD*);
429 BOOL16 WINAPI ExtFloodFill16(HDC16,INT16,INT16,COLORREF,UINT16);
430 BOOL16 WINAPI ExtTextOut16(HDC16,INT16,INT16,UINT16,const RECT16*,
431 LPCSTR,UINT16,const INT16*);
432 BOOL16 WINAPI FastWindowFrame16(HDC16,const RECT16*,INT16,INT16,DWORD);
433 BOOL16 WINAPI FillPath16(HDC16);
434 BOOL16 WINAPI FillRgn16(HDC16,HRGN16,HBRUSH16);
435 BOOL16 WINAPI FlattenPath16(HDC16);
436 BOOL16 WINAPI FloodFill16(HDC16,INT16,INT16,COLORREF);
437 BOOL16 WINAPI FrameRgn16(HDC16,HRGN16,HBRUSH16,INT16,INT16);
438 UINT16 WINAPI GDIRealizePalette16(HDC16);
439 DWORD WINAPI GdiSeeGdiDo16(WORD,WORD,WORD,WORD);
440 HPALETTE16 WINAPI GDISelectPalette16(HDC16,HPALETTE16,WORD);
441 INT16 WINAPI GetArcDirection16(HDC16);
442 BOOL16 WINAPI GetAspectRatioFilterEx16(HDC16,LPSIZE16);
443 LONG WINAPI GetBitmapBits16(HBITMAP16,LONG,LPVOID);
444 DWORD WINAPI GetBitmapDimension16(HBITMAP16);
445 BOOL16 WINAPI GetBitmapDimensionEx16(HBITMAP16,LPSIZE16);
446 DWORD WINAPI GetBrushOrg16(HDC16);
447 BOOL16 WINAPI GetBrushOrgEx16(HDC16,LPPOINT16);
448 COLORREF WINAPI GetBkColor16(HDC16);
449 INT16 WINAPI GetBkMode16(HDC16);
450 UINT16 WINAPI GetBoundsRect16(HDC16,LPRECT16,UINT16);
451 BOOL16 WINAPI GetCharABCWidths16(HDC16,UINT16,UINT16,LPABC16);
452 BOOL16 WINAPI GetCharWidth16(HDC16,UINT16,UINT16,LPINT16);
453 INT16 WINAPI GetClipBox16(HDC16,LPRECT16);
454 HRGN16 WINAPI GetClipRgn16(HDC16);
455 HFONT16 WINAPI GetCurLogFont16(HDC16);
456 DWORD WINAPI GetCurrentPosition16(HDC16);
457 BOOL16 WINAPI GetCurrentPositionEx16(HDC16,LPPOINT16);
458 DWORD WINAPI GetDCHook16(HDC16,FARPROC16*);
459 DWORD WINAPI GetDCOrg16(HDC16);
460 HDC16 WINAPI GetDCState16(HDC16);
461 INT16 WINAPI GetDeviceCaps16(HDC16,INT16);
462 UINT16 WINAPI GetDIBColorTable16(HDC16,UINT16,UINT16,RGBQUAD*);
463 INT16 WINAPI GetDIBits16(HDC16,HBITMAP16,UINT16,UINT16,LPVOID,LPBITMAPINFO,UINT16);
464 INT16 WINAPI GetEnvironment16(LPCSTR,LPDEVMODEA,UINT16);
465 DWORD WINAPI GetFontData16(HDC16,DWORD,DWORD,LPVOID,DWORD);
466 DWORD WINAPI GetFontLanguageInfo16(HDC16);
467 DWORD WINAPI GetGlyphOutline16(HDC16,UINT16,UINT16,LPGLYPHMETRICS16,DWORD,LPVOID,const MAT2*);
468 INT16 WINAPI GetKerningPairs16(HDC16,INT16,LPKERNINGPAIR16);
469 INT16 WINAPI GetMapMode16(HDC16);
470 HMETAFILE16 WINAPI GetMetaFile16(LPCSTR);
471 HGLOBAL16 WINAPI GetMetaFileBits16(HMETAFILE16);
472 DWORD WINAPI GetNearestColor16(HDC16,DWORD);
473 UINT16 WINAPI GetNearestPaletteIndex16(HPALETTE16,COLORREF);
474 INT16 WINAPI GetObject16(HANDLE16,INT16,LPVOID);
475 UINT16 WINAPI GetOutlineTextMetrics16(HDC16,UINT16,LPOUTLINETEXTMETRIC16);
476 UINT16 WINAPI GetPaletteEntries16(HPALETTE16,UINT16,UINT16,LPPALETTEENTRY);
477 INT16 WINAPI GetPath16(HDC16,LPPOINT16,LPBYTE,INT16);
478 COLORREF WINAPI GetPixel16(HDC16,INT16,INT16);
479 INT16 WINAPI GetPolyFillMode16(HDC16);
480 BOOL16 WINAPI GetRasterizerCaps16(LPRASTERIZER_STATUS,UINT16);
481 DWORD WINAPI GetRegionData16(HRGN16,DWORD,LPRGNDATA);
482 INT16 WINAPI GetRelAbs16(HDC16);
483 INT16 WINAPI GetRgnBox16(HRGN16,LPRECT16);
484 INT16 WINAPI GetROP216(HDC16);
485 DWORD WINAPI GetSpoolJob16(int,LONG);
486 HGDIOBJ16 WINAPI GetStockObject16(INT16);
487 INT16 WINAPI GetStretchBltMode16(HDC16);
488 UINT16 WINAPI GetSystemPaletteEntries16(HDC16,UINT16,UINT16,LPPALETTEENTRY);
489 UINT16 WINAPI GetSystemPaletteUse16(HDC16);
490 UINT16 WINAPI GetTextAlign16(HDC16);
491 INT16 WINAPI GetTextCharacterExtra16(HDC16);
492 UINT16 WINAPI GetTextCharset16(HDC16);
493 COLORREF WINAPI GetTextColor16(HDC16);
494 DWORD WINAPI GetTextExtent16(HDC16,LPCSTR,INT16);
495 BOOL16 WINAPI GetTextExtentPoint16(HDC16,LPCSTR,INT16,LPSIZE16);
496 INT16 WINAPI GetTextFace16(HDC16,INT16,LPSTR);
497 BOOL16 WINAPI GetTextMetrics16(HDC16,LPTEXTMETRIC16);
498 DWORD WINAPI GetViewportExt16(HDC16);
499 BOOL16 WINAPI GetViewportExtEx16(HDC16,LPSIZE16);
500 BOOL16 WINAPI GetViewportOrgEx16(HDC16,LPPOINT16);
501 DWORD WINAPI GetViewportOrg16(HDC16);
502 DWORD WINAPI GetWindowExt16(HDC16);
503 DWORD WINAPI GetWindowOrg16(HDC16);
504 BOOL16 WINAPI GetWindowExtEx16(HDC16,LPSIZE16);
505 BOOL16 WINAPI GetWindowOrgEx16(HDC16,LPPOINT16);
506 HRGN16 WINAPI InquireVisRgn16(HDC16);
507 INT16 WINAPI IntersectClipRect16(HDC16,INT16,INT16,INT16,INT16);
508 INT16 WINAPI IntersectVisRect16(HDC16,INT16,INT16,INT16,INT16);
509 BOOL16 WINAPI InvertRgn16(HDC16,HRGN16);
510 BOOL16 WINAPI IsDCCurrentPalette16(HDC16);
511 BOOL16 WINAPI IsGDIObject16(HGDIOBJ16);
512 BOOL16 WINAPI IsValidMetaFile16(HMETAFILE16);
513 VOID WINAPI LineDDA16(INT16,INT16,INT16,INT16,LINEDDAPROC16,LPARAM);
514 BOOL16 WINAPI LineTo16(HDC16,INT16,INT16);
515 BOOL16 WINAPI LPtoDP16(HDC16,LPPOINT16,INT16);
516 DWORD WINAPI MoveTo16(HDC16,INT16,INT16);
517 BOOL16 WINAPI MoveToEx16(HDC16,INT16,INT16,LPPOINT16);
518 INT16 WINAPI MulDiv16(INT16,INT16,INT16);
519 INT16 WINAPI OffsetClipRgn16(HDC16,INT16,INT16);
520 INT16 WINAPI OffsetRgn16(HRGN16,INT16,INT16);
521 DWORD WINAPI OffsetViewportOrg16(HDC16,INT16,INT16);
522 BOOL16 WINAPI OffsetViewportOrgEx16(HDC16,INT16,INT16,LPPOINT16);
523 INT16 WINAPI OffsetVisRgn16(HDC16,INT16,INT16);
524 DWORD WINAPI OffsetWindowOrg16(HDC16,INT16,INT16);
525 BOOL16 WINAPI OffsetWindowOrgEx16(HDC16,INT16,INT16,LPPOINT16);
526 HANDLE16 WINAPI OpenJob16(LPCSTR,LPCSTR,HDC16);
527 BOOL16 WINAPI PaintRgn16(HDC16,HRGN16);
528 BOOL16 WINAPI PatBlt16(HDC16,INT16,INT16,INT16,INT16,DWORD);
529 HRGN16 WINAPI PathToRegion16(HDC16);
530 BOOL16 WINAPI Pie16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,INT16,INT16);
531 BOOL16 WINAPI PlayMetaFile16(HDC16,HMETAFILE16);
532 VOID WINAPI PlayMetaFileRecord16(HDC16,LPHANDLETABLE16,LPMETARECORD,UINT16);
533 BOOL16 WINAPI PolyBezier16(HDC16,const POINT16*,INT16);
534 BOOL16 WINAPI PolyBezierTo16(HDC16,const POINT16*,INT16);
535 BOOL16 WINAPI PolyPolygon16(HDC16,const POINT16*,const INT16*,UINT16);
536 BOOL16 WINAPI Polygon16(HDC16,const POINT16*,INT16);
537 BOOL16 WINAPI Polyline16(HDC16,const POINT16*,INT16);
538 BOOL16 WINAPI PtInRegion16(HRGN16,INT16,INT16);
539 BOOL16 WINAPI PtVisible16(HDC16,INT16,INT16);
540 BOOL16 WINAPI QueryAbort16(HDC16,INT16);
541 UINT16 WINAPI RealizeDefaultPalette16(HDC16);
542 BOOL16 WINAPI Rectangle16(HDC16,INT16,INT16,INT16,INT16);
543 BOOL16 WINAPI RectInRegion16(HRGN16,const RECT16 *);
544 BOOL16 WINAPI RectVisible16(HDC16,const RECT16*);
545 BOOL16 WINAPI RemoveFontResource16(LPCSTR);
546 HDC16 WINAPI ResetDC16(HDC16,const DEVMODEA *);
547 BOOL16 WINAPI ResizePalette16(HPALETTE16,UINT16);
548 BOOL16 WINAPI RestoreDC16(HDC16,INT16);
549 INT16 WINAPI RestoreVisRgn16(HDC16);
550 VOID WINAPI Resurrection16(HDC16,WORD,WORD,WORD,WORD,WORD,WORD);
551 BOOL16 WINAPI RoundRect16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16);
552 INT16 WINAPI SaveDC16(HDC16);
553 HRGN16 WINAPI SaveVisRgn16(HDC16);
554 DWORD WINAPI ScaleViewportExt16(HDC16,INT16,INT16,INT16,INT16);
555 BOOL16 WINAPI ScaleViewportExtEx16(HDC16,INT16,INT16,INT16,INT16,LPSIZE16);
556 DWORD WINAPI ScaleWindowExt16(HDC16,INT16,INT16,INT16,INT16);
557 BOOL16 WINAPI ScaleWindowExtEx16(HDC16,INT16,INT16,INT16,INT16,LPSIZE16);
558 BOOL16 WINAPI SelectClipPath16(HDC16,INT16);
559 INT16 WINAPI SelectClipRgn16(HDC16,HRGN16);
560 HGDIOBJ16 WINAPI SelectObject16(HDC16,HGDIOBJ16);
561 INT16 WINAPI SelectVisRgn16(HDC16,HRGN16);
562 INT16 WINAPI SetAbortProc16(HDC16,ABORTPROC16);
563 INT16 WINAPI SetArcDirection16(HDC16,INT16);
564 LONG WINAPI SetBitmapBits16(HBITMAP16,LONG,LPCVOID);
565 DWORD WINAPI SetBitmapDimension16(HBITMAP16,INT16,INT16);
566 BOOL16 WINAPI SetBitmapDimensionEx16(HBITMAP16,INT16,INT16,LPSIZE16);
567 COLORREF WINAPI SetBkColor16(HDC16,COLORREF);
568 INT16 WINAPI SetBkMode16(HDC16,INT16);
569 UINT16 WINAPI SetBoundsRect16(HDC16,const RECT16*,UINT16);
570 DWORD WINAPI SetBrushOrg16(HDC16,INT16,INT16);
571 BOOL WINAPI SetDCHook(HDC,DCHOOKPROC,DWORD);
572 BOOL16 WINAPI SetDCHook16(HDC16,FARPROC16,DWORD);
573 DWORD WINAPI SetDCOrg16(HDC16,INT16,INT16);
574 VOID WINAPI SetDCState16(HDC16,HDC16);
575 UINT16 WINAPI SetDIBColorTable16(HDC16,UINT16,UINT16,RGBQUAD*);
576 INT16 WINAPI SetDIBits16(HDC16,HBITMAP16,UINT16,UINT16,LPCVOID,const BITMAPINFO*,UINT16);
577 INT16 WINAPI SetDIBitsToDevice16(HDC16,INT16,INT16,INT16,INT16,INT16,
578 INT16,UINT16,UINT16,LPCVOID,const BITMAPINFO*,UINT16);
579 INT16 WINAPI SetEnvironment16(LPCSTR,LPDEVMODEA,UINT16);
580 WORD WINAPI SetHookFlags16(HDC16,WORD);
581 INT16 WINAPI SetMapMode16(HDC16,INT16);
582 DWORD WINAPI SetMapperFlags16(HDC16,DWORD);
583 HMETAFILE16 WINAPI SetMetaFileBits16(HGLOBAL16);
584 UINT16 WINAPI SetPaletteEntries16(HPALETTE16,UINT16,UINT16,const PALETTEENTRY*);
585 COLORREF WINAPI SetPixel16(HDC16,INT16,INT16,COLORREF);
586 INT16 WINAPI SetPolyFillMode16(HDC16,INT16);
587 VOID WINAPI SetRectRgn16(HRGN16,INT16,INT16,INT16,INT16);
588 INT16 WINAPI SetRelAbs16(HDC16,INT16);
589 INT16 WINAPI SetROP216(HDC16,INT16);
590 INT16 WINAPI SetStretchBltMode16(HDC16,INT16);
591 UINT16 WINAPI SetSystemPaletteUse16(HDC16,UINT16);
592 UINT16 WINAPI SetTextAlign16(HDC16,UINT16);
593 INT16 WINAPI SetTextCharacterExtra16(HDC16,INT16);
594 COLORREF WINAPI SetTextColor16(HDC16,COLORREF);
595 INT16 WINAPI SetTextJustification16(HDC16,INT16,INT16);
596 DWORD WINAPI SetViewportExt16(HDC16,INT16,INT16);
597 BOOL16 WINAPI SetViewportExtEx16(HDC16,INT16,INT16,LPSIZE16);
598 DWORD WINAPI SetViewportOrg16(HDC16,INT16,INT16);
599 BOOL16 WINAPI SetViewportOrgEx16(HDC16,INT16,INT16,LPPOINT16);
600 DWORD WINAPI SetWindowExt16(HDC16,INT16,INT16);
601 BOOL16 WINAPI SetWindowExtEx16(HDC16,INT16,INT16,LPSIZE16);
602 DWORD WINAPI SetWindowOrg16(HDC16,INT16,INT16);
603 BOOL16 WINAPI SetWindowOrgEx16(HDC16,INT16,INT16,LPPOINT16);
604 INT16 WINAPI StartDoc16(HDC16,const DOCINFO16*);
605 INT16 WINAPI StartPage16(HDC16);
606 INT16 WINAPI StartSpoolPage16(HPJOB16);
607 BOOL16 WINAPI StretchBlt16(HDC16,INT16,INT16,INT16,INT16,HDC16,INT16,
608 INT16,INT16,INT16,DWORD);
609 INT16 WINAPI StretchDIBits16(HDC16,INT16,INT16,INT16,INT16,INT16,INT16,
610 INT16,INT16,const VOID*,const BITMAPINFO*,UINT16,DWORD);
611 BOOL16 WINAPI StrokeAndFillPath16(HDC16);
612 BOOL16 WINAPI StrokePath16(HDC16);
613 BOOL16 WINAPI TextOut16(HDC16,INT16,INT16,LPCSTR,INT16);
614 BOOL16 WINAPI UnrealizeObject16(HGDIOBJ16);
615 INT16 WINAPI UpdateColors16(HDC16);
616 BOOL16 WINAPI WidenPath16(HDC16);
617 INT16 WINAPI WriteDialog16(HPJOB16,LPSTR,INT16);
618 INT16 WINAPI WriteSpool16(HPJOB16,LPSTR,INT16);
621 inline static void CONV_POINT16TO32( const POINT16 *p16, POINT *p32 )
623 p32->x = p16->x;
624 p32->y = p16->y;
627 inline static void CONV_POINT32TO16( const POINT *p32, POINT16 *p16 )
629 p16->x = (INT16)p32->x;
630 p16->y = (INT16)p32->y;
633 inline static void CONV_RECT16TO32( const RECT16 *r16, RECT *r32 )
635 r32->left = r16->left;
636 r32->top = r16->top;
637 r32->right = r16->right;
638 r32->bottom = r16->bottom;
641 inline static void CONV_RECT32TO16( const RECT *r32, RECT16 *r16 )
643 r16->left = (INT16)r32->left;
644 r16->top = (INT16)r32->top;
645 r16->right = (INT16)r32->right;
646 r16->bottom = (INT16)r32->bottom;
649 #endif /* __WINE_WINE_WINGDI16_H */