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 #define METAFILE_MEMORY 0
13 #define METAFILE_DISK 1
15 /* Metafile driver physical DC */
19 METAHEADER
*mh
; /* Pointer to metafile header */
20 UINT32 nextHandle
; /* Next handle number */
21 } METAFILEDRV_PDEVICE
;
24 /* Metafile driver functions */
26 extern BOOL32
MFDRV_BitBlt( struct tagDC
*dcDst
, INT32 xDst
, INT32 yDst
,
27 INT32 width
, INT32 height
, struct tagDC
*dcSrc
,
28 INT32 xSrc
, INT32 ySrc
, DWORD rop
);
29 extern BOOL32
MFDRV_PatBlt( struct tagDC
*dc
, INT32 left
, INT32 top
,
30 INT32 width
, INT32 height
, DWORD rop
);
31 extern BOOL32
MFDRV_StretchBlt( struct tagDC
*dcDst
, INT32 xDst
, INT32 yDst
,
32 INT32 widthDst
, INT32 heightDst
,
33 struct tagDC
*dcSrc
, INT32 xSrc
, INT32 ySrc
,
34 INT32 widthSrc
, INT32 heightSrc
, DWORD rop
);
35 extern INT32
MFDRV_SetMapMode( struct tagDC
*dc
, INT32 mode
);
36 extern BOOL32
MFDRV_SetViewportExt( struct tagDC
*dc
, INT32 x
, INT32 y
);
37 extern BOOL32
MFDRV_SetViewportOrg( struct tagDC
*dc
, INT32 x
, INT32 y
);
38 extern BOOL32
MFDRV_SetWindowExt( struct tagDC
*dc
, INT32 x
, INT32 y
);
39 extern BOOL32
MFDRV_SetWindowOrg( struct tagDC
*dc
, INT32 x
, INT32 y
);
40 extern BOOL32
MFDRV_OffsetViewportOrg( struct tagDC
*dc
, INT32 x
, INT32 y
);
41 extern BOOL32
MFDRV_OffsetWindowOrg( struct tagDC
*dc
, INT32 x
, INT32 y
);
42 extern BOOL32
MFDRV_ScaleViewportExt( struct tagDC
*dc
, INT32 xNum
,
43 INT32 xDenom
, INT32 yNum
, INT32 yDenom
);
44 extern BOOL32
MFDRV_ScaleWindowExt( struct tagDC
*dc
, INT32 xNum
, INT32 xDenom
,
45 INT32 yNum
, INT32 yDenom
);
46 extern BOOL32
MFDRV_MoveToEx(struct tagDC
*dc
, INT32 x
, INT32 y
, LPPOINT32 pt
);
47 extern BOOL32
MFDRV_LineTo( struct tagDC
*dc
, INT32 x
, INT32 y
);
48 extern BOOL32
MFDRV_Arc( struct tagDC
*dc
, INT32 left
, INT32 top
, INT32 right
,
49 INT32 bottom
, INT32 xstart
, INT32 ystart
, INT32 xend
,
51 extern BOOL32
MFDRV_Pie( struct tagDC
*dc
, INT32 left
, INT32 top
, INT32 right
,
52 INT32 bottom
, INT32 xstart
, INT32 ystart
, INT32 xend
,
54 extern BOOL32
MFDRV_Chord( struct tagDC
*dc
, INT32 left
, INT32 top
, INT32 right
,
55 INT32 bottom
, INT32 xstart
, INT32 ystart
, INT32 xend
,
57 extern BOOL32
MFDRV_Ellipse( struct tagDC
*dc
, INT32 left
, INT32 top
,
58 INT32 right
, INT32 bottom
);
59 extern BOOL32
MFDRV_Rectangle( struct tagDC
*dc
, INT32 left
, INT32 top
,
60 INT32 right
, INT32 bottom
);
61 extern BOOL32
MFDRV_RoundRect( struct tagDC
*dc
, INT32 left
, INT32 top
,
62 INT32 right
, INT32 bottom
, INT32 ell_width
,
64 extern COLORREF
MFDRV_SetPixel( struct tagDC
*dc
, INT32 x
, INT32 y
, COLORREF color
);
65 extern BOOL32
MFDRV_Polyline( struct tagDC
*dc
, const LPPOINT32 pt
,INT32 count
);
66 extern BOOL32
MFDRV_Polygon( struct tagDC
*dc
, LPPOINT32 pt
, INT32 count
);
67 extern BOOL32
MFDRV_PolyPolygon( struct tagDC
*dc
, LPPOINT32 pt
, LPINT32 counts
,
69 extern HGDIOBJ32
MFDRV_SelectObject( DC
*dc
, HGDIOBJ32 handle
);
70 extern BOOL32
MFDRV_ExtFloodFill( struct tagDC
*dc
, INT32 x
, INT32 y
,
71 COLORREF color
, UINT32 fillType
);
72 extern BOOL32
MFDRV_ExtTextOut( struct tagDC
*dc
, INT32 x
, INT32 y
,
73 UINT32 flags
, const RECT32
*lprect
, LPCSTR str
,
74 UINT32 count
, const INT32
*lpDx
);
76 #endif /* __WINE_METAFILEDRV_H */