Evan Stade : gdiplus: Added GdipDrawLine.
Alexandre Julliard
julliard at wine.codeweavers.com
Thu Aug 2 06:23:11 CDT 2007
Module: wine
Branch: master
Commit: 5e29e37af5780793e64631670cfcf15ee0b9159b
URL: http://source.winehq.org/git/wine.git/?a=commit;h=5e29e37af5780793e64631670cfcf15ee0b9159b
Author: Evan Stade <estade at gmail.com>
Date: Wed Aug 1 17:55:58 2007 -0700
gdiplus: Added GdipDrawLine.
---
dlls/gdiplus/gdiplus.spec | 2 +-
dlls/gdiplus/graphics.c | 24 ++++++++++++++++++++++++
include/gdiplusflat.h | 1 +
3 files changed, 26 insertions(+), 1 deletions(-)
diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index bb5c36d..871a9c4 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -185,7 +185,7 @@
@ stub GdipDrawImageRectI
@ stub GdipDrawImageRectRect
@ stub GdipDrawImageRectRectI
-@ stub GdipDrawLine
+@ stdcall GdipDrawLine(ptr ptr long long long long)
@ stdcall GdipDrawLineI(ptr ptr long long long long)
@ stdcall GdipDrawLines(ptr ptr ptr long)
@ stub GdipDrawLinesI
diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c
index 7c8fc16..439dedd 100644
--- a/dlls/gdiplus/graphics.c
+++ b/dlls/gdiplus/graphics.c
@@ -1076,6 +1076,30 @@ GpStatus WINGDIPAPI GdipDrawImagePointsRect(GpGraphics *graphics, GpImage *image
return Ok;
}
+GpStatus WINGDIPAPI GdipDrawLine(GpGraphics *graphics, GpPen *pen, REAL x1,
+ REAL y1, REAL x2, REAL y2)
+{
+ INT save_state;
+ GpPointF pt[2];
+ GpStatus retval;
+
+ if(!pen || !graphics)
+ return InvalidParameter;
+
+ pt[0].X = x1;
+ pt[0].Y = y1;
+ pt[1].X = x2;
+ pt[1].Y = y2;
+
+ save_state = prepare_dc(graphics, pen);
+
+ retval = draw_polyline(graphics, pen, pt, 2, TRUE);
+
+ restore_dc(graphics, save_state);
+
+ return retval;
+}
+
GpStatus WINGDIPAPI GdipDrawLineI(GpGraphics *graphics, GpPen *pen, INT x1,
INT y1, INT x2, INT y2)
{
diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h
index 9756403..25b9b1b 100644
--- a/include/gdiplusflat.h
+++ b/include/gdiplusflat.h
@@ -60,6 +60,7 @@ GpStatus WINGDIPAPI GdipDrawCurve2(GpGraphics*,GpPen*,GDIPCONST GpPointF*,INT,RE
GpStatus WINGDIPAPI GdipDrawImagePointsRect(GpGraphics*,GpImage*,
GDIPCONST GpPointF*,INT,REAL,REAL,REAL,REAL,GpUnit,
GDIPCONST GpImageAttributes*,DrawImageAbort,VOID*);
+GpStatus WINGDIPAPI GdipDrawLine(GpGraphics *graphics,GpPen*,REAL,REAL,REAL,REAL);
GpStatus WINGDIPAPI GdipDrawLineI(GpGraphics*,GpPen*,INT,INT,INT,INT);
GpStatus WINGDIPAPI GdipDrawLines(GpGraphics*,GpPen*,GDIPCONST GpPointF*,INT);
GpStatus WINGDIPAPI GdipDrawPath(GpGraphics*,GpPen*,GpPath*);
More information about the wine-cvs
mailing list