[6/8] gdiplus: GdipPathIterGetCount implementation

Nikolay Sivov bunglehead at gmail.com
Mon Jun 23 16:57:15 CDT 2008


Changelog:
    - GdipPathIterGetCount implementation

---
 dlls/gdiplus/gdiplus.spec   |    2 +-
 dlls/gdiplus/pathiterator.c |   10 ++++++++++
 include/gdiplusflat.h       |    1 +
 3 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index fd907c6..329299d 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -452,7 +452,7 @@
 @ stub GdipNewPrivateFontCollection
 @ stdcall GdipPathIterCopyData(ptr ptr ptr ptr long long)
 @ stub GdipPathIterEnumerate
-@ stub GdipPathIterGetCount
+@ stdcall GdipPathIterGetCount(ptr ptr)
 @ stub GdipPathIterGetSubpathCount
 @ stub GdipPathIterHasCurve
 @ stub GdipPathIterIsValid
diff --git a/dlls/gdiplus/pathiterator.c b/dlls/gdiplus/pathiterator.c
index d1e4e88..67d83a4 100644
--- a/dlls/gdiplus/pathiterator.c
+++ b/dlls/gdiplus/pathiterator.c
@@ -131,3 +131,13 @@ GpStatus WINGDIPAPI GdipPathIterRewind(GpPathIterator *iterator)
 
     return Ok;
 }
+
+GpStatus WINGDIPAPI GdipPathIterGetCount(GpPathIterator* iterator, INT* count)
+{
+    if(!iterator || !count)
+        return InvalidParameter;
+
+    *count = iterator->pathdata.Count;
+
+    return Ok;
+}
diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h
index 1c6e2a4..1efe516 100644
--- a/include/gdiplusflat.h
+++ b/include/gdiplusflat.h
@@ -269,6 +269,7 @@ GpStatus WINGDIPAPI GdipPathIterCopyData(GpPathIterator*,INT*,GpPointF*,BYTE*,
     INT,INT);
 GpStatus WINGDIPAPI GdipPathIterNextSubpath(GpPathIterator*,INT*,INT*,INT*,BOOL*);
 GpStatus WINGDIPAPI GdipPathIterRewind(GpPathIterator*);
+GpStatus WINGDIPAPI GdipPathIterGetCount(GpPathIterator*,INT*);
 
 GpStatus WINGDIPAPI GdipCloneCustomLineCap(GpCustomLineCap*,GpCustomLineCap**);
 GpStatus WINGDIPAPI GdipCreateCustomLineCap(GpPath*,GpPath*,GpLineCap,REAL,
-- 
1.4.4.4






More information about the wine-patches mailing list