From 8c1291974450850de52f07f66f56a5597929955e Mon Sep 17 00:00:00 2001 From: Evan Stade Date: Fri, 6 Jul 2007 16:14:17 -0700 Subject: [PATCH] gdiplus: Added GdipClosePathFigure. --- dlls/gdiplus/gdiplus.spec | 2 +- dlls/gdiplus/graphicspath.c | 13 +++++++++++++ include/gdiplusflat.h | 1 + 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec index 4ab38bada0..8b665fcdd5 100644 --- a/dlls/gdiplus/gdiplus.spec +++ b/dlls/gdiplus/gdiplus.spec @@ -54,7 +54,7 @@ @ stub GdipClonePen @ stub GdipCloneRegion @ stub GdipCloneStringFormat -@ stub GdipClosePathFigure +@ stdcall GdipClosePathFigure(ptr) @ stub GdipClosePathFigures @ stub GdipCombineRegionPath @ stub GdipCombineRegionRect diff --git a/dlls/gdiplus/graphicspath.c b/dlls/gdiplus/graphicspath.c index f8d2d49261..c06576cc18 100644 --- a/dlls/gdiplus/graphicspath.c +++ b/dlls/gdiplus/graphicspath.c @@ -90,6 +90,19 @@ GpStatus WINGDIPAPI GdipAddPathLine2(GpPath *path, GDIPCONST GpPointF *points, return Ok; } +GpStatus WINGDIPAPI GdipClosePathFigure(GpPath* path) +{ + if(!path) + return InvalidParameter; + + if(path->pathdata.Count > 0){ + path->pathdata.Types[path->pathdata.Count - 1] |= PathPointTypeCloseSubpath; + path->newfigure = TRUE; + } + + return Ok; +} + GpStatus WINGDIPAPI GdipCreatePath(GpFillMode fill, GpPath **path) { if(!path) diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h index 42a60b9ffc..3546883005 100644 --- a/include/gdiplusflat.h +++ b/include/gdiplusflat.h @@ -49,6 +49,7 @@ GpStatus WINGDIPAPI GdipGetBrushType(GpBrush*,GpBrushType*); GpStatus WINGDIPAPI GdipDeleteBrush(GpBrush*); GpStatus WINGDIPAPI GdipAddPathLine2(GpPath*,GDIPCONST GpPointF*,INT); +GpStatus WINGDIPAPI GdipClosePathFigure(GpPath*); GpStatus WINGDIPAPI GdipCreatePath(GpFillMode,GpPath**); GpStatus WINGDIPAPI GdipDeletePath(GpPath*);