gdiplus: Implement GdipDrawImagePoints.

This commit is contained in:
Vincent Povirk 2012-01-11 11:23:09 -06:00 committed by Alexandre Julliard
parent 2329f91998
commit aba9ddc4a0

View File

@ -2528,15 +2528,38 @@ GpStatus WINGDIPAPI GdipDrawImagePointRectI(GpGraphics *graphics, GpImage *image
GpStatus WINGDIPAPI GdipDrawImagePoints(GpGraphics *graphics, GpImage *image, GpStatus WINGDIPAPI GdipDrawImagePoints(GpGraphics *graphics, GpImage *image,
GDIPCONST GpPointF *dstpoints, INT count) GDIPCONST GpPointF *dstpoints, INT count)
{ {
FIXME("(%p, %p, %p, %d): stub\n", graphics, image, dstpoints, count); UINT width, height;
return NotImplemented;
TRACE("(%p, %p, %p, %d)\n", graphics, image, dstpoints, count);
if(!image)
return InvalidParameter;
GdipGetImageWidth(image, &width);
GdipGetImageHeight(image, &height);
return GdipDrawImagePointsRect(graphics, image, dstpoints, count, 0, 0,
width, height, UnitPixel, NULL, NULL, NULL);
} }
GpStatus WINGDIPAPI GdipDrawImagePointsI(GpGraphics *graphics, GpImage *image, GpStatus WINGDIPAPI GdipDrawImagePointsI(GpGraphics *graphics, GpImage *image,
GDIPCONST GpPoint *dstpoints, INT count) GDIPCONST GpPoint *dstpoints, INT count)
{ {
FIXME("(%p, %p, %p, %d): stub\n", graphics, image, dstpoints, count); GpPointF ptf[3];
return NotImplemented;
TRACE("(%p, %p, %p, %d)\n", graphics, image, dstpoints, count);
if (count != 3 || !dstpoints)
return InvalidParameter;
ptf[0].X = (REAL)dstpoints[0].X;
ptf[0].Y = (REAL)dstpoints[0].Y;
ptf[1].X = (REAL)dstpoints[1].X;
ptf[1].Y = (REAL)dstpoints[1].Y;
ptf[2].X = (REAL)dstpoints[2].X;
ptf[2].Y = (REAL)dstpoints[2].Y;
return GdipDrawImagePoints(graphics, image, ptf, count);
} }
GpStatus WINGDIPAPI GdipDrawImagePointsRect(GpGraphics *graphics, GpImage *image, GpStatus WINGDIPAPI GdipDrawImagePointsRect(GpGraphics *graphics, GpImage *image,