ReactOS 0.4.16-dev-321-g63bb46a
metafiledrv.h
Go to the documentation of this file.
1/*
2 * Metafile driver definitions
3 *
4 * Copyright 1996 Alexandre Julliard
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21#ifndef __WINE_METAFILEDRV_H
22#define __WINE_METAFILEDRV_H
23
24#include <stdarg.h>
25
26#include "windef.h"
27#include "winbase.h"
28#include "wingdi.h"
29#include "gdi_private.h"
30
31/* Metafile driver physical DC */
32
33typedef struct
34{
36 METAHEADER *mh; /* Pointer to metafile header */
37 UINT handles_size, cur_handles;
39 HANDLE hFile; /* Handle for disk based MetaFile */
41
42#define HANDLE_LIST_INC 20
43
44
46extern BOOL MFDRV_MetaParam1(PHYSDEV dev, short func, short param1) DECLSPEC_HIDDEN;
47extern BOOL MFDRV_MetaParam2(PHYSDEV dev, short func, short param1, short param2) DECLSPEC_HIDDEN;
48extern BOOL MFDRV_MetaParam4(PHYSDEV dev, short func, short param1, short param2,
49 short param3, short param4) DECLSPEC_HIDDEN;
50extern BOOL MFDRV_MetaParam6(PHYSDEV dev, short func, short param1, short param2,
51 short param3, short param4, short param5,
52 short param6) DECLSPEC_HIDDEN;
53extern BOOL MFDRV_MetaParam8(PHYSDEV dev, short func, short param1, short param2,
54 short param3, short param4, short param5,
55 short param6, short param7, short param8) DECLSPEC_HIDDEN;
60
61/* Metafile driver functions */
62
65 INT xstart, INT ystart, INT xend, INT yend ) DECLSPEC_HIDDEN;
68 INT bottom, INT xstart, INT ystart, INT xend, INT yend ) DECLSPEC_HIDDEN;
76extern BOOL MFDRV_ExtTextOut( PHYSDEV dev, INT x, INT y, UINT flags, const RECT *lprect, LPCWSTR str,
77 UINT count, const INT *lpDx ) DECLSPEC_HIDDEN;
92 INT bottom, INT xstart, INT ystart, INT xend, INT yend ) DECLSPEC_HIDDEN;
95extern BOOL MFDRV_PolyPolygon( PHYSDEV dev, const POINT* pt, const INT* counts, UINT polygons) DECLSPEC_HIDDEN;
101 INT ell_width, INT ell_height ) DECLSPEC_HIDDEN;
103extern BOOL MFDRV_ScaleViewportExtEx( PHYSDEV dev, INT xNum, INT xDenom, INT yNum, INT yDenom, SIZE *size ) DECLSPEC_HIDDEN;
104extern BOOL MFDRV_ScaleWindowExtEx( PHYSDEV dev, INT xNum, INT xDenom, INT yNum, INT yDenom, SIZE *size ) DECLSPEC_HIDDEN;
106extern HBRUSH MFDRV_SelectBrush( PHYSDEV dev, HBRUSH hbrush, const struct brush_pattern *pattern ) DECLSPEC_HIDDEN;
109extern HPEN MFDRV_SelectPen( PHYSDEV dev, HPEN handle, const struct brush_pattern *pattern ) DECLSPEC_HIDDEN;
110extern HPALETTE MFDRV_SelectPalette( PHYSDEV dev, HPALETTE hPalette, BOOL bForceBackground) DECLSPEC_HIDDEN;
111extern UINT MFDRV_RealizePalette(PHYSDEV dev, HPALETTE hPalette, BOOL primary) DECLSPEC_HIDDEN;
131extern BOOL MFDRV_StretchBlt( PHYSDEV devDst, struct bitblt_coords *dst,
134extern INT MFDRV_SetDIBitsToDevice( PHYSDEV dev, INT xDest, INT yDest, DWORD cx,
135 DWORD cy, INT xSrc, INT ySrc,
136 UINT startscan, UINT lines, LPCVOID bits,
137 BITMAPINFO *info, UINT coloruse ) DECLSPEC_HIDDEN;
138extern INT MFDRV_StretchDIBits( PHYSDEV dev, INT xDst, INT yDst, INT widthDst,
139 INT heightDst, INT xSrc, INT ySrc, INT widthSrc, INT heightSrc,
140 const void *bits, BITMAPINFO *info, UINT wUsage, DWORD dwRop ) DECLSPEC_HIDDEN;
144
145#endif /* __WINE_METAFILEDRV_H */
static HRGN hrgn
static HBRUSH hbrush
signed short INT16
#define DECLSPEC_HIDDEN
Definition: precomp.h:8
#define pt(x, y)
Definition: drawing.c:79
int align(int length, int align)
Definition: dsound8.c:36
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
GLint level
Definition: gl.h:1546
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLsizeiptr size
Definition: glext.h:5919
GLenum func
Definition: glext.h:6028
GLenum src
Definition: glext.h:6340
GLuint color
Definition: glext.h:6243
GLuint index
Definition: glext.h:6031
GLdouble GLdouble GLdouble GLdouble top
Definition: glext.h:10859
GLdouble GLdouble right
Definition: glext.h:10859
GLubyte * pattern
Definition: glext.h:7787
GLenum mode
Definition: glext.h:6217
GLenum GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * bits
Definition: glext.h:10929
GLint left
Definition: glext.h:7726
GLenum GLenum dst
Definition: glext.h:6340
GLbitfield flags
Definition: glext.h:7161
GLint GLint bottom
Definition: glext.h:7726
@ extra
Definition: id3.c:95
BOOL MFDRV_Arc(PHYSDEV dev, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend) DECLSPEC_HIDDEN
Definition: graphics.c:53
BOOL MFDRV_MetaParam6(PHYSDEV dev, short func, short param1, short param2, short param3, short param4, short param5, short param6) DECLSPEC_HIDDEN
Definition: init.c:587
BOOL MFDRV_SelectClipPath(PHYSDEV dev, INT iMode) DECLSPEC_HIDDEN
Definition: dc.c:178
UINT MFDRV_RealizePalette(PHYSDEV dev, HPALETTE hPalette, BOOL primary) DECLSPEC_HIDDEN
Definition: objects.c:449
BOOL MFDRV_Polyline(PHYSDEV dev, const POINT *pt, INT count) DECLSPEC_HIDDEN
Definition: graphics.c:144
BOOL MFDRV_SetWindowExtEx(PHYSDEV dev, INT x, INT y, SIZE *size) DECLSPEC_HIDDEN
Definition: dc.c:103
INT MFDRV_IntersectClipRect(PHYSDEV dev, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
Definition: dc.c:73
INT MFDRV_SetBkMode(PHYSDEV dev, INT mode) DECLSPEC_HIDDEN
Definition: dc.c:38
BOOL MFDRV_WriteRecord(PHYSDEV dev, METARECORD *mr, DWORD rlen) DECLSPEC_HIDDEN
Definition: init.c:475
BOOL MFDRV_Rectangle(PHYSDEV dev, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
Definition: graphics.c:93
BOOL MFDRV_MetaParam1(PHYSDEV dev, short func, short param1) DECLSPEC_HIDDEN
Definition: init.c:532
COLORREF MFDRV_SetBkColor(PHYSDEV dev, COLORREF color) DECLSPEC_HIDDEN
Definition: dc.c:43
BOOL MFDRV_EndPath(PHYSDEV dev) DECLSPEC_HIDDEN
Definition: dc.c:163
BOOL MFDRV_AbortPath(PHYSDEV dev) DECLSPEC_HIDDEN
Definition: dc.c:148
BOOL MFDRV_SetViewportExtEx(PHYSDEV dev, INT x, INT y, SIZE *size) DECLSPEC_HIDDEN
Definition: dc.c:93
BOOL MFDRV_MetaParam4(PHYSDEV dev, short func, short param1, short param2, short param3, short param4) DECLSPEC_HIDDEN
Definition: init.c:566
BOOL MFDRV_ScaleWindowExtEx(PHYSDEV dev, INT xNum, INT xDenom, INT yNum, INT yDenom, SIZE *size) DECLSPEC_HIDDEN
Definition: dc.c:128
UINT MFDRV_SetTextAlign(PHYSDEV dev, UINT align) DECLSPEC_HIDDEN
Definition: dc.c:33
BOOL MFDRV_MetaParam2(PHYSDEV dev, short func, short param1, short param2) DECLSPEC_HIDDEN
Definition: init.c:548
BOOL MFDRV_CloseFigure(PHYSDEV dev) DECLSPEC_HIDDEN
Definition: dc.c:158
INT16 MFDRV_CreateBrushIndirect(PHYSDEV dev, HBRUSH hBrush) DECLSPEC_HIDDEN
Definition: objects.c:149
BOOL MFDRV_BeginPath(PHYSDEV dev) DECLSPEC_HIDDEN
Definition: dc.c:153
BOOL MFDRV_DeleteObject(PHYSDEV dev, HGDIOBJ obj) DECLSPEC_HIDDEN
Definition: objects.c:98
BOOL MFDRV_MetaParam0(PHYSDEV dev, short func) DECLSPEC_HIDDEN
Definition: init.c:518
BOOL MFDRV_SetWindowOrgEx(PHYSDEV dev, INT x, INT y, POINT *pt) DECLSPEC_HIDDEN
Definition: dc.c:108
INT MFDRV_SetStretchBltMode(PHYSDEV dev, INT mode) DECLSPEC_HIDDEN
Definition: dc.c:68
BOOL MFDRV_RestoreDC(PHYSDEV dev, INT level) DECLSPEC_HIDDEN
Definition: dc.c:28
HPALETTE MFDRV_SelectPalette(PHYSDEV dev, HPALETTE hPalette, BOOL bForceBackground) DECLSPEC_HIDDEN
Definition: objects.c:413
BOOL MFDRV_FrameRgn(PHYSDEV dev, HRGN hrgn, HBRUSH hbrush, INT x, INT y) DECLSPEC_HIDDEN
Definition: graphics.c:391
INT MFDRV_SetMapMode(PHYSDEV dev, INT mode) DECLSPEC_HIDDEN
Definition: dc.c:88
BOOL MFDRV_SetViewportOrgEx(PHYSDEV dev, INT x, INT y, POINT *pt) DECLSPEC_HIDDEN
Definition: dc.c:98
INT MFDRV_SetRelAbs(PHYSDEV dev, INT mode) DECLSPEC_HIDDEN
Definition: dc.c:58
INT MFDRV_SaveDC(PHYSDEV dev) DECLSPEC_HIDDEN
Definition: dc.c:23
BOOL MFDRV_SetTextJustification(PHYSDEV dev, INT extra, INT breaks) DECLSPEC_HIDDEN
Definition: dc.c:133
INT MFDRV_ExtSelectClipRgn(PHYSDEV dev, HRGN hrgn, INT mode) DECLSPEC_HIDDEN
Definition: graphics.c:407
BOOL MFDRV_FillRgn(PHYSDEV dev, HRGN hrgn, HBRUSH hbrush) DECLSPEC_HIDDEN
Definition: graphics.c:376
BOOL MFDRV_LineTo(PHYSDEV dev, INT x, INT y) DECLSPEC_HIDDEN
Definition: graphics.c:44
COLORREF MFDRV_SetDCPenColor(PHYSDEV dev, COLORREF color) DECLSPEC_HIDDEN
Definition: dc.c:203
BOOL MFDRV_PolyBezier(PHYSDEV dev, const POINT *pt, DWORD count) DECLSPEC_HIDDEN
Definition: graphics.c:428
HBITMAP MFDRV_SelectBitmap(PHYSDEV dev, HBITMAP handle) DECLSPEC_HIDDEN
Definition: objects.c:140
INT MFDRV_ExcludeClipRect(PHYSDEV dev, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
Definition: dc.c:78
BOOL MFDRV_FlattenPath(PHYSDEV dev) DECLSPEC_HIDDEN
Definition: dc.c:173
BOOL MFDRV_ScaleViewportExtEx(PHYSDEV dev, INT xNum, INT xDenom, INT yNum, INT yDenom, SIZE *size) DECLSPEC_HIDDEN
Definition: dc.c:123
COLORREF MFDRV_SetDCBrushColor(PHYSDEV dev, COLORREF color) DECLSPEC_HIDDEN
Definition: dc.c:198
BOOL MFDRV_PolyBezierTo(PHYSDEV dev, const POINT *pt, DWORD count) DECLSPEC_HIDDEN
Definition: graphics.c:438
BOOL MFDRV_OffsetWindowOrgEx(PHYSDEV dev, INT x, INT y, POINT *pt) DECLSPEC_HIDDEN
Definition: dc.c:118
DWORD MFDRV_SetMapperFlags(PHYSDEV dev, DWORD flags) DECLSPEC_HIDDEN
Definition: dc.c:143
INT MFDRV_OffsetClipRgn(PHYSDEV dev, INT x, INT y) DECLSPEC_HIDDEN
Definition: dc.c:83
BOOL MFDRV_MetaParam8(PHYSDEV dev, short func, short param1, short param2, short param3, short param4, short param5, short param6, short param7, short param8) DECLSPEC_HIDDEN
Definition: init.c:609
HBRUSH MFDRV_SelectBrush(PHYSDEV dev, HBRUSH hbrush, const struct brush_pattern *pattern) DECLSPEC_HIDDEN
Definition: objects.c:236
BOOL MFDRV_FillPath(PHYSDEV dev) DECLSPEC_HIDDEN
Definition: dc.c:168
COLORREF MFDRV_SetPixel(PHYSDEV dev, INT x, INT y, COLORREF color) DECLSPEC_HIDDEN
Definition: graphics.c:111
INT MFDRV_StretchDIBits(PHYSDEV dev, INT xDst, INT yDst, INT widthDst, INT heightDst, INT xSrc, INT ySrc, INT widthSrc, INT heightSrc, const void *bits, BITMAPINFO *info, UINT wUsage, DWORD dwRop) DECLSPEC_HIDDEN
Definition: bitblt.c:132
BOOL MFDRV_ExtTextOut(PHYSDEV dev, INT x, INT y, UINT flags, const RECT *lprect, LPCWSTR str, UINT count, const INT *lpDx) DECLSPEC_HIDDEN
Definition: text.c:75
INT MFDRV_SetROP2(PHYSDEV dev, INT rop) DECLSPEC_HIDDEN
Definition: dc.c:53
BOOL MFDRV_Pie(PHYSDEV dev, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend) DECLSPEC_HIDDEN
Definition: graphics.c:64
INT MFDRV_SetPolyFillMode(PHYSDEV dev, INT mode) DECLSPEC_HIDDEN
Definition: dc.c:63
BOOL MFDRV_InvertRgn(PHYSDEV dev, HRGN hrgn) DECLSPEC_HIDDEN
Definition: graphics.c:363
COLORREF MFDRV_SetTextColor(PHYSDEV dev, COLORREF color) DECLSPEC_HIDDEN
Definition: dc.c:48
BOOL MFDRV_MoveTo(PHYSDEV dev, INT x, INT y) DECLSPEC_HIDDEN
Definition: graphics.c:36
BOOL MFDRV_PaintRgn(PHYSDEV dev, HRGN hrgn) DECLSPEC_HIDDEN
Definition: graphics.c:350
HPEN MFDRV_SelectPen(PHYSDEV dev, HPEN handle, const struct brush_pattern *pattern) DECLSPEC_HIDDEN
Definition: objects.c:331
BOOL MFDRV_Chord(PHYSDEV dev, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend) DECLSPEC_HIDDEN
Definition: graphics.c:75
BOOL MFDRV_StrokeAndFillPath(PHYSDEV dev) DECLSPEC_HIDDEN
Definition: dc.c:183
BOOL MFDRV_RoundRect(PHYSDEV dev, INT left, INT top, INT right, INT bottom, INT ell_width, INT ell_height) DECLSPEC_HIDDEN
Definition: graphics.c:101
INT MFDRV_SetTextCharacterExtra(PHYSDEV dev, INT extra) DECLSPEC_HIDDEN
Definition: dc.c:138
BOOL MFDRV_PatBlt(PHYSDEV dev, struct bitblt_coords *dst, DWORD rop) DECLSPEC_HIDDEN
Definition: bitblt.c:31
BOOL MFDRV_WidenPath(PHYSDEV dev) DECLSPEC_HIDDEN
Definition: dc.c:193
BOOL MFDRV_PolyPolygon(PHYSDEV dev, const POINT *pt, const INT *counts, UINT polygons) DECLSPEC_HIDDEN
Definition: graphics.c:190
BOOL MFDRV_StrokePath(PHYSDEV dev) DECLSPEC_HIDDEN
Definition: dc.c:188
UINT MFDRV_AddHandle(PHYSDEV dev, HGDIOBJ obj) DECLSPEC_HIDDEN
Definition: objects.c:39
BOOL MFDRV_StretchBlt(PHYSDEV devDst, struct bitblt_coords *dst, PHYSDEV devSrc, struct bitblt_coords *src, DWORD rop) DECLSPEC_HIDDEN
Definition: bitblt.c:47
INT MFDRV_SetDIBitsToDevice(PHYSDEV dev, INT xDest, INT yDest, DWORD cx, DWORD cy, INT xSrc, INT ySrc, UINT startscan, UINT lines, LPCVOID bits, BITMAPINFO *info, UINT coloruse) DECLSPEC_HIDDEN
Definition: bitblt.c:166
HFONT MFDRV_SelectFont(PHYSDEV dev, HFONT handle, UINT *aa_flags) DECLSPEC_HIDDEN
Definition: objects.c:292
BOOL MFDRV_ExtFloodFill(PHYSDEV dev, INT x, INT y, COLORREF color, UINT fillType) DECLSPEC_HIDDEN
Definition: graphics.c:244
BOOL MFDRV_Ellipse(PHYSDEV dev, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
Definition: graphics.c:85
BOOL MFDRV_OffsetViewportOrgEx(PHYSDEV dev, INT x, INT y, POINT *pt) DECLSPEC_HIDDEN
Definition: dc.c:113
BOOL MFDRV_RemoveHandle(PHYSDEV dev, UINT index) DECLSPEC_HIDDEN
Definition: objects.c:64
BOOL MFDRV_Polygon(PHYSDEV dev, const POINT *pt, INT count) DECLSPEC_HIDDEN
Definition: graphics.c:167
static HBITMAP
Definition: button.c:44
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
static int rop(int rop, int src, int dst)
Definition: nanoxwin.c:124
unsigned int UINT
Definition: ndis.h:50
_Out_opt_ int _Out_opt_ int * cy
Definition: commctrl.h:586
_Out_opt_ int * cx
Definition: commctrl.h:585
const WCHAR * str
METAHEADER * mh
Definition: metafiledrv.h:36
eMaj lines
Definition: tritemp.h:206
int32_t INT
Definition: typedefs.h:58
_In_ ULONG iMode
Definition: winddi.h:3520
DWORD COLORREF
Definition: windef.h:300
CONST void * LPCVOID
Definition: windef.h:191
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185