From 460f01b3208dd0f6e1892d22d40a3105dd26ba86 Mon Sep 17 00:00:00 2001 From: Evan Stade Date: Mon, 30 Jul 2007 19:09:45 -0700 Subject: [PATCH] gdiplus: Added GdipDrawImagePointsRect stub. --- dlls/gdiplus/gdiplus.spec | 2 +- dlls/gdiplus/graphics.c | 16 ++++++++++++++++ include/gdiplusflat.h | 3 +++ include/gdiplustypes.h | 3 +++ 4 files changed, 23 insertions(+), 1 deletion(-) diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec index a727ff33430..d015c357737 100644 --- a/dlls/gdiplus/gdiplus.spec +++ b/dlls/gdiplus/gdiplus.spec @@ -168,7 +168,7 @@ @ stub GdipDrawImagePointRectI @ stub GdipDrawImagePoints @ stub GdipDrawImagePointsI -@ stub GdipDrawImagePointsRect +@ stdcall GdipDrawImagePointsRect(ptr ptr ptr long long long long long long ptr ptr ptr) @ stub GdipDrawImagePointsRectI @ stub GdipDrawImageRect @ stub GdipDrawImageRectI diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c index 24d61d3843d..2f582b2a953 100644 --- a/dlls/gdiplus/graphics.c +++ b/dlls/gdiplus/graphics.c @@ -1016,6 +1016,22 @@ GpStatus WINGDIPAPI GdipDrawCurve2(GpGraphics *graphics, GpPen *pen, return retval; } +GpStatus WINGDIPAPI GdipDrawImagePointsRect(GpGraphics *graphics, GpImage *image, + GDIPCONST GpPointF *points, INT count, REAL srcx, REAL srcy, REAL srcwidth, + REAL srcheight, GpUnit srcUnit, GDIPCONST GpImageAttributes* imageAttributes, + DrawImageAbort callback, VOID * callbackData) +{ + static int calls; + + if(!graphics || !image || !points || !imageAttributes) + return InvalidParameter; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + GpStatus WINGDIPAPI GdipDrawLineI(GpGraphics *graphics, GpPen *pen, INT x1, INT y1, INT x2, INT y2) { diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h index 7e2a84d5f1f..e4c5ba0d36a 100644 --- a/include/gdiplusflat.h +++ b/include/gdiplusflat.h @@ -56,6 +56,9 @@ GpStatus WINGDIPAPI GdipDrawArc(GpGraphics*,GpPen*,REAL,REAL,REAL,REAL,REAL,REAL GpStatus WINGDIPAPI GdipDrawBezier(GpGraphics*,GpPen*,REAL,REAL,REAL,REAL,REAL, REAL,REAL,REAL); GpStatus WINGDIPAPI GdipDrawCurve2(GpGraphics*,GpPen*,GDIPCONST GpPointF*,INT,REAL); +GpStatus WINGDIPAPI GdipDrawImagePointsRect(GpGraphics*,GpImage*, + GDIPCONST GpPointF*,INT,REAL,REAL,REAL,REAL,GpUnit, + GDIPCONST GpImageAttributes*,DrawImageAbort,VOID*); GpStatus WINGDIPAPI GdipDrawLineI(GpGraphics*,GpPen*,INT,INT,INT,INT); GpStatus WINGDIPAPI GdipDrawLines(GpGraphics*,GpPen*,GDIPCONST GpPointF*,INT); GpStatus WINGDIPAPI GdipDrawPath(GpGraphics*,GpPen*,GpPath*); diff --git a/include/gdiplustypes.h b/include/gdiplustypes.h index 426ab7a0d74..c316073c5d5 100644 --- a/include/gdiplustypes.h +++ b/include/gdiplustypes.h @@ -21,6 +21,9 @@ typedef float REAL; +typedef BOOL (CALLBACK * ImageAbort)(VOID *); +typedef ImageAbort DrawImageAbort; + enum Status{ Ok = 0, GenericError = 1,