Evan Stade : gdiplus: Added GdipGetPathTypes.

Alexandre Julliard julliard at wine.codeweavers.com
Mon Jul 9 10:25:02 CDT 2007


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

Author: Evan Stade <estade at gmail.com>
Date:   Fri Jul  6 16:14:44 2007 -0700

gdiplus: Added GdipGetPathTypes.

---

 dlls/gdiplus/gdiplus.spec   |    2 +-
 dlls/gdiplus/graphicspath.c |   13 +++++++++++++
 include/gdiplusflat.h       |    1 +
 3 files changed, 15 insertions(+), 1 deletions(-)

diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index d0ce8d9..2d001ff 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -329,7 +329,7 @@
 @ stub GdipGetPathLastPoint
 @ stdcall GdipGetPathPoints(ptr ptr long)
 @ stub GdipGetPathPointsI
-@ stub GdipGetPathTypes
+@ stdcall GdipGetPathTypes(ptr ptr long)
 @ stub GdipGetPathWorldBounds
 @ stub GdipGetPathWorldBoundsI
 @ stub GdipGetPenBrushFill
diff --git a/dlls/gdiplus/graphicspath.c b/dlls/gdiplus/graphicspath.c
index 6f52d47..40975b2 100644
--- a/dlls/gdiplus/graphicspath.c
+++ b/dlls/gdiplus/graphicspath.c
@@ -157,6 +157,19 @@ GpStatus WINGDIPAPI GdipGetPathPoints(GpPath *path, GpPointF* points, INT count)
     return Ok;
 }
 
+GpStatus WINGDIPAPI GdipGetPathTypes(GpPath *path, BYTE* types, INT count)
+{
+    if(!path)
+        return InvalidParameter;
+
+    if(count < path->pathdata.Count)
+        return InsufficientBuffer;
+
+    memcpy(types, path->pathdata.Types, path->pathdata.Count);
+
+    return Ok;
+}
+
 GpStatus WINGDIPAPI GdipGetPointCount(GpPath *path, INT *count)
 {
     if(!path)
diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h
index 0d38be9..d9f5f9a 100644
--- a/include/gdiplusflat.h
+++ b/include/gdiplusflat.h
@@ -54,6 +54,7 @@ GpStatus WINGDIPAPI GdipClosePathFigures(GpPath*);
 GpStatus WINGDIPAPI GdipCreatePath(GpFillMode,GpPath**);
 GpStatus WINGDIPAPI GdipDeletePath(GpPath*);
 GpStatus WINGDIPAPI GdipGetPathPoints(GpPath*,GpPointF*,INT);
+GpStatus WINGDIPAPI GdipGetPathTypes(GpPath*,BYTE*,INT);
 GpStatus WINGDIPAPI GdipGetPointCount(GpPath*,INT*);
 
 #ifdef __cplusplus




More information about the wine-cvs mailing list