2 * Metafile driver definitions
5 #ifndef __WINE_METAFILEDRV_H
6 #define __WINE_METAFILEDRV_H
11 /* FIXME: SDK docs says these should be 1 and 2 */
12 /* DR 980322: most wmf's have 1, so I think 0 and 1 is correct */
13 #define METAFILE_MEMORY 0
14 #define METAFILE_DISK 1
16 /* Metafile driver physical DC */
20 METAHEADER
*mh
; /* Pointer to metafile header */
21 UINT nextHandle
; /* Next handle number */
22 } METAFILEDRV_PDEVICE
;
25 /* Metafile driver functions */
27 extern BOOL
MFDRV_BitBlt( struct tagDC
*dcDst
, INT xDst
, INT yDst
,
28 INT width
, INT height
, struct tagDC
*dcSrc
,
29 INT xSrc
, INT ySrc
, DWORD rop
);
30 extern BOOL
MFDRV_PatBlt( struct tagDC
*dc
, INT left
, INT top
,
31 INT width
, INT height
, DWORD rop
);
32 extern BOOL
MFDRV_StretchBlt( struct tagDC
*dcDst
, INT xDst
, INT yDst
,
33 INT widthDst
, INT heightDst
,
34 struct tagDC
*dcSrc
, INT xSrc
, INT ySrc
,
35 INT widthSrc
, INT heightSrc
, DWORD rop
);
36 extern INT
MFDRV_SetMapMode( struct tagDC
*dc
, INT mode
);
37 extern BOOL
MFDRV_SetViewportExt( struct tagDC
*dc
, INT x
, INT y
);
38 extern BOOL
MFDRV_SetViewportOrg( struct tagDC
*dc
, INT x
, INT y
);
39 extern BOOL
MFDRV_SetWindowExt( struct tagDC
*dc
, INT x
, INT y
);
40 extern BOOL
MFDRV_SetWindowOrg( struct tagDC
*dc
, INT x
, INT y
);
41 extern BOOL
MFDRV_OffsetViewportOrg( struct tagDC
*dc
, INT x
, INT y
);
42 extern BOOL
MFDRV_OffsetWindowOrg( struct tagDC
*dc
, INT x
, INT y
);
43 extern BOOL
MFDRV_ScaleViewportExt( struct tagDC
*dc
, INT xNum
,
44 INT xDenom
, INT yNum
, INT yDenom
);
45 extern BOOL
MFDRV_ScaleWindowExt( struct tagDC
*dc
, INT xNum
, INT xDenom
,
46 INT yNum
, INT yDenom
);
47 extern BOOL
MFDRV_MoveToEx(struct tagDC
*dc
, INT x
, INT y
, LPPOINT pt
);
48 extern BOOL
MFDRV_LineTo( struct tagDC
*dc
, INT x
, INT y
);
49 extern BOOL
MFDRV_Arc( struct tagDC
*dc
, INT left
, INT top
, INT right
,
50 INT bottom
, INT xstart
, INT ystart
, INT xend
,
52 extern BOOL
MFDRV_Pie( struct tagDC
*dc
, INT left
, INT top
, INT right
,
53 INT bottom
, INT xstart
, INT ystart
, INT xend
,
55 extern BOOL
MFDRV_Chord( struct tagDC
*dc
, INT left
, INT top
, INT right
,
56 INT bottom
, INT xstart
, INT ystart
, INT xend
,
58 extern BOOL
MFDRV_Ellipse( struct tagDC
*dc
, INT left
, INT top
,
59 INT right
, INT bottom
);
60 extern BOOL
MFDRV_Rectangle( struct tagDC
*dc
, INT left
, INT top
,
61 INT right
, INT bottom
);
62 extern BOOL
MFDRV_RoundRect( struct tagDC
*dc
, INT left
, INT top
,
63 INT right
, INT bottom
, INT ell_width
,
65 extern COLORREF
MFDRV_SetPixel( struct tagDC
*dc
, INT x
, INT y
, COLORREF color
);
66 extern BOOL
MFDRV_Polyline( struct tagDC
*dc
, const POINT
* pt
,INT count
);
67 extern BOOL
MFDRV_Polygon( struct tagDC
*dc
, const POINT
* pt
, INT count
);
68 extern BOOL
MFDRV_PolyPolygon( struct tagDC
*dc
, const POINT
* pt
, const INT
* counts
,
70 extern HGDIOBJ
MFDRV_SelectObject( DC
*dc
, HGDIOBJ handle
);
71 extern COLORREF
MFDRV_SetBkColor( DC
*dc
, COLORREF color
);
72 extern COLORREF
MFDRV_SetTextColor( DC
*dc
, COLORREF color
);
73 extern BOOL
MFDRV_ExtFloodFill( struct tagDC
*dc
, INT x
, INT y
,
74 COLORREF color
, UINT fillType
);
75 extern BOOL
MFDRV_ExtTextOut( struct tagDC
*dc
, INT x
, INT y
,
76 UINT flags
, const RECT
*lprect
, LPCSTR str
,
77 UINT count
, const INT
*lpDx
);
78 extern BOOL
MFDRV_PaintRgn( DC
*dc
, HRGN hrgn
);
80 #endif /* __WINE_METAFILEDRV_H */