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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, 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 return MFDRV_MetaParam1( dev, META_RESTOREDC, level ); 31 } 32 33 UINT MFDRV_SetTextAlign( PHYSDEV dev, UINT align ) 34 { 35 return MFDRV_MetaParam2( dev, META_SETTEXTALIGN, HIWORD(align), LOWORD(align)) ? align : GDI_ERROR; 36 } 37 38 INT MFDRV_SetBkMode( PHYSDEV dev, INT mode ) 39 { 40 return MFDRV_MetaParam1( dev, META_SETBKMODE, (WORD)mode) ? mode : 0; 41 } 42 43 COLORREF MFDRV_SetBkColor( PHYSDEV dev, COLORREF color ) 44 { 45 return MFDRV_MetaParam2(dev, META_SETBKCOLOR, HIWORD(color), LOWORD(color)) ? color : CLR_INVALID; 46 } 47 48 COLORREF MFDRV_SetTextColor( PHYSDEV dev, COLORREF color ) 49 { 50 return MFDRV_MetaParam2(dev, META_SETTEXTCOLOR, HIWORD(color), LOWORD(color)) ? color : CLR_INVALID; 51 } 52 53 INT MFDRV_SetROP2( PHYSDEV dev, INT rop ) 54 { 55 return MFDRV_MetaParam1( dev, META_SETROP2, (WORD)rop) ? rop : 0; 56 } 57 58 INT MFDRV_SetRelAbs( PHYSDEV dev, INT mode ) 59 { 60 return MFDRV_MetaParam1( dev, META_SETRELABS, (WORD)mode) ? mode : 0; 61 } 62 63 INT MFDRV_SetPolyFillMode( PHYSDEV dev, INT mode ) 64 { 65 return MFDRV_MetaParam1( dev, META_SETPOLYFILLMODE, (WORD)mode) ? mode : 0; 66 } 67 68 INT MFDRV_SetStretchBltMode( PHYSDEV dev, INT mode ) 69 { 70 return MFDRV_MetaParam1( dev, META_SETSTRETCHBLTMODE, (WORD)mode) ? mode : 0; 71 } 72 73 INT MFDRV_IntersectClipRect( PHYSDEV dev, INT left, INT top, INT right, INT bottom ) 74 { 75 return MFDRV_MetaParam4( dev, META_INTERSECTCLIPRECT, left, top, right, bottom ); 76 } 77 78 INT MFDRV_ExcludeClipRect( PHYSDEV dev, INT left, INT top, INT right, INT bottom ) 79 { 80 return MFDRV_MetaParam4( dev, META_EXCLUDECLIPRECT, left, top, right, bottom ); 81 } 82 83 INT MFDRV_OffsetClipRgn( PHYSDEV dev, INT x, INT y ) 84 { 85 return MFDRV_MetaParam2( dev, META_OFFSETCLIPRGN, x, y ); 86 } 87 88 INT MFDRV_SetMapMode( PHYSDEV dev, INT mode ) 89 { 90 return MFDRV_MetaParam1( dev, META_SETMAPMODE, mode ); 91 } 92 93 BOOL MFDRV_SetViewportExtEx( PHYSDEV dev, INT x, INT y, SIZE *size ) 94 { 95 return MFDRV_MetaParam2( dev, META_SETVIEWPORTEXT, x, y ); 96 } 97 98 BOOL MFDRV_SetViewportOrgEx( PHYSDEV dev, INT x, INT y, POINT *pt ) 99 { 100 return MFDRV_MetaParam2( dev, META_SETVIEWPORTORG, x, y ); 101 } 102 103 BOOL MFDRV_SetWindowExtEx( PHYSDEV dev, INT x, INT y, SIZE *size ) 104 { 105 return MFDRV_MetaParam2( dev, META_SETWINDOWEXT, x, y ); 106 } 107 108 BOOL MFDRV_SetWindowOrgEx( PHYSDEV dev, INT x, INT y, POINT *pt ) 109 { 110 return MFDRV_MetaParam2( dev, META_SETWINDOWORG, x, y ); 111 } 112 113 BOOL MFDRV_OffsetViewportOrgEx( PHYSDEV dev, INT x, INT y, POINT *pt ) 114 { 115 return MFDRV_MetaParam2( dev, META_OFFSETVIEWPORTORG, x, y ); 116 } 117 118 BOOL MFDRV_OffsetWindowOrgEx( PHYSDEV dev, INT x, INT y, POINT *pt ) 119 { 120 return MFDRV_MetaParam2( dev, META_OFFSETWINDOWORG, x, y ); 121 } 122 123 BOOL MFDRV_ScaleViewportExtEx( PHYSDEV dev, INT xNum, INT xDenom, INT yNum, INT yDenom, SIZE *size ) 124 { 125 return MFDRV_MetaParam4( dev, META_SCALEVIEWPORTEXT, xNum, xDenom, yNum, yDenom ); 126 } 127 128 BOOL MFDRV_ScaleWindowExtEx( PHYSDEV dev, INT xNum, INT xDenom, INT yNum, INT yDenom, SIZE *size ) 129 { 130 return MFDRV_MetaParam4( dev, META_SCALEWINDOWEXT, xNum, xDenom, yNum, yDenom ); 131 } 132 133 BOOL MFDRV_SetTextJustification( PHYSDEV dev, INT extra, INT breaks ) 134 { 135 return MFDRV_MetaParam2( dev, META_SETTEXTJUSTIFICATION, extra, breaks ); 136 } 137 138 INT MFDRV_SetTextCharacterExtra( PHYSDEV dev, INT extra ) 139 { 140 return MFDRV_MetaParam1( dev, META_SETTEXTCHAREXTRA, extra ) ? extra : 0x80000000; 141 } 142 143 DWORD MFDRV_SetMapperFlags( PHYSDEV dev, DWORD flags ) 144 { 145 return MFDRV_MetaParam2( dev, META_SETMAPPERFLAGS, HIWORD(flags), LOWORD(flags) ) ? flags : GDI_ERROR; 146 } 147 148 BOOL MFDRV_AbortPath( PHYSDEV dev ) 149 { 150 return FALSE; 151 } 152 153 BOOL MFDRV_BeginPath( PHYSDEV dev ) 154 { 155 return FALSE; 156 } 157 158 BOOL MFDRV_CloseFigure( PHYSDEV dev ) 159 { 160 return FALSE; 161 } 162 163 BOOL MFDRV_EndPath( PHYSDEV dev ) 164 { 165 return FALSE; 166 } 167 168 BOOL MFDRV_FillPath( PHYSDEV dev ) 169 { 170 return FALSE; 171 } 172 173 BOOL MFDRV_FlattenPath( PHYSDEV dev ) 174 { 175 return FALSE; 176 } 177 178 BOOL MFDRV_SelectClipPath( PHYSDEV dev, INT iMode ) 179 { 180 return FALSE; 181 } 182 183 BOOL MFDRV_StrokeAndFillPath( PHYSDEV dev ) 184 { 185 return FALSE; 186 } 187 188 BOOL MFDRV_StrokePath( PHYSDEV dev ) 189 { 190 return FALSE; 191 } 192 193 BOOL MFDRV_WidenPath( PHYSDEV dev ) 194 { 195 return FALSE; 196 } 197 198 COLORREF MFDRV_SetDCBrushColor( PHYSDEV dev, COLORREF color ) 199 { 200 return CLR_INVALID; 201 } 202 203 COLORREF MFDRV_SetDCPenColor( PHYSDEV dev, COLORREF color ) 204 { 205 return CLR_INVALID; 206 } 207