Commit c41a77a3 authored by Evan Stade's avatar Evan Stade Committed by Alexandre Julliard

gdiplus: Added GdipAddPathPath.

parent d174bcc8
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
@ stub GdipAddPathLine2I @ stub GdipAddPathLine2I
@ stub GdipAddPathLine @ stub GdipAddPathLine
@ stub GdipAddPathLineI @ stub GdipAddPathLineI
@ stub GdipAddPathPath @ stdcall GdipAddPathPath(ptr ptr long)
@ stub GdipAddPathPie @ stub GdipAddPathPie
@ stub GdipAddPathPieI @ stub GdipAddPathPieI
@ stub GdipAddPathPolygon @ stub GdipAddPathPolygon
......
...@@ -123,6 +123,35 @@ GpStatus WINGDIPAPI GdipAddPathLine2(GpPath *path, GDIPCONST GpPointF *points, ...@@ -123,6 +123,35 @@ GpStatus WINGDIPAPI GdipAddPathLine2(GpPath *path, GDIPCONST GpPointF *points,
return Ok; return Ok;
} }
GpStatus WINGDIPAPI GdipAddPathPath(GpPath *path, GDIPCONST GpPath* addingPath,
BOOL connect)
{
INT old_count, count;
if(!path || !addingPath)
return InvalidParameter;
old_count = path->pathdata.Count;
count = addingPath->pathdata.Count;
if(!lengthen_path(path, count))
return OutOfMemory;
memcpy(&path->pathdata.Points[old_count], addingPath->pathdata.Points,
count * sizeof(GpPointF));
memcpy(&path->pathdata.Types[old_count], addingPath->pathdata.Types, count);
if(path->newfigure || !connect)
path->pathdata.Types[old_count] = PathPointTypeStart;
else
path->pathdata.Types[old_count] = PathPointTypeLine;
path->newfigure = FALSE;
path->pathdata.Count += count;
return Ok;
}
GpStatus WINGDIPAPI GdipClosePathFigure(GpPath* path) GpStatus WINGDIPAPI GdipClosePathFigure(GpPath* path)
{ {
if(!path) if(!path)
......
...@@ -52,6 +52,7 @@ GpStatus WINGDIPAPI GdipDeleteBrush(GpBrush*); ...@@ -52,6 +52,7 @@ GpStatus WINGDIPAPI GdipDeleteBrush(GpBrush*);
GpStatus WINGDIPAPI GdipAddPathArc(GpPath*,REAL,REAL,REAL,REAL,REAL,REAL); GpStatus WINGDIPAPI GdipAddPathArc(GpPath*,REAL,REAL,REAL,REAL,REAL,REAL);
GpStatus WINGDIPAPI GdipAddPathLine2(GpPath*,GDIPCONST GpPointF*,INT); GpStatus WINGDIPAPI GdipAddPathLine2(GpPath*,GDIPCONST GpPointF*,INT);
GpStatus WINGDIPAPI GdipAddPathPath(GpPath*,GDIPCONST GpPath*,BOOL);
GpStatus WINGDIPAPI GdipClosePathFigure(GpPath*); GpStatus WINGDIPAPI GdipClosePathFigure(GpPath*);
GpStatus WINGDIPAPI GdipClosePathFigures(GpPath*); GpStatus WINGDIPAPI GdipClosePathFigures(GpPath*);
GpStatus WINGDIPAPI GdipCreatePath(GpFillMode,GpPath**); GpStatus WINGDIPAPI GdipCreatePath(GpFillMode,GpPath**);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment