gdi: Add a test which shows that GDI does not support compressed DIB sections.
[wine] / dlls / gdi / mfdrv / dc.c
1 /*
2  * MetaFile driver DC value functions
3  *
4  * Copyright 1999 Huw D M Davies
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., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  */
20
21 #include "mfdrv/metafiledrv.h"
22
23 INT MFDRV_SaveDC( PHYSDEV dev )
24 {
25     return MFDRV_MetaParam0( dev, META_SAVEDC );
26 }
27
28 BOOL MFDRV_RestoreDC( PHYSDEV dev, INT level )
29 {
30     if(level != -1) return FALSE;
31     return MFDRV_MetaParam1( dev, META_RESTOREDC, level );
32 }
33
34 UINT MFDRV_SetTextAlign( PHYSDEV dev, UINT align )
35 {
36     return MFDRV_MetaParam2( dev, META_SETTEXTALIGN, HIWORD(align), LOWORD(align));
37 }
38
39 INT MFDRV_SetBkMode( PHYSDEV dev, INT mode )
40 {
41     return MFDRV_MetaParam1( dev, META_SETBKMODE, (WORD)mode);
42 }
43
44 INT MFDRV_SetROP2( PHYSDEV dev, INT rop )
45 {
46     return MFDRV_MetaParam1( dev, META_SETROP2, (WORD)rop);
47 }
48
49 INT MFDRV_SetRelAbs( PHYSDEV dev, INT mode )
50 {
51     return MFDRV_MetaParam1( dev, META_SETRELABS, (WORD)mode);
52 }
53
54 INT MFDRV_SetPolyFillMode( PHYSDEV dev, INT mode )
55 {
56     return MFDRV_MetaParam1( dev, META_SETPOLYFILLMODE, (WORD)mode);
57 }
58
59 INT MFDRV_SetStretchBltMode( PHYSDEV dev, INT mode )
60 {
61     return MFDRV_MetaParam1( dev, META_SETSTRETCHBLTMODE, (WORD)mode);
62 }
63
64 INT MFDRV_IntersectClipRect( PHYSDEV dev, INT left, INT top, INT right, INT bottom )
65 {
66     return MFDRV_MetaParam4( dev, META_INTERSECTCLIPRECT, left, top, right,
67                              bottom );
68 }
69
70 INT MFDRV_ExcludeClipRect( PHYSDEV dev, INT left, INT top, INT right, INT bottom )
71 {
72     return MFDRV_MetaParam4( dev, META_EXCLUDECLIPRECT, left, top, right,
73                              bottom );
74 }
75
76 INT MFDRV_OffsetClipRgn( PHYSDEV dev, INT x, INT y )
77 {
78     return MFDRV_MetaParam2( dev, META_OFFSETCLIPRGN, x, y );
79 }
80
81 INT MFDRV_SetTextJustification( PHYSDEV dev, INT extra, INT breaks )
82 {
83     return MFDRV_MetaParam2( dev, META_SETTEXTJUSTIFICATION, extra, breaks );
84 }
85
86 INT MFDRV_SetTextCharacterExtra( PHYSDEV dev, INT extra )
87 {
88     if(!MFDRV_MetaParam1( dev, META_SETTEXTCHAREXTRA, extra ))
89         return 0x80000000;
90     return TRUE;
91 }
92
93 DWORD MFDRV_SetMapperFlags( PHYSDEV dev, DWORD flags )
94 {
95     return MFDRV_MetaParam2( dev, META_SETMAPPERFLAGS, HIWORD(flags),
96                              LOWORD(flags) );
97 }
98
99 BOOL MFDRV_AbortPath( PHYSDEV dev )
100 {
101     return FALSE;
102 }
103
104 BOOL MFDRV_BeginPath( PHYSDEV dev )
105 {
106     return FALSE;
107 }
108
109 BOOL MFDRV_CloseFigure( PHYSDEV dev )
110 {
111     return FALSE;
112 }
113
114 BOOL MFDRV_EndPath( PHYSDEV dev )
115 {
116     return FALSE;
117 }
118
119 BOOL MFDRV_FillPath( PHYSDEV dev )
120 {
121     return FALSE;
122 }
123
124 BOOL MFDRV_FlattenPath( PHYSDEV dev )
125 {
126     return FALSE;
127 }
128
129 BOOL MFDRV_SelectClipPath( PHYSDEV dev, INT iMode )
130 {
131     return FALSE;
132 }
133
134 BOOL MFDRV_StrokeAndFillPath( PHYSDEV dev )
135 {
136     return FALSE;
137 }
138
139 BOOL MFDRV_StrokePath( PHYSDEV dev )
140 {
141     return FALSE;
142 }
143
144 BOOL MFDRV_WidenPath( PHYSDEV dev )
145 {
146     return FALSE;
147 }