gdiplus: Implement GdipEnumerateMetafileDestRect and GdipEnumerateMetafileDestRectI.
This commit is contained in:
parent
19e2b37f0e
commit
69d74ece53
|
@ -194,8 +194,8 @@
|
||||||
194 stub GdipEnumerateMetafileDestPointI
|
194 stub GdipEnumerateMetafileDestPointI
|
||||||
195 stub GdipEnumerateMetafileDestPoints
|
195 stub GdipEnumerateMetafileDestPoints
|
||||||
196 stub GdipEnumerateMetafileDestPointsI
|
196 stub GdipEnumerateMetafileDestPointsI
|
||||||
197 stub GdipEnumerateMetafileDestRect
|
197 stdcall GdipEnumerateMetafileDestRect(ptr ptr ptr ptr ptr ptr)
|
||||||
198 stub GdipEnumerateMetafileDestRectI
|
198 stdcall GdipEnumerateMetafileDestRectI(ptr ptr ptr ptr ptr ptr)
|
||||||
199 stub GdipEnumerateMetafileSrcRectDestPoint
|
199 stub GdipEnumerateMetafileSrcRectDestPoint
|
||||||
200 stub GdipEnumerateMetafileSrcRectDestPointI
|
200 stub GdipEnumerateMetafileSrcRectDestPointI
|
||||||
201 stdcall GdipEnumerateMetafileSrcRectDestPoints(ptr ptr ptr long ptr long ptr ptr ptr)
|
201 stdcall GdipEnumerateMetafileSrcRectDestPoints(ptr ptr ptr long ptr long ptr ptr ptr)
|
||||||
|
|
|
@ -551,6 +551,39 @@ GpStatus WINGDIPAPI GdipEnumerateMetafileSrcRectDestPoints(GpGraphics *graphics,
|
||||||
return stat;
|
return stat;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipEnumerateMetafileDestRect(GpGraphics *graphics,
|
||||||
|
GDIPCONST GpMetafile *metafile, GDIPCONST GpRectF *dest,
|
||||||
|
EnumerateMetafileProc callback, VOID *cb_data, GDIPCONST GpImageAttributes *attrs)
|
||||||
|
{
|
||||||
|
GpPointF points[3];
|
||||||
|
|
||||||
|
if (!graphics || !metafile || !dest) return InvalidParameter;
|
||||||
|
|
||||||
|
points[0].X = points[2].X = dest->X;
|
||||||
|
points[0].Y = points[1].Y = dest->Y;
|
||||||
|
points[1].X = dest->X + dest->Width;
|
||||||
|
points[2].Y = dest->Y + dest->Height;
|
||||||
|
|
||||||
|
return GdipEnumerateMetafileSrcRectDestPoints(graphics, metafile, points, 3,
|
||||||
|
&metafile->bounds, metafile->unit, callback, cb_data, attrs);
|
||||||
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipEnumerateMetafileDestRectI(GpGraphics *graphics,
|
||||||
|
GDIPCONST GpMetafile *metafile, GDIPCONST GpRect *dest,
|
||||||
|
EnumerateMetafileProc callback, VOID *cb_data, GDIPCONST GpImageAttributes *attrs)
|
||||||
|
{
|
||||||
|
GpRectF destf;
|
||||||
|
|
||||||
|
if (!graphics || !metafile || !dest) return InvalidParameter;
|
||||||
|
|
||||||
|
destf.X = dest->X;
|
||||||
|
destf.Y = dest->Y;
|
||||||
|
destf.Width = dest->Width;
|
||||||
|
destf.Height = dest->Height;
|
||||||
|
|
||||||
|
return GdipEnumerateMetafileDestRect(graphics, metafile, &destf, callback, cb_data, attrs);
|
||||||
|
}
|
||||||
|
|
||||||
static int CALLBACK get_metafile_type_proc(HDC hDC, HANDLETABLE *lpHTable, const ENHMETARECORD *lpEMFR,
|
static int CALLBACK get_metafile_type_proc(HDC hDC, HANDLETABLE *lpHTable, const ENHMETARECORD *lpEMFR,
|
||||||
int nObj, LPARAM lpData)
|
int nObj, LPARAM lpData)
|
||||||
{
|
{
|
||||||
|
|
|
@ -206,6 +206,10 @@ GpStatus WINGDIPAPI GdipDrawRectanglesI(GpGraphics*,GpPen*,GDIPCONST GpRect*,INT
|
||||||
GpStatus WINGDIPAPI GdipDrawString(GpGraphics*,GDIPCONST WCHAR*,INT,
|
GpStatus WINGDIPAPI GdipDrawString(GpGraphics*,GDIPCONST WCHAR*,INT,
|
||||||
GDIPCONST GpFont*,GDIPCONST RectF*, GDIPCONST GpStringFormat*,
|
GDIPCONST GpFont*,GDIPCONST RectF*, GDIPCONST GpStringFormat*,
|
||||||
GDIPCONST GpBrush*);
|
GDIPCONST GpBrush*);
|
||||||
|
GpStatus WINGDIPAPI GdipEnumerateMetafileDestRect(GpGraphics*,GDIPCONST GpMetafile*,
|
||||||
|
GDIPCONST GpRectF*,EnumerateMetafileProc,VOID*,GDIPCONST GpImageAttributes*);
|
||||||
|
GpStatus WINGDIPAPI GdipEnumerateMetafileDestRectI(GpGraphics*,GDIPCONST GpMetafile*,
|
||||||
|
GDIPCONST GpRect*,EnumerateMetafileProc,VOID*,GDIPCONST GpImageAttributes*);
|
||||||
GpStatus WINGDIPAPI GdipEnumerateMetafileSrcRectDestPoints(GpGraphics*,
|
GpStatus WINGDIPAPI GdipEnumerateMetafileSrcRectDestPoints(GpGraphics*,
|
||||||
GDIPCONST GpMetafile*,GDIPCONST GpPointF*,INT,GDIPCONST GpRectF*,Unit,
|
GDIPCONST GpMetafile*,GDIPCONST GpPointF*,INT,GDIPCONST GpRectF*,Unit,
|
||||||
EnumerateMetafileProc,VOID*,GDIPCONST GpImageAttributes*);
|
EnumerateMetafileProc,VOID*,GDIPCONST GpImageAttributes*);
|
||||||
|
|
Loading…
Reference in New Issue