Nikolay Sivov : gdiplus: Implemented GdipDrawCurve2I.

Alexandre Julliard julliard at winehq.org
Tue Apr 29 08:54:38 CDT 2008


Module: wine
Branch: master
Commit: 00cfffbcb3653ecef6a59240b72df5c9b0e25b74
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=00cfffbcb3653ecef6a59240b72df5c9b0e25b74

Author: Nikolay Sivov <bunglehead at gmail.com>
Date:   Tue Apr 29 00:09:44 2008 +0400

gdiplus: Implemented GdipDrawCurve2I.

---

 dlls/gdiplus/gdiplus.spec |    2 +-
 dlls/gdiplus/graphics.c   |   25 +++++++++++++++++++++++++
 2 files changed, 26 insertions(+), 1 deletions(-)

diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index 2c70823..298c5f7 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -164,7 +164,7 @@
 @ stub GdipDrawClosedCurve
 @ stub GdipDrawClosedCurveI
 @ stdcall GdipDrawCurve2(ptr ptr ptr long long)
-@ stub GdipDrawCurve2I
+@ stdcall GdipDrawCurve2I(ptr ptr ptr long long)
 @ stub GdipDrawCurve3
 @ stub GdipDrawCurve3I
 @ stub GdipDrawCurve
diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c
index b8a2efa..d918d99 100644
--- a/dlls/gdiplus/graphics.c
+++ b/dlls/gdiplus/graphics.c
@@ -1059,6 +1059,31 @@ GpStatus WINGDIPAPI GdipDrawCurve2(GpGraphics *graphics, GpPen *pen,
     return retval;
 }
 
+GpStatus WINGDIPAPI GdipDrawCurve2I(GpGraphics *graphics, GpPen *pen,
+    GDIPCONST GpPoint *points, INT count, REAL tension)
+{
+    GpPointF *pointsF;
+    GpStatus ret;
+    INT i;
+
+    if(!points || count <= 0)
+        return InvalidParameter;
+
+    pointsF = GdipAlloc(sizeof(GpPointF)*count);
+    if(!pointsF)
+        return OutOfMemory;
+
+    for(i = 0; i < count; i++){
+        pointsF[i].X = (REAL)points[i].X;
+        pointsF[i].Y = (REAL)points[i].Y;
+    }
+
+    ret = GdipDrawCurve2(graphics,pen,pointsF,count,tension);
+    GdipFree(pointsF);
+
+    return ret;
+}
+
 GpStatus WINGDIPAPI GdipDrawImageI(GpGraphics *graphics, GpImage *image, INT x,
     INT y)
 {




More information about the wine-cvs mailing list