[14/18] gdiplus: added GdipTransformPath
Evan Stade
estade at gmail.com
Wed Jul 11 20:08:05 CDT 2007
Hi,
dlls/gdiplus/gdiplus.spec | 2 +-
dlls/gdiplus/graphicspath.c | 12 ++++++++++++
include/gdiplusflat.h | 1 +
3 files changed, 14 insertions(+), 1 deletions(-)
--
Evan Stade
-------------- next part --------------
diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index 5879360..c1d6725 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -584,7 +584,7 @@
@ stub GdipTestControl
@ stdcall GdipTransformMatrixPoints(ptr ptr long)
@ stub GdipTransformMatrixPointsI
-@ stub GdipTransformPath
+@ stdcall GdipTransformPath(ptr ptr)
@ stub GdipTransformPoints
@ stub GdipTransformPointsI
@ stub GdipTransformRegion
diff --git a/dlls/gdiplus/graphicspath.c b/dlls/gdiplus/graphicspath.c
index 394b9f6..4665fca 100644
--- a/dlls/gdiplus/graphicspath.c
+++ b/dlls/gdiplus/graphicspath.c
@@ -222,3 +222,15 @@ GpStatus WINGDIPAPI GdipStartPathFigure(
return Ok;
}
+
+GpStatus WINGDIPAPI GdipTransformPath(GpPath *path, GpMatrix *matrix)
+{
+ if(!path)
+ return InvalidParameter;
+
+ if(path->pathdata.Count == 0)
+ return Ok;
+
+ return GdipTransformMatrixPoints(matrix, (GpPointF*) path->pathdata.Points,
+ path->pathdata.Count);
+}
diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h
index 9185fd5..95dafde 100644
--- a/include/gdiplusflat.h
+++ b/include/gdiplusflat.h
@@ -59,6 +59,7 @@ GpStatus WINGDIPAPI GdipGetPathPoints(Gp
GpStatus WINGDIPAPI GdipGetPathTypes(GpPath*,BYTE*,INT);
GpStatus WINGDIPAPI GdipGetPointCount(GpPath*,INT*);
GpStatus WINGDIPAPI GdipStartPathFigure(GpPath*);
+GpStatus WINGDIPAPI GdipTransformPath(GpPath*,GpMatrix*);
GpStatus WINGDIPAPI GdipCreateMatrix2(REAL,REAL,REAL,REAL,REAL,REAL,GpMatrix**);
GpStatus WINGDIPAPI GdipDeleteMatrix(GpMatrix*);
--
1.4.1
More information about the wine-patches
mailing list