Module: wine Branch: master Commit: 06206fc4a5a8cbfa31b40fa570f2572f06c27217 URL: http://source.winehq.org/git/wine.git/?a=commit;h=06206fc4a5a8cbfa31b40fa570...
Author: Evan Stade estade@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