| 1 | #ifndef __WINE_WINGDI_H | 
|---|
| 2 | #define __WINE_WINGDI_H | 
|---|
| 3 |  | 
|---|
| 4 | #include "windef.h" | 
|---|
| 5 |  | 
|---|
| 6 | #ifdef __cplusplus | 
|---|
| 7 | extern "C" { | 
|---|
| 8 | #endif | 
|---|
| 9 |  | 
|---|
| 10 | #define WINGDIAPI | 
|---|
| 11 |  | 
|---|
| 12 | #define _WINGDI_ | 
|---|
| 13 |  | 
|---|
| 14 | #include "pshpack1.h" | 
|---|
| 15 |  | 
|---|
| 16 | typedef struct _ABCFLOAT { | 
|---|
| 17 | FLOAT   abcfA; | 
|---|
| 18 | FLOAT   abcfB; | 
|---|
| 19 | FLOAT   abcfC; | 
|---|
| 20 | } ABCFLOAT, *PABCFLOAT, *LPABCFLOAT; | 
|---|
| 21 |  | 
|---|
| 22 | typedef struct | 
|---|
| 23 | { | 
|---|
| 24 | WORD   wFirst; | 
|---|
| 25 | WORD   wSecond; | 
|---|
| 26 | INT  iKernAmount; | 
|---|
| 27 | } KERNINGPAIR, *LPKERNINGPAIR; | 
|---|
| 28 |  | 
|---|
| 29 |  | 
|---|
| 30 | typedef struct | 
|---|
| 31 | { | 
|---|
| 32 | HDC   hdc; | 
|---|
| 33 | BOOL  fErase; | 
|---|
| 34 | RECT  rcPaint; | 
|---|
| 35 | BOOL  fRestore; | 
|---|
| 36 | BOOL  fIncUpdate; | 
|---|
| 37 | BYTE    rgbReserved[32]; | 
|---|
| 38 | } PAINTSTRUCT, *PPAINTSTRUCT, *LPPAINTSTRUCT; | 
|---|
| 39 |  | 
|---|
| 40 |  | 
|---|
| 41 |  | 
|---|
| 42 | typedef struct tagPIXELFORMATDESCRIPTOR { | 
|---|
| 43 | WORD  nSize; | 
|---|
| 44 | WORD  nVersion; | 
|---|
| 45 | DWORD dwFlags; | 
|---|
| 46 | BYTE  iPixelType; | 
|---|
| 47 | BYTE  cColorBits; | 
|---|
| 48 | BYTE  cRedBits; | 
|---|
| 49 | BYTE  cRedShift; | 
|---|
| 50 | BYTE  cGreenBits; | 
|---|
| 51 | BYTE  cGreenShift; | 
|---|
| 52 | BYTE  cBlueBits; | 
|---|
| 53 | BYTE  cBlueShift; | 
|---|
| 54 | BYTE  cAlphaBits; | 
|---|
| 55 | BYTE  cAlphaShift; | 
|---|
| 56 | BYTE  cAccumBits; | 
|---|
| 57 | BYTE  cAccumRedBits; | 
|---|
| 58 | BYTE  cAccumGreenBits; | 
|---|
| 59 | BYTE  cAccumBlueBits; | 
|---|
| 60 | BYTE  cAccumAlphaBits; | 
|---|
| 61 | BYTE  cDepthBits; | 
|---|
| 62 | BYTE  cStencilBits; | 
|---|
| 63 | BYTE  cAuxBuffers; | 
|---|
| 64 | BYTE  iLayerType; | 
|---|
| 65 | BYTE  bReserved; | 
|---|
| 66 | DWORD dwLayerMask; | 
|---|
| 67 | DWORD dwVisibleMask; | 
|---|
| 68 | DWORD dwDamageMask; | 
|---|
| 69 | } PIXELFORMATDESCRIPTOR, *LPPIXELFORMATDESCRIPTOR; | 
|---|
| 70 |  | 
|---|
| 71 | #define PFD_TYPE_RGBA        0 | 
|---|
| 72 | #define PFD_TYPE_COLORINDEX  1 | 
|---|
| 73 |  | 
|---|
| 74 | #define PFD_MAIN_PLANE       0 | 
|---|
| 75 | #define PFD_OVERLAY_PLANE    1 | 
|---|
| 76 | #define PFD_UNDERLAY_PLANE   (-1) | 
|---|
| 77 |  | 
|---|
| 78 | #define PFD_DOUBLEBUFFER            0x00000001 | 
|---|
| 79 | #define PFD_STEREO                  0x00000002 | 
|---|
| 80 | #define PFD_DRAW_TO_WINDOW          0x00000004 | 
|---|
| 81 | #define PFD_DRAW_TO_BITMAP          0x00000008 | 
|---|
| 82 | #define PFD_SUPPORT_GDI             0x00000010 | 
|---|
| 83 | #define PFD_SUPPORT_OPENGL          0x00000020 | 
|---|
| 84 | #define PFD_GENERIC_FORMAT          0x00000040 | 
|---|
| 85 | #define PFD_NEED_PALETTE            0x00000080 | 
|---|
| 86 | #define PFD_NEED_SYSTEM_PALETTE     0x00000100 | 
|---|
| 87 | #define PFD_SWAP_EXCHANGE           0x00000200 | 
|---|
| 88 | #define PFD_SWAP_COPY               0x00000400 | 
|---|
| 89 | #define PFD_SWAP_LAYER_BUFFERS      0x00000800 | 
|---|
| 90 | #define PFD_GENERIC_ACCELERATED     0x00001000 | 
|---|
| 91 |  | 
|---|
| 92 | #define PFD_DEPTH_DONTCARE          0x20000000 | 
|---|
| 93 | #define PFD_DOUBLEBUFFER_DONTCARE   0x40000000 | 
|---|
| 94 | #define PFD_STEREO_DONTCARE         0x80000000 | 
|---|
| 95 |  | 
|---|
| 96 | typedef struct tagCOLORADJUSTMENT | 
|---|
| 97 | { | 
|---|
| 98 | WORD   caSize; | 
|---|
| 99 | WORD   caFlags; | 
|---|
| 100 | WORD   caIlluminantIndex; | 
|---|
| 101 | WORD   caRedGamma; | 
|---|
| 102 | WORD   caGreenGamma; | 
|---|
| 103 | WORD   caBlueGamma; | 
|---|
| 104 | WORD   caReferenceBlack; | 
|---|
| 105 | WORD   caReferenceWhite; | 
|---|
| 106 | SHORT  caContrast; | 
|---|
| 107 | SHORT  caBrightness; | 
|---|
| 108 | SHORT  caColorfulness; | 
|---|
| 109 | SHORT  caRedGreenTint; | 
|---|
| 110 | } COLORADJUSTMENT, *PCOLORADJUSTMENT, *LPCOLORADJUSTMENT; | 
|---|
| 111 |  | 
|---|
| 112 | typedef LONG FXPT16DOT16, *LPFXPT16DOT16; | 
|---|
| 113 | typedef LONG FXPT2DOT30, *LPFXPT2DOT30; | 
|---|
| 114 | typedef LONG LCSCSTYPE; | 
|---|
| 115 | typedef LONG LCSGAMUTMATCH; | 
|---|
| 116 |  | 
|---|
| 117 | typedef struct tagCIEXYZ | 
|---|
| 118 | { | 
|---|
| 119 | FXPT2DOT30 ciexyzX; | 
|---|
| 120 | FXPT2DOT30 ciexyzY; | 
|---|
| 121 | FXPT2DOT30 ciexyzZ; | 
|---|
| 122 | } CIEXYZ, *LPCIEXYZ; | 
|---|
| 123 |  | 
|---|
| 124 | typedef struct tagCIEXYZTRIPLE | 
|---|
| 125 | { | 
|---|
| 126 | CIEXYZ ciexyzRed; | 
|---|
| 127 | CIEXYZ ciexyzGreen; | 
|---|
| 128 | CIEXYZ ciexyzBlue; | 
|---|
| 129 | } CIEXYZTRIPLE, *LPCIEXYZTRIPLE; | 
|---|
| 130 |  | 
|---|
| 131 | typedef struct tagLOGCOLORSPACEA | 
|---|
| 132 | { | 
|---|
| 133 | DWORD lcsSignature; | 
|---|
| 134 | DWORD lcsVersion; | 
|---|
| 135 | DWORD lcsSize; | 
|---|
| 136 | LCSCSTYPE lcsCSType; | 
|---|
| 137 | LCSGAMUTMATCH lcsIntent; | 
|---|
| 138 | CIEXYZTRIPLE lcsEndpoints; | 
|---|
| 139 | DWORD lcsGammaRed; | 
|---|
| 140 | DWORD lcsGammaGreen; | 
|---|
| 141 | DWORD lcsGammaBlue; | 
|---|
| 142 | CHAR lcsFilename[_MAX_PATH]; | 
|---|
| 143 | } LOGCOLORSPACEA, *LPLOGCOLORSPACEA; | 
|---|
| 144 |  | 
|---|
| 145 | typedef struct tagLOGCOLORSPACEW | 
|---|
| 146 | { | 
|---|
| 147 | DWORD lcsSignature; | 
|---|
| 148 | DWORD lcsVersion; | 
|---|
| 149 | DWORD lcsSize; | 
|---|
| 150 | LCSCSTYPE lcsCSType; | 
|---|
| 151 | LCSGAMUTMATCH lcsIntent; | 
|---|
| 152 | CIEXYZTRIPLE lcsEndpoints; | 
|---|
| 153 | DWORD lcsGammaRed; | 
|---|
| 154 | DWORD lcsGammaGreen; | 
|---|
| 155 | DWORD lcsGammaBlue; | 
|---|
| 156 | WCHAR lcsFilename[_MAX_PATH]; | 
|---|
| 157 | } LOGCOLORSPACEW, *LPLOGCOLORSPACEW; | 
|---|
| 158 |  | 
|---|
| 159 | DECL_WINELIB_TYPE_AW(LPLOGCOLORSPACE) | 
|---|
| 160 | DECL_WINELIB_TYPE_AW(LOGCOLORSPACE) | 
|---|
| 161 |  | 
|---|
| 162 | #define DC_FIELDS               1 | 
|---|
| 163 | #define DC_PAPERS               2 | 
|---|
| 164 | #define DC_PAPERSIZE            3 | 
|---|
| 165 | #define DC_MINEXTENT            4 | 
|---|
| 166 | #define DC_MAXEXTENT            5 | 
|---|
| 167 | #define DC_BINS                 6 | 
|---|
| 168 | #define DC_DUPLEX               7 | 
|---|
| 169 | #define DC_SIZE                 8 | 
|---|
| 170 | #define DC_EXTRA                9 | 
|---|
| 171 | #define DC_VERSION              10 | 
|---|
| 172 | #define DC_DRIVER               11 | 
|---|
| 173 | #define DC_BINNAMES             12 | 
|---|
| 174 | #define DC_ENUMRESOLUTIONS      13 | 
|---|
| 175 | #define DC_FILEDEPENDENCIES     14 | 
|---|
| 176 | #define DC_TRUETYPE             15 | 
|---|
| 177 | #define DC_PAPERNAMES           16 | 
|---|
| 178 | #define DC_ORIENTATION          17 | 
|---|
| 179 | #define DC_COPIES               18 | 
|---|
| 180 | #define DC_BINADJUST            19 | 
|---|
| 181 | #define DC_EMF_COMPLIANT        20 | 
|---|
| 182 | #define DC_DATATYPE_PRODUCED    21 | 
|---|
| 183 | #define DC_COLLATE              22 | 
|---|
| 184 | #define DC_MANUFACTURER         23 | 
|---|
| 185 | #define DC_MODEL                24 | 
|---|
| 186 |  | 
|---|
| 187 | /* Flag returned from Escape QUERYDIBSUPPORT */ | 
|---|
| 188 | #define QDI_SETDIBITS           1 | 
|---|
| 189 | #define QDI_GETDIBITS           2 | 
|---|
| 190 | #define QDI_DIBTOSCREEN         4 | 
|---|
| 191 | #define QDI_STRETCHDIB          8 | 
|---|
| 192 |  | 
|---|
| 193 |  | 
|---|
| 194 | #define PR_JOBSTATUS    0x0000 | 
|---|
| 195 |  | 
|---|
| 196 |  | 
|---|
| 197 | /* GDI Escape commands */ | 
|---|
| 198 | #define NEWFRAME                1 | 
|---|
| 199 | #define ABORTDOC                2 | 
|---|
| 200 | #define NEXTBAND                3 | 
|---|
| 201 | #define SETCOLORTABLE           4 | 
|---|
| 202 | #define GETCOLORTABLE           5 | 
|---|
| 203 | #define FLUSHOUTPUT             6 | 
|---|
| 204 | #define DRAFTMODE               7 | 
|---|
| 205 | #define QUERYESCSUPPORT         8 | 
|---|
| 206 | #define SETABORTPROC            9 | 
|---|
| 207 | #define STARTDOC                10 | 
|---|
| 208 | #define ENDDOC                  11 | 
|---|
| 209 | #define GETPHYSPAGESIZE         12 | 
|---|
| 210 | #define GETPRINTINGOFFSET       13 | 
|---|
| 211 | #define GETSCALINGFACTOR        14 | 
|---|
| 212 | #define MFCOMMENT               15 | 
|---|
| 213 | #define GETPENWIDTH             16 | 
|---|
| 214 | #define SETCOPYCOUNT            17 | 
|---|
| 215 | #define SELECTPAPERSOURCE       18 | 
|---|
| 216 | #define DEVICEDATA              19 | 
|---|
| 217 | #define PASSTHROUGH             19 | 
|---|
| 218 | #define GETTECHNOLGY            20 | 
|---|
| 219 | #define GETTECHNOLOGY           20 /* yes, both of them */ | 
|---|
| 220 | #define SETLINECAP              21 | 
|---|
| 221 | #define SETLINEJOIN             22 | 
|---|
| 222 | #define SETMITERLIMIT           23 | 
|---|
| 223 | #define BANDINFO                24 | 
|---|
| 224 | #define DRAWPATTERNRECT         25 | 
|---|
| 225 | #define GETVECTORPENSIZE        26 | 
|---|
| 226 | #define GETVECTORBRUSHSIZE      27 | 
|---|
| 227 | #define ENABLEDUPLEX            28 | 
|---|
| 228 | #define GETSETPAPERBINS         29 | 
|---|
| 229 | #define GETSETPRINTORIENT       30 | 
|---|
| 230 | #define ENUMPAPERBINS           31 | 
|---|
| 231 | #define SETDIBSCALING           32 | 
|---|
| 232 | #define EPSPRINTING             33 | 
|---|
| 233 | #define ENUMPAPERMETRICS        34 | 
|---|
| 234 | #define GETSETPAPERMETRICS      35 | 
|---|
| 235 | #define POSTSCRIPT_DATA         37 | 
|---|
| 236 | #define POSTSCRIPT_IGNORE       38 | 
|---|
| 237 | #define MOUSETRAILS             39 | 
|---|
| 238 | #define GETDEVICEUNITS          42 | 
|---|
| 239 |  | 
|---|
| 240 | #define DESKTOPVERTRES          117 | 
|---|
| 241 | #define DESKTOPHORZRES          118 | 
|---|
| 242 |  | 
|---|
| 243 | #define GETEXTENDEDTEXTMETRICS  256 | 
|---|
| 244 | #define GETEXTENTTABLE          257 | 
|---|
| 245 | #define GETPAIRKERNTABLE        258 | 
|---|
| 246 | #define GETTRACKKERNTABLE       259 | 
|---|
| 247 | #define EXTTEXTOUT              512 | 
|---|
| 248 | #define GETFACENAME             513 | 
|---|
| 249 | #define DOWNLOADFACE            514 | 
|---|
| 250 | #define ENABLERELATIVEWIDTHS    768 | 
|---|
| 251 | #define ENABLEPAIRKERNING       769 | 
|---|
| 252 | #define SETKERNTRACK            770 | 
|---|
| 253 | #define SETALLJUSTVALUES        771 | 
|---|
| 254 | #define SETCHARSET              772 | 
|---|
| 255 |  | 
|---|
| 256 | #define STRETCHBLT              2048 | 
|---|
| 257 | #define GETSETSCREENPARAMS      3072 | 
|---|
| 258 | #define QUERYDIBSUPPORT         3073 | 
|---|
| 259 | #define BEGIN_PATH              4096 | 
|---|
| 260 | #define CLIP_TO_PATH            4097 | 
|---|
| 261 | #define END_PATH                4098 | 
|---|
| 262 | #define EXT_DEVICE_CAPS         4099 | 
|---|
| 263 | #define RESTORE_CTM             4100 | 
|---|
| 264 | #define SAVE_CTM                4101 | 
|---|
| 265 | #define SET_ARC_DIRECTION       4102 | 
|---|
| 266 | #define SET_BACKGROUND_COLOR    4103 | 
|---|
| 267 | #define SET_POLY_MODE           4104 | 
|---|
| 268 | #define SET_SCREEN_ANGLE        4105 | 
|---|
| 269 | #define SET_SPREAD              4106 | 
|---|
| 270 | #define TRANSFORM_CTM           4107 | 
|---|
| 271 | #define SET_CLIP_BOX            4108 | 
|---|
| 272 | #define SET_BOUNDS              4109 | 
|---|
| 273 | #define SET_MIRROR_MODE         4110 | 
|---|
| 274 | #define OPENCHANNEL             4110 | 
|---|
| 275 | #define DOWNLOADHEADER          4111 | 
|---|
| 276 | #define CLOSECHANNEL            4112 | 
|---|
| 277 | #define POSTSCRIPT_PASSTHROUGH  4115 | 
|---|
| 278 | #define ENCAPSULATED_POSTSCRIPT 4116 | 
|---|
| 279 |  | 
|---|
| 280 | /* Spooler Error Codes */ | 
|---|
| 281 | #define SP_NOTREPORTED  0x4000 | 
|---|
| 282 | #define SP_ERROR        (-1) | 
|---|
| 283 | #define SP_APPABORT     (-2) | 
|---|
| 284 | #define SP_USERABORT    (-3) | 
|---|
| 285 | #define SP_OUTOFDISK    (-4) | 
|---|
| 286 | #define SP_OUTOFMEMORY  (-5) | 
|---|
| 287 |  | 
|---|
| 288 |  | 
|---|
| 289 | /* Raster operations */ | 
|---|
| 290 |  | 
|---|
| 291 | #define R2_BLACK         1 | 
|---|
| 292 | #define R2_NOTMERGEPEN   2 | 
|---|
| 293 | #define R2_MASKNOTPEN    3 | 
|---|
| 294 | #define R2_NOTCOPYPEN    4 | 
|---|
| 295 | #define R2_MASKPENNOT    5 | 
|---|
| 296 | #define R2_NOT           6 | 
|---|
| 297 | #define R2_XORPEN        7 | 
|---|
| 298 | #define R2_NOTMASKPEN    8 | 
|---|
| 299 | #define R2_MASKPEN       9 | 
|---|
| 300 | #define R2_NOTXORPEN    10 | 
|---|
| 301 | #define R2_NOP          11 | 
|---|
| 302 | #define R2_MERGENOTPEN  12 | 
|---|
| 303 | #define R2_COPYPEN      13 | 
|---|
| 304 | #define R2_MERGEPENNOT  14 | 
|---|
| 305 | #define R2_MERGEPEN     15 | 
|---|
| 306 | #define R2_WHITE        16 | 
|---|
| 307 |  | 
|---|
| 308 | #define SRCCOPY         0xcc0020 | 
|---|
| 309 | #define SRCPAINT        0xee0086 | 
|---|
| 310 | #define SRCAND          0x8800c6 | 
|---|
| 311 | #define SRCINVERT       0x660046 | 
|---|
| 312 | #define SRCERASE        0x440328 | 
|---|
| 313 | #define NOTSRCCOPY      0x330008 | 
|---|
| 314 | #define NOTSRCERASE     0x1100a6 | 
|---|
| 315 | #define MERGECOPY       0xc000ca | 
|---|
| 316 | #define MERGEPAINT      0xbb0226 | 
|---|
| 317 | #define PATCOPY         0xf00021 | 
|---|
| 318 | #define PATPAINT        0xfb0a09 | 
|---|
| 319 | #define PATINVERT       0x5a0049 | 
|---|
| 320 | #define DSTINVERT       0x550009 | 
|---|
| 321 | #define BLACKNESS       0x000042 | 
|---|
| 322 | #define WHITENESS       0xff0062 | 
|---|
| 323 |  | 
|---|
| 324 | /* StretchBlt() modes */ | 
|---|
| 325 | #define BLACKONWHITE         1 | 
|---|
| 326 | #define WHITEONBLACK         2 | 
|---|
| 327 | #define COLORONCOLOR         3 | 
|---|
| 328 | #define HALFTONE             4 | 
|---|
| 329 | #define MAXSTRETCHBLTMODE    4 | 
|---|
| 330 |  | 
|---|
| 331 | #define STRETCH_ANDSCANS     BLACKONWHITE | 
|---|
| 332 | #define STRETCH_ORSCANS      WHITEONBLACK | 
|---|
| 333 | #define STRETCH_DELETESCANS  COLORONCOLOR | 
|---|
| 334 | #define STRETCH_HALFTONE     HALFTONE | 
|---|
| 335 |  | 
|---|
| 336 | /* Colors */ | 
|---|
| 337 |  | 
|---|
| 338 | typedef DWORD COLORREF, *LPCOLORREF; | 
|---|
| 339 |  | 
|---|
| 340 | #define RGB(r,g,b)          ((COLORREF)((r) | ((g) << 8) | ((b) << 16))) | 
|---|
| 341 | #define PALETTERGB(r,g,b)   (0x02000000 | RGB(r,g,b)) | 
|---|
| 342 | #define PALETTEINDEX(i)     ((COLORREF)(0x01000000 | (WORD)(i))) | 
|---|
| 343 |  | 
|---|
| 344 | #define GetRValue(rgb)      ((rgb) & 0xff) | 
|---|
| 345 | #define GetGValue(rgb)      (((rgb) >> 8) & 0xff) | 
|---|
| 346 | #define GetBValue(rgb)      (((rgb) >> 16) & 0xff) | 
|---|
| 347 |  | 
|---|
| 348 | #define COLOR_SCROLLBAR             0 | 
|---|
| 349 | #define COLOR_BACKGROUND            1 | 
|---|
| 350 | #define COLOR_ACTIVECAPTION         2 | 
|---|
| 351 | #define COLOR_INACTIVECAPTION       3 | 
|---|
| 352 | #define COLOR_MENU                  4 | 
|---|
| 353 | #define COLOR_WINDOW                5 | 
|---|
| 354 | #define COLOR_WINDOWFRAME           6 | 
|---|
| 355 | #define COLOR_MENUTEXT              7 | 
|---|
| 356 | #define COLOR_WINDOWTEXT            8 | 
|---|
| 357 | #define COLOR_CAPTIONTEXT           9 | 
|---|
| 358 | #define COLOR_ACTIVEBORDER         10 | 
|---|
| 359 | #define COLOR_INACTIVEBORDER       11 | 
|---|
| 360 | #define COLOR_APPWORKSPACE         12 | 
|---|
| 361 | #define COLOR_HIGHLIGHT            13 | 
|---|
| 362 | #define COLOR_HIGHLIGHTTEXT        14 | 
|---|
| 363 | #define COLOR_BTNFACE              15 | 
|---|
| 364 | #define COLOR_BTNSHADOW            16 | 
|---|
| 365 | #define COLOR_GRAYTEXT             17 | 
|---|
| 366 | #define COLOR_BTNTEXT              18 | 
|---|
| 367 | #define COLOR_INACTIVECAPTIONTEXT  19 | 
|---|
| 368 | #define COLOR_BTNHIGHLIGHT         20 | 
|---|
| 369 | /* win95 colors */ | 
|---|
| 370 | #define COLOR_3DDKSHADOW           21 | 
|---|
| 371 | #define COLOR_3DLIGHT              22 | 
|---|
| 372 | #define COLOR_INFOTEXT             23 | 
|---|
| 373 | #define COLOR_INFOBK               24 | 
|---|
| 374 | #define COLOR_DESKTOP              COLOR_BACKGROUND | 
|---|
| 375 | #define COLOR_3DFACE               COLOR_BTNFACE | 
|---|
| 376 | #define COLOR_3DSHADOW             COLOR_BTNSHADOW | 
|---|
| 377 | #define COLOR_3DHIGHLIGHT          COLOR_BTNHIGHLIGHT | 
|---|
| 378 | #define COLOR_3DHILIGHT            COLOR_BTNHIGHLIGHT | 
|---|
| 379 | #define COLOR_BTNHILIGHT           COLOR_BTNHIGHLIGHT | 
|---|
| 380 | /* win98 colors */ | 
|---|
| 381 | #define COLOR_ALTERNATEBTNFACE         25  /* undocumented, constant's name unknown */ | 
|---|
| 382 | #define COLOR_HOTLIGHT                 26 | 
|---|
| 383 | #define COLOR_GRADIENTACTIVECAPTION    27 | 
|---|
| 384 | #define COLOR_GRADIENTINACTIVECAPTION  28 | 
|---|
| 385 |  | 
|---|
| 386 | /* WM_CTLCOLOR values */ | 
|---|
| 387 | #define CTLCOLOR_MSGBOX             0 | 
|---|
| 388 | #define CTLCOLOR_EDIT               1 | 
|---|
| 389 | #define CTLCOLOR_LISTBOX            2 | 
|---|
| 390 | #define CTLCOLOR_BTN                3 | 
|---|
| 391 | #define CTLCOLOR_DLG                4 | 
|---|
| 392 | #define CTLCOLOR_SCROLLBAR          5 | 
|---|
| 393 | #define CTLCOLOR_STATIC             6 | 
|---|
| 394 |  | 
|---|
| 395 | #define ICM_OFF   1 | 
|---|
| 396 | #define ICM_ON    2 | 
|---|
| 397 | #define ICM_QUERY 3 | 
|---|
| 398 |  | 
|---|
| 399 | /* Bounds Accumulation APIs */ | 
|---|
| 400 | #define DCB_RESET       0x0001 | 
|---|
| 401 | #define DCB_ACCUMULATE  0x0002 | 
|---|
| 402 | #define DCB_DIRTY       DCB_ACCUMULATE | 
|---|
| 403 | #define DCB_SET         (DCB_RESET | DCB_ACCUMULATE) | 
|---|
| 404 | #define DCB_ENABLE      0x0004 | 
|---|
| 405 | #define DCB_DISABLE     0x0008 | 
|---|
| 406 |  | 
|---|
| 407 | /* Bitmaps */ | 
|---|
| 408 | typedef struct | 
|---|
| 409 | { | 
|---|
| 410 | INT  bmType; | 
|---|
| 411 | INT  bmWidth; | 
|---|
| 412 | INT  bmHeight; | 
|---|
| 413 | INT  bmWidthBytes; | 
|---|
| 414 | WORD   bmPlanes; | 
|---|
| 415 | WORD   bmBitsPixel; | 
|---|
| 416 | LPVOID bmBits WINE_PACKED; | 
|---|
| 417 | } BITMAP, *LPBITMAP; | 
|---|
| 418 |  | 
|---|
| 419 |  | 
|---|
| 420 | /* Brushes */ | 
|---|
| 421 | typedef struct | 
|---|
| 422 | { | 
|---|
| 423 | UINT     lbStyle; | 
|---|
| 424 | COLORREF   lbColor; | 
|---|
| 425 | INT      lbHatch; | 
|---|
| 426 | } LOGBRUSH, *LPLOGBRUSH; | 
|---|
| 427 |  | 
|---|
| 428 |  | 
|---|
| 429 | /* Brush styles */ | 
|---|
| 430 | #define BS_SOLID            0 | 
|---|
| 431 | #define BS_NULL             1 | 
|---|
| 432 | #define BS_HOLLOW           1 | 
|---|
| 433 | #define BS_HATCHED          2 | 
|---|
| 434 | #define BS_PATTERN          3 | 
|---|
| 435 | #define BS_INDEXED          4 | 
|---|
| 436 | #define BS_DIBPATTERN       5 | 
|---|
| 437 | #define BS_DIBPATTERNPT     6 | 
|---|
| 438 | #define BS_PATTERN8X8       7 | 
|---|
| 439 | #define BS_DIBPATTERN8X8    8 | 
|---|
| 440 | #define BS_MONOPATTERN      9 | 
|---|
| 441 |  | 
|---|
| 442 | /* Hatch styles */ | 
|---|
| 443 | #define HS_HORIZONTAL       0 | 
|---|
| 444 | #define HS_VERTICAL         1 | 
|---|
| 445 | #define HS_FDIAGONAL        2 | 
|---|
| 446 | #define HS_BDIAGONAL        3 | 
|---|
| 447 | #define HS_CROSS            4 | 
|---|
| 448 | #define HS_DIAGCROSS        5 | 
|---|
| 449 |  | 
|---|
| 450 | /* Fonts */ | 
|---|
| 451 |  | 
|---|
| 452 | #define LF_FACESIZE     32 | 
|---|
| 453 | #define LF_FULLFACESIZE 64 | 
|---|
| 454 |  | 
|---|
| 455 | #define RASTER_FONTTYPE     0x0001 | 
|---|
| 456 | #define DEVICE_FONTTYPE     0x0002 | 
|---|
| 457 | #define TRUETYPE_FONTTYPE   0x0004 | 
|---|
| 458 |  | 
|---|
| 459 | typedef struct | 
|---|
| 460 | { | 
|---|
| 461 | INT  lfHeight; | 
|---|
| 462 | INT  lfWidth; | 
|---|
| 463 | INT  lfEscapement; | 
|---|
| 464 | INT  lfOrientation; | 
|---|
| 465 | INT  lfWeight; | 
|---|
| 466 | BYTE   lfItalic; | 
|---|
| 467 | BYTE   lfUnderline; | 
|---|
| 468 | BYTE   lfStrikeOut; | 
|---|
| 469 | BYTE   lfCharSet; | 
|---|
| 470 | BYTE   lfOutPrecision; | 
|---|
| 471 | BYTE   lfClipPrecision; | 
|---|
| 472 | BYTE   lfQuality; | 
|---|
| 473 | BYTE   lfPitchAndFamily; | 
|---|
| 474 | CHAR   lfFaceName[LF_FACESIZE]; | 
|---|
| 475 | } LOGFONTA, *PLOGFONTA, *LPLOGFONTA; | 
|---|
| 476 |  | 
|---|
| 477 | typedef struct | 
|---|
| 478 | { | 
|---|
| 479 | INT  lfHeight; | 
|---|
| 480 | INT  lfWidth; | 
|---|
| 481 | INT  lfEscapement; | 
|---|
| 482 | INT  lfOrientation; | 
|---|
| 483 | INT  lfWeight; | 
|---|
| 484 | BYTE   lfItalic; | 
|---|
| 485 | BYTE   lfUnderline; | 
|---|
| 486 | BYTE   lfStrikeOut; | 
|---|
| 487 | BYTE   lfCharSet; | 
|---|
| 488 | BYTE   lfOutPrecision; | 
|---|
| 489 | BYTE   lfClipPrecision; | 
|---|
| 490 | BYTE   lfQuality; | 
|---|
| 491 | BYTE   lfPitchAndFamily; | 
|---|
| 492 | WCHAR  lfFaceName[LF_FACESIZE]; | 
|---|
| 493 | } LOGFONTW, *PLOGFONTW, *LPLOGFONTW; | 
|---|
| 494 |  | 
|---|
| 495 | DECL_WINELIB_TYPE_AW(LOGFONT) | 
|---|
| 496 | DECL_WINELIB_TYPE_AW(PLOGFONT) | 
|---|
| 497 | DECL_WINELIB_TYPE_AW(LPLOGFONT) | 
|---|
| 498 |  | 
|---|
| 499 | typedef struct | 
|---|
| 500 | { | 
|---|
| 501 | LOGFONTA elfLogFont; | 
|---|
| 502 | BYTE       elfFullName[LF_FULLFACESIZE] WINE_PACKED; | 
|---|
| 503 | BYTE       elfStyle[LF_FACESIZE] WINE_PACKED; | 
|---|
| 504 | } ENUMLOGFONTA, *LPENUMLOGFONTA; | 
|---|
| 505 |  | 
|---|
| 506 | typedef struct | 
|---|
| 507 | { | 
|---|
| 508 | LOGFONTW elfLogFont; | 
|---|
| 509 | WCHAR      elfFullName[LF_FULLFACESIZE] WINE_PACKED; | 
|---|
| 510 | WCHAR      elfStyle[LF_FACESIZE] WINE_PACKED; | 
|---|
| 511 | } ENUMLOGFONTW, *LPENUMLOGFONTW; | 
|---|
| 512 |  | 
|---|
| 513 | typedef struct | 
|---|
| 514 | { | 
|---|
| 515 | LOGFONTA elfLogFont; | 
|---|
| 516 | BYTE       elfFullName[LF_FULLFACESIZE] WINE_PACKED; | 
|---|
| 517 | BYTE       elfStyle[LF_FACESIZE] WINE_PACKED; | 
|---|
| 518 | BYTE       elfScript[LF_FACESIZE] WINE_PACKED; | 
|---|
| 519 | } ENUMLOGFONTEXA,*LPENUMLOGFONTEXA; | 
|---|
| 520 |  | 
|---|
| 521 | typedef struct | 
|---|
| 522 | { | 
|---|
| 523 | LOGFONTW elfLogFont; | 
|---|
| 524 | WCHAR      elfFullName[LF_FULLFACESIZE] WINE_PACKED; | 
|---|
| 525 | WCHAR      elfStyle[LF_FACESIZE] WINE_PACKED; | 
|---|
| 526 | WCHAR      elfScript[LF_FACESIZE] WINE_PACKED; | 
|---|
| 527 | } ENUMLOGFONTEXW,*LPENUMLOGFONTEXW; | 
|---|
| 528 |  | 
|---|
| 529 | DECL_WINELIB_TYPE_AW(ENUMLOGFONT) | 
|---|
| 530 | DECL_WINELIB_TYPE_AW(ENUMLOGFONTEX) | 
|---|
| 531 | DECL_WINELIB_TYPE_AW(LPENUMLOGFONT) | 
|---|
| 532 | DECL_WINELIB_TYPE_AW(LPENUMLOGFONTEX) | 
|---|
| 533 |  | 
|---|
| 534 | /* | 
|---|
| 535 | * The FONTSIGNATURE tells which Unicode ranges and which code pages | 
|---|
| 536 | * have glyphs in a font. | 
|---|
| 537 | * | 
|---|
| 538 | * fsUsb  128-bit bitmap. The most significant bits are 10 (magic number). | 
|---|
| 539 | *        The remaining 126 bits map the Unicode ISO 10646 subranges | 
|---|
| 540 | *        for which the font provides glyphs. | 
|---|
| 541 | * | 
|---|
| 542 | * fsCsb  64-bit bitmap. The low 32 bits map the Windows codepages for | 
|---|
| 543 | *        which the font provides glyphs. The high 32 bits are for | 
|---|
| 544 | *        non Windows codepages. | 
|---|
| 545 | */ | 
|---|
| 546 | typedef struct | 
|---|
| 547 | { | 
|---|
| 548 | DWORD fsUsb[4]; | 
|---|
| 549 | DWORD fsCsb[2]; | 
|---|
| 550 | } FONTSIGNATURE,*LPFONTSIGNATURE; | 
|---|
| 551 |  | 
|---|
| 552 | typedef struct | 
|---|
| 553 | { | 
|---|
| 554 | UINT  ciCharset; /* character set */ | 
|---|
| 555 | UINT  ciACP; /* ANSI code page */ | 
|---|
| 556 | FONTSIGNATURE fs; | 
|---|
| 557 | } CHARSETINFO,*LPCHARSETINFO; | 
|---|
| 558 |  | 
|---|
| 559 | /* Flags for TranslateCharsetInfo */ | 
|---|
| 560 | #define TCI_SRCCHARSET    1 | 
|---|
| 561 | #define TCI_SRCCODEPAGE   2 | 
|---|
| 562 | #define TCI_SRCFONTSIG    3 | 
|---|
| 563 |  | 
|---|
| 564 | /* Flags for ModifyWorldTransform */ | 
|---|
| 565 | #define MWT_IDENTITY      1 | 
|---|
| 566 | #define MWT_LEFTMULTIPLY  2 | 
|---|
| 567 | #define MWT_RIGHTMULTIPLY 3 | 
|---|
| 568 |  | 
|---|
| 569 | /* Object Definitions for EnumObjects() */ | 
|---|
| 570 | #define OBJ_PEN             1 | 
|---|
| 571 | #define OBJ_BRUSH           2 | 
|---|
| 572 | #define OBJ_DC              3 | 
|---|
| 573 | #define OBJ_METADC          4 | 
|---|
| 574 | #define OBJ_PAL             5 | 
|---|
| 575 | #define OBJ_FONT            6 | 
|---|
| 576 | #define OBJ_BITMAP          7 | 
|---|
| 577 | #define OBJ_REGION          8 | 
|---|
| 578 | #define OBJ_METAFILE        9 | 
|---|
| 579 | #define OBJ_MEMDC           10 | 
|---|
| 580 | #define OBJ_EXTPEN          11 | 
|---|
| 581 | #define OBJ_ENHMETADC       12 | 
|---|
| 582 | #define OBJ_ENHMETAFILE     13 | 
|---|
| 583 |  | 
|---|
| 584 |  | 
|---|
| 585 | typedef struct | 
|---|
| 586 | { | 
|---|
| 587 | FLOAT  eM11; | 
|---|
| 588 | FLOAT  eM12; | 
|---|
| 589 | FLOAT  eM21; | 
|---|
| 590 | FLOAT  eM22; | 
|---|
| 591 | FLOAT  eDx; | 
|---|
| 592 | FLOAT  eDy; | 
|---|
| 593 | } XFORM, *LPXFORM; | 
|---|
| 594 |  | 
|---|
| 595 | /* lfWeight values */ | 
|---|
| 596 | #define FW_DONTCARE         0 | 
|---|
| 597 | #define FW_THIN             100 | 
|---|
| 598 | #define FW_EXTRALIGHT       200 | 
|---|
| 599 | #define FW_ULTRALIGHT       200 | 
|---|
| 600 | #define FW_LIGHT            300 | 
|---|
| 601 | #define FW_NORMAL           400 | 
|---|
| 602 | #define FW_REGULAR          400 | 
|---|
| 603 | #define FW_MEDIUM           500 | 
|---|
| 604 | #define FW_SEMIBOLD         600 | 
|---|
| 605 | #define FW_DEMIBOLD         600 | 
|---|
| 606 | #define FW_BOLD             700 | 
|---|
| 607 | #define FW_EXTRABOLD        800 | 
|---|
| 608 | #define FW_ULTRABOLD        800 | 
|---|
| 609 | #define FW_HEAVY            900 | 
|---|
| 610 | #define FW_BLACK            900 | 
|---|
| 611 |  | 
|---|
| 612 | /* lfCharSet values */ | 
|---|
| 613 | #define ANSI_CHARSET          (BYTE)0   /* CP1252, ansi-0, iso8859-{1,15} */ | 
|---|
| 614 | #define DEFAULT_CHARSET       (BYTE)1 | 
|---|
| 615 | #define SYMBOL_CHARSET        (BYTE)2 | 
|---|
| 616 | #define SHIFTJIS_CHARSET      (BYTE)128 /* CP932 */ | 
|---|
| 617 | #define HANGEUL_CHARSET       (BYTE)129 /* CP949, ksc5601.1987-0 */ | 
|---|
| 618 | #define HANGUL_CHARSET        HANGEUL_CHARSET | 
|---|
| 619 | #define GB2312_CHARSET        (BYTE)134 /* CP936, gb2312.1980-0 */ | 
|---|
| 620 | #define CHINESEBIG5_CHARSET   (BYTE)136 /* CP950, big5.et-0 */ | 
|---|
| 621 | #define GREEK_CHARSET         (BYTE)161 /* CP1253 */ | 
|---|
| 622 | #define TURKISH_CHARSET       (BYTE)162 /* CP1254, -iso8859-9 */ | 
|---|
| 623 | #define HEBREW_CHARSET        (BYTE)177 /* CP1255, -iso8859-8 */ | 
|---|
| 624 | #define ARABIC_CHARSET        (BYTE)178 /* CP1256, -iso8859-6 */ | 
|---|
| 625 | #define BALTIC_CHARSET        (BYTE)186 /* CP1257, -iso8859-10 */ | 
|---|
| 626 | #define RUSSIAN_CHARSET       (BYTE)204 /* CP1251, -iso8859-5 */ | 
|---|
| 627 | #define EE_CHARSET            (BYTE)238 /* CP1250, -iso8859-2 */ | 
|---|
| 628 | #define EASTEUROPE_CHARSET    EE_CHARSET | 
|---|
| 629 | #define THAI_CHARSET          (BYTE)222 /* CP874, iso8859-11, tis620 */ | 
|---|
| 630 | #define JOHAB_CHARSET         (BYTE)130 /* korean (johab) CP1361 */ | 
|---|
| 631 | #define OEM_CHARSET           (BYTE)255 | 
|---|
| 632 | /* I don't know if the values of *_CHARSET macros are defined in Windows | 
|---|
| 633 | * or if we can choose them as we want. -- srtxg | 
|---|
| 634 | */ | 
|---|
| 635 | #define VISCII_CHARSET        (BYTE)240 /* viscii1.1-1 */ | 
|---|
| 636 | #define TCVN_CHARSET          (BYTE)241 /* tcvn-0 */ | 
|---|
| 637 | #define KOI8_CHARSET          (BYTE)242 /* koi8-{r,u,ru} */ | 
|---|
| 638 | #define ISO3_CHARSET          (BYTE)243 /* iso8859-3 */ | 
|---|
| 639 | #define ISO4_CHARSET          (BYTE)244 /* iso8859-4 */ | 
|---|
| 640 |  | 
|---|
| 641 | /* lfOutPrecision values */ | 
|---|
| 642 | #define OUT_DEFAULT_PRECIS      0 | 
|---|
| 643 | #define OUT_STRING_PRECIS       1 | 
|---|
| 644 | #define OUT_CHARACTER_PRECIS    2 | 
|---|
| 645 | #define OUT_STROKE_PRECIS       3 | 
|---|
| 646 | #define OUT_TT_PRECIS           4 | 
|---|
| 647 | #define OUT_DEVICE_PRECIS       5 | 
|---|
| 648 | #define OUT_RASTER_PRECIS       6 | 
|---|
| 649 | #define OUT_TT_ONLY_PRECIS      7 | 
|---|
| 650 |  | 
|---|
| 651 | /* lfClipPrecision values */ | 
|---|
| 652 | #define CLIP_DEFAULT_PRECIS     0x00 | 
|---|
| 653 | #define CLIP_CHARACTER_PRECIS   0x01 | 
|---|
| 654 | #define CLIP_STROKE_PRECIS      0x02 | 
|---|
| 655 | #define CLIP_MASK               0x0F | 
|---|
| 656 | #define CLIP_LH_ANGLES          0x10 | 
|---|
| 657 | #define CLIP_TT_ALWAYS          0x20 | 
|---|
| 658 | #define CLIP_EMBEDDED           0x80 | 
|---|
| 659 |  | 
|---|
| 660 | /* lfQuality values */ | 
|---|
| 661 | #define DEFAULT_QUALITY     0 | 
|---|
| 662 | #define DRAFT_QUALITY       1 | 
|---|
| 663 | #define PROOF_QUALITY       2 | 
|---|
| 664 |  | 
|---|
| 665 | /* lfPitchAndFamily pitch values */ | 
|---|
| 666 | #define DEFAULT_PITCH       0x00 | 
|---|
| 667 | #define FIXED_PITCH         0x01 | 
|---|
| 668 | #define VARIABLE_PITCH      0x02 | 
|---|
| 669 | #define FF_DONTCARE         0x00 | 
|---|
| 670 | #define FF_ROMAN            0x10 | 
|---|
| 671 | #define FF_SWISS            0x20 | 
|---|
| 672 | #define FF_MODERN           0x30 | 
|---|
| 673 | #define FF_SCRIPT           0x40 | 
|---|
| 674 | #define FF_DECORATIVE       0x50 | 
|---|
| 675 |  | 
|---|
| 676 | typedef struct | 
|---|
| 677 | { | 
|---|
| 678 | INT     tmHeight; | 
|---|
| 679 | INT     tmAscent; | 
|---|
| 680 | INT     tmDescent; | 
|---|
| 681 | INT     tmInternalLeading; | 
|---|
| 682 | INT     tmExternalLeading; | 
|---|
| 683 | INT     tmAveCharWidth; | 
|---|
| 684 | INT     tmMaxCharWidth; | 
|---|
| 685 | INT     tmWeight; | 
|---|
| 686 | INT     tmOverhang; | 
|---|
| 687 | INT     tmDigitizedAspectX; | 
|---|
| 688 | INT     tmDigitizedAspectY; | 
|---|
| 689 | BYTE      tmFirstChar; | 
|---|
| 690 | BYTE      tmLastChar; | 
|---|
| 691 | BYTE      tmDefaultChar; | 
|---|
| 692 | BYTE      tmBreakChar; | 
|---|
| 693 | BYTE      tmItalic; | 
|---|
| 694 | BYTE      tmUnderlined; | 
|---|
| 695 | BYTE      tmStruckOut; | 
|---|
| 696 | BYTE      tmPitchAndFamily; | 
|---|
| 697 | BYTE      tmCharSet; | 
|---|
| 698 | } TEXTMETRICA, *LPTEXTMETRICA; | 
|---|
| 699 |  | 
|---|
| 700 | typedef struct | 
|---|
| 701 | { | 
|---|
| 702 | INT     tmHeight; | 
|---|
| 703 | INT     tmAscent; | 
|---|
| 704 | INT     tmDescent; | 
|---|
| 705 | INT     tmInternalLeading; | 
|---|
| 706 | INT     tmExternalLeading; | 
|---|
| 707 | INT     tmAveCharWidth; | 
|---|
| 708 | INT     tmMaxCharWidth; | 
|---|
| 709 | INT     tmWeight; | 
|---|
| 710 | INT     tmOverhang; | 
|---|
| 711 | INT     tmDigitizedAspectX; | 
|---|
| 712 | INT     tmDigitizedAspectY; | 
|---|
| 713 | WCHAR     tmFirstChar; | 
|---|
| 714 | WCHAR     tmLastChar; | 
|---|
| 715 | WCHAR     tmDefaultChar; | 
|---|
| 716 | WCHAR     tmBreakChar; | 
|---|
| 717 | BYTE      tmItalic; | 
|---|
| 718 | BYTE      tmUnderlined; | 
|---|
| 719 | BYTE      tmStruckOut; | 
|---|
| 720 | BYTE      tmPitchAndFamily; | 
|---|
| 721 | BYTE      tmCharSet; | 
|---|
| 722 | } TEXTMETRICW, *LPTEXTMETRICW; | 
|---|
| 723 |  | 
|---|
| 724 | DECL_WINELIB_TYPE_AW(TEXTMETRIC) | 
|---|
| 725 | DECL_WINELIB_TYPE_AW(LPTEXTMETRIC) | 
|---|
| 726 |  | 
|---|
| 727 |  | 
|---|
| 728 | typedef struct tagPANOSE | 
|---|
| 729 | { | 
|---|
| 730 | BYTE bFamilyType; | 
|---|
| 731 | BYTE bSerifStyle; | 
|---|
| 732 | BYTE bWeight; | 
|---|
| 733 | BYTE bProportion; | 
|---|
| 734 | BYTE bContrast; | 
|---|
| 735 | BYTE bStrokeVariation; | 
|---|
| 736 | BYTE bArmStyle; | 
|---|
| 737 | BYTE bLetterform; | 
|---|
| 738 | BYTE bMidline; | 
|---|
| 739 | BYTE bXHeight; | 
|---|
| 740 | } PANOSE; | 
|---|
| 741 |  | 
|---|
| 742 | #define PAN_CULTURE_LATIN              0 | 
|---|
| 743 |  | 
|---|
| 744 | #define PAN_ANY                        0 | 
|---|
| 745 | #define PAN_NO_FIT                     1 | 
|---|
| 746 |  | 
|---|
| 747 | #define PAN_FAMILY_TEXT_DISPLAY        2 | 
|---|
| 748 | #define PAN_FAMILY_SCRIPT              3 | 
|---|
| 749 | #define PAN_FAMILY_DECORATIVE          4 | 
|---|
| 750 | #define PAN_FAMILY_PICTORIAL           5 | 
|---|
| 751 |  | 
|---|
| 752 | #define PAN_SERIF_COVE                 2 | 
|---|
| 753 | #define PAN_SERIF_OBTUSE_COVE          3 | 
|---|
| 754 | #define PAN_SERIF_SQUARE_COVE          4 | 
|---|
| 755 | #define PAN_SERIF_OBTUSE_SQUARE_COVE   5 | 
|---|
| 756 | #define PAN_SERIF_SQUARE               6 | 
|---|
| 757 | #define PAN_SERIF_THIN                 7 | 
|---|
| 758 | #define PAN_SERIF_BONE                 8 | 
|---|
| 759 | #define PAN_SERIF_EXAGGERATED          9 | 
|---|
| 760 | #define PAN_SERIF_TRIANGLE             10 | 
|---|
| 761 | #define PAN_SERIF_NORMAL_SANS          11 | 
|---|
| 762 | #define PAN_SERIF_OBTUSE_SANS          12 | 
|---|
| 763 | #define PAN_SERIF_PERP_SANS            13 | 
|---|
| 764 | #define PAN_SERIF_FLARED               14 | 
|---|
| 765 | #define PAN_SERIF_ROUNDED              15 | 
|---|
| 766 |  | 
|---|
| 767 | #define PAN_WEIGHT_VERY_LIGHT          2 | 
|---|
| 768 | #define PAN_WEIGHT_LIGHT               3 | 
|---|
| 769 | #define PAN_WEIGHT_THIN                4 | 
|---|
| 770 | #define PAN_WEIGHT_BOOK                5 | 
|---|
| 771 | #define PAN_WEIGHT_MEDIUM              6 | 
|---|
| 772 | #define PAN_WEIGHT_DEMI                7 | 
|---|
| 773 | #define PAN_WEIGHT_BOLD                8 | 
|---|
| 774 | #define PAN_WEIGHT_HEAVY               9 | 
|---|
| 775 | #define PAN_WEIGHT_BLACK               10 | 
|---|
| 776 | #define PAN_WEIGHT_NORD                11 | 
|---|
| 777 |  | 
|---|
| 778 | #define PAN_PROP_OLD_STYLE             2 | 
|---|
| 779 | #define PAN_PROP_MODERN                3 | 
|---|
| 780 | #define PAN_PROP_EVEN_WIDTH            4 | 
|---|
| 781 | #define PAN_PROP_EXPANDED              5 | 
|---|
| 782 | #define PAN_PROP_CONDENSED             6 | 
|---|
| 783 | #define PAN_PROP_VERY_EXPANDED         7 | 
|---|
| 784 | #define PAN_PROP_VERY_CONDENSED        8 | 
|---|
| 785 | #define PAN_PROP_MONOSPACED            9 | 
|---|
| 786 |  | 
|---|
| 787 | #define PAN_CONTRAST_NONE              2 | 
|---|
| 788 | #define PAN_CONTRAST_VERY_LOW          3 | 
|---|
| 789 | #define PAN_CONTRAST_LOW               4 | 
|---|
| 790 | #define PAN_CONTRAST_MEDIUM_LOW        5 | 
|---|
| 791 | #define PAN_CONTRAST_MEDIUM            6 | 
|---|
| 792 | #define PAN_CONTRAST_MEDIUM_HIGH       7 | 
|---|
| 793 | #define PAN_CONTRAST_HIGH              8 | 
|---|
| 794 | #define PAN_CONTRAST_VERY_HIGH         9 | 
|---|
| 795 |  | 
|---|
| 796 | #define PAN_STROKE_GRADUAL_DIAG        2 | 
|---|
| 797 | #define PAN_STROKE_GRADUAL_TRAN        3 | 
|---|
| 798 | #define PAN_STROKE_GRADUAL_VERT        4 | 
|---|
| 799 | #define PAN_STROKE_GRADUAL_HORZ        5 | 
|---|
| 800 | #define PAN_STROKE_RAPID_VERT          6 | 
|---|
| 801 | #define PAN_STROKE_RAPID_HORZ          7 | 
|---|
| 802 | #define PAN_STROKE_INSTANT_VERT        8 | 
|---|
| 803 |  | 
|---|
| 804 | #define PAN_STRAIGHT_ARMS_HORZ         2 | 
|---|
| 805 | #define PAN_STRAIGHT_ARMS_WEDGE        3 | 
|---|
| 806 | #define PAN_STRAIGHT_ARMS_VERT         4 | 
|---|
| 807 | #define PAN_STRAIGHT_ARMS_SINGLE_SERIF 5 | 
|---|
| 808 | #define PAN_STRAIGHT_ARMS_DOUBLE_SERIF 6 | 
|---|
| 809 | #define PAN_BENT_ARMS_HORZ             7 | 
|---|
| 810 | #define PAN_BENT_ARMS_WEDGE            8 | 
|---|
| 811 | #define PAN_BENT_ARMS_VERT             9 | 
|---|
| 812 | #define PAN_BENT_ARMS_SINGLE_SERIF     10 | 
|---|
| 813 | #define PAN_BENT_ARMS_DOUBLE_SERIF     11 | 
|---|
| 814 |  | 
|---|
| 815 | #define PAN_LETT_NORMAL_COMPACT        2 | 
|---|
| 816 | #define PAN_LETT_NORMAL_WEIGHTED       3 | 
|---|
| 817 | #define PAN_LETT_NORMAL_BOXED          4 | 
|---|
| 818 | #define PAN_LETT_NORMAL_FLATTENED      5 | 
|---|
| 819 | #define PAN_LETT_NORMAL_ROUNDED        6 | 
|---|
| 820 | #define PAN_LETT_NORMAL_OFF_CENTER     7 | 
|---|
| 821 | #define PAN_LETT_NORMAL_SQUARE         8 | 
|---|
| 822 | #define PAN_LETT_OBLIQUE_COMPACT       9 | 
|---|
| 823 | #define PAN_LETT_OBLIQUE_WEIGHTED      10 | 
|---|
| 824 | #define PAN_LETT_OBLIQUE_BOXED         11 | 
|---|
| 825 | #define PAN_LETT_OBLIQUE_FLATTENED     12 | 
|---|
| 826 | #define PAN_LETT_OBLIQUE_ROUNDED       13 | 
|---|
| 827 | #define PAN_LETT_OBLIQUE_OFF_CENTER    14 | 
|---|
| 828 | #define PAN_LETT_OBLIQUE_SQUARE        15 | 
|---|
| 829 |  | 
|---|
| 830 | #define PAN_MIDLINE_STANDARD_TRIMMED   2 | 
|---|
| 831 | #define PAN_MIDLINE_STANDARD_POINTED   3 | 
|---|
| 832 | #define PAN_MIDLINE_STANDARD_SERIFED   4 | 
|---|
| 833 | #define PAN_MIDLINE_HIGH_TRIMMED       5 | 
|---|
| 834 | #define PAN_MIDLINE_HIGH_POINTED       6 | 
|---|
| 835 | #define PAN_MIDLINE_HIGH_SERIFED       7 | 
|---|
| 836 | #define PAN_MIDLINE_CONSTANT_TRIMMED   8 | 
|---|
| 837 | #define PAN_MIDLINE_CONSTANT_POINTED   9 | 
|---|
| 838 | #define PAN_MIDLINE_CONSTANT_SERIFED   10 | 
|---|
| 839 | #define PAN_MIDLINE_LOW_TRIMMED        11 | 
|---|
| 840 | #define PAN_MIDLINE_LOW_POINTED        12 | 
|---|
| 841 | #define PAN_MIDLINE_LOW_SERIFED        13 | 
|---|
| 842 |  | 
|---|
| 843 | #define PAN_XHEIGHT_CONSTANT_SMALL     2 | 
|---|
| 844 | #define PAN_XHEIGHT_CONSTANT_STANDARD  3 | 
|---|
| 845 | #define PAN_XHEIGHT_CONSTANT_LARGE     4 | 
|---|
| 846 | #define PAN_XHEIGHT_DUCKING_SMALL      5 | 
|---|
| 847 | #define PAN_XHEIGHT_DUCKING_STANDARD   6 | 
|---|
| 848 | #define PAN_XHEIGHT_DUCKING_LARGE      7 | 
|---|
| 849 |  | 
|---|
| 850 | #define ELF_VENDOR_SIZE 4 | 
|---|
| 851 | typedef struct | 
|---|
| 852 | { | 
|---|
| 853 | LOGFONTA    elfLogFont; | 
|---|
| 854 | BYTE        elfFullName[LF_FULLFACESIZE]; | 
|---|
| 855 | BYTE        elfStyle[LF_FACESIZE]; | 
|---|
| 856 | DWORD       elfVersion; | 
|---|
| 857 | DWORD       elfStyleSize; | 
|---|
| 858 | DWORD       elfMatch; | 
|---|
| 859 | DWORD       elfReserved; | 
|---|
| 860 | BYTE        elfVendorId[ELF_VENDOR_SIZE]; | 
|---|
| 861 | DWORD       elfCulture; | 
|---|
| 862 | PANOSE      elfPanose; | 
|---|
| 863 | } EXTLOGFONTA, *PEXTLOGFONTA; | 
|---|
| 864 |  | 
|---|
| 865 | typedef struct | 
|---|
| 866 | { | 
|---|
| 867 | LOGFONTW    elfLogFont; | 
|---|
| 868 | WCHAR       elfFullName[LF_FULLFACESIZE]; | 
|---|
| 869 | WCHAR       elfStyle[LF_FACESIZE]; | 
|---|
| 870 | DWORD       elfVersion; | 
|---|
| 871 | DWORD       elfStyleSize; | 
|---|
| 872 | DWORD       elfMatch; | 
|---|
| 873 | DWORD       elfReserved; | 
|---|
| 874 | BYTE        elfVendorId[ELF_VENDOR_SIZE]; | 
|---|
| 875 | DWORD       elfCulture; | 
|---|
| 876 | PANOSE      elfPanose; | 
|---|
| 877 | } EXTLOGFONTW, *PEXTLOGFONTW; | 
|---|
| 878 |  | 
|---|
| 879 | DECL_WINELIB_TYPE_AW(EXTLOGFONT) | 
|---|
| 880 | DECL_WINELIB_TYPE_AW(PEXTLOGFONT) | 
|---|
| 881 |  | 
|---|
| 882 | typedef struct _OUTLINETEXTMETRICA | 
|---|
| 883 | { | 
|---|
| 884 | UINT          otmSize; | 
|---|
| 885 | TEXTMETRICA   otmTextMetrics; | 
|---|
| 886 | BYTE            otmFilter; | 
|---|
| 887 | PANOSE          otmPanoseNumber; | 
|---|
| 888 | UINT          otmfsSelection; | 
|---|
| 889 | UINT          otmfsType; | 
|---|
| 890 | INT           otmsCharSlopeRise; | 
|---|
| 891 | INT           otmsCharSlopeRun; | 
|---|
| 892 | INT           otmItalicAngle; | 
|---|
| 893 | UINT          otmEMSquare; | 
|---|
| 894 | INT           otmAscent; | 
|---|
| 895 | INT           otmDescent; | 
|---|
| 896 | UINT          otmLineGap; | 
|---|
| 897 | UINT          otmsCapEmHeight; | 
|---|
| 898 | UINT          otmsXHeight; | 
|---|
| 899 | RECT          otmrcFontBox; | 
|---|
| 900 | INT           otmMacAscent; | 
|---|
| 901 | INT           otmMacDescent; | 
|---|
| 902 | UINT          otmMacLineGap; | 
|---|
| 903 | UINT          otmusMinimumPPEM; | 
|---|
| 904 | POINT         otmptSubscriptSize; | 
|---|
| 905 | POINT         otmptSubscriptOffset; | 
|---|
| 906 | POINT         otmptSuperscriptSize; | 
|---|
| 907 | POINT         otmptSuperscriptOffset; | 
|---|
| 908 | UINT          otmsStrikeoutSize; | 
|---|
| 909 | INT           otmsStrikeoutPosition; | 
|---|
| 910 | INT           otmsUnderscoreSize; | 
|---|
| 911 | INT           otmsUnderscorePosition; | 
|---|
| 912 | LPSTR           otmpFamilyName; | 
|---|
| 913 | LPSTR           otmpFaceName; | 
|---|
| 914 | LPSTR           otmpStyleName; | 
|---|
| 915 | LPSTR           otmpFullName; | 
|---|
| 916 | } OUTLINETEXTMETRICA, *LPOUTLINETEXTMETRICA; | 
|---|
| 917 |  | 
|---|
| 918 | typedef struct _OUTLINETEXTMETRICW | 
|---|
| 919 | { | 
|---|
| 920 | UINT          otmSize; | 
|---|
| 921 | TEXTMETRICW   otmTextMetrics; | 
|---|
| 922 | BYTE            otmFilter; | 
|---|
| 923 | PANOSE          otmPanoseNumber; | 
|---|
| 924 | UINT          otmfsSelection; | 
|---|
| 925 | UINT          otmfsType; | 
|---|
| 926 | INT           otmsCharSlopeRise; | 
|---|
| 927 | INT           otmsCharSlopeRun; | 
|---|
| 928 | INT           otmItalicAngle; | 
|---|
| 929 | UINT          otmEMSquare; | 
|---|
| 930 | INT           otmAscent; | 
|---|
| 931 | INT           otmDescent; | 
|---|
| 932 | UINT          otmLineGap; | 
|---|
| 933 | UINT          otmsCapEmHeight; | 
|---|
| 934 | UINT          otmsXHeight; | 
|---|
| 935 | RECT          otmrcFontBox; | 
|---|
| 936 | INT           otmMacAscent; | 
|---|
| 937 | INT           otmMacDescent; | 
|---|
| 938 | UINT          otmMacLineGap; | 
|---|
| 939 | UINT          otmusMinimumPPEM; | 
|---|
| 940 | POINT         otmptSubscriptSize; | 
|---|
| 941 | POINT         otmptSubscriptOffset; | 
|---|
| 942 | POINT         otmptSuperscriptSize; | 
|---|
| 943 | POINT         otmptSuperscriptOffset; | 
|---|
| 944 | UINT          otmsStrikeoutSize; | 
|---|
| 945 | INT           otmsStrikeoutPosition; | 
|---|
| 946 | INT           otmsUnderscoreSize; | 
|---|
| 947 | INT           otmsUnderscorePosition; | 
|---|
| 948 | LPSTR           otmpFamilyName; | 
|---|
| 949 | LPSTR           otmpFaceName; | 
|---|
| 950 | LPSTR           otmpStyleName; | 
|---|
| 951 | LPSTR           otmpFullName; | 
|---|
| 952 | } OUTLINETEXTMETRICW, *LPOUTLINETEXTMETRICW; | 
|---|
| 953 |  | 
|---|
| 954 | DECL_WINELIB_TYPE_AW(OUTLINETEXTMETRIC) | 
|---|
| 955 | DECL_WINELIB_TYPE_AW(LPOUTLINETEXTMETRIC) | 
|---|
| 956 |  | 
|---|
| 957 |  | 
|---|
| 958 |  | 
|---|
| 959 | /* ntmFlags field flags */ | 
|---|
| 960 | #define NTM_REGULAR     0x00000040L | 
|---|
| 961 | #define NTM_BOLD        0x00000020L | 
|---|
| 962 | #define NTM_ITALIC      0x00000001L | 
|---|
| 963 |  | 
|---|
| 964 | typedef struct | 
|---|
| 965 | { | 
|---|
| 966 | INT     tmHeight; | 
|---|
| 967 | INT     tmAscent; | 
|---|
| 968 | INT     tmDescent; | 
|---|
| 969 | INT     tmInternalLeading; | 
|---|
| 970 | INT     tmExternalLeading; | 
|---|
| 971 | INT     tmAveCharWidth; | 
|---|
| 972 | INT     tmMaxCharWidth; | 
|---|
| 973 | INT     tmWeight; | 
|---|
| 974 | INT     tmOverhang; | 
|---|
| 975 | INT     tmDigitizedAspectX; | 
|---|
| 976 | INT     tmDigitizedAspectY; | 
|---|
| 977 | BYTE      tmFirstChar; | 
|---|
| 978 | BYTE      tmLastChar; | 
|---|
| 979 | BYTE      tmDefaultChar; | 
|---|
| 980 | BYTE      tmBreakChar; | 
|---|
| 981 | BYTE      tmItalic; | 
|---|
| 982 | BYTE      tmUnderlined; | 
|---|
| 983 | BYTE      tmStruckOut; | 
|---|
| 984 | BYTE      tmPitchAndFamily; | 
|---|
| 985 | BYTE      tmCharSet; | 
|---|
| 986 | DWORD     ntmFlags; | 
|---|
| 987 | UINT    ntmSizeEM; | 
|---|
| 988 | UINT    ntmCellHeight; | 
|---|
| 989 | UINT    ntmAvgWidth; | 
|---|
| 990 | } NEWTEXTMETRICA, *LPNEWTEXTMETRICA; | 
|---|
| 991 |  | 
|---|
| 992 | typedef struct | 
|---|
| 993 | { | 
|---|
| 994 | INT     tmHeight; | 
|---|
| 995 | INT     tmAscent; | 
|---|
| 996 | INT     tmDescent; | 
|---|
| 997 | INT     tmInternalLeading; | 
|---|
| 998 | INT     tmExternalLeading; | 
|---|
| 999 | INT     tmAveCharWidth; | 
|---|
| 1000 | INT     tmMaxCharWidth; | 
|---|
| 1001 | INT     tmWeight; | 
|---|
| 1002 | INT     tmOverhang; | 
|---|
| 1003 | INT     tmDigitizedAspectX; | 
|---|
| 1004 | INT     tmDigitizedAspectY; | 
|---|
| 1005 | WCHAR     tmFirstChar; | 
|---|
| 1006 | WCHAR     tmLastChar; | 
|---|
| 1007 | WCHAR     tmDefaultChar; | 
|---|
| 1008 | WCHAR     tmBreakChar; | 
|---|
| 1009 | BYTE      tmItalic; | 
|---|
| 1010 | BYTE      tmUnderlined; | 
|---|
| 1011 | BYTE      tmStruckOut; | 
|---|
| 1012 | BYTE      tmPitchAndFamily; | 
|---|
| 1013 | BYTE      tmCharSet; | 
|---|
| 1014 | DWORD     ntmFlags; | 
|---|
| 1015 | UINT    ntmSizeEM; | 
|---|
| 1016 | UINT    ntmCellHeight; | 
|---|
| 1017 | UINT    ntmAvgWidth; | 
|---|
| 1018 | } NEWTEXTMETRICW, *LPNEWTEXTMETRICW; | 
|---|
| 1019 |  | 
|---|
| 1020 | DECL_WINELIB_TYPE_AW(NEWTEXTMETRIC) | 
|---|
| 1021 | DECL_WINELIB_TYPE_AW(LPNEWTEXTMETRIC) | 
|---|
| 1022 |  | 
|---|
| 1023 | typedef struct | 
|---|
| 1024 | { | 
|---|
| 1025 | NEWTEXTMETRICA      ntmetm; | 
|---|
| 1026 | FONTSIGNATURE       ntmeFontSignature; | 
|---|
| 1027 | } NEWTEXTMETRICEXA,*LPNEWTEXTMETRICEXA; | 
|---|
| 1028 |  | 
|---|
| 1029 | typedef struct | 
|---|
| 1030 | { | 
|---|
| 1031 | NEWTEXTMETRICW      ntmetm; | 
|---|
| 1032 | FONTSIGNATURE       ntmeFontSignature; | 
|---|
| 1033 | } NEWTEXTMETRICEXW,*LPNEWTEXTMETRICEXW; | 
|---|
| 1034 |  | 
|---|
| 1035 | DECL_WINELIB_TYPE_AW(NEWTEXTMETRICEX) | 
|---|
| 1036 | DECL_WINELIB_TYPE_AW(LPNEWTEXTMETRICEX) | 
|---|
| 1037 |  | 
|---|
| 1038 | typedef INT (* CALLBACK FONTENUMPROCA)(LPENUMLOGFONTA,LPNEWTEXTMETRICA, | 
|---|
| 1039 | UINT,LPARAM); | 
|---|
| 1040 | typedef INT (* CALLBACK FONTENUMPROCW)(LPENUMLOGFONTW,LPNEWTEXTMETRICW, | 
|---|
| 1041 | UINT,LPARAM); | 
|---|
| 1042 | DECL_WINELIB_TYPE_AW(FONTENUMPROC) | 
|---|
| 1043 |  | 
|---|
| 1044 | typedef INT (* CALLBACK FONTENUMPROCEXA)(LPENUMLOGFONTEXA,LPNEWTEXTMETRICEXA,UINT,LPARAM); | 
|---|
| 1045 | typedef INT (* CALLBACK FONTENUMPROCEXW)(LPENUMLOGFONTEXW,LPNEWTEXTMETRICEXW,UINT,LPARAM); | 
|---|
| 1046 | DECL_WINELIB_TYPE_AW(FONTENUMPROCEX) | 
|---|
| 1047 |  | 
|---|
| 1048 | /* tmPitchAndFamily bits */ | 
|---|
| 1049 | #define TMPF_FIXED_PITCH    1           /* means variable pitch */ | 
|---|
| 1050 | #define TMPF_VECTOR         2 | 
|---|
| 1051 | #define TMPF_TRUETYPE       4 | 
|---|
| 1052 | #define TMPF_DEVICE         8 | 
|---|
| 1053 |  | 
|---|
| 1054 | /* Text alignment */ | 
|---|
| 1055 | #define TA_NOUPDATECP       0x00 | 
|---|
| 1056 | #define TA_UPDATECP         0x01 | 
|---|
| 1057 | #define TA_LEFT             0x00 | 
|---|
| 1058 | #define TA_RIGHT            0x02 | 
|---|
| 1059 | #define TA_CENTER           0x06 | 
|---|
| 1060 | #define TA_TOP              0x00 | 
|---|
| 1061 | #define TA_BOTTOM           0x08 | 
|---|
| 1062 | #define TA_BASELINE         0x18 | 
|---|
| 1063 |  | 
|---|
| 1064 | /* ExtTextOut() parameters */ | 
|---|
| 1065 | #define ETO_GRAYED          0x01 | 
|---|
| 1066 | #define ETO_OPAQUE          0x02 | 
|---|
| 1067 | #define ETO_CLIPPED         0x04 | 
|---|
| 1068 |  | 
|---|
| 1069 | typedef struct | 
|---|
| 1070 | { | 
|---|
| 1071 | UINT        gmBlackBoxX; | 
|---|
| 1072 | UINT        gmBlackBoxY; | 
|---|
| 1073 | POINT       gmptGlyphOrigin; | 
|---|
| 1074 | INT16       gmCellIncX; | 
|---|
| 1075 | INT16       gmCellIncY; | 
|---|
| 1076 | } GLYPHMETRICS, *LPGLYPHMETRICS; | 
|---|
| 1077 |  | 
|---|
| 1078 |  | 
|---|
| 1079 | #define GGO_METRICS         0 | 
|---|
| 1080 | #define GGO_BITMAP          1 | 
|---|
| 1081 | #define GGO_NATIVE          2 | 
|---|
| 1082 |  | 
|---|
| 1083 | typedef struct | 
|---|
| 1084 | { | 
|---|
| 1085 | UINT16  fract; | 
|---|
| 1086 | INT16   value; | 
|---|
| 1087 | } FIXED; | 
|---|
| 1088 |  | 
|---|
| 1089 | typedef struct tagPOINTFX | 
|---|
| 1090 | { | 
|---|
| 1091 | FIXED x; | 
|---|
| 1092 | FIXED y; | 
|---|
| 1093 | } POINTFX, *LPPOINTFX; | 
|---|
| 1094 |  | 
|---|
| 1095 | typedef struct tagTTPOLYCURVE | 
|---|
| 1096 | { | 
|---|
| 1097 | WORD wType; | 
|---|
| 1098 | WORD cpfx; | 
|---|
| 1099 | POINTFX apfx[1]; | 
|---|
| 1100 | } TTPOLYCURVE, *LPTTPOLYCURVE; | 
|---|
| 1101 |  | 
|---|
| 1102 | typedef struct tagTTPOLYGONHEADER | 
|---|
| 1103 | { | 
|---|
| 1104 | DWORD cb; | 
|---|
| 1105 | DWORD dwType; | 
|---|
| 1106 | POINTFX pfxStart; | 
|---|
| 1107 | } TTPOLYGONHEADER, *LPTTPOLYGONHEADER; | 
|---|
| 1108 |  | 
|---|
| 1109 | typedef struct | 
|---|
| 1110 | { | 
|---|
| 1111 | FIXED  eM11; | 
|---|
| 1112 | FIXED  eM12; | 
|---|
| 1113 | FIXED  eM21; | 
|---|
| 1114 | FIXED  eM22; | 
|---|
| 1115 | } MAT2, *LPMAT2; | 
|---|
| 1116 |  | 
|---|
| 1117 | /* for GetCharABCWidths() */ | 
|---|
| 1118 | typedef struct | 
|---|
| 1119 | { | 
|---|
| 1120 | INT   abcA; | 
|---|
| 1121 | UINT  abcB; | 
|---|
| 1122 | INT   abcC; | 
|---|
| 1123 | } ABC, *LPABC; | 
|---|
| 1124 |  | 
|---|
| 1125 |  | 
|---|
| 1126 | /* for GetCharacterPlacement () */ | 
|---|
| 1127 | typedef struct tagGCP_RESULTSA | 
|---|
| 1128 | { | 
|---|
| 1129 | DWORD  lStructSize; | 
|---|
| 1130 | LPSTR  lpOutString; | 
|---|
| 1131 | UINT *lpOrder; | 
|---|
| 1132 | INT  *lpDx; | 
|---|
| 1133 | INT  *lpCaretPos; | 
|---|
| 1134 | LPSTR  lpClass; | 
|---|
| 1135 | UINT *lpGlyphs; | 
|---|
| 1136 | UINT nGlyphs; | 
|---|
| 1137 | UINT nMaxFit; | 
|---|
| 1138 | } GCP_RESULTSA; | 
|---|
| 1139 |  | 
|---|
| 1140 | typedef struct tagGCP_RESULTSW | 
|---|
| 1141 | { | 
|---|
| 1142 | DWORD  lStructSize; | 
|---|
| 1143 | LPWSTR lpOutString; | 
|---|
| 1144 | UINT *lpOrder; | 
|---|
| 1145 | INT  *lpDx; | 
|---|
| 1146 | INT  *lpCaretPos; | 
|---|
| 1147 | LPWSTR lpClass; | 
|---|
| 1148 | UINT *lpGlyphs; | 
|---|
| 1149 | UINT nGlyphs; | 
|---|
| 1150 | UINT nMaxFit; | 
|---|
| 1151 | } GCP_RESULTSW; | 
|---|
| 1152 |  | 
|---|
| 1153 | DECL_WINELIB_TYPE_AW(GCP_RESULTS) | 
|---|
| 1154 |  | 
|---|
| 1155 | /* Rasterizer status */ | 
|---|
| 1156 | typedef struct | 
|---|
| 1157 | { | 
|---|
| 1158 | INT16 nSize; | 
|---|
| 1159 | INT16 wFlags; | 
|---|
| 1160 | INT16 nLanguageID; | 
|---|
| 1161 | } RASTERIZER_STATUS, *LPRASTERIZER_STATUS; | 
|---|
| 1162 |  | 
|---|
| 1163 | #define TT_AVAILABLE        0x0001 | 
|---|
| 1164 | #define TT_ENABLED          0x0002 | 
|---|
| 1165 |  | 
|---|
| 1166 | #define TT_PRIM_LINE    1 | 
|---|
| 1167 | #define TT_PRIM_QSPLINE 2 | 
|---|
| 1168 | #define TT_POLYGON_TYPE 24 | 
|---|
| 1169 |  | 
|---|
| 1170 | /* Get/SetSystemPaletteUse() values */ | 
|---|
| 1171 | #define SYSPAL_STATIC   1 | 
|---|
| 1172 | #define SYSPAL_NOSTATIC 2 | 
|---|
| 1173 |  | 
|---|
| 1174 | typedef struct tagPALETTEENTRY | 
|---|
| 1175 | { | 
|---|
| 1176 | BYTE peRed, peGreen, peBlue, peFlags; | 
|---|
| 1177 | } PALETTEENTRY, *PPALETTEENTRY, *LPPALETTEENTRY; | 
|---|
| 1178 |  | 
|---|
| 1179 | /* Logical palette entry flags */ | 
|---|
| 1180 | #define PC_RESERVED     0x01 | 
|---|
| 1181 | #define PC_EXPLICIT     0x02 | 
|---|
| 1182 | #define PC_NOCOLLAPSE   0x04 | 
|---|
| 1183 |  | 
|---|
| 1184 | typedef struct | 
|---|
| 1185 | { | 
|---|
| 1186 | WORD           palVersion; | 
|---|
| 1187 | WORD           palNumEntries; | 
|---|
| 1188 | PALETTEENTRY   palPalEntry[1] WINE_PACKED; | 
|---|
| 1189 | } LOGPALETTE, *PLOGPALETTE, *LPLOGPALETTE; | 
|---|
| 1190 |  | 
|---|
| 1191 | /* Pens */ | 
|---|
| 1192 | typedef struct | 
|---|
| 1193 | { | 
|---|
| 1194 | UINT   lopnStyle; | 
|---|
| 1195 | POINT  lopnWidth WINE_PACKED; | 
|---|
| 1196 | COLORREF lopnColor WINE_PACKED; | 
|---|
| 1197 | } LOGPEN, *LPLOGPEN; | 
|---|
| 1198 |  | 
|---|
| 1199 |  | 
|---|
| 1200 | typedef struct tagEXTLOGPEN | 
|---|
| 1201 | { | 
|---|
| 1202 | DWORD elpPenStyle; | 
|---|
| 1203 | DWORD elpWidth; | 
|---|
| 1204 | DWORD elpBrushStyle; | 
|---|
| 1205 | DWORD elpColor; | 
|---|
| 1206 | DWORD elpNumEntries; | 
|---|
| 1207 | DWORD elpStyleEntry[1]; | 
|---|
| 1208 | } EXTLOGPEN, *PEXTLOGPEN, *NPEXTLOGPEN, *LPEXTLOGPEN; | 
|---|
| 1209 |  | 
|---|
| 1210 | #define PS_SOLID         0x00000000 | 
|---|
| 1211 | #define PS_DASH          0x00000001 | 
|---|
| 1212 | #define PS_DOT           0x00000002 | 
|---|
| 1213 | #define PS_DASHDOT       0x00000003 | 
|---|
| 1214 | #define PS_DASHDOTDOT    0x00000004 | 
|---|
| 1215 | #define PS_NULL          0x00000005 | 
|---|
| 1216 | #define PS_INSIDEFRAME   0x00000006 | 
|---|
| 1217 | #define PS_USERSTYLE     0x00000007 | 
|---|
| 1218 | #define PS_ALTERNATE     0x00000008 | 
|---|
| 1219 | #define PS_STYLE_MASK    0x0000000f | 
|---|
| 1220 |  | 
|---|
| 1221 | #define PS_ENDCAP_ROUND  0x00000000 | 
|---|
| 1222 | #define PS_ENDCAP_SQUARE 0x00000100 | 
|---|
| 1223 | #define PS_ENDCAP_FLAT   0x00000200 | 
|---|
| 1224 | #define PS_ENDCAP_MASK   0x00000f00 | 
|---|
| 1225 |  | 
|---|
| 1226 | #define PS_JOIN_ROUND    0x00000000 | 
|---|
| 1227 | #define PS_JOIN_BEVEL    0x00001000 | 
|---|
| 1228 | #define PS_JOIN_MITER    0x00002000 | 
|---|
| 1229 | #define PS_JOIN_MASK     0x0000f000 | 
|---|
| 1230 |  | 
|---|
| 1231 | #define PS_COSMETIC      0x00000000 | 
|---|
| 1232 | #define PS_GEOMETRIC     0x00010000 | 
|---|
| 1233 | #define PS_TYPE_MASK     0x000f0000 | 
|---|
| 1234 |  | 
|---|
| 1235 | /* Regions */ | 
|---|
| 1236 |  | 
|---|
| 1237 | #define ERROR             0 | 
|---|
| 1238 | #define NULLREGION        1 | 
|---|
| 1239 | #define SIMPLEREGION      2 | 
|---|
| 1240 | #define COMPLEXREGION     3 | 
|---|
| 1241 |  | 
|---|
| 1242 | #define RGN_AND           1 | 
|---|
| 1243 | #define RGN_OR            2 | 
|---|
| 1244 | #define RGN_XOR           3 | 
|---|
| 1245 | #define RGN_DIFF          4 | 
|---|
| 1246 | #define RGN_COPY          5 | 
|---|
| 1247 |  | 
|---|
| 1248 | /* Device contexts */ | 
|---|
| 1249 |  | 
|---|
| 1250 | /* GetDCEx flags */ | 
|---|
| 1251 | #define DCX_WINDOW           0x00000001 | 
|---|
| 1252 | #define DCX_CACHE            0x00000002 | 
|---|
| 1253 | #define DCX_CLIPCHILDREN     0x00000008 | 
|---|
| 1254 | #define DCX_CLIPSIBLINGS     0x00000010 | 
|---|
| 1255 | #define DCX_PARENTCLIP       0x00000020 | 
|---|
| 1256 | #define DCX_EXCLUDERGN       0x00000040 | 
|---|
| 1257 | #define DCX_INTERSECTRGN     0x00000080 | 
|---|
| 1258 | #define DCX_LOCKWINDOWUPDATE 0x00000400 | 
|---|
| 1259 | #define DCX_USESTYLE         0x00010000 | 
|---|
| 1260 |  | 
|---|
| 1261 | /* Polygon modes */ | 
|---|
| 1262 | #define ALTERNATE         1 | 
|---|
| 1263 | #define WINDING           2 | 
|---|
| 1264 |  | 
|---|
| 1265 | /* Background modes */ | 
|---|
| 1266 | #ifdef TRANSPARENT  /*Apparently some broken svr4 includes define TRANSPARENT*/ | 
|---|
| 1267 | #undef TRANSPARENT | 
|---|
| 1268 | #endif | 
|---|
| 1269 | #define TRANSPARENT       1 | 
|---|
| 1270 | #define OPAQUE            2 | 
|---|
| 1271 |  | 
|---|
| 1272 |  | 
|---|
| 1273 | /* Graphics Modes */ | 
|---|
| 1274 | #define GM_COMPATIBLE     1 | 
|---|
| 1275 | #define GM_ADVANCED       2 | 
|---|
| 1276 | #define GM_LAST           2 | 
|---|
| 1277 |  | 
|---|
| 1278 | /* Arc direction modes */ | 
|---|
| 1279 | #define AD_COUNTERCLOCKWISE 1 | 
|---|
| 1280 | #define AD_CLOCKWISE        2 | 
|---|
| 1281 |  | 
|---|
| 1282 | /* Map modes */ | 
|---|
| 1283 | #define MM_TEXT           1 | 
|---|
| 1284 | #define MM_LOMETRIC       2 | 
|---|
| 1285 | #define MM_HIMETRIC       3 | 
|---|
| 1286 | #define MM_LOENGLISH      4 | 
|---|
| 1287 | #define MM_HIENGLISH      5 | 
|---|
| 1288 | #define MM_TWIPS          6 | 
|---|
| 1289 | #define MM_ISOTROPIC      7 | 
|---|
| 1290 | #define MM_ANISOTROPIC    8 | 
|---|
| 1291 |  | 
|---|
| 1292 | /* Coordinate modes */ | 
|---|
| 1293 | #define ABSOLUTE          1 | 
|---|
| 1294 | #define RELATIVE          2 | 
|---|
| 1295 |  | 
|---|
| 1296 | /* Flood fill modes */ | 
|---|
| 1297 | #define FLOODFILLBORDER   0 | 
|---|
| 1298 | #define FLOODFILLSURFACE  1 | 
|---|
| 1299 |  | 
|---|
| 1300 | /* Device parameters for GetDeviceCaps() */ | 
|---|
| 1301 | #define DRIVERVERSION     0 | 
|---|
| 1302 | #define TECHNOLOGY        2 | 
|---|
| 1303 | #define HORZSIZE          4 | 
|---|
| 1304 | #define VERTSIZE          6 | 
|---|
| 1305 | #define HORZRES           8 | 
|---|
| 1306 | #define VERTRES           10 | 
|---|
| 1307 | #define BITSPIXEL         12 | 
|---|
| 1308 | #define PLANES            14 | 
|---|
| 1309 | #define NUMBRUSHES        16 | 
|---|
| 1310 | #define NUMPENS           18 | 
|---|
| 1311 | #define NUMMARKERS        20 | 
|---|
| 1312 | #define NUMFONTS          22 | 
|---|
| 1313 | #define NUMCOLORS         24 | 
|---|
| 1314 | #define PDEVICESIZE       26 | 
|---|
| 1315 | #define CURVECAPS         28 | 
|---|
| 1316 | #define LINECAPS          30 | 
|---|
| 1317 | #define POLYGONALCAPS     32 | 
|---|
| 1318 | #define TEXTCAPS          34 | 
|---|
| 1319 | #define CLIPCAPS          36 | 
|---|
| 1320 | #define RASTERCAPS        38 | 
|---|
| 1321 | #define ASPECTX           40 | 
|---|
| 1322 | #define ASPECTY           42 | 
|---|
| 1323 | #define ASPECTXY          44 | 
|---|
| 1324 | #define LOGPIXELSX        88 | 
|---|
| 1325 | #define LOGPIXELSY        90 | 
|---|
| 1326 | #define SIZEPALETTE       104 | 
|---|
| 1327 | #define NUMRESERVED       106 | 
|---|
| 1328 | #define COLORRES          108 | 
|---|
| 1329 |  | 
|---|
| 1330 | #define PHYSICALWIDTH     110 | 
|---|
| 1331 | #define PHYSICALHEIGHT    111 | 
|---|
| 1332 | #define PHYSICALOFFSETX   112 | 
|---|
| 1333 | #define PHYSICALOFFSETY   113 | 
|---|
| 1334 | #define SCALINGFACTORX    114 | 
|---|
| 1335 | #define SCALINGFACTORY    115 | 
|---|
| 1336 |  | 
|---|
| 1337 | /* TECHNOLOGY */ | 
|---|
| 1338 | #define DT_PLOTTER        0 | 
|---|
| 1339 | #define DT_RASDISPLAY     1 | 
|---|
| 1340 | #define DT_RASPRINTER     2 | 
|---|
| 1341 | #define DT_RASCAMERA      3 | 
|---|
| 1342 | #define DT_CHARSTREAM     4 | 
|---|
| 1343 | #define DT_METAFILE       5 | 
|---|
| 1344 | #define DT_DISPFILE       6 | 
|---|
| 1345 |  | 
|---|
| 1346 | /* CURVECAPS */ | 
|---|
| 1347 | #define CC_NONE           0x0000 | 
|---|
| 1348 | #define CC_CIRCLES        0x0001 | 
|---|
| 1349 | #define CC_PIE            0x0002 | 
|---|
| 1350 | #define CC_CHORD          0x0004 | 
|---|
| 1351 | #define CC_ELLIPSES       0x0008 | 
|---|
| 1352 | #define CC_WIDE           0x0010 | 
|---|
| 1353 | #define CC_STYLED         0x0020 | 
|---|
| 1354 | #define CC_WIDESTYLED     0x0040 | 
|---|
| 1355 | #define CC_INTERIORS      0x0080 | 
|---|
| 1356 | #define CC_ROUNDRECT      0x0100 | 
|---|
| 1357 |  | 
|---|
| 1358 | /* LINECAPS */ | 
|---|
| 1359 | #define LC_NONE           0x0000 | 
|---|
| 1360 | #define LC_POLYLINE       0x0002 | 
|---|
| 1361 | #define LC_MARKER         0x0004 | 
|---|
| 1362 | #define LC_POLYMARKER     0x0008 | 
|---|
| 1363 | #define LC_WIDE           0x0010 | 
|---|
| 1364 | #define LC_STYLED         0x0020 | 
|---|
| 1365 | #define LC_WIDESTYLED     0x0040 | 
|---|
| 1366 | #define LC_INTERIORS      0x0080 | 
|---|
| 1367 |  | 
|---|
| 1368 | /* POLYGONALCAPS */ | 
|---|
| 1369 | #define PC_NONE           0x0000 | 
|---|
| 1370 | #define PC_POLYGON        0x0001 | 
|---|
| 1371 | #define PC_RECTANGLE      0x0002 | 
|---|
| 1372 | #define PC_WINDPOLYGON    0x0004 | 
|---|
| 1373 | #define PC_SCANLINE       0x0008 | 
|---|
| 1374 | #define PC_WIDE           0x0010 | 
|---|
| 1375 | #define PC_STYLED         0x0020 | 
|---|
| 1376 | #define PC_WIDESTYLED     0x0040 | 
|---|
| 1377 | #define PC_INTERIORS      0x0080 | 
|---|
| 1378 |  | 
|---|
| 1379 | /* TEXTCAPS */ | 
|---|
| 1380 | #define TC_OP_CHARACTER   0x0001 | 
|---|
| 1381 | #define TC_OP_STROKE      0x0002 | 
|---|
| 1382 | #define TC_CP_STROKE      0x0004 | 
|---|
| 1383 | #define TC_CR_90          0x0008 | 
|---|
| 1384 | #define TC_CR_ANY         0x0010 | 
|---|
| 1385 | #define TC_SF_X_YINDEP    0x0020 | 
|---|
| 1386 | #define TC_SA_DOUBLE      0x0040 | 
|---|
| 1387 | #define TC_SA_INTEGER     0x0080 | 
|---|
| 1388 | #define TC_SA_CONTIN      0x0100 | 
|---|
| 1389 | #define TC_EA_DOUBLE      0x0200 | 
|---|
| 1390 | #define TC_IA_ABLE        0x0400 | 
|---|
| 1391 | #define TC_UA_ABLE        0x0800 | 
|---|
| 1392 | #define TC_SO_ABLE        0x1000 | 
|---|
| 1393 | #define TC_RA_ABLE        0x2000 | 
|---|
| 1394 | #define TC_VA_ABLE        0x4000 | 
|---|
| 1395 | #define TC_RESERVED       0x8000 | 
|---|
| 1396 |  | 
|---|
| 1397 | /* CLIPCAPS */ | 
|---|
| 1398 | #define CP_NONE           0x0000 | 
|---|
| 1399 | #define CP_RECTANGLE      0x0001 | 
|---|
| 1400 | #define CP_REGION         0x0002 | 
|---|
| 1401 |  | 
|---|
| 1402 | /* RASTERCAPS */ | 
|---|
| 1403 | #define RC_NONE           0x0000 | 
|---|
| 1404 | #define RC_BITBLT         0x0001 | 
|---|
| 1405 | #define RC_BANDING        0x0002 | 
|---|
| 1406 | #define RC_SCALING        0x0004 | 
|---|
| 1407 | #define RC_BITMAP64       0x0008 | 
|---|
| 1408 | #define RC_GDI20_OUTPUT   0x0010 | 
|---|
| 1409 | #define RC_GDI20_STATE    0x0020 | 
|---|
| 1410 | #define RC_SAVEBITMAP     0x0040 | 
|---|
| 1411 | #define RC_DI_BITMAP      0x0080 | 
|---|
| 1412 | #define RC_PALETTE        0x0100 | 
|---|
| 1413 | #define RC_DIBTODEV       0x0200 | 
|---|
| 1414 | #define RC_BIGFONT        0x0400 | 
|---|
| 1415 | #define RC_STRETCHBLT     0x0800 | 
|---|
| 1416 | #define RC_FLOODFILL      0x1000 | 
|---|
| 1417 | #define RC_STRETCHDIB     0x2000 | 
|---|
| 1418 | #define RC_OP_DX_OUTPUT   0x4000 | 
|---|
| 1419 | #define RC_DEVBITS        0x8000 | 
|---|
| 1420 |  | 
|---|
| 1421 | /* GetSystemMetrics() codes */ | 
|---|
| 1422 | #define SM_CXSCREEN            0 | 
|---|
| 1423 | #define SM_CYSCREEN            1 | 
|---|
| 1424 | #define SM_CXVSCROLL           2 | 
|---|
| 1425 | #define SM_CYHSCROLL           3 | 
|---|
| 1426 | #define SM_CYCAPTION           4 | 
|---|
| 1427 | #define SM_CXBORDER            5 | 
|---|
| 1428 | #define SM_CYBORDER            6 | 
|---|
| 1429 | #define SM_CXDLGFRAME          7 | 
|---|
| 1430 | #define SM_CYDLGFRAME          8 | 
|---|
| 1431 | #define SM_CYVTHUMB            9 | 
|---|
| 1432 | #define SM_CXHTHUMB           10 | 
|---|
| 1433 | #define SM_CXICON             11 | 
|---|
| 1434 | #define SM_CYICON             12 | 
|---|
| 1435 | #define SM_CXCURSOR           13 | 
|---|
| 1436 | #define SM_CYCURSOR           14 | 
|---|
| 1437 | #define SM_CYMENU             15 | 
|---|
| 1438 | #define SM_CXFULLSCREEN       16 | 
|---|
| 1439 | #define SM_CYFULLSCREEN       17 | 
|---|
| 1440 | #define SM_CYKANJIWINDOW      18 | 
|---|
| 1441 | #define SM_MOUSEPRESENT       19 | 
|---|
| 1442 | #define SM_CYVSCROLL          20 | 
|---|
| 1443 | #define SM_CXHSCROLL          21 | 
|---|
| 1444 | #define SM_DEBUG              22 | 
|---|
| 1445 | #define SM_SWAPBUTTON         23 | 
|---|
| 1446 | #define SM_RESERVED1          24 | 
|---|
| 1447 | #define SM_RESERVED2          25 | 
|---|
| 1448 | #define SM_RESERVED3          26 | 
|---|
| 1449 | #define SM_RESERVED4          27 | 
|---|
| 1450 | #define SM_CXMIN              28 | 
|---|
| 1451 | #define SM_CYMIN              29 | 
|---|
| 1452 | #define SM_CXSIZE             30 | 
|---|
| 1453 | #define SM_CYSIZE             31 | 
|---|
| 1454 | #define SM_CXFRAME            32 | 
|---|
| 1455 | #define SM_CYFRAME            33 | 
|---|
| 1456 | #define SM_CXMINTRACK         34 | 
|---|
| 1457 | #define SM_CYMINTRACK         35 | 
|---|
| 1458 | #define SM_CXDOUBLECLK        36 | 
|---|
| 1459 | #define SM_CYDOUBLECLK        37 | 
|---|
| 1460 | #define SM_CXICONSPACING      38 | 
|---|
| 1461 | #define SM_CYICONSPACING      39 | 
|---|
| 1462 | #define SM_MENUDROPALIGNMENT  40 | 
|---|
| 1463 | #define SM_PENWINDOWS         41 | 
|---|
| 1464 | #define SM_DBCSENABLED        42 | 
|---|
| 1465 | #define SM_CMOUSEBUTTONS      43 | 
|---|
| 1466 | #define SM_CXFIXEDFRAME       SM_CXDLGFRAME | 
|---|
| 1467 | #define SM_CYFIXEDFRAME       SM_CYDLGFRAME | 
|---|
| 1468 | #define SM_CXSIZEFRAME        SM_CXFRAME | 
|---|
| 1469 | #define SM_CYSIZEFRAME        SM_CYFRAME | 
|---|
| 1470 | #define SM_SECURE             44 | 
|---|
| 1471 | #define SM_CXEDGE             45 | 
|---|
| 1472 | #define SM_CYEDGE             46 | 
|---|
| 1473 | #define SM_CXMINSPACING       47 | 
|---|
| 1474 | #define SM_CYMINSPACING       48 | 
|---|
| 1475 | #define SM_CXSMICON           49 | 
|---|
| 1476 | #define SM_CYSMICON           50 | 
|---|
| 1477 | #define SM_CYSMCAPTION        51 | 
|---|
| 1478 | #define SM_CXSMSIZE           52 | 
|---|
| 1479 | #define SM_CYSMSIZE           53 | 
|---|
| 1480 | #define SM_CXMENUSIZE         54 | 
|---|
| 1481 | #define SM_CYMENUSIZE         55 | 
|---|
| 1482 | #define SM_ARRANGE            56 | 
|---|
| 1483 | #define SM_CXMINIMIZED        57 | 
|---|
| 1484 | #define SM_CYMINIMIZED        58 | 
|---|
| 1485 | #define SM_CXMAXTRACK         59 | 
|---|
| 1486 | #define SM_CYMAXTRACK         60 | 
|---|
| 1487 | #define SM_CXMAXIMIZED        61 | 
|---|
| 1488 | #define SM_CYMAXIMIZED        62 | 
|---|
| 1489 | #define SM_NETWORK            63 | 
|---|
| 1490 | #define SM_CLEANBOOT          67 | 
|---|
| 1491 | #define SM_CXDRAG             68 | 
|---|
| 1492 | #define SM_CYDRAG             69 | 
|---|
| 1493 | #define SM_SHOWSOUNDS         70 | 
|---|
| 1494 | #define SM_CXMENUCHECK        71 | 
|---|
| 1495 | #define SM_CYMENUCHECK        72 | 
|---|
| 1496 | #define SM_SLOWMACHINE        73 | 
|---|
| 1497 | #define SM_MIDEASTENABLED     74 | 
|---|
| 1498 | #define SM_MOUSEWHEELPRESENT  75 | 
|---|
| 1499 | #define SM_XVIRTUALSCREEN     76 | 
|---|
| 1500 | #define SM_YVIRTUALSCREEN     77 | 
|---|
| 1501 | #define SM_CXVIRTUALSCREEN    78 | 
|---|
| 1502 | #define SM_CYVIRTUALSCREEN    79 | 
|---|
| 1503 | #define SM_CMONITORS          80 | 
|---|
| 1504 | #define SM_SAMEDISPLAYFORMAT  81 | 
|---|
| 1505 | #define SM_CMETRICS           83 | 
|---|
| 1506 |  | 
|---|
| 1507 |  | 
|---|
| 1508 | /* Device-independent bitmaps */ | 
|---|
| 1509 |  | 
|---|
| 1510 | typedef struct { | 
|---|
| 1511 | BYTE rgbBlue; | 
|---|
| 1512 | BYTE rgbGreen; | 
|---|
| 1513 | BYTE rgbRed; | 
|---|
| 1514 | BYTE rgbReserved; | 
|---|
| 1515 | } RGBQUAD, *LPRGBQUAD; | 
|---|
| 1516 |  | 
|---|
| 1517 | typedef struct { | 
|---|
| 1518 | BYTE rgbtBlue; | 
|---|
| 1519 | BYTE rgbtGreen; | 
|---|
| 1520 | BYTE rgbtRed; | 
|---|
| 1521 | } RGBTRIPLE; | 
|---|
| 1522 |  | 
|---|
| 1523 | typedef struct | 
|---|
| 1524 | { | 
|---|
| 1525 | UINT16  bfType; | 
|---|
| 1526 | DWORD   bfSize WINE_PACKED; | 
|---|
| 1527 | UINT16  bfReserved1 WINE_PACKED; | 
|---|
| 1528 | UINT16  bfReserved2 WINE_PACKED; | 
|---|
| 1529 | DWORD   bfOffBits WINE_PACKED; | 
|---|
| 1530 | } BITMAPFILEHEADER; | 
|---|
| 1531 |  | 
|---|
| 1532 | typedef struct | 
|---|
| 1533 | { | 
|---|
| 1534 | DWORD       biSize; | 
|---|
| 1535 | LONG        biWidth; | 
|---|
| 1536 | LONG        biHeight; | 
|---|
| 1537 | WORD        biPlanes; | 
|---|
| 1538 | WORD        biBitCount; | 
|---|
| 1539 | DWORD       biCompression; | 
|---|
| 1540 | DWORD       biSizeImage; | 
|---|
| 1541 | LONG        biXPelsPerMeter; | 
|---|
| 1542 | LONG        biYPelsPerMeter; | 
|---|
| 1543 | DWORD       biClrUsed; | 
|---|
| 1544 | DWORD       biClrImportant; | 
|---|
| 1545 | } BITMAPINFOHEADER, *PBITMAPINFOHEADER, *LPBITMAPINFOHEADER; | 
|---|
| 1546 |  | 
|---|
| 1547 | typedef struct { | 
|---|
| 1548 | DWORD        bV4Size; | 
|---|
| 1549 | LONG         bV4Width; | 
|---|
| 1550 | LONG         bV4Height; | 
|---|
| 1551 | WORD         bV4Planes; | 
|---|
| 1552 | WORD         bV4BitCount; | 
|---|
| 1553 | DWORD        bV4V4Compression; | 
|---|
| 1554 | DWORD        bV4SizeImage; | 
|---|
| 1555 | LONG         bV4XPelsPerMeter; | 
|---|
| 1556 | LONG         bV4YPelsPerMeter; | 
|---|
| 1557 | DWORD        bV4ClrUsed; | 
|---|
| 1558 | DWORD        bV4ClrImportant; | 
|---|
| 1559 | DWORD        bV4RedMask; | 
|---|
| 1560 | DWORD        bV4GreenMask; | 
|---|
| 1561 | DWORD        bV4BlueMask; | 
|---|
| 1562 | DWORD        bV4AlphaMask; | 
|---|
| 1563 | DWORD        bV4CSType; | 
|---|
| 1564 | CIEXYZTRIPLE bV4Endpoints; | 
|---|
| 1565 | DWORD        bV4GammaRed; | 
|---|
| 1566 | DWORD        bV4GammaGreen; | 
|---|
| 1567 | DWORD        bV4GammaBlue; | 
|---|
| 1568 | } BITMAPV4HEADER, *LPBITMAPV4HEADER, *PBITMAPV4HEADER; | 
|---|
| 1569 |  | 
|---|
| 1570 | /* biCompression */ | 
|---|
| 1571 | #define BI_RGB           0 | 
|---|
| 1572 | #define BI_RLE8          1 | 
|---|
| 1573 | #define BI_RLE4          2 | 
|---|
| 1574 | #define BI_BITFIELDS     3 | 
|---|
| 1575 |  | 
|---|
| 1576 | typedef struct { | 
|---|
| 1577 | BITMAPINFOHEADER bmiHeader; | 
|---|
| 1578 | RGBQUAD bmiColors[1]; | 
|---|
| 1579 | } BITMAPINFO; | 
|---|
| 1580 | typedef BITMAPINFO *LPBITMAPINFO; | 
|---|
| 1581 | typedef BITMAPINFO *NPBITMAPINFO; | 
|---|
| 1582 | typedef BITMAPINFO *PBITMAPINFO; | 
|---|
| 1583 |  | 
|---|
| 1584 | typedef struct | 
|---|
| 1585 | { | 
|---|
| 1586 | DWORD   bcSize; | 
|---|
| 1587 | UINT16  bcWidth; | 
|---|
| 1588 | UINT16  bcHeight; | 
|---|
| 1589 | UINT16  bcPlanes; | 
|---|
| 1590 | UINT16  bcBitCount; | 
|---|
| 1591 | } BITMAPCOREHEADER, *LPBITMAPCOREHEADER; | 
|---|
| 1592 |  | 
|---|
| 1593 | typedef struct | 
|---|
| 1594 | { | 
|---|
| 1595 | BITMAPCOREHEADER bmciHeader; | 
|---|
| 1596 | RGBTRIPLE        bmciColors[1]; | 
|---|
| 1597 | } BITMAPCOREINFO, *LPBITMAPCOREINFO; | 
|---|
| 1598 |  | 
|---|
| 1599 | #define DIB_RGB_COLORS   0 | 
|---|
| 1600 | #define DIB_PAL_COLORS   1 | 
|---|
| 1601 | #define CBM_INIT         4 | 
|---|
| 1602 |  | 
|---|
| 1603 | typedef struct | 
|---|
| 1604 | { | 
|---|
| 1605 | BITMAP          dsBm; | 
|---|
| 1606 | BITMAPINFOHEADER        dsBmih; | 
|---|
| 1607 | DWORD                   dsBitfields[3]; | 
|---|
| 1608 | HANDLE          dshSection; | 
|---|
| 1609 | DWORD                   dsOffset; | 
|---|
| 1610 | } DIBSECTION,*LPDIBSECTION; | 
|---|
| 1611 |  | 
|---|
| 1612 | /* Stock GDI objects for GetStockObject() */ | 
|---|
| 1613 |  | 
|---|
| 1614 | #define WHITE_BRUSH         0 | 
|---|
| 1615 | #define LTGRAY_BRUSH        1 | 
|---|
| 1616 | #define GRAY_BRUSH          2 | 
|---|
| 1617 | #define DKGRAY_BRUSH        3 | 
|---|
| 1618 | #define BLACK_BRUSH         4 | 
|---|
| 1619 | #define NULL_BRUSH          5 | 
|---|
| 1620 | #define HOLLOW_BRUSH        5 | 
|---|
| 1621 | #define WHITE_PEN           6 | 
|---|
| 1622 | #define BLACK_PEN           7 | 
|---|
| 1623 | #define NULL_PEN            8 | 
|---|
| 1624 | #define OEM_FIXED_FONT      10 | 
|---|
| 1625 | #define ANSI_FIXED_FONT     11 | 
|---|
| 1626 | #define ANSI_VAR_FONT       12 | 
|---|
| 1627 | #define SYSTEM_FONT         13 | 
|---|
| 1628 | #define DEVICE_DEFAULT_FONT 14 | 
|---|
| 1629 | #define DEFAULT_PALETTE     15 | 
|---|
| 1630 | #define SYSTEM_FIXED_FONT   16 | 
|---|
| 1631 | #define DEFAULT_GUI_FONT    17 | 
|---|
| 1632 |  | 
|---|
| 1633 | #define STOCK_LAST          17 | 
|---|
| 1634 |  | 
|---|
| 1635 | /* Metafile header structure */ | 
|---|
| 1636 | typedef struct | 
|---|
| 1637 | { | 
|---|
| 1638 | WORD       mtType; | 
|---|
| 1639 | WORD       mtHeaderSize; | 
|---|
| 1640 | WORD       mtVersion; | 
|---|
| 1641 | DWORD      mtSize WINE_PACKED; | 
|---|
| 1642 | WORD       mtNoObjects; | 
|---|
| 1643 | DWORD      mtMaxRecord WINE_PACKED; | 
|---|
| 1644 | WORD       mtNoParameters; | 
|---|
| 1645 | } METAHEADER; | 
|---|
| 1646 |  | 
|---|
| 1647 | /* Metafile typical record structure */ | 
|---|
| 1648 | typedef struct | 
|---|
| 1649 | { | 
|---|
| 1650 | DWORD      rdSize; | 
|---|
| 1651 | WORD       rdFunction; | 
|---|
| 1652 | WORD       rdParm[1]; | 
|---|
| 1653 | } METARECORD; | 
|---|
| 1654 | typedef METARECORD *PMETARECORD; | 
|---|
| 1655 | typedef METARECORD *LPMETARECORD; | 
|---|
| 1656 |  | 
|---|
| 1657 | /* Handle table structure */ | 
|---|
| 1658 | typedef struct | 
|---|
| 1659 | { | 
|---|
| 1660 | HGDIOBJ objectHandle[1]; | 
|---|
| 1661 | } HANDLETABLE, *LPHANDLETABLE; | 
|---|
| 1662 |  | 
|---|
| 1663 |  | 
|---|
| 1664 | /* Clipboard metafile picture structure */ | 
|---|
| 1665 | typedef struct | 
|---|
| 1666 | { | 
|---|
| 1667 | INT        mm; | 
|---|
| 1668 | INT        xExt; | 
|---|
| 1669 | INT        yExt; | 
|---|
| 1670 | HMETAFILE  hMF; | 
|---|
| 1671 | } METAFILEPICT, *LPMETAFILEPICT; | 
|---|
| 1672 |  | 
|---|
| 1673 |  | 
|---|
| 1674 | /* Metafile functions */ | 
|---|
| 1675 | #define META_SETBKCOLOR              0x0201 | 
|---|
| 1676 | #define META_SETBKMODE               0x0102 | 
|---|
| 1677 | #define META_SETMAPMODE              0x0103 | 
|---|
| 1678 | #define META_SETROP2                 0x0104 | 
|---|
| 1679 | #define META_SETRELABS               0x0105 | 
|---|
| 1680 | #define META_SETPOLYFILLMODE         0x0106 | 
|---|
| 1681 | #define META_SETSTRETCHBLTMODE       0x0107 | 
|---|
| 1682 | #define META_SETTEXTCHAREXTRA        0x0108 | 
|---|
| 1683 | #define META_SETTEXTCOLOR            0x0209 | 
|---|
| 1684 | #define META_SETTEXTJUSTIFICATION    0x020A | 
|---|
| 1685 | #define META_SETWINDOWORG            0x020B | 
|---|
| 1686 | #define META_SETWINDOWEXT            0x020C | 
|---|
| 1687 | #define META_SETVIEWPORTORG          0x020D | 
|---|
| 1688 | #define META_SETVIEWPORTEXT          0x020E | 
|---|
| 1689 | #define META_OFFSETWINDOWORG         0x020F | 
|---|
| 1690 | #define META_SCALEWINDOWEXT          0x0410 | 
|---|
| 1691 | #define META_OFFSETVIEWPORTORG       0x0211 | 
|---|
| 1692 | #define META_SCALEVIEWPORTEXT        0x0412 | 
|---|
| 1693 | #define META_LINETO                  0x0213 | 
|---|
| 1694 | #define META_MOVETO                  0x0214 | 
|---|
| 1695 | #define META_EXCLUDECLIPRECT         0x0415 | 
|---|
| 1696 | #define META_INTERSECTCLIPRECT       0x0416 | 
|---|
| 1697 | #define META_ARC                     0x0817 | 
|---|
| 1698 | #define META_ELLIPSE                 0x0418 | 
|---|
| 1699 | #define META_FLOODFILL               0x0419 | 
|---|
| 1700 | #define META_PIE                     0x081A | 
|---|
| 1701 | #define META_RECTANGLE               0x041B | 
|---|
| 1702 | #define META_ROUNDRECT               0x061C | 
|---|
| 1703 | #define META_PATBLT                  0x061D | 
|---|
| 1704 | #define META_SAVEDC                  0x001E | 
|---|
| 1705 | #define META_SETPIXEL                0x041F | 
|---|
| 1706 | #define META_OFFSETCLIPRGN           0x0220 | 
|---|
| 1707 | #define META_TEXTOUT                 0x0521 | 
|---|
| 1708 | #define META_BITBLT                  0x0922 | 
|---|
| 1709 | #define META_STRETCHBLT              0x0B23 | 
|---|
| 1710 | #define META_POLYGON                 0x0324 | 
|---|
| 1711 | #define META_POLYLINE                0x0325 | 
|---|
| 1712 | #define META_ESCAPE                  0x0626 | 
|---|
| 1713 | #define META_RESTOREDC               0x0127 | 
|---|
| 1714 | #define META_FILLREGION              0x0228 | 
|---|
| 1715 | #define META_FRAMEREGION             0x0429 | 
|---|
| 1716 | #define META_INVERTREGION            0x012A | 
|---|
| 1717 | #define META_PAINTREGION             0x012B | 
|---|
| 1718 | #define META_SELECTCLIPREGION        0x012C | 
|---|
| 1719 | #define META_SELECTOBJECT            0x012D | 
|---|
| 1720 | #define META_SETTEXTALIGN            0x012E | 
|---|
| 1721 | #define META_DRAWTEXT                0x062F | 
|---|
| 1722 | #define META_CHORD                   0x0830 | 
|---|
| 1723 | #define META_SETMAPPERFLAGS          0x0231 | 
|---|
| 1724 | #define META_EXTTEXTOUT              0x0A32 | 
|---|
| 1725 | #define META_SETDIBTODEV             0x0D33 | 
|---|
| 1726 | #define META_SELECTPALETTE           0x0234 | 
|---|
| 1727 | #define META_REALIZEPALETTE          0x0035 | 
|---|
| 1728 | #define META_ANIMATEPALETTE          0x0436 | 
|---|
| 1729 | #define META_SETPALENTRIES           0x0037 | 
|---|
| 1730 | #define META_POLYPOLYGON             0x0538 | 
|---|
| 1731 | #define META_RESIZEPALETTE           0x0139 | 
|---|
| 1732 | #define META_DIBBITBLT               0x0940 | 
|---|
| 1733 | #define META_DIBSTRETCHBLT           0x0B41 | 
|---|
| 1734 | #define META_DIBCREATEPATTERNBRUSH   0x0142 | 
|---|
| 1735 | #define META_STRETCHDIB              0x0F43 | 
|---|
| 1736 | #define META_EXTFLOODFILL            0x0548 | 
|---|
| 1737 | #define META_RESETDC                 0x014C | 
|---|
| 1738 | #define META_STARTDOC                0x014D | 
|---|
| 1739 | #define META_STARTPAGE               0x004F | 
|---|
| 1740 | #define META_ENDPAGE                 0x0050 | 
|---|
| 1741 | #define META_ABORTDOC                0x0052 | 
|---|
| 1742 | #define META_ENDDOC                  0x005E | 
|---|
| 1743 | #define META_DELETEOBJECT            0x01F0 | 
|---|
| 1744 | #define META_CREATEPALETTE           0x00F7 | 
|---|
| 1745 | #define META_CREATEBRUSH             0x00F8 | 
|---|
| 1746 | #define META_CREATEPATTERNBRUSH      0x01F9 | 
|---|
| 1747 | #define META_CREATEPENINDIRECT       0x02FA | 
|---|
| 1748 | #define META_CREATEFONTINDIRECT      0x02FB | 
|---|
| 1749 | #define META_CREATEBRUSHINDIRECT     0x02FC | 
|---|
| 1750 | #define META_CREATEBITMAPINDIRECT    0x02FD | 
|---|
| 1751 | #define META_CREATEBITMAP            0x06FE | 
|---|
| 1752 | #define META_CREATEREGION            0x06FF | 
|---|
| 1753 | #define META_UNKNOWN                 0x0529  /* FIXME: unknown meta magic */ | 
|---|
| 1754 |  | 
|---|
| 1755 | typedef INT (* CALLBACK MFENUMPROC)(HDC,HANDLETABLE*,METARECORD*, | 
|---|
| 1756 | INT,LPARAM); | 
|---|
| 1757 |  | 
|---|
| 1758 | /* enhanced metafile structures and functions */ | 
|---|
| 1759 |  | 
|---|
| 1760 | /* note that ENHMETAHEADER is just a particular kind of ENHMETARECORD, | 
|---|
| 1761 | ie. the header is just the first record in the metafile */ | 
|---|
| 1762 | typedef struct { | 
|---|
| 1763 | DWORD iType; | 
|---|
| 1764 | DWORD nSize; | 
|---|
| 1765 | RECTL rclBounds; | 
|---|
| 1766 | RECTL rclFrame; | 
|---|
| 1767 | DWORD dSignature; | 
|---|
| 1768 | DWORD nVersion; | 
|---|
| 1769 | DWORD nBytes; | 
|---|
| 1770 | DWORD nRecords; | 
|---|
| 1771 | WORD  nHandles; | 
|---|
| 1772 | WORD  sReserved; | 
|---|
| 1773 | DWORD nDescription; | 
|---|
| 1774 | DWORD offDescription; | 
|---|
| 1775 | DWORD nPalEntries; | 
|---|
| 1776 | SIZEL szlDevice; | 
|---|
| 1777 | SIZEL szlMillimeters; | 
|---|
| 1778 | DWORD cbPixelFormat; | 
|---|
| 1779 | DWORD offPixelFormat; | 
|---|
| 1780 | DWORD bOpenGL; | 
|---|
| 1781 | } ENHMETAHEADER, *LPENHMETAHEADER; | 
|---|
| 1782 |  | 
|---|
| 1783 | typedef struct { | 
|---|
| 1784 | DWORD iType; | 
|---|
| 1785 | DWORD nSize; | 
|---|
| 1786 | DWORD dParm[1]; | 
|---|
| 1787 | } ENHMETARECORD, *LPENHMETARECORD; | 
|---|
| 1788 |  | 
|---|
| 1789 | typedef struct { | 
|---|
| 1790 | DWORD iType; | 
|---|
| 1791 | DWORD nSize; | 
|---|
| 1792 | } EMR, *PEMR; | 
|---|
| 1793 |  | 
|---|
| 1794 | typedef struct { | 
|---|
| 1795 | POINTL ptlReference; | 
|---|
| 1796 | DWORD  nChars; | 
|---|
| 1797 | DWORD  offString; | 
|---|
| 1798 | DWORD  fOptions; | 
|---|
| 1799 | RECTL  rcl; | 
|---|
| 1800 | DWORD  offDx; | 
|---|
| 1801 | } EMRTEXT, *PEMRTEXT; | 
|---|
| 1802 |  | 
|---|
| 1803 | typedef struct { | 
|---|
| 1804 | EMR emr; | 
|---|
| 1805 | } EMRABORTPATH,      *PEMRABORTPATH, | 
|---|
| 1806 | EMRBEGINPATH,      *PEMRBEGINPATH, | 
|---|
| 1807 | EMRENDPATH,        *PEMRENDPATH, | 
|---|
| 1808 | EMRCLOSEFIGURE,    *PEMRCLOSEFIGURE, | 
|---|
| 1809 | EMRFLATTENPATH,    *PEMRFLATTENPATH, | 
|---|
| 1810 | EMRWIDENPATH,      *PEMRWIDENPATH, | 
|---|
| 1811 | EMRSETMETARGN,     *PEMRSETMETARGN, | 
|---|
| 1812 | EMRSAVEDC,         *PEMRSAVEDC, | 
|---|
| 1813 | EMRREALIZEPALETTE, *PEMRREALIZEPALETTE; | 
|---|
| 1814 |  | 
|---|
| 1815 | typedef struct { | 
|---|
| 1816 | EMR    emr; | 
|---|
| 1817 | POINTL ptlCenter; | 
|---|
| 1818 | DWORD  nRadius; | 
|---|
| 1819 | FLOAT  eStartAngle; | 
|---|
| 1820 | FLOAT  eSweepAngle; | 
|---|
| 1821 | } EMRANGLEARC, *PEMRANGLEARC; | 
|---|
| 1822 |  | 
|---|
| 1823 | typedef struct { | 
|---|
| 1824 | EMR    emr; | 
|---|
| 1825 | RECTL  rclBox; | 
|---|
| 1826 | POINTL ptlStart; | 
|---|
| 1827 | POINTL ptlEnd; | 
|---|
| 1828 | } EMRARC,   *PEMRARC, | 
|---|
| 1829 | EMRARCTO, *PEMRARCTO, | 
|---|
| 1830 | EMRCHORD, *PEMRCHORD, | 
|---|
| 1831 | EMRPIE,   *PEMRPIE; | 
|---|
| 1832 |  | 
|---|
| 1833 | typedef struct { | 
|---|
| 1834 | EMR      emr; | 
|---|
| 1835 | RECTL    rclBounds; | 
|---|
| 1836 | LONG     xDest; | 
|---|
| 1837 | LONG     yDest; | 
|---|
| 1838 | LONG     cxDest; | 
|---|
| 1839 | LONG     cyDest; | 
|---|
| 1840 | DWORD    dwRop; | 
|---|
| 1841 | LONG     xSrc; | 
|---|
| 1842 | LONG     ySrc; | 
|---|
| 1843 | XFORM    xformSrc; | 
|---|
| 1844 | COLORREF crBkColorSrc; | 
|---|
| 1845 | DWORD    iUsegeSrc; | 
|---|
| 1846 | DWORD    offBmiSrc; | 
|---|
| 1847 | DWORD    cbBmiSrc; | 
|---|
| 1848 | DWORD    offBitsSrc; | 
|---|
| 1849 | DWORD    cbBitsSrc; | 
|---|
| 1850 | } EMRBITBLT, *PEMRBITBLT; | 
|---|
| 1851 |  | 
|---|
| 1852 | typedef struct { | 
|---|
| 1853 | EMR      emr; | 
|---|
| 1854 | DWORD    ihBrush; | 
|---|
| 1855 | LOGBRUSH lb; | 
|---|
| 1856 | } EMRCREATEBRUSHINDIRECT, *PEMRCREATEBRUSHINDIRECT; | 
|---|
| 1857 |  | 
|---|
| 1858 | typedef struct { | 
|---|
| 1859 | EMR            emr; | 
|---|
| 1860 | DWORD          ihCS; | 
|---|
| 1861 | LOGCOLORSPACEW lcs; | 
|---|
| 1862 | } EMRCREATECOLORSPACE, *PEMRCREATECOLORSPACE; | 
|---|
| 1863 |  | 
|---|
| 1864 | typedef struct { | 
|---|
| 1865 | EMR   emr; | 
|---|
| 1866 | DWORD ihBrush; | 
|---|
| 1867 | DWORD iUsage; | 
|---|
| 1868 | DWORD offBmi; | 
|---|
| 1869 | DWORD cbBmi; | 
|---|
| 1870 | DWORD offBits; | 
|---|
| 1871 | DWORD cbBits; | 
|---|
| 1872 | } EMRCREATEDIBPATTERNBRUSHPT, *PEMRCREATEDIBPATTERNBRUSHPT; | 
|---|
| 1873 |  | 
|---|
| 1874 | typedef struct { | 
|---|
| 1875 | EMR   emr; | 
|---|
| 1876 | DWORD ihBrush; | 
|---|
| 1877 | DWORD iUsage; | 
|---|
| 1878 | DWORD offBmi; | 
|---|
| 1879 | DWORD cbBmi; | 
|---|
| 1880 | DWORD offBits; | 
|---|
| 1881 | DWORD cbBits; | 
|---|
| 1882 | } EMRCREATEMONOBRUSH, *PEMRCREATEMONOBRUSH; | 
|---|
| 1883 |  | 
|---|
| 1884 | typedef struct { | 
|---|
| 1885 | EMR        emr; | 
|---|
| 1886 | DWORD      ihPal; | 
|---|
| 1887 | LOGPALETTE lgpl; | 
|---|
| 1888 | } EMRCREATEPALETTE, *PEMRCREATEPALETTE; | 
|---|
| 1889 |  | 
|---|
| 1890 | typedef struct { | 
|---|
| 1891 | EMR    emr; | 
|---|
| 1892 | DWORD  ihPen; | 
|---|
| 1893 | LOGPEN lopn; | 
|---|
| 1894 | } EMRCREATEPEN, *PEMRCREATEPEN; | 
|---|
| 1895 |  | 
|---|
| 1896 | typedef struct { | 
|---|
| 1897 | EMR           emr; | 
|---|
| 1898 | DWORD         ihCS; | 
|---|
| 1899 | } EMRDELETECOLORSPACE, *PEMRDELETECOLORSPACE, | 
|---|
| 1900 | EMRSELECTCOLORSPACE, *PEMRSELECTCOLORSPACE, | 
|---|
| 1901 | EMRSETCOLORSPACE,    *PEMRSETCOLORSPACE; | 
|---|
| 1902 |  | 
|---|
| 1903 | typedef struct { | 
|---|
| 1904 | EMR   emr; | 
|---|
| 1905 | DWORD ihObject; | 
|---|
| 1906 | } EMRDELETEOBJECT, *PEMRDELETEOBJECT, | 
|---|
| 1907 | EMRSELECTOBJECT, *PEMRSELECTOBJECT; | 
|---|
| 1908 |  | 
|---|
| 1909 | typedef struct { | 
|---|
| 1910 | EMR   emr; | 
|---|
| 1911 | RECTL rclBox; | 
|---|
| 1912 | } EMRELLIPSE,   *PEMRELLIPSE, | 
|---|
| 1913 | EMRRECTANGLE, *PEMRRECTANGLE; | 
|---|
| 1914 |  | 
|---|
| 1915 | typedef struct { | 
|---|
| 1916 | EMR   emr; | 
|---|
| 1917 | DWORD nPalEntries; | 
|---|
| 1918 | DWORD offPalEntries; | 
|---|
| 1919 | DWORD nSizeLast; | 
|---|
| 1920 | } EMREOF, *PEMREOF; | 
|---|
| 1921 |  | 
|---|
| 1922 | typedef struct { | 
|---|
| 1923 | EMR   emr; | 
|---|
| 1924 | RECTL rclClip; | 
|---|
| 1925 | } EMREXCLUDECLIPRECT,   *PEMREXCLUDECLIPRECT, | 
|---|
| 1926 | EMRINTERSECTCLIPRECT, *PEMRINTERSECTCLIPRECT; | 
|---|
| 1927 |  | 
|---|
| 1928 | typedef struct { | 
|---|
| 1929 | EMR         emr; | 
|---|
| 1930 | DWORD       ihFont; | 
|---|
| 1931 | EXTLOGFONTW elfw; | 
|---|
| 1932 | } EMREXTCREATEFONTINDIRECTW, *PEMREXTCREATEFONTINDIRECTW; | 
|---|
| 1933 |  | 
|---|
| 1934 | typedef struct { | 
|---|
| 1935 | EMR       emr; | 
|---|
| 1936 | DWORD     ihPen; | 
|---|
| 1937 | DWORD     offBmi; | 
|---|
| 1938 | DWORD     cbBmi; | 
|---|
| 1939 | DWORD     offBits; | 
|---|
| 1940 | DWORD     cbBits; | 
|---|
| 1941 | EXTLOGPEN elp; | 
|---|
| 1942 | } EMREXTCREATEPEN, *PEMREXTCREATEPEN; | 
|---|
| 1943 |  | 
|---|
| 1944 | typedef struct { | 
|---|
| 1945 | EMR      emr; | 
|---|
| 1946 | POINTL   ptlStart; | 
|---|
| 1947 | COLORREF crColor; | 
|---|
| 1948 | DWORD    iMode; | 
|---|
| 1949 | } EMREXTFLOODFILL, *PEMREXTFLOODFILL; | 
|---|
| 1950 |  | 
|---|
| 1951 | typedef struct { | 
|---|
| 1952 | EMR   emr; | 
|---|
| 1953 | DWORD cbRgnData; | 
|---|
| 1954 | DWORD iMode; | 
|---|
| 1955 | BYTE  RgnData[1]; | 
|---|
| 1956 | } EMREXTSELECTCLIPRGN, *PEMREXTSELECTCLIPRGN; | 
|---|
| 1957 |  | 
|---|
| 1958 | typedef struct { | 
|---|
| 1959 | EMR     emr; | 
|---|
| 1960 | RECTL   rclBounds; | 
|---|
| 1961 | DWORD   iGraphicsMode; | 
|---|
| 1962 | FLOAT   exScale; | 
|---|
| 1963 | FLOAT   eyScale; | 
|---|
| 1964 | EMRTEXT emrtext; | 
|---|
| 1965 | } EMREXTTEXTOUTA, *PEMREXTTEXTOUTA, | 
|---|
| 1966 | EMREXTTEXTOUTW, *PEMREXTTEXTOUTW; | 
|---|
| 1967 |  | 
|---|
| 1968 | typedef struct { | 
|---|
| 1969 | EMR emr; | 
|---|
| 1970 | RECTL rclBounds; | 
|---|
| 1971 | } EMRFILLPATH,          *PEMRFILLPATH, | 
|---|
| 1972 | EMRSTROKEANDFILLPATH, *PEMRSTROKEANDFILLPATH, | 
|---|
| 1973 | EMRSTROKEPATH,        *PEMRSTROKEPATH; | 
|---|
| 1974 |  | 
|---|
| 1975 | typedef struct { | 
|---|
| 1976 | EMR   emr; | 
|---|
| 1977 | RECTL rclBounds; | 
|---|
| 1978 | DWORD cbRgnData; | 
|---|
| 1979 | DWORD ihBrush; | 
|---|
| 1980 | BYTE  RgnData[1]; | 
|---|
| 1981 | } EMRFILLRGN, *PEMRFILLRGN; | 
|---|
| 1982 |  | 
|---|
| 1983 | typedef struct { | 
|---|
| 1984 | DWORD signature; | 
|---|
| 1985 | DWORD nVersion; | 
|---|
| 1986 | DWORD cbData; | 
|---|
| 1987 | DWORD offData; | 
|---|
| 1988 | } EMRFORMAT, *PEMRFORMAT; | 
|---|
| 1989 |  | 
|---|
| 1990 | typedef struct { | 
|---|
| 1991 | EMR   emr; | 
|---|
| 1992 | RECTL rclBounds; | 
|---|
| 1993 | DWORD cbRgnData; | 
|---|
| 1994 | DWORD ihBrush; | 
|---|
| 1995 | SIZEL szlStroke; | 
|---|
| 1996 | BYTE  RgnData[1]; | 
|---|
| 1997 | } EMRFRAMERGN, *PEMRFRAMERGN; | 
|---|
| 1998 |  | 
|---|
| 1999 | typedef struct { | 
|---|
| 2000 | EMR   emr; | 
|---|
| 2001 | DWORD cbData; | 
|---|
| 2002 | BYTE  Data[1]; | 
|---|
| 2003 | } EMRGDICOMMENT, *PEMRGDICOMMENT; | 
|---|
| 2004 |  | 
|---|
| 2005 | #if 0 | 
|---|
| 2006 | typedef struct { | 
|---|
| 2007 | EMR       emr; | 
|---|
| 2008 | RECTL     rclBounds; | 
|---|
| 2009 | DWORD     nVer; | 
|---|
| 2010 | DWORD     nTri; | 
|---|
| 2011 | ULONG     ulMode; | 
|---|
| 2012 | TRIVERTEX Ver[1]; | 
|---|
| 2013 | } EMRGRADIENTFILL, *PEMRGRADIENTFILL; | 
|---|
| 2014 | #endif | 
|---|
| 2015 |  | 
|---|
| 2016 | typedef struct { | 
|---|
| 2017 | EMR   emr; | 
|---|
| 2018 | RECTL rclBounds; | 
|---|
| 2019 | DWORD cbRgnData; | 
|---|
| 2020 | BYTE  RgnData[1]; | 
|---|
| 2021 | } EMRINVERTRGN, *PEMRINVERTRGN, | 
|---|
| 2022 | EMRPAINTRGN,  *PEMRPAINTRGN; | 
|---|
| 2023 |  | 
|---|
| 2024 | typedef struct { | 
|---|
| 2025 | EMR    emr; | 
|---|
| 2026 | POINTL ptl; | 
|---|
| 2027 | } EMRLINETO,   *PEMRLINETO, | 
|---|
| 2028 | EMRMOVETOEX, *PEMRMOVETOEX; | 
|---|
| 2029 |  | 
|---|
| 2030 | typedef struct { | 
|---|
| 2031 | EMR      emr; | 
|---|
| 2032 | RECTL    rclBounds; | 
|---|
| 2033 | LONG     xDest; | 
|---|
| 2034 | LONG     yDest; | 
|---|
| 2035 | LONG     cxDest; | 
|---|
| 2036 | LONG     cyDest; | 
|---|
| 2037 | DWORD    dwRop; | 
|---|
| 2038 | LONG     xSrc; | 
|---|
| 2039 | LONG     ySrc; | 
|---|
| 2040 | XFORM    xformSrc; | 
|---|
| 2041 | COLORREF crBkColorSrc; | 
|---|
| 2042 | DWORD    iUsageSrc; | 
|---|
| 2043 | DWORD    offBmiSrc; | 
|---|
| 2044 | DWORD    cbBmiSrc; | 
|---|
| 2045 | DWORD    offBitsSrc; | 
|---|
| 2046 | DWORD    cbBitsSrc; | 
|---|
| 2047 | LONG     xMask; | 
|---|
| 2048 | LONG     yMask; | 
|---|
| 2049 | DWORD    iUsageMask; | 
|---|
| 2050 | DWORD    offBmiMask; | 
|---|
| 2051 | DWORD    cbBmiMask; | 
|---|
| 2052 | DWORD    offBitsMask; | 
|---|
| 2053 | DWORD    cbBitsMask; | 
|---|
| 2054 | } EMRMASKBLT, *PEMRMASKBLT; | 
|---|
| 2055 |  | 
|---|
| 2056 | typedef struct { | 
|---|
| 2057 | EMR   emr; | 
|---|
| 2058 | XFORM xform; | 
|---|
| 2059 | DWORD iMode; | 
|---|
| 2060 | } EMRMODIFYWORLDTRANSFORM, *PEMRMODIFYWORLDTRANSFORM; | 
|---|
| 2061 |  | 
|---|
| 2062 | typedef struct { | 
|---|
| 2063 | EMR    emr; | 
|---|
| 2064 | POINTL ptlOffset; | 
|---|
| 2065 | } EMROFFSETCLIPRGN, *PEMROFFSETCLIPRGN; | 
|---|
| 2066 |  | 
|---|
| 2067 | typedef struct { | 
|---|
| 2068 | EMR      emr; | 
|---|
| 2069 | RECTL    rclBounds; | 
|---|
| 2070 | POINTL   aptlDst[3]; | 
|---|
| 2071 | LONG     xSrc; | 
|---|
| 2072 | LONG     ySrc; | 
|---|
| 2073 | LONG     cxSrc; | 
|---|
| 2074 | LONG     cySrc; | 
|---|
| 2075 | XFORM    xformSrc; | 
|---|
| 2076 | COLORREF crBkColorSrc; | 
|---|
| 2077 | DWORD    iUsageSrc; | 
|---|
| 2078 | DWORD    offBmiSrc; | 
|---|
| 2079 | DWORD    cbBmiSrc; | 
|---|
| 2080 | DWORD    offBitsSrc; | 
|---|
| 2081 | DWORD    cbBitsSrc; | 
|---|
| 2082 | LONG     xMask; | 
|---|
| 2083 | LONG     yMask; | 
|---|
| 2084 | DWORD    iUsageMask; | 
|---|
| 2085 | DWORD    offBmiMask; | 
|---|
| 2086 | DWORD    cbBmiMask; | 
|---|
| 2087 | DWORD    offBitsMask; | 
|---|
| 2088 | DWORD    cbBitsMask; | 
|---|
| 2089 | } EMRPLGBLT, *PEMRPLGBLT; | 
|---|
| 2090 |  | 
|---|
| 2091 | typedef struct { | 
|---|
| 2092 | EMR    emr; | 
|---|
| 2093 | RECTL  rclBounds; | 
|---|
| 2094 | DWORD  cptl; | 
|---|
| 2095 | POINTL aptl[1]; | 
|---|
| 2096 | } EMRPOLYLINE,     *PEMRPOLYLINE, | 
|---|
| 2097 | EMRPOLYBEZIER,   *PEMRPOLYBEZIER, | 
|---|
| 2098 | EMRPOLYGON,      *PEMRPOLYGON, | 
|---|
| 2099 | EMRPOLYBEZIERTO, *PEMRPOLYBEZIERTO, | 
|---|
| 2100 | EMRPOLYLINETO,   *PEMRPOLYLINETO; | 
|---|
| 2101 |  | 
|---|
| 2102 | typedef struct { | 
|---|
| 2103 | EMR    emr; | 
|---|
| 2104 | RECTL  rclBounds; | 
|---|
| 2105 | DWORD  cptl; | 
|---|
| 2106 | POINTL aptl[1]; | 
|---|
| 2107 | BYTE   abTypes[1]; | 
|---|
| 2108 | } EMRPOLYDRAW, *PEMRPOLYDRAW; | 
|---|
| 2109 |  | 
|---|
| 2110 | typedef struct { | 
|---|
| 2111 | EMR     emr; | 
|---|
| 2112 | RECTL   rclBounds; | 
|---|
| 2113 | DWORD   nPolys; | 
|---|
| 2114 | DWORD   cptl; | 
|---|
| 2115 | DWORD   aPolyCounts[1]; | 
|---|
| 2116 | POINTL  aptl[1]; | 
|---|
| 2117 | } EMRPOLYPOLYLINE, *PEMRPOLYPOLYLINE, | 
|---|
| 2118 | EMRPOLYPOLYGON,  *PEMRPOLYPOLYGON; | 
|---|
| 2119 |  | 
|---|
| 2120 | typedef struct { | 
|---|
| 2121 | EMR     emr; | 
|---|
| 2122 | RECTL   rclBounds; | 
|---|
| 2123 | DWORD   iGraphicsMode; | 
|---|
| 2124 | FLOAT   exScale; | 
|---|
| 2125 | FLOAT   eyScale; | 
|---|
| 2126 | LONG    cStrings; | 
|---|
| 2127 | EMRTEXT aemrtext[1]; | 
|---|
| 2128 | } EMRPOLYTEXTOUTA, *PEMRPOLYTEXTOUTA, | 
|---|
| 2129 | EMRPOLYTEXTOUTW, *PEMRPOLYTEXTOUTW; | 
|---|
| 2130 |  | 
|---|
| 2131 | typedef struct { | 
|---|
| 2132 | EMR   emr; | 
|---|
| 2133 | DWORD ihPal; | 
|---|
| 2134 | DWORD cEntries; | 
|---|
| 2135 | } EMRRESIZEPALETTE, *PEMRRESIZEPALETTE; | 
|---|
| 2136 |  | 
|---|
| 2137 | typedef struct { | 
|---|
| 2138 | EMR  emr; | 
|---|
| 2139 | LONG iRelative; | 
|---|
| 2140 | } EMRRESTOREDC, *PEMRRESTOREDC; | 
|---|
| 2141 |  | 
|---|
| 2142 | typedef struct { | 
|---|
| 2143 | EMR   emr; | 
|---|
| 2144 | RECTL rclBox; | 
|---|
| 2145 | SIZEL szlCorner; | 
|---|
| 2146 | } EMRROUNDRECT, *PEMRROUNDRECT; | 
|---|
| 2147 |  | 
|---|
| 2148 | typedef struct { | 
|---|
| 2149 | EMR  emr; | 
|---|
| 2150 | LONG xNum; | 
|---|
| 2151 | LONG xDenom; | 
|---|
| 2152 | LONG yNum; | 
|---|
| 2153 | LONG yDenom; | 
|---|
| 2154 | } EMRSCALEVIEWPORTEXTEX, *PEMRSCALEVIEWPORTEXTEX, | 
|---|
| 2155 | EMRSCALEWINDOWEXTEX,   *PEMRSCALEWINDOWEXTEX; | 
|---|
| 2156 |  | 
|---|
| 2157 | typedef struct { | 
|---|
| 2158 | EMR   emr; | 
|---|
| 2159 | DWORD ihPal; | 
|---|
| 2160 | } EMRSELECTPALETTE, *PEMRSELECTPALETTE; | 
|---|
| 2161 |  | 
|---|
| 2162 | typedef struct { | 
|---|
| 2163 | EMR   emr; | 
|---|
| 2164 | DWORD iArcDirection; | 
|---|
| 2165 | } EMRSETARCDIRECTION, *PEMRSETARCDIRECTION; | 
|---|
| 2166 |  | 
|---|
| 2167 | typedef struct { | 
|---|
| 2168 | EMR      emr; | 
|---|
| 2169 | COLORREF crColor; | 
|---|
| 2170 | } EMRSETBKCOLOR,   *PEMRSETBKCOLOR, | 
|---|
| 2171 | EMRSETTEXTCOLOR, *PEMRSETTEXTCOLOR; | 
|---|
| 2172 |  | 
|---|
| 2173 | typedef struct { | 
|---|
| 2174 | EMR   emr; | 
|---|
| 2175 | POINTL ptlOrigin; | 
|---|
| 2176 | } EMRSETBRUSHORGEX,    *PEMRSETBRUSHORGEX, | 
|---|
| 2177 | EMRSETVIEWPORTORGEX, *PEMRSETVIEWPORTORGEX, | 
|---|
| 2178 | EMRSETWINDOWORGEX,   *PEMRSETWINDOWORGEX; | 
|---|
| 2179 |  | 
|---|
| 2180 | typedef struct { | 
|---|
| 2181 | EMR  emr; | 
|---|
| 2182 | COLORADJUSTMENT ColorAdjustment; | 
|---|
| 2183 | } EMRSETCOLORADJUSTMENT, *PEMRSETCOLORADJUSTMENT; | 
|---|
| 2184 |  | 
|---|
| 2185 | typedef struct { | 
|---|
| 2186 | EMR   emr; | 
|---|
| 2187 | RECTL rclBounds; | 
|---|
| 2188 | LONG  xDest; | 
|---|
| 2189 | LONG  yDest; | 
|---|
| 2190 | LONG  xSrc; | 
|---|
| 2191 | LONG  ySrc; | 
|---|
| 2192 | LONG  cxSrc; | 
|---|
| 2193 | LONG  cySrc; | 
|---|
| 2194 | DWORD offBmiSrc; | 
|---|
| 2195 | DWORD cbBmiSrc; | 
|---|
| 2196 | DWORD offBitsSrc; | 
|---|
| 2197 | DWORD cbBitsSrc; | 
|---|
| 2198 | DWORD iUsageSrc; | 
|---|
| 2199 | DWORD iStartScan; | 
|---|
| 2200 | DWORD cScans; | 
|---|
| 2201 | } EMRSETDIBITSTODEIVCE, *PEMRSETDIBITSTODEVICE; | 
|---|
| 2202 |  | 
|---|
| 2203 | typedef struct { | 
|---|
| 2204 | EMR   emr; | 
|---|
| 2205 | DWORD dwFlags; | 
|---|
| 2206 | } EMRSETMAPPERFLAGS, *PEMRSETMAPPERFLAGS; | 
|---|
| 2207 |  | 
|---|
| 2208 | typedef struct { | 
|---|
| 2209 | EMR   emr; | 
|---|
| 2210 | FLOAT eMiterLimit; | 
|---|
| 2211 | } EMRSETMITERLIMIT, *PEMRSETMITERLIMIT; | 
|---|
| 2212 |  | 
|---|
| 2213 | typedef struct { | 
|---|
| 2214 | EMR          emr; | 
|---|
| 2215 | DWORD        ihPal; | 
|---|
| 2216 | DWORD        iStart; | 
|---|
| 2217 | DWORD        cEntries; | 
|---|
| 2218 | PALETTEENTRY aPalEntries[1]; | 
|---|
| 2219 | } EMRSETPALETTEENTRIES, *PEMRSETPALETTEENTRIES; | 
|---|
| 2220 |  | 
|---|
| 2221 | typedef struct { | 
|---|
| 2222 | EMR     emr; | 
|---|
| 2223 | POINTL  ptlPixel; | 
|---|
| 2224 | COLORREF crColor; | 
|---|
| 2225 | } EMRSETPIXELV, *PEMRSETPIXELV; | 
|---|
| 2226 |  | 
|---|
| 2227 | typedef struct { | 
|---|
| 2228 | EMR   emr; | 
|---|
| 2229 | SIZEL szlExtent; | 
|---|
| 2230 | } EMRSETVIEWPORTEXTEX, *PEMRSETVIEWPORTEXTEX, | 
|---|
| 2231 | EMRSETWINDOWEXTEX,   *PEMRSETWINDOWEXTEX; | 
|---|
| 2232 |  | 
|---|
| 2233 | typedef struct { | 
|---|
| 2234 | EMR   emr; | 
|---|
| 2235 | XFORM xform; | 
|---|
| 2236 | } EMRSETWORLDTRANSFORM, *PEMRSETWORLDTRANSFORM; | 
|---|
| 2237 |  | 
|---|
| 2238 | typedef struct { | 
|---|
| 2239 | EMR      emr; | 
|---|
| 2240 | RECTL    rclBounds; | 
|---|
| 2241 | LONG     xDest; | 
|---|
| 2242 | LONG     yDest; | 
|---|
| 2243 | LONG     cxDest; | 
|---|
| 2244 | LONG     cyDest; | 
|---|
| 2245 | DWORD    dwRop; | 
|---|
| 2246 | LONG     xSrc; | 
|---|
| 2247 | LONG     ySrc; | 
|---|
| 2248 | XFORM    xformSrc; | 
|---|
| 2249 | COLORREF crBkColorSrc; | 
|---|
| 2250 | DWORD    iUsageSrc; | 
|---|
| 2251 | DWORD    offBmiSrc; | 
|---|
| 2252 | DWORD    cbBmiSrc; | 
|---|
| 2253 | DWORD    offBitsSrc; | 
|---|
| 2254 | DWORD    cbBitsSrc; | 
|---|
| 2255 | LONG     cxSrc; | 
|---|
| 2256 | LONG     cySrc; | 
|---|
| 2257 | } EMRSTRETCHBLT, *PEMRSTRETCHBLT; | 
|---|
| 2258 |  | 
|---|
| 2259 | typedef struct { | 
|---|
| 2260 | EMR   emr; | 
|---|
| 2261 | RECTL rclBounds; | 
|---|
| 2262 | LONG  xDest; | 
|---|
| 2263 | LONG  yDest; | 
|---|
| 2264 | LONG  xSrc; | 
|---|
| 2265 | LONG  ySrc; | 
|---|
| 2266 | LONG  cxSrc; | 
|---|
| 2267 | LONG  cySrc; | 
|---|
| 2268 | DWORD offBmiSrc; | 
|---|
| 2269 | DWORD cbBmiSrc; | 
|---|
| 2270 | DWORD offBitsSrc; | 
|---|
| 2271 | DWORD cbBitsSrc; | 
|---|
| 2272 | DWORD iUsage; | 
|---|
| 2273 | DWORD dwRop; | 
|---|
| 2274 | LONG  cxDest; | 
|---|
| 2275 | LONG  cyDst; | 
|---|
| 2276 | } EMRSTRETCHDIBITS, *PEMRSTRETCHDIBITS; | 
|---|
| 2277 |  | 
|---|
| 2278 | typedef INT (* CALLBACK ENHMFENUMPROC)(HDC, LPHANDLETABLE, | 
|---|
| 2279 | LPENHMETARECORD, INT, LPVOID); | 
|---|
| 2280 |  | 
|---|
| 2281 | #define EMR_HEADER      1 | 
|---|
| 2282 | #define EMR_POLYBEZIER  2 | 
|---|
| 2283 | #define EMR_POLYGON     3 | 
|---|
| 2284 | #define EMR_POLYLINE    4 | 
|---|
| 2285 | #define EMR_POLYBEZIERTO        5 | 
|---|
| 2286 | #define EMR_POLYLINETO  6 | 
|---|
| 2287 | #define EMR_POLYPOLYLINE        7 | 
|---|
| 2288 | #define EMR_POLYPOLYGON 8 | 
|---|
| 2289 | #define EMR_SETWINDOWEXTEX      9 | 
|---|
| 2290 | #define EMR_SETWINDOWORGEX      10 | 
|---|
| 2291 | #define EMR_SETVIEWPORTEXTEX    11 | 
|---|
| 2292 | #define EMR_SETVIEWPORTORGEX    12 | 
|---|
| 2293 | #define EMR_SETBRUSHORGEX       13 | 
|---|
| 2294 | #define EMR_EOF 14 | 
|---|
| 2295 | #define EMR_SETPIXELV   15 | 
|---|
| 2296 | #define EMR_SETMAPPERFLAGS      16 | 
|---|
| 2297 | #define EMR_SETMAPMODE  17 | 
|---|
| 2298 | #define EMR_SETBKMODE   18 | 
|---|
| 2299 | #define EMR_SETPOLYFILLMODE     19 | 
|---|
| 2300 | #define EMR_SETROP2     20 | 
|---|
| 2301 | #define EMR_SETSTRETCHBLTMODE   21 | 
|---|
| 2302 | #define EMR_SETTEXTALIGN        22 | 
|---|
| 2303 | #define EMR_SETCOLORADJUSTMENT  23 | 
|---|
| 2304 | #define EMR_SETTEXTCOLOR        24 | 
|---|
| 2305 | #define EMR_SETBKCOLOR  25 | 
|---|
| 2306 | #define EMR_OFFSETCLIPRGN       26 | 
|---|
| 2307 | #define EMR_MOVETOEX    27 | 
|---|
| 2308 | #define EMR_SETMETARGN  28 | 
|---|
| 2309 | #define EMR_EXCLUDECLIPRECT     29 | 
|---|
| 2310 | #define EMR_INTERSECTCLIPRECT   30 | 
|---|
| 2311 | #define EMR_SCALEVIEWPORTEXTEX  31 | 
|---|
| 2312 | #define EMR_SCALEWINDOWEXTEX    32 | 
|---|
| 2313 | #define EMR_SAVEDC      33 | 
|---|
| 2314 | #define EMR_RESTOREDC   34 | 
|---|
| 2315 | #define EMR_SETWORLDTRANSFORM   35 | 
|---|
| 2316 | #define EMR_MODIFYWORLDTRANSFORM        36 | 
|---|
| 2317 | #define EMR_SELECTOBJECT        37 | 
|---|
| 2318 | #define EMR_CREATEPEN   38 | 
|---|
| 2319 | #define EMR_CREATEBRUSHINDIRECT 39 | 
|---|
| 2320 | #define EMR_DELETEOBJECT        40 | 
|---|
| 2321 | #define EMR_ANGLEARC    41 | 
|---|
| 2322 | #define EMR_ELLIPSE     42 | 
|---|
| 2323 | #define EMR_RECTANGLE   43 | 
|---|
| 2324 | #define EMR_ROUNDRECT   44 | 
|---|
| 2325 | #define EMR_ARC 45 | 
|---|
| 2326 | #define EMR_CHORD       46 | 
|---|
| 2327 | #define EMR_PIE 47 | 
|---|
| 2328 | #define EMR_SELECTPALETTE       48 | 
|---|
| 2329 | #define EMR_CREATEPALETTE       49 | 
|---|
| 2330 | #define EMR_SETPALETTEENTRIES   50 | 
|---|
| 2331 | #define EMR_RESIZEPALETTE       51 | 
|---|
| 2332 | #define EMR_REALIZEPALETTE      52 | 
|---|
| 2333 | #define EMR_EXTFLOODFILL        53 | 
|---|
| 2334 | #define EMR_LINETO      54 | 
|---|
| 2335 | #define EMR_ARCTO       55 | 
|---|
| 2336 | #define EMR_POLYDRAW    56 | 
|---|
| 2337 | #define EMR_SETARCDIRECTION     57 | 
|---|
| 2338 | #define EMR_SETMITERLIMIT       58 | 
|---|
| 2339 | #define EMR_BEGINPATH   59 | 
|---|
| 2340 | #define EMR_ENDPATH     60 | 
|---|
| 2341 | #define EMR_CLOSEFIGURE 61 | 
|---|
| 2342 | #define EMR_FILLPATH    62 | 
|---|
| 2343 | #define EMR_STROKEANDFILLPATH   63 | 
|---|
| 2344 | #define EMR_STROKEPATH  64 | 
|---|
| 2345 | #define EMR_FLATTENPATH 65 | 
|---|
| 2346 | #define EMR_WIDENPATH   66 | 
|---|
| 2347 | #define EMR_SELECTCLIPPATH      67 | 
|---|
| 2348 | #define EMR_ABORTPATH   68 | 
|---|
| 2349 | #define EMR_GDICOMMENT  70 | 
|---|
| 2350 | #define EMR_FILLRGN     71 | 
|---|
| 2351 | #define EMR_FRAMERGN    72 | 
|---|
| 2352 | #define EMR_INVERTRGN   73 | 
|---|
| 2353 | #define EMR_PAINTRGN    74 | 
|---|
| 2354 | #define EMR_EXTSELECTCLIPRGN    75 | 
|---|
| 2355 | #define EMR_BITBLT      76 | 
|---|
| 2356 | #define EMR_STRETCHBLT  77 | 
|---|
| 2357 | #define EMR_MASKBLT     78 | 
|---|
| 2358 | #define EMR_PLGBLT      79 | 
|---|
| 2359 | #define EMR_SETDIBITSTODEVICE   80 | 
|---|
| 2360 | #define EMR_STRETCHDIBITS       81 | 
|---|
| 2361 | #define EMR_EXTCREATEFONTINDIRECTW      82 | 
|---|
| 2362 | #define EMR_EXTTEXTOUTA 83 | 
|---|
| 2363 | #define EMR_EXTTEXTOUTW 84 | 
|---|
| 2364 | #define EMR_POLYBEZIER16        85 | 
|---|
| 2365 | #define EMR_POLYGON16   86 | 
|---|
| 2366 | #define EMR_POLYLINE16  87 | 
|---|
| 2367 | #define EMR_POLYBEZIERTO16      88 | 
|---|
| 2368 | #define EMR_POLYLINETO16        89 | 
|---|
| 2369 | #define EMR_POLYPOLYLINE16      90 | 
|---|
| 2370 | #define EMR_POLYPOLYGON16       91 | 
|---|
| 2371 | #define EMR_POLYDRAW16  92 | 
|---|
| 2372 | #define EMR_CREATEMONOBRUSH     93 | 
|---|
| 2373 | #define EMR_CREATEDIBPATTERNBRUSHPT     94 | 
|---|
| 2374 | #define EMR_EXTCREATEPEN        95 | 
|---|
| 2375 | #define EMR_POLYTEXTOUTA        96 | 
|---|
| 2376 | #define EMR_POLYTEXTOUTW        97 | 
|---|
| 2377 | #define EMR_SETICMMODE  98 | 
|---|
| 2378 | #define EMR_CREATECOLORSPACE    99 | 
|---|
| 2379 | #define EMR_SETCOLORSPACE       100 | 
|---|
| 2380 | #define EMR_DELETECOLORSPACE    101 | 
|---|
| 2381 | #define EMR_GLSRECORD   102 | 
|---|
| 2382 | #define EMR_GLSBOUNDEDRECORD    103 | 
|---|
| 2383 | #define EMR_PIXELFORMAT 104 | 
|---|
| 2384 |  | 
|---|
| 2385 | #define ENHMETA_SIGNATURE       1179469088 | 
|---|
| 2386 |  | 
|---|
| 2387 | #define CCHDEVICENAME 32 | 
|---|
| 2388 | #define CCHFORMNAME   32 | 
|---|
| 2389 |  | 
|---|
| 2390 | typedef struct | 
|---|
| 2391 | { | 
|---|
| 2392 | BYTE   dmDeviceName[CCHDEVICENAME]; | 
|---|
| 2393 | WORD   dmSpecVersion; | 
|---|
| 2394 | WORD   dmDriverVersion; | 
|---|
| 2395 | WORD   dmSize; | 
|---|
| 2396 | WORD   dmDriverExtra; | 
|---|
| 2397 | DWORD  dmFields; | 
|---|
| 2398 | INT16  dmOrientation; | 
|---|
| 2399 | INT16  dmPaperSize; | 
|---|
| 2400 | INT16  dmPaperLength; | 
|---|
| 2401 | INT16  dmPaperWidth; | 
|---|
| 2402 | INT16  dmScale; | 
|---|
| 2403 | INT16  dmCopies; | 
|---|
| 2404 | INT16  dmDefaultSource; | 
|---|
| 2405 | INT16  dmPrintQuality; | 
|---|
| 2406 | INT16  dmColor; | 
|---|
| 2407 | INT16  dmDuplex; | 
|---|
| 2408 | INT16  dmYResolution; | 
|---|
| 2409 | INT16  dmTTOption; | 
|---|
| 2410 | INT16  dmCollate; | 
|---|
| 2411 | BYTE   dmFormName[CCHFORMNAME]; | 
|---|
| 2412 | WORD   dmLogPixels; | 
|---|
| 2413 | DWORD  dmBitsPerPel; | 
|---|
| 2414 | DWORD  dmPelsWidth; | 
|---|
| 2415 | DWORD  dmPelsHeight; | 
|---|
| 2416 | DWORD  dmDisplayFlags; | 
|---|
| 2417 | DWORD  dmDisplayFrequency; | 
|---|
| 2418 | DWORD  dmICMMethod; | 
|---|
| 2419 | DWORD  dmICMIntent; | 
|---|
| 2420 | DWORD  dmMediaType; | 
|---|
| 2421 | DWORD  dmDitherType; | 
|---|
| 2422 | DWORD  dmReserved1; | 
|---|
| 2423 | DWORD  dmReserved2; | 
|---|
| 2424 | } DEVMODEA, *PDEVMODEA, *LPDEVMODEA; | 
|---|
| 2425 |  | 
|---|
| 2426 | typedef struct | 
|---|
| 2427 | { | 
|---|
| 2428 | WCHAR  dmDeviceName[CCHDEVICENAME]; | 
|---|
| 2429 | WORD   dmSpecVersion; | 
|---|
| 2430 | WORD   dmDriverVersion; | 
|---|
| 2431 | WORD   dmSize; | 
|---|
| 2432 | WORD   dmDriverExtra; | 
|---|
| 2433 | DWORD  dmFields; | 
|---|
| 2434 | INT16  dmOrientation; | 
|---|
| 2435 | INT16  dmPaperSize; | 
|---|
| 2436 | INT16  dmPaperLength; | 
|---|
| 2437 | INT16  dmPaperWidth; | 
|---|
| 2438 | INT16  dmScale; | 
|---|
| 2439 | INT16  dmCopies; | 
|---|
| 2440 | INT16  dmDefaultSource; | 
|---|
| 2441 | INT16  dmPrintQuality; | 
|---|
| 2442 | INT16  dmColor; | 
|---|
| 2443 | INT16  dmDuplex; | 
|---|
| 2444 | INT16  dmYResolution; | 
|---|
| 2445 | INT16  dmTTOption; | 
|---|
| 2446 | INT16  dmCollate; | 
|---|
| 2447 | WCHAR  dmFormName[CCHFORMNAME]; | 
|---|
| 2448 | WORD   dmLogPixels; | 
|---|
| 2449 | DWORD  dmBitsPerPel; | 
|---|
| 2450 | DWORD  dmPelsWidth; | 
|---|
| 2451 | DWORD  dmPelsHeight; | 
|---|
| 2452 | DWORD  dmDisplayFlags; | 
|---|
| 2453 | DWORD  dmDisplayFrequency; | 
|---|
| 2454 | DWORD  dmICMMethod; | 
|---|
| 2455 | DWORD  dmICMIntent; | 
|---|
| 2456 | DWORD  dmMediaType; | 
|---|
| 2457 | DWORD  dmDitherType; | 
|---|
| 2458 | DWORD  dmReserved1; | 
|---|
| 2459 | DWORD  dmReserved2; | 
|---|
| 2460 | } DEVMODEW, *PDEVMODEW, *LPDEVMODEW; | 
|---|
| 2461 |  | 
|---|
| 2462 | DECL_WINELIB_TYPE_AW(DEVMODE) | 
|---|
| 2463 | DECL_WINELIB_TYPE_AW(PDEVMODE) | 
|---|
| 2464 | DECL_WINELIB_TYPE_AW(LPDEVMODE) | 
|---|
| 2465 |  | 
|---|
| 2466 | #define DM_UPDATE       1 | 
|---|
| 2467 | #define DM_COPY         2 | 
|---|
| 2468 | #define DM_PROMPT       4 | 
|---|
| 2469 | #define DM_MODIFY       8 | 
|---|
| 2470 |  | 
|---|
| 2471 | #define DM_IN_BUFFER      DM_MODIFY | 
|---|
| 2472 | #define DM_IN_PROMPT      DM_PROMPT | 
|---|
| 2473 | #define DM_OUT_BUFFER     DM_COPY | 
|---|
| 2474 | #define DM_OUT_DEFAULT    DM_UPDATE | 
|---|
| 2475 |  | 
|---|
| 2476 | #define DM_ORIENTATION          0x00000001L | 
|---|
| 2477 | #define DM_PAPERSIZE            0x00000002L | 
|---|
| 2478 | #define DM_PAPERLENGTH          0x00000004L | 
|---|
| 2479 | #define DM_PAPERWIDTH           0x00000008L | 
|---|
| 2480 | #define DM_SCALE                0x00000010L | 
|---|
| 2481 | #define DM_COPIES               0x00000100L | 
|---|
| 2482 | #define DM_DEFAULTSOURCE        0x00000200L | 
|---|
| 2483 | #define DM_PRINTQUALITY         0x00000400L | 
|---|
| 2484 | #define DM_COLOR                0x00000800L | 
|---|
| 2485 | #define DM_DUPLEX               0x00001000L | 
|---|
| 2486 | #define DM_YRESOLUTION          0x00002000L | 
|---|
| 2487 | #define DM_TTOPTION             0x00004000L | 
|---|
| 2488 | #define DM_COLLATE              0x00008000L | 
|---|
| 2489 | #define DM_BITSPERPEL           0x00040000L | 
|---|
| 2490 | #define DM_PELSWIDTH            0x00080000L | 
|---|
| 2491 | #define DM_PELSHEIGHT           0x00100000L | 
|---|
| 2492 | #define DM_DISPLAYFLAGS         0x00200000L | 
|---|
| 2493 | #define DM_DISPLAYFREQUENCY     0x00400000L | 
|---|
| 2494 | #define DM_ICMMETHOD            0x00800000L | 
|---|
| 2495 | #define DM_ICMINTENT            0x01000000L | 
|---|
| 2496 | #define DM_MEDIATYPE            0x02000000L | 
|---|
| 2497 | #define DM_DITHERTYPE           0x04000000L | 
|---|
| 2498 | #define DM_PANNINGWIDTH         0x08000000L | 
|---|
| 2499 | #define DM_PANNINGHEIGHT        0x10000000L | 
|---|
| 2500 |  | 
|---|
| 2501 | /* etc.... */ | 
|---|
| 2502 |  | 
|---|
| 2503 | #define DMORIENT_PORTRAIT       1 | 
|---|
| 2504 | #define DMORIENT_LANDSCAPE      2 | 
|---|
| 2505 |  | 
|---|
| 2506 | #define DMPAPER_LETTER          1 | 
|---|
| 2507 | #define DMPAPER_LETTERSMALL        2 | 
|---|
| 2508 | #define DMPAPER_TABLOID            3 | 
|---|
| 2509 | #define DMPAPER_LEDGER             4 | 
|---|
| 2510 | #define DMPAPER_LEGAL           5 | 
|---|
| 2511 | #define DMPAPER_STATEMENT          6 | 
|---|
| 2512 | #define DMPAPER_EXECUTIVE       7 | 
|---|
| 2513 | #define DMPAPER_A3              8 | 
|---|
| 2514 | #define DMPAPER_A4              9 | 
|---|
| 2515 | #define DMPAPER_A4SMALL            10 | 
|---|
| 2516 | #define DMPAPER_A5              11 | 
|---|
| 2517 | #define DMPAPER_B4                 12 | 
|---|
| 2518 | #define DMPAPER_B5                 13 | 
|---|
| 2519 | #define DMPAPER_FOLIO              14 | 
|---|
| 2520 | #define DMPAPER_QUARTO             15 | 
|---|
| 2521 | #define DMPAPER_10X14              16 | 
|---|
| 2522 | #define DMPAPER_11X17              17 | 
|---|
| 2523 | #define DMPAPER_NOTE               18 | 
|---|
| 2524 | #define DMPAPER_ENV_9              19 | 
|---|
| 2525 | #define DMPAPER_ENV_10          20 | 
|---|
| 2526 | #define DMPAPER_ENV_11             21 | 
|---|
| 2527 | #define DMPAPER_ENV_12             22 | 
|---|
| 2528 | #define DMPAPER_ENV_14             23 | 
|---|
| 2529 | #define DMPAPER_CSHEET             24 | 
|---|
| 2530 | #define DMPAPER_DSHEET             25 | 
|---|
| 2531 | #define DMPAPER_ESHEET             26 | 
|---|
| 2532 | #define DMPAPER_ENV_DL          27 | 
|---|
| 2533 | #define DMPAPER_ENV_C5          28 | 
|---|
| 2534 | #define DMPAPER_ENV_C3             29 | 
|---|
| 2535 | #define DMPAPER_ENV_C4             30 | 
|---|
| 2536 | #define DMPAPER_ENV_C6             31 | 
|---|
| 2537 | #define DMPAPER_ENV_C65            32 | 
|---|
| 2538 | #define DMPAPER_ENV_B4             33 | 
|---|
| 2539 | #define DMPAPER_ENV_B5          34 | 
|---|
| 2540 | #define DMPAPER_ENV_B6             35 | 
|---|
| 2541 | #define DMPAPER_ENV_ITALY          36 | 
|---|
| 2542 | #define DMPAPER_ENV_MONARCH     37 | 
|---|
| 2543 | #define DMPAPER_ENV_PERSONAL       38 | 
|---|
| 2544 | #define DMPAPER_FANFOLD_US         39 | 
|---|
| 2545 | #define DMPAPER_FANFOLD_STD_GERMAN 40 | 
|---|
| 2546 | #define DMPAPER_FANFOLD_LGL_GERMAN 41 | 
|---|
| 2547 | #define DMPAPER_ISO_B4              42 | 
|---|
| 2548 | #define DMPAPER_JAPANESE_POSTCARD   43 | 
|---|
| 2549 | #define DMPAPER_9X11                44 | 
|---|
| 2550 | #define DMPAPER_10X11               45 | 
|---|
| 2551 | #define DMPAPER_15X11               46 | 
|---|
| 2552 | #define DMPAPER_ENV_INVITE          47 | 
|---|
| 2553 | #define DMPAPER_RESERVED_48         48 | 
|---|
| 2554 | #define DMPAPER_RESERVED_49         49 | 
|---|
| 2555 | #define DMPAPER_LETTER_EXTRA        50 | 
|---|
| 2556 | #define DMPAPER_LEGAL_EXTRA         51 | 
|---|
| 2557 | #define DMPAPER_TABLOID_EXTRA       52 | 
|---|
| 2558 | #define DMPAPER_A4_EXTRA            53 | 
|---|
| 2559 | #define DMPAPER_LETTER_TRANSVERSE   54 | 
|---|
| 2560 | #define DMPAPER_A4_TRANSVERSE       55 | 
|---|
| 2561 | #define DMPAPER_LETTER_EXTRA_TRANSVERSE 56 | 
|---|
| 2562 | #define DMPAPER_A_PLUS              57 | 
|---|
| 2563 | #define DMPAPER_B_PLUS              58 | 
|---|
| 2564 | #define DMPAPER_LETTER_PLUS         59 | 
|---|
| 2565 | #define DMPAPER_A4_PLUS             60 | 
|---|
| 2566 | #define DMPAPER_A5_TRANSVERSE       61 | 
|---|
| 2567 | #define DMPAPER_B5_TRANSVERSE       62 | 
|---|
| 2568 | #define DMPAPER_A3_EXTRA            63 | 
|---|
| 2569 | #define DMPAPER_A5_EXTRA            64 | 
|---|
| 2570 | #define DMPAPER_B5_EXTRA            65 | 
|---|
| 2571 | #define DMPAPER_A2                  66 | 
|---|
| 2572 | #define DMPAPER_A3_TRANSVERSE       67 | 
|---|
| 2573 | #define DMPAPER_A3_EXTRA_TRANSVERSE 68 | 
|---|
| 2574 |  | 
|---|
| 2575 | #define DMBIN_UPPER             1 | 
|---|
| 2576 | #define DMBIN_LOWER             2 | 
|---|
| 2577 | #define DMBIN_MIDDLE            3 | 
|---|
| 2578 | #define DMBIN_MANUAL            4 | 
|---|
| 2579 | #define DMBIN_ENVELOPE          5 | 
|---|
| 2580 | #define DMBIN_ENVMANUAL         6 | 
|---|
| 2581 | #define DMBIN_AUTO              7 | 
|---|
| 2582 | #define DMBIN_LARGECAPACITY     11 | 
|---|
| 2583 |  | 
|---|
| 2584 | #define DMCOLOR_MONOCHROME      1 | 
|---|
| 2585 | #define DMCOLOR_COLOR           2 | 
|---|
| 2586 |  | 
|---|
| 2587 | #define DMTT_BITMAP             1 | 
|---|
| 2588 | #define DMTT_DOWNLOAD           2 | 
|---|
| 2589 | #define DMTT_SUBDEV             3 | 
|---|
| 2590 |  | 
|---|
| 2591 | typedef struct | 
|---|
| 2592 | { | 
|---|
| 2593 | INT    cbSize; | 
|---|
| 2594 | LPCSTR   lpszDocName; | 
|---|
| 2595 | LPCSTR   lpszOutput; | 
|---|
| 2596 | LPCSTR   lpszDatatype; | 
|---|
| 2597 | DWORD    fwType; | 
|---|
| 2598 | } DOCINFOA, *LPDOCINFOA; | 
|---|
| 2599 |  | 
|---|
| 2600 | typedef struct | 
|---|
| 2601 | { | 
|---|
| 2602 | INT    cbSize; | 
|---|
| 2603 | LPCWSTR  lpszDocName; | 
|---|
| 2604 | LPCWSTR  lpszOutput; | 
|---|
| 2605 | LPCWSTR  lpszDatatype; | 
|---|
| 2606 | DWORD    fwType; | 
|---|
| 2607 | } DOCINFOW, *LPDOCINFOW; | 
|---|
| 2608 |  | 
|---|
| 2609 | DECL_WINELIB_TYPE_AW(DOCINFO) | 
|---|
| 2610 | DECL_WINELIB_TYPE_AW(LPDOCINFO) | 
|---|
| 2611 |  | 
|---|
| 2612 | /* Flags for PolyDraw and GetPath */ | 
|---|
| 2613 | #define PT_CLOSEFIGURE          0x0001 | 
|---|
| 2614 | #define PT_LINETO               0x0002 | 
|---|
| 2615 | #define PT_BEZIERTO             0x0004 | 
|---|
| 2616 | #define PT_MOVETO               0x0006 | 
|---|
| 2617 |  | 
|---|
| 2618 | #define RDH_RECTANGLES  1 | 
|---|
| 2619 |  | 
|---|
| 2620 | typedef struct _RGNDATAHEADER { | 
|---|
| 2621 | DWORD       dwSize; | 
|---|
| 2622 | DWORD       iType; | 
|---|
| 2623 | DWORD       nCount; | 
|---|
| 2624 | DWORD       nRgnSize; | 
|---|
| 2625 | RECT        rcBound; | 
|---|
| 2626 | } RGNDATAHEADER,*LPRGNDATAHEADER; | 
|---|
| 2627 |  | 
|---|
| 2628 | typedef struct _RGNDATA { | 
|---|
| 2629 | RGNDATAHEADER       rdh; | 
|---|
| 2630 | char                Buffer[1]; | 
|---|
| 2631 | } RGNDATA,*PRGNDATA,*LPRGNDATA; | 
|---|
| 2632 |  | 
|---|
| 2633 | typedef BOOL (* CALLBACK ABORTPROC)(HDC, INT); | 
|---|
| 2634 |  | 
|---|
| 2635 | typedef struct { | 
|---|
| 2636 | DWORD       cb; | 
|---|
| 2637 | BYTE        DeviceName[32]; | 
|---|
| 2638 | BYTE        DeviceString[128]; | 
|---|
| 2639 | DWORD       StateFlags; | 
|---|
| 2640 | } DISPLAY_DEVICEA,*PDISPLAY_DEVICEA,*LPDISPLAY_DEVICEA; | 
|---|
| 2641 |  | 
|---|
| 2642 | typedef struct { | 
|---|
| 2643 | DWORD       cb; | 
|---|
| 2644 | WCHAR       DeviceName[32]; | 
|---|
| 2645 | WCHAR       DeviceString[128]; | 
|---|
| 2646 | DWORD       StateFlags; | 
|---|
| 2647 | } DISPLAY_DEVICEW,*PDISPLAY_DEVICEW,*LPDISPLAY_DEVICEW; | 
|---|
| 2648 | DECL_WINELIB_TYPE_AW(DISPLAY_DEVICE) | 
|---|
| 2649 | DECL_WINELIB_TYPE_AW(PDISPLAY_DEVICE) | 
|---|
| 2650 | DECL_WINELIB_TYPE_AW(LPDISPLAY_DEVICE) | 
|---|
| 2651 |  | 
|---|
| 2652 | /* DISPLAY_DEVICE.StateFlags (?)*/ | 
|---|
| 2653 | #define DISPLAY_DEVICE_ATTACHED_TO_DESKTOP      0x00000001 | 
|---|
| 2654 | #define DISPLAY_DEVICE_MULTI_DRIVER             0x00000002 | 
|---|
| 2655 | #define DISPLAY_DEVICE_PRIMARY_DEVICE           0x00000004 | 
|---|
| 2656 | #define DISPLAY_DEVICE_MIRRORING_DRIVER         0x00000008 | 
|---|
| 2657 | #define DISPLAY_DEVICE_VGA_COMPATIBLE           0x00000010 | 
|---|
| 2658 |  | 
|---|
| 2659 | typedef struct _POINTFLOAT { | 
|---|
| 2660 | FLOAT   x; | 
|---|
| 2661 | FLOAT   y; | 
|---|
| 2662 | } POINTFLOAT, *PPOINTFLOAT; | 
|---|
| 2663 |  | 
|---|
| 2664 | typedef struct _GLYPHMETRICSFLOAT { | 
|---|
| 2665 | FLOAT       gmfBlackBoxX; | 
|---|
| 2666 | FLOAT       gmfBlackBoxY; | 
|---|
| 2667 | POINTFLOAT  gmfptGlyphOrigin; | 
|---|
| 2668 | FLOAT       gmfCellIncX; | 
|---|
| 2669 | FLOAT       gmfCellIncY; | 
|---|
| 2670 | } GLYPHMETRICSFLOAT, *PGLYPHMETRICSFLOAT, *LPGLYPHMETRICSFLOAT; | 
|---|
| 2671 |  | 
|---|
| 2672 | #define WGL_FONT_LINES      0 | 
|---|
| 2673 | #define WGL_FONT_POLYGONS   1 | 
|---|
| 2674 |  | 
|---|
| 2675 | // Layer plane descriptor | 
|---|
| 2676 | typedef struct tagLAYERPLANEDESCRIPTOR { | 
|---|
| 2677 | WORD  nSize; | 
|---|
| 2678 | WORD  nVersion; | 
|---|
| 2679 | DWORD dwFlags; | 
|---|
| 2680 | BYTE  iPixelType; | 
|---|
| 2681 | BYTE  cColorBits; | 
|---|
| 2682 | BYTE  cRedBits; | 
|---|
| 2683 | BYTE  cRedShift; | 
|---|
| 2684 | BYTE  cGreenBits; | 
|---|
| 2685 | BYTE  cGreenShift; | 
|---|
| 2686 | BYTE  cBlueBits; | 
|---|
| 2687 | BYTE  cBlueShift; | 
|---|
| 2688 | BYTE  cAlphaBits; | 
|---|
| 2689 | BYTE  cAlphaShift; | 
|---|
| 2690 | BYTE  cAccumBits; | 
|---|
| 2691 | BYTE  cAccumRedBits; | 
|---|
| 2692 | BYTE  cAccumGreenBits; | 
|---|
| 2693 | BYTE  cAccumBlueBits; | 
|---|
| 2694 | BYTE  cAccumAlphaBits; | 
|---|
| 2695 | BYTE  cDepthBits; | 
|---|
| 2696 | BYTE  cStencilBits; | 
|---|
| 2697 | BYTE  cAuxBuffers; | 
|---|
| 2698 | BYTE  iLayerPlane; | 
|---|
| 2699 | BYTE  bReserved; | 
|---|
| 2700 | COLORREF crTransparent; | 
|---|
| 2701 | } LAYERPLANEDESCRIPTOR, *PLAYERPLANEDESCRIPTOR, *LPLAYERPLANEDESCRIPTOR; | 
|---|
| 2702 |  | 
|---|
| 2703 | // LAYERPLANEDESCRIPTOR flags | 
|---|
| 2704 | #define LPD_DOUBLEBUFFER        0x00000001 | 
|---|
| 2705 | #define LPD_STEREO              0x00000002 | 
|---|
| 2706 | #define LPD_SUPPORT_GDI         0x00000010 | 
|---|
| 2707 | #define LPD_SUPPORT_OPENGL      0x00000020 | 
|---|
| 2708 | #define LPD_SHARE_DEPTH         0x00000040 | 
|---|
| 2709 | #define LPD_SHARE_STENCIL       0x00000080 | 
|---|
| 2710 | #define LPD_SHARE_ACCUM         0x00000100 | 
|---|
| 2711 | #define LPD_SWAP_EXCHANGE       0x00000200 | 
|---|
| 2712 | #define LPD_SWAP_COPY           0x00000400 | 
|---|
| 2713 | #define LPD_TRANSPARENT         0x00001000 | 
|---|
| 2714 |  | 
|---|
| 2715 | #define LPD_TYPE_RGBA        0 | 
|---|
| 2716 | #define LPD_TYPE_COLORINDEX  1 | 
|---|
| 2717 |  | 
|---|
| 2718 | // wglSwapLayerBuffers flags | 
|---|
| 2719 | #define WGL_SWAP_MAIN_PLANE     0x00000001 | 
|---|
| 2720 | #define WGL_SWAP_OVERLAY1       0x00000002 | 
|---|
| 2721 | #define WGL_SWAP_OVERLAY2       0x00000004 | 
|---|
| 2722 | #define WGL_SWAP_OVERLAY3       0x00000008 | 
|---|
| 2723 | #define WGL_SWAP_OVERLAY4       0x00000010 | 
|---|
| 2724 | #define WGL_SWAP_OVERLAY5       0x00000020 | 
|---|
| 2725 | #define WGL_SWAP_OVERLAY6       0x00000040 | 
|---|
| 2726 | #define WGL_SWAP_OVERLAY7       0x00000080 | 
|---|
| 2727 | #define WGL_SWAP_OVERLAY8       0x00000100 | 
|---|
| 2728 | #define WGL_SWAP_OVERLAY9       0x00000200 | 
|---|
| 2729 | #define WGL_SWAP_OVERLAY10      0x00000400 | 
|---|
| 2730 | #define WGL_SWAP_OVERLAY11      0x00000800 | 
|---|
| 2731 | #define WGL_SWAP_OVERLAY12      0x00001000 | 
|---|
| 2732 | #define WGL_SWAP_OVERLAY13      0x00002000 | 
|---|
| 2733 | #define WGL_SWAP_OVERLAY14      0x00004000 | 
|---|
| 2734 | #define WGL_SWAP_OVERLAY15      0x00008000 | 
|---|
| 2735 | #define WGL_SWAP_UNDERLAY1      0x00010000 | 
|---|
| 2736 | #define WGL_SWAP_UNDERLAY2      0x00020000 | 
|---|
| 2737 | #define WGL_SWAP_UNDERLAY3      0x00040000 | 
|---|
| 2738 | #define WGL_SWAP_UNDERLAY4      0x00080000 | 
|---|
| 2739 | #define WGL_SWAP_UNDERLAY5      0x00100000 | 
|---|
| 2740 | #define WGL_SWAP_UNDERLAY6      0x00200000 | 
|---|
| 2741 | #define WGL_SWAP_UNDERLAY7      0x00400000 | 
|---|
| 2742 | #define WGL_SWAP_UNDERLAY8      0x00800000 | 
|---|
| 2743 | #define WGL_SWAP_UNDERLAY9      0x01000000 | 
|---|
| 2744 | #define WGL_SWAP_UNDERLAY10     0x02000000 | 
|---|
| 2745 | #define WGL_SWAP_UNDERLAY11     0x04000000 | 
|---|
| 2746 | #define WGL_SWAP_UNDERLAY12     0x08000000 | 
|---|
| 2747 | #define WGL_SWAP_UNDERLAY13     0x10000000 | 
|---|
| 2748 | #define WGL_SWAP_UNDERLAY14     0x20000000 | 
|---|
| 2749 | #define WGL_SWAP_UNDERLAY15     0x40000000 | 
|---|
| 2750 |  | 
|---|
| 2751 | #include "poppack.h" | 
|---|
| 2752 |  | 
|---|
| 2753 |  | 
|---|
| 2754 | /* Declarations for functions that exist only in Win32 */ | 
|---|
| 2755 |  | 
|---|
| 2756 | BOOL      WINAPI AngleArc(HDC, INT, INT, DWORD, FLOAT, FLOAT); | 
|---|
| 2757 | BOOL      WINAPI ArcTo(HDC, INT, INT, INT, INT, INT, INT, INT, INT); | 
|---|
| 2758 | HENHMETAFILE WINAPI CloseEnhMetaFile(HDC); | 
|---|
| 2759 | HBRUSH    WINAPI CreateDIBPatternBrushPt(const void*,UINT); | 
|---|
| 2760 | HDC       WINAPI CreateEnhMetaFileA(HDC,LPCSTR,const RECT*,LPCSTR); | 
|---|
| 2761 | HDC       WINAPI CreateEnhMetaFileW(HDC,LPCWSTR,const RECT*,LPCWSTR); | 
|---|
| 2762 | #define CreateEnhMetaFile WINELIB_NAME_AW(CreateEnhMetaFile) | 
|---|
| 2763 | INT       WINAPI DrawEscape(HDC,INT,INT,LPCSTR); | 
|---|
| 2764 | BOOL      WINAPI GdiComment(HDC,UINT,const BYTE *); | 
|---|
| 2765 | BOOL      WINAPI GetCharABCWidthsFloatA(HDC,UINT,UINT,LPABCFLOAT); | 
|---|
| 2766 | BOOL      WINAPI GetCharABCWidthsFloatW(HDC,UINT,UINT,LPABCFLOAT); | 
|---|
| 2767 | #define GetCharABCWidthsFloat WINELIB_NAME_AW(GetCharABCWidthsFloat) | 
|---|
| 2768 | BOOL      WINAPI GetCharWidthFloatA(HDC,UINT,UINT,PFLOAT); | 
|---|
| 2769 | BOOL      WINAPI GetCharWidthFloatW(HDC,UINT,UINT,PFLOAT); | 
|---|
| 2770 | #define GetCharWidthFloat WINELIB_NAME_AW(GetCharWidthFloat) | 
|---|
| 2771 | BOOL      WINAPI GetColorAdjustment(HDC, LPCOLORADJUSTMENT); | 
|---|
| 2772 | DWORD       WINAPI GetDCHook(HDC16,FARPROC16*); | 
|---|
| 2773 | BOOL      WINAPI GetMiterLimit(HDC, PFLOAT); | 
|---|
| 2774 | BOOL      WINAPI MaskBlt(HDC,INT,INT,INT,INT,HDC,INT,INT,HBITMAP,INT,INT,DWORD); | 
|---|
| 2775 | BOOL      WINAPI PlgBlt(HDC,const POINT*,HDC,INT,INT,INT,INT,HBITMAP,INT,INT); | 
|---|
| 2776 | BOOL      WINAPI PolyDraw(HDC,const POINT*,const BYTE*,DWORD); | 
|---|
| 2777 | BOOL      WINAPI SetColorAdjustment(HDC,const COLORADJUSTMENT*); | 
|---|
| 2778 | BOOL      WINAPI SetMiterLimit(HDC, FLOAT, PFLOAT); | 
|---|
| 2779 | BOOL      WINAPI CombineTransform(LPXFORM,const XFORM *,const XFORM *); | 
|---|
| 2780 | HENHMETAFILE WINAPI CopyEnhMetaFileA(HENHMETAFILE,LPCSTR); | 
|---|
| 2781 | HENHMETAFILE WINAPI CopyEnhMetaFileW(HENHMETAFILE,LPCWSTR); | 
|---|
| 2782 | HPALETTE  WINAPI CreateHalftonePalette(HDC); | 
|---|
| 2783 | BOOL      WINAPI DeleteEnhMetaFile(HENHMETAFILE); | 
|---|
| 2784 | INT       WINAPI ExtSelectClipRgn(HDC,HRGN,INT); | 
|---|
| 2785 | HRGN      WINAPI ExtCreateRegion(const XFORM*,DWORD,const RGNDATA*); | 
|---|
| 2786 | INT       WINAPI ExtEscape(HDC,INT,INT,LPCSTR,INT,LPSTR); | 
|---|
| 2787 | BOOL      WINAPI FixBrushOrgEx(HDC,INT,INT,LPPOINT); | 
|---|
| 2788 | HANDLE    WINAPI GetCurrentObject(HDC,UINT); | 
|---|
| 2789 | BOOL      WINAPI GetDCOrgEx(HDC,LPPOINT); | 
|---|
| 2790 | HENHMETAFILE WINAPI GetEnhMetaFileA(LPCSTR); | 
|---|
| 2791 | HENHMETAFILE WINAPI GetEnhMetaFileW(LPCWSTR); | 
|---|
| 2792 | #define     GetEnhMetaFile WINELIB_NAME_AW(GetEnhMetaFile) | 
|---|
| 2793 | UINT      WINAPI GetEnhMetaFileBits(HENHMETAFILE,UINT,LPBYTE); | 
|---|
| 2794 | UINT      WINAPI GetEnhMetaFileHeader(HENHMETAFILE,UINT,LPENHMETAHEADER); | 
|---|
| 2795 | UINT      WINAPI GetEnhMetaFilePaletteEntries(HENHMETAFILE,UINT,LPPALETTEENTRY); | 
|---|
| 2796 | INT       WINAPI GetGraphicsMode(HDC); | 
|---|
| 2797 | UINT      WINAPI GetMetaFileBitsEx(HMETAFILE,UINT,LPVOID); | 
|---|
| 2798 | DWORD       WINAPI GetObjectType(HANDLE); | 
|---|
| 2799 | UINT      WINAPI GetTextCharsetInfo(HDC,LPFONTSIGNATURE,DWORD); | 
|---|
| 2800 | BOOL      WINAPI GetTextExtentExPointA(HDC,LPCSTR,INT,INT, | 
|---|
| 2801 | LPINT,LPINT,LPSIZE); | 
|---|
| 2802 | BOOL      WINAPI GetTextExtentExPointW(HDC,LPCWSTR,INT,INT, | 
|---|
| 2803 | LPINT,LPINT,LPSIZE); | 
|---|
| 2804 | #define     GetTextExtentExPoint WINELIB_NAME_AW(GetTextExtentExPoint) | 
|---|
| 2805 | BOOL      WINAPI GetWorldTransform(HDC,LPXFORM); | 
|---|
| 2806 | BOOL      WINAPI ModifyWorldTransform(HDC,const XFORM *, DWORD); | 
|---|
| 2807 | BOOL      WINAPI PlayEnhMetaFile(HDC,HENHMETAFILE,const RECT*); | 
|---|
| 2808 | BOOL      WINAPI PlayEnhMetaFileRecord(HDC,LPHANDLETABLE,const ENHMETARECORD*,UINT); | 
|---|
| 2809 | BOOL      WINAPI PolyPolyline(HDC,const POINT*,const DWORD*,DWORD); | 
|---|
| 2810 | BOOL      WINAPI SetBrushOrgEx(HDC,INT,INT,LPPOINT); | 
|---|
| 2811 | HENHMETAFILE WINAPI SetEnhMetaFileBits(UINT,const BYTE *); | 
|---|
| 2812 | INT       WINAPI SetGraphicsMode(HDC,INT); | 
|---|
| 2813 | HMETAFILE WINAPI SetMetaFileBitsEx(UINT,const BYTE*); | 
|---|
| 2814 | BOOL      WINAPI SetWorldTransform(HDC,const XFORM*); | 
|---|
| 2815 | BOOL      WINAPI TranslateCharsetInfo(LPDWORD,LPCHARSETINFO,DWORD); | 
|---|
| 2816 |  | 
|---|
| 2817 | /* Declarations for functions that change between Win16 and Win32 */ | 
|---|
| 2818 |  | 
|---|
| 2819 | INT       WINAPI AbortDoc(HDC); | 
|---|
| 2820 | BOOL      WINAPI AbortPath(HDC); | 
|---|
| 2821 | INT       WINAPI AddFontResourceA(LPCSTR); | 
|---|
| 2822 | INT       WINAPI AddFontResourceW(LPCWSTR); | 
|---|
| 2823 | #define  AddFontResource WINELIB_NAME_AW(AddFontResource) | 
|---|
| 2824 | BOOL      WINAPI AnimatePalette(HPALETTE,UINT,UINT,const PALETTEENTRY*); | 
|---|
| 2825 | BOOL      WINAPI Arc(HDC,INT,INT,INT,INT,INT,INT,INT,INT); | 
|---|
| 2826 | BOOL      WINAPI BeginPath(HDC); | 
|---|
| 2827 | BOOL      WINAPI BitBlt(HDC,INT,INT,INT,INT,HDC,INT,INT,DWORD); | 
|---|
| 2828 | INT       WINAPI ChoosePixelFormat(HDC,const PIXELFORMATDESCRIPTOR*); | 
|---|
| 2829 | BOOL      WINAPI Chord(HDC,INT,INT,INT,INT,INT,INT,INT,INT); | 
|---|
| 2830 | BOOL      WINAPI CloseFigure(HDC); | 
|---|
| 2831 | HMETAFILE WINAPI CloseMetaFile(HDC); | 
|---|
| 2832 | INT       WINAPI CombineRgn(HRGN,HRGN,HRGN,INT); | 
|---|
| 2833 | HMETAFILE WINAPI CopyMetaFileA(HMETAFILE,LPCSTR); | 
|---|
| 2834 | HMETAFILE WINAPI CopyMetaFileW(HMETAFILE,LPCWSTR); | 
|---|
| 2835 | HBITMAP   WINAPI CreateBitmap(INT,INT,UINT,UINT,LPCVOID); | 
|---|
| 2836 | HBITMAP   WINAPI CreateBitmapIndirect(const BITMAP*); | 
|---|
| 2837 | HBRUSH    WINAPI CreateBrushIndirect(const LOGBRUSH*); | 
|---|
| 2838 | HBITMAP   WINAPI CreateCompatibleBitmap(HDC,INT,INT); | 
|---|
| 2839 | HDC       WINAPI CreateCompatibleDC(HDC); | 
|---|
| 2840 | HDC       WINAPI CreateDCA(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*); | 
|---|
| 2841 | HDC       WINAPI CreateDCW(LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*); | 
|---|
| 2842 | #define   CreateDC WINELIB_NAME_AW(CreateDC) | 
|---|
| 2843 | HBITMAP   WINAPI CreateDIBitmap(HDC,const BITMAPINFOHEADER*,DWORD,LPCVOID,const BITMAPINFO*,UINT); | 
|---|
| 2844 | HBRUSH    WINAPI CreateDIBPatternBrush(HGLOBAL,UINT); | 
|---|
| 2845 | HBITMAP   WINAPI CreateDIBSection (HDC, BITMAPINFO *, UINT,LPVOID *, HANDLE, DWORD offset); | 
|---|
| 2846 | HBITMAP   WINAPI CreateDiscardableBitmap(HDC,INT,INT); | 
|---|
| 2847 | HRGN      WINAPI CreateEllipticRgn(INT,INT,INT,INT); | 
|---|
| 2848 | HRGN      WINAPI CreateEllipticRgnIndirect(const RECT *); | 
|---|
| 2849 | HFONT     WINAPI CreateFontA(INT,INT,INT,INT,INT,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCSTR); | 
|---|
| 2850 | HFONT     WINAPI CreateFontW(INT,INT,INT,INT,INT,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCWSTR); | 
|---|
| 2851 | #define  CreateFont WINELIB_NAME_AW(CreateFont) | 
|---|
| 2852 | HFONT     WINAPI CreateFontIndirectA(const LOGFONTA*); | 
|---|
| 2853 | HFONT     WINAPI CreateFontIndirectW(const LOGFONTW*); | 
|---|
| 2854 | #define  CreateFontIndirect WINELIB_NAME_AW(CreateFontIndirect) | 
|---|
| 2855 |  | 
|---|
| 2856 | HBRUSH    WINAPI CreateHatchBrush(INT,COLORREF); | 
|---|
| 2857 | HDC       WINAPI CreateICA(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*); | 
|---|
| 2858 | HDC       WINAPI CreateICW(LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*); | 
|---|
| 2859 | #define     CreateIC WINELIB_NAME_AW(CreateIC) | 
|---|
| 2860 |  | 
|---|
| 2861 | HDC       WINAPI CreateMetaFileA(LPCSTR); | 
|---|
| 2862 | HDC       WINAPI CreateMetaFileW(LPCWSTR); | 
|---|
| 2863 | #define     CreateMetaFile WINELIB_NAME_AW(CreateMetaFile) | 
|---|
| 2864 |  | 
|---|
| 2865 | HPALETTE  WINAPI CreatePalette(const LOGPALETTE*); | 
|---|
| 2866 | HBRUSH    WINAPI CreatePatternBrush(HBITMAP); | 
|---|
| 2867 | HPEN      WINAPI CreatePen(INT,INT,COLORREF); | 
|---|
| 2868 | HPEN      WINAPI CreatePenIndirect(const LOGPEN*); | 
|---|
| 2869 | HRGN      WINAPI CreatePolyPolygonRgn(const POINT*,const INT*,INT,INT); | 
|---|
| 2870 | HRGN      WINAPI CreatePolygonRgn(const POINT*,INT,INT); | 
|---|
| 2871 | HRGN      WINAPI CreateRectRgn(INT,INT,INT,INT); | 
|---|
| 2872 | HRGN      WINAPI CreateRectRgnIndirect(const RECT*); | 
|---|
| 2873 | HRGN      WINAPI CreateRoundRectRgn(INT,INT,INT,INT,INT,INT); | 
|---|
| 2874 | BOOL      WINAPI CreateScalableFontResourceA(DWORD,LPCSTR,LPCSTR,LPCSTR); | 
|---|
| 2875 | BOOL      WINAPI CreateScalableFontResourceW(DWORD,LPCWSTR,LPCWSTR,LPCWSTR); | 
|---|
| 2876 | #define CreateScalableFontResource WINELIB_NAME_AW(CreateScalableFontResource) | 
|---|
| 2877 |  | 
|---|
| 2878 | HBRUSH    WINAPI CreateSolidBrush(COLORREF); | 
|---|
| 2879 | BOOL      WINAPI DeleteDC(HDC); | 
|---|
| 2880 | BOOL      WINAPI DeleteMetaFile(HMETAFILE); | 
|---|
| 2881 | BOOL      WINAPI DeleteObject(HGDIOBJ); | 
|---|
| 2882 | INT       WINAPI DescribePixelFormat(HDC,int,UINT,LPPIXELFORMATDESCRIPTOR); | 
|---|
| 2883 | BOOL      WINAPI DPtoLP(HDC,LPPOINT,INT); | 
|---|
| 2884 | BOOL      WINAPI Ellipse(HDC,INT,INT,INT,INT); | 
|---|
| 2885 | INT       WINAPI EndDoc(HDC); | 
|---|
| 2886 | BOOL      WINAPI EndPath(HDC); | 
|---|
| 2887 | INT       WINAPI EnumFontFamiliesA(HDC,LPCSTR,FONTENUMPROCA,LPARAM); | 
|---|
| 2888 | INT       WINAPI EnumFontFamiliesW(HDC,LPCWSTR,FONTENUMPROCW,LPARAM); | 
|---|
| 2889 | #define EnumFontFamilies WINELIB_NAME_AW(EnumFontFamilies) | 
|---|
| 2890 |  | 
|---|
| 2891 | INT       WINAPI EnumFontFamiliesExA(HDC,LPLOGFONTA,FONTENUMPROCEXA,LPARAM,DWORD); | 
|---|
| 2892 | INT       WINAPI EnumFontFamiliesExW(HDC,LPLOGFONTW,FONTENUMPROCEXW,LPARAM,DWORD); | 
|---|
| 2893 | #define EnumFontFamiliesEx WINELIB_NAME_AW(EnumFontFamiliesEx) | 
|---|
| 2894 |  | 
|---|
| 2895 | INT       WINAPI EnumFontsA(HDC,LPCSTR,FONTENUMPROCA,LPARAM); | 
|---|
| 2896 | INT       WINAPI EnumFontsW(HDC,LPCWSTR,FONTENUMPROCW,LPARAM); | 
|---|
| 2897 | #define EnumFonts WINELIB_NAME_AW(EnumFonts) | 
|---|
| 2898 |  | 
|---|
| 2899 | BOOL      WINAPI EnumMetaFile(HDC,HMETAFILE,MFENUMPROC,LPARAM); | 
|---|
| 2900 | INT       WINAPI EnumObjects(HDC,INT,GOBJENUMPROC,LPARAM); | 
|---|
| 2901 | BOOL      WINAPI EqualRgn(HRGN,HRGN); | 
|---|
| 2902 | INT       WINAPI Escape(HDC,INT,INT,LPCSTR,LPVOID); | 
|---|
| 2903 | INT       WINAPI ExcludeClipRect(HDC,INT,INT,INT,INT); | 
|---|
| 2904 | HPEN      WINAPI ExtCreatePen(DWORD,DWORD,const LOGBRUSH*,DWORD,const DWORD*); | 
|---|
| 2905 | BOOL      WINAPI ExtFloodFill(HDC,INT,INT,COLORREF,UINT); | 
|---|
| 2906 | BOOL      WINAPI ExtTextOutA(HDC,INT,INT,UINT,const RECT*,LPCSTR,UINT,const INT*); | 
|---|
| 2907 | BOOL      WINAPI ExtTextOutW(HDC,INT,INT,UINT,const RECT*,LPCWSTR,UINT,const INT*); | 
|---|
| 2908 | #define ExtTextOut WINELIB_NAME_AW(ExtTextOut) | 
|---|
| 2909 |  | 
|---|
| 2910 | BOOL      WINAPI FillPath(HDC); | 
|---|
| 2911 | BOOL      WINAPI FillRgn(HDC,HRGN,HBRUSH); | 
|---|
| 2912 | BOOL      WINAPI FlattenPath(HDC); | 
|---|
| 2913 | BOOL      WINAPI FloodFill(HDC,INT,INT,COLORREF); | 
|---|
| 2914 | BOOL      WINAPI FrameRgn(HDC,HRGN,HBRUSH,INT,INT); | 
|---|
| 2915 | BOOL      WINAPI GdiFlush(void); | 
|---|
| 2916 | INT       WINAPI GetArcDirection(HDC); | 
|---|
| 2917 | BOOL      WINAPI GetAspectRatioFilterEx(HDC,LPSIZE); | 
|---|
| 2918 | LONG        WINAPI GetBitmapBits(HBITMAP,LONG,LPVOID); | 
|---|
| 2919 | BOOL      WINAPI GetBitmapDimensionEx(HBITMAP,LPSIZE); | 
|---|
| 2920 | BOOL      WINAPI GetBrushOrgEx(HDC,LPPOINT); | 
|---|
| 2921 | COLORREF    WINAPI GetBkColor(HDC); | 
|---|
| 2922 | INT       WINAPI GetBkMode(HDC); | 
|---|
| 2923 | UINT      WINAPI GetBoundsRect(HDC,LPRECT,UINT); | 
|---|
| 2924 | BOOL      WINAPI GetCharABCWidthsA(HDC,UINT,UINT,LPABC); | 
|---|
| 2925 | BOOL      WINAPI GetCharABCWidthsW(HDC,UINT,UINT,LPABC); | 
|---|
| 2926 | #define GetCharABCWidths WINELIB_NAME_AW(GetCharABCWidths) | 
|---|
| 2927 | #define     GetCharWidthA GetCharWidth32A | 
|---|
| 2928 | #define     GetCharWidthW GetCharWidth32W | 
|---|
| 2929 |  | 
|---|
| 2930 | DWORD       WINAPI GetCharacterPlacementA(HDC,LPCSTR,INT,INT,GCP_RESULTSA*,DWORD); | 
|---|
| 2931 | DWORD       WINAPI GetCharacterPlacementW(HDC,LPCWSTR,INT,INT,GCP_RESULTSW*,DWORD); | 
|---|
| 2932 | #define GetCharacterPlacement WINELIB_NAME_AW(GetCharacterPlacement) | 
|---|
| 2933 |  | 
|---|
| 2934 | BOOL      WINAPI GetCharWidthA(HDC,UINT,UINT,LPINT); | 
|---|
| 2935 | BOOL      WINAPI GetCharWidthW(HDC,UINT,UINT,LPINT); | 
|---|
| 2936 | #define GetCharWidth WINELIB_NAME_AW(GetCharWidth) | 
|---|
| 2937 |  | 
|---|
| 2938 | INT       WINAPI GetClipBox(HDC,LPRECT); | 
|---|
| 2939 | INT       WINAPI GetClipRgn(HDC,HRGN); | 
|---|
| 2940 | BOOL      WINAPI GetCurrentPositionEx(HDC,LPPOINT); | 
|---|
| 2941 | INT       WINAPI GetDeviceCaps(HDC,INT); | 
|---|
| 2942 | UINT      WINAPI GetDIBColorTable(HDC,UINT,UINT,RGBQUAD*); | 
|---|
| 2943 | INT       WINAPI GetDIBits(HDC,HBITMAP,UINT,UINT,LPVOID,LPBITMAPINFO,UINT); | 
|---|
| 2944 | DWORD       WINAPI GetFontData(HDC,DWORD,DWORD,LPVOID,DWORD); | 
|---|
| 2945 | DWORD       WINAPI GetFontLanguageInfo(HDC); | 
|---|
| 2946 | DWORD       WINAPI GetGlyphOutlineA(HDC,UINT,UINT,LPGLYPHMETRICS,DWORD,LPVOID,const MAT2*); | 
|---|
| 2947 | DWORD       WINAPI GetGlyphOutlineW(HDC,UINT,UINT,LPGLYPHMETRICS,DWORD,LPVOID,const MAT2*); | 
|---|
| 2948 | #define GetGlyphOutline WINELIB_NAME_AW(GetGlyphOutline) | 
|---|
| 2949 |  | 
|---|
| 2950 | DWORD       WINAPI GetKerningPairsA(HDC,DWORD,LPKERNINGPAIR); | 
|---|
| 2951 | DWORD       WINAPI GetKerningPairsW(HDC,DWORD,LPKERNINGPAIR); | 
|---|
| 2952 | #define GetKerningPairs WINELIB_NAME_AW(GetKerningPairs) | 
|---|
| 2953 |  | 
|---|
| 2954 | INT       WINAPI GetMapMode(HDC); | 
|---|
| 2955 | HMETAFILE WINAPI GetMetaFileA(LPCSTR); | 
|---|
| 2956 | HMETAFILE WINAPI GetMetaFileW(LPCWSTR); | 
|---|
| 2957 | DWORD       WINAPI GetNearestColor(HDC,DWORD); | 
|---|
| 2958 | UINT      WINAPI GetNearestPaletteIndex(HPALETTE,COLORREF); | 
|---|
| 2959 | INT       WINAPI GetObjectA(HANDLE,INT,LPVOID); | 
|---|
| 2960 | INT       WINAPI GetObjectW(HANDLE,INT,LPVOID); | 
|---|
| 2961 | #define GetObject WINELIB_NAME_AW(GetObject) | 
|---|
| 2962 |  | 
|---|
| 2963 | UINT      WINAPI GetOutlineTextMetricsA(HDC,UINT,LPOUTLINETEXTMETRICA); | 
|---|
| 2964 | UINT      WINAPI GetOutlineTextMetricsW(HDC,UINT,LPOUTLINETEXTMETRICW); | 
|---|
| 2965 | #define GetOutlineTextMetrics WINELIB_NAME_AW(GetOutlineTextMetrics) | 
|---|
| 2966 |  | 
|---|
| 2967 | UINT      WINAPI GetPaletteEntries(HPALETTE,UINT,UINT,LPPALETTEENTRY); | 
|---|
| 2968 | INT       WINAPI GetPath(HDC,LPPOINT,LPBYTE,INT); | 
|---|
| 2969 | COLORREF    WINAPI GetPixel(HDC,INT,INT); | 
|---|
| 2970 | INT       WINAPI GetPixelFormat(HDC); | 
|---|
| 2971 | INT       WINAPI GetPolyFillMode(HDC); | 
|---|
| 2972 | BOOL      WINAPI GetRasterizerCaps(LPRASTERIZER_STATUS,UINT); | 
|---|
| 2973 | DWORD       WINAPI GetRegionData(HRGN,DWORD,LPRGNDATA); | 
|---|
| 2974 | INT       WINAPI GetRelAbs(HDC); | 
|---|
| 2975 | INT       WINAPI GetRgnBox(HRGN,LPRECT); | 
|---|
| 2976 | INT       WINAPI GetROP2(HDC); | 
|---|
| 2977 | HGDIOBJ   WINAPI GetStockObject(INT); | 
|---|
| 2978 | INT       WINAPI GetStretchBltMode(HDC); | 
|---|
| 2979 | UINT      WINAPI GetSystemPaletteEntries(HDC,UINT,UINT,LPPALETTEENTRY); | 
|---|
| 2980 | UINT      WINAPI GetSystemPaletteUse(HDC); | 
|---|
| 2981 | UINT      WINAPI GetTextAlign(HDC); | 
|---|
| 2982 | INT       WINAPI GetTextCharacterExtra(HDC); | 
|---|
| 2983 | UINT      WINAPI GetTextCharset(HDC); | 
|---|
| 2984 | COLORREF    WINAPI GetTextColor(HDC); | 
|---|
| 2985 | BOOL        WINAPI GetTextExtentPointA(HDC,LPCSTR,INT,LPSIZE); | 
|---|
| 2986 | BOOL        WINAPI GetTextExtentPointW(HDC,LPCWSTR,INT,LPSIZE); | 
|---|
| 2987 | #define GetTextExtentPoint WINELIB_NAME_AW(GetTextExtentPoint) | 
|---|
| 2988 |  | 
|---|
| 2989 | BOOL        WINAPI GetTextExtentPoint32A(HDC,LPCSTR,INT,LPSIZE); | 
|---|
| 2990 | BOOL        WINAPI GetTextExtentPoint32W(HDC,LPCWSTR,INT,LPSIZE); | 
|---|
| 2991 | #define GetTextExtentPoint32 WINELIB_NAME_AW(GetTextExtentPoint32) | 
|---|
| 2992 |  | 
|---|
| 2993 | INT       WINAPI GetTextFaceA(HDC,INT,LPSTR); | 
|---|
| 2994 | INT       WINAPI GetTextFaceW(HDC,INT,LPWSTR); | 
|---|
| 2995 | #define GetTextFace WINELIB_NAME_AW(GetTextFace) | 
|---|
| 2996 |  | 
|---|
| 2997 | BOOL      WINAPI GetTextMetricsA(HDC,LPTEXTMETRICA); | 
|---|
| 2998 | BOOL      WINAPI GetTextMetricsW(HDC,LPTEXTMETRICW); | 
|---|
| 2999 | #define GetTextMetrics WINELIB_NAME_AW(GetTextMetrics) | 
|---|
| 3000 |  | 
|---|
| 3001 | BOOL      WINAPI GetViewportExtEx(HDC,LPSIZE); | 
|---|
| 3002 | BOOL      WINAPI GetViewportOrgEx(HDC,LPPOINT); | 
|---|
| 3003 | BOOL      WINAPI GetWindowExtEx(HDC,LPSIZE); | 
|---|
| 3004 | BOOL      WINAPI GetWindowOrgEx(HDC,LPPOINT); | 
|---|
| 3005 | INT       WINAPI IntersectClipRect(HDC,INT,INT,INT,INT); | 
|---|
| 3006 | BOOL      WINAPI InvertRgn(HDC,HRGN); | 
|---|
| 3007 | BOOL      WINAPI LineDDA(INT,INT,INT,INT,LINEDDAPROC,LPARAM); | 
|---|
| 3008 | BOOL      WINAPI LineTo(HDC,INT,INT); | 
|---|
| 3009 | BOOL      WINAPI LPtoDP(HDC,LPPOINT,INT); | 
|---|
| 3010 | BOOL      WINAPI MoveToEx(HDC,INT,INT,LPPOINT); | 
|---|
| 3011 | /* FIXME This is defined in kernel32.spec !?*/ | 
|---|
| 3012 | INT       WINAPI MulDiv(INT,INT,INT); | 
|---|
| 3013 | INT       WINAPI OffsetClipRgn(HDC,INT,INT); | 
|---|
| 3014 | INT       WINAPI OffsetRgn(HRGN,INT,INT); | 
|---|
| 3015 | BOOL      WINAPI OffsetViewportOrgEx(HDC,INT,INT,LPPOINT); | 
|---|
| 3016 | BOOL      WINAPI OffsetWindowOrgEx(HDC,INT,INT,LPPOINT); | 
|---|
| 3017 | BOOL      WINAPI PaintRgn(HDC,HRGN); | 
|---|
| 3018 | BOOL      WINAPI PatBlt(HDC,INT,INT,INT,INT,DWORD); | 
|---|
| 3019 | HRGN      WINAPI PathToRegion(HDC); | 
|---|
| 3020 | BOOL      WINAPI Pie(HDC,INT,INT,INT,INT,INT,INT,INT,INT); | 
|---|
| 3021 | BOOL      WINAPI PlayMetaFile(HDC,HMETAFILE); | 
|---|
| 3022 | BOOL      WINAPI PlayMetaFileRecord(HDC,LPHANDLETABLE,LPMETARECORD,UINT); | 
|---|
| 3023 | BOOL      WINAPI PolyBezier(HDC,const POINT*,DWORD); | 
|---|
| 3024 | BOOL      WINAPI PolyBezierTo(HDC,const POINT*,DWORD); | 
|---|
| 3025 | BOOL      WINAPI PolyPolygon(HDC,const POINT*,const INT*,UINT); | 
|---|
| 3026 | BOOL      WINAPI Polygon(HDC,const POINT*,INT); | 
|---|
| 3027 | BOOL      WINAPI Polyline(HDC,const POINT*,INT); | 
|---|
| 3028 | BOOL      WINAPI PolylineTo(HDC,const POINT*,DWORD); | 
|---|
| 3029 | BOOL      WINAPI PtInRegion(HRGN,INT,INT); | 
|---|
| 3030 | BOOL      WINAPI PtVisible(HDC,INT,INT); | 
|---|
| 3031 | /* FIXME This is defined in user.spec !? */ | 
|---|
| 3032 | UINT      WINAPI RealizePalette(HDC); | 
|---|
| 3033 | BOOL      WINAPI Rectangle(HDC,INT,INT,INT,INT); | 
|---|
| 3034 | BOOL      WINAPI RectInRegion(HRGN,const RECT *); | 
|---|
| 3035 | BOOL      WINAPI RectVisible(HDC,const RECT*); | 
|---|
| 3036 | BOOL      WINAPI RemoveFontResourceA(LPCSTR); | 
|---|
| 3037 | BOOL      WINAPI RemoveFontResourceW(LPCWSTR); | 
|---|
| 3038 | #define RemoveFontResource WINELIB_NAME_AW(RemoveFontResource) | 
|---|
| 3039 | HDC       WINAPI ResetDCA(HDC,const DEVMODEA *); | 
|---|
| 3040 | HDC       WINAPI ResetDCW(HDC,const DEVMODEW *); | 
|---|
| 3041 | #define ResetDC WINELIB_NAME_AW(ResetDC) | 
|---|
| 3042 | BOOL      WINAPI ResizePalette(HPALETTE,UINT); | 
|---|
| 3043 | BOOL      WINAPI RestoreDC(HDC,INT); | 
|---|
| 3044 | BOOL      WINAPI RoundRect(HDC,INT,INT,INT,INT,INT,INT); | 
|---|
| 3045 | INT       WINAPI SaveDC(HDC); | 
|---|
| 3046 | BOOL      WINAPI ScaleViewportExtEx(HDC,INT,INT,INT,INT,LPSIZE); | 
|---|
| 3047 | BOOL      WINAPI ScaleWindowExtEx(HDC,INT,INT,INT,INT,LPSIZE); | 
|---|
| 3048 | BOOL      WINAPI SelectClipPath(HDC,INT); | 
|---|
| 3049 | INT       WINAPI SelectClipRgn(HDC,HRGN); | 
|---|
| 3050 | HGDIOBJ   WINAPI SelectObject(HDC,HGDIOBJ); | 
|---|
| 3051 | /* FIXME This is defined in user.spec !? */ | 
|---|
| 3052 | HPALETTE  WINAPI SelectPalette(HDC,HPALETTE,BOOL); | 
|---|
| 3053 | INT       WINAPI SetAbortProc(HDC,ABORTPROC); | 
|---|
| 3054 | INT       WINAPI SetArcDirection(HDC,INT); | 
|---|
| 3055 | LONG        WINAPI SetBitmapBits(HBITMAP,LONG,LPCVOID); | 
|---|
| 3056 | BOOL      WINAPI SetBitmapDimensionEx(HBITMAP,INT,INT,LPSIZE); | 
|---|
| 3057 | COLORREF    WINAPI SetBkColor(HDC,COLORREF); | 
|---|
| 3058 | INT       WINAPI SetBkMode(HDC,INT); | 
|---|
| 3059 | UINT      WINAPI SetBoundsRect(HDC,const RECT*,UINT); | 
|---|
| 3060 | UINT      WINAPI SetDIBColorTable(HDC,UINT,UINT,RGBQUAD*); | 
|---|
| 3061 | INT       WINAPI SetDIBits(HDC,HBITMAP,UINT,UINT,LPCVOID,const BITMAPINFO*,UINT); | 
|---|
| 3062 | INT       WINAPI SetDIBitsToDevice(HDC,INT,INT,DWORD,DWORD,INT,INT,UINT,UINT,LPCVOID,const BITMAPINFO*,UINT); | 
|---|
| 3063 | INT       WINAPI SetMapMode(HDC,INT); | 
|---|
| 3064 | DWORD       WINAPI SetMapperFlags(HDC,DWORD); | 
|---|
| 3065 | UINT      WINAPI SetPaletteEntries(HPALETTE,UINT,UINT,LPPALETTEENTRY); | 
|---|
| 3066 | COLORREF    WINAPI SetPixel(HDC,INT,INT,COLORREF); | 
|---|
| 3067 | BOOL      WINAPI SetPixelV(HDC,INT,INT,COLORREF); | 
|---|
| 3068 | BOOL      WINAPI SetPixelFormat(HDC,int,const PIXELFORMATDESCRIPTOR*); | 
|---|
| 3069 | INT       WINAPI SetPolyFillMode(HDC,INT); | 
|---|
| 3070 | BOOL        WINAPI SetRectRgn(HRGN,INT,INT,INT,INT); | 
|---|
| 3071 | INT       WINAPI SetRelAbs(HDC,INT); | 
|---|
| 3072 | INT       WINAPI SetROP2(HDC,INT); | 
|---|
| 3073 | INT       WINAPI SetStretchBltMode(HDC,INT); | 
|---|
| 3074 | UINT      WINAPI SetSystemPaletteUse(HDC,UINT); | 
|---|
| 3075 | UINT      WINAPI SetTextAlign(HDC,UINT); | 
|---|
| 3076 | INT       WINAPI SetTextCharacterExtra(HDC,INT); | 
|---|
| 3077 | COLORREF    WINAPI SetTextColor(HDC,COLORREF); | 
|---|
| 3078 | BOOL      WINAPI SetTextJustification(HDC,INT,INT); | 
|---|
| 3079 | BOOL      WINAPI SetViewportExtEx(HDC,INT,INT,LPSIZE); | 
|---|
| 3080 | BOOL      WINAPI SetViewportOrgEx(HDC,INT,INT,LPPOINT); | 
|---|
| 3081 | BOOL      WINAPI SetWindowExtEx(HDC,INT,INT,LPSIZE); | 
|---|
| 3082 | BOOL      WINAPI SetWindowOrgEx(HDC,INT,INT,LPPOINT); | 
|---|
| 3083 | HENHMETAFILE WINAPI SetWinMetaFileBits(UINT,CONST BYTE*,HDC,CONST METAFILEPICT *); | 
|---|
| 3084 | INT       WINAPI StartDocA(HDC,const DOCINFOA*); | 
|---|
| 3085 | INT       WINAPI StartDocW(HDC,const DOCINFOW*); | 
|---|
| 3086 | #define StartDoc WINELIB_NAME_AW(StartDoc) | 
|---|
| 3087 | INT       WINAPI StartPage(HDC); | 
|---|
| 3088 | INT       WINAPI EndPage(HDC); | 
|---|
| 3089 | BOOL      WINAPI StretchBlt(HDC,INT,INT,INT,INT,HDC,INT,INT,INT,INT,DWORD); | 
|---|
| 3090 | INT       WINAPI StretchDIBits(HDC,INT,INT,INT,INT,INT,INT,INT,INT,const VOID*,const BITMAPINFO*,UINT,DWORD); | 
|---|
| 3091 | BOOL      WINAPI StrokeAndFillPath(HDC); | 
|---|
| 3092 | BOOL      WINAPI StrokePath(HDC); | 
|---|
| 3093 | BOOL      WINAPI SwapBuffers(HDC); | 
|---|
| 3094 | BOOL      WINAPI TextOutA(HDC,INT,INT,LPCSTR,INT); | 
|---|
| 3095 | BOOL      WINAPI TextOutW(HDC,INT,INT,LPCWSTR,INT); | 
|---|
| 3096 | #define TextOut WINELIB_NAME_AW(TextOut) | 
|---|
| 3097 |  | 
|---|
| 3098 | BOOL      WINAPI UnrealizeObject(HGDIOBJ); | 
|---|
| 3099 | BOOL      WINAPI UpdateColors(HDC); | 
|---|
| 3100 | BOOL      WINAPI WidenPath(HDC); | 
|---|
| 3101 |  | 
|---|
| 3102 |  | 
|---|
| 3103 | typedef int (* CALLBACK ICMENUMPROCA)(LPSTR, LPARAM); | 
|---|
| 3104 | typedef int (* CALLBACK ICMENUMPROCW)(LPWSTR, LPARAM); | 
|---|
| 3105 | int WINAPI EnumICMProfilesA(HDC,ICMENUMPROCA,LPARAM); | 
|---|
| 3106 | int WINAPI EnumICMProfilesW(HDC,ICMENUMPROCW,LPARAM); | 
|---|
| 3107 | #define     EnumICMProfiles WINELIB_NAME_AW(EnumICMProfiles) | 
|---|
| 3108 |  | 
|---|
| 3109 |  | 
|---|
| 3110 | // OpenGL wgl prototypes | 
|---|
| 3111 |  | 
|---|
| 3112 | BOOL  WINAPI wglCopyContext(HGLRC, HGLRC, UINT); | 
|---|
| 3113 | HGLRC WINAPI wglCreateContext(HDC); | 
|---|
| 3114 | HGLRC WINAPI wglCreateLayerContext(HDC, int); | 
|---|
| 3115 | BOOL  WINAPI wglDeleteContext(HGLRC); | 
|---|
| 3116 | HGLRC WINAPI wglGetCurrentContext(VOID); | 
|---|
| 3117 | HDC   WINAPI wglGetCurrentDC(VOID); | 
|---|
| 3118 | PROC  WINAPI wglGetProcAddress(LPCSTR); | 
|---|
| 3119 | BOOL  WINAPI wglMakeCurrent(HDC, HGLRC); | 
|---|
| 3120 | BOOL  WINAPI wglShareLists(HGLRC, HGLRC); | 
|---|
| 3121 | BOOL  WINAPI wglUseFontBitmapsA(HDC, DWORD, DWORD, DWORD); | 
|---|
| 3122 | BOOL  WINAPI wglUseFontBitmapsW(HDC, DWORD, DWORD, DWORD); | 
|---|
| 3123 | #define wglUseFontBitmaps  WINELIB_NAME_AW(wglUseFontBitmaps) | 
|---|
| 3124 |  | 
|---|
| 3125 |  | 
|---|
| 3126 | BOOL WINAPI wglDescribeLayerPlane(HDC, int, int, UINT, LPLAYERPLANEDESCRIPTOR); | 
|---|
| 3127 | int  WINAPI wglSetLayerPaletteEntries(HDC, int, int, int, CONST COLORREF *); | 
|---|
| 3128 | int  WINAPI wglGetLayerPaletteEntries(HDC, int, int, int, COLORREF *); | 
|---|
| 3129 | BOOL WINAPI wglRealizeLayerPalette(HDC, int, BOOL); | 
|---|
| 3130 | BOOL WINAPI wglSwapLayerBuffers(HDC, UINT); | 
|---|
| 3131 | BOOL  WINAPI wglUseFontOutlinesA(HDC, DWORD, DWORD, DWORD, FLOAT, | 
|---|
| 3132 | FLOAT, int, LPGLYPHMETRICSFLOAT); | 
|---|
| 3133 | BOOL  WINAPI wglUseFontOutlinesW(HDC, DWORD, DWORD, DWORD, FLOAT, | 
|---|
| 3134 | FLOAT, int, LPGLYPHMETRICSFLOAT); | 
|---|
| 3135 |  | 
|---|
| 3136 | #define     wglUseFontOutlines WINELIB_NAME_AW(wglUseFontOutlines) | 
|---|
| 3137 |  | 
|---|
| 3138 | #ifdef __cplusplus | 
|---|
| 3139 | } | 
|---|
| 3140 | #endif | 
|---|
| 3141 |  | 
|---|
| 3142 | #endif /* __WINE_WINGDI_H */ | 
|---|