Evan Stade : gdiplus: Added GdipSetPenLineCap197819.
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Jul 17 07:36:49 CDT 2007
Module: wine
Branch: master
Commit: 6893ef397ba63205bd102c5b262c943684fdf911
URL: http://source.winehq.org/git/wine.git/?a=commit;h=6893ef397ba63205bd102c5b262c943684fdf911
Author: Evan Stade <estade at gmail.com>
Date: Mon Jul 16 19:44:50 2007 -0700
gdiplus: Added GdipSetPenLineCap197819.
---
dlls/gdiplus/gdiplus.spec | 2 +-
dlls/gdiplus/gdiplus_private.h | 2 ++
dlls/gdiplus/pen.c | 14 ++++++++++++++
include/gdiplusenums.h | 8 ++++++++
include/gdiplusflat.h | 1 +
include/gdiplusgpstubs.h | 1 +
6 files changed, 27 insertions(+), 1 deletions(-)
diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index b5e0b03..d14457e 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -551,7 +551,7 @@
@ stub GdipSetPenDashOffset
@ stub GdipSetPenDashStyle
@ stdcall GdipSetPenEndCap(ptr long)
-@ stub GdipSetPenLineCap197819
+@ stdcall GdipSetPenLineCap197819(ptr long long long)
@ stub GdipSetPenLineJoin
@ stub GdipSetPenMiterLimit
@ stub GdipSetPenMode
diff --git a/dlls/gdiplus/gdiplus_private.h b/dlls/gdiplus/gdiplus_private.h
index 20678c8..d7851d6 100644
--- a/dlls/gdiplus/gdiplus_private.h
+++ b/dlls/gdiplus/gdiplus_private.h
@@ -47,6 +47,8 @@ struct GpPen{
REAL width;
HPEN gdipen;
GpLineCap endcap;
+ GpLineCap startcap;
+ GpDashCap dashcap;
GpLineJoin join;
REAL miterlimit;
};
diff --git a/dlls/gdiplus/pen.c b/dlls/gdiplus/pen.c
index a4894d3..3bebc35 100644
--- a/dlls/gdiplus/pen.c
+++ b/dlls/gdiplus/pen.c
@@ -100,6 +100,20 @@ GpStatus WINGDIPAPI GdipSetPenEndCap(GpPen *pen, GpLineCap cap)
return Ok;
}
+/* FIXME: startcap, dashcap not used. */
+GpStatus WINGDIPAPI GdipSetPenLineCap197819(GpPen *pen, GpLineCap start,
+ GpLineCap end, GpDashCap dash)
+{
+ if(!pen)
+ return InvalidParameter;
+
+ pen->startcap = start;
+ pen->endcap = end;
+ pen->dashcap = dash;
+
+ return Ok;
+}
+
/* FIXME: Miter line joins behave a bit differently than they do in windows.
* Both kinds of miter joins clip if the angle is less than 11 degrees. */
GpStatus WINGDIPAPI GdipSetPenLineJoin(GpPen *pen, GpLineJoin join)
diff --git a/include/gdiplusenums.h b/include/gdiplusenums.h
index 74f9c02..7bf5eb6 100644
--- a/include/gdiplusenums.h
+++ b/include/gdiplusenums.h
@@ -134,6 +134,13 @@ enum PixelOffsetMode
PixelOffsetModeHalf
};
+enum DashCap
+{
+ DashCapFlat = 0,
+ DashCapRound = 2,
+ DashCapTriangle = 3
+};
+
#ifndef __cplusplus
typedef enum Unit Unit;
@@ -147,6 +154,7 @@ typedef enum SmoothingMode SmoothingMode;
typedef enum CompositingQuality CompositingQuality;
typedef enum InterpolationMode InterpolationMode;
typedef enum PixelOffsetMode PixelOffsetMode;
+typedef enum DashCap DashCap;
#endif /* end of c typedefs */
diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h
index 3bda290..3ac4b3e 100644
--- a/include/gdiplusflat.h
+++ b/include/gdiplusflat.h
@@ -30,6 +30,7 @@ extern "C" {
GpStatus WINGDIPAPI GdipCreatePen1(ARGB,REAL,GpUnit,GpPen**);
GpStatus WINGDIPAPI GdipDeletePen(GpPen*);
GpStatus WINGDIPAPI GdipSetPenEndCap(GpPen*,GpLineCap);
+GpStatus WINGDIPAPI GdipSetPenLineCap197819(GpPen*,GpLineCap,GpLineCap,GpDashCap);
GpStatus WINGDIPAPI GdipSetPenLineJoin(GpPen*,GpLineJoin);
GpStatus WINGDIPAPI GdipCreateFromHDC(HDC,GpGraphics**);
diff --git a/include/gdiplusgpstubs.h b/include/gdiplusgpstubs.h
index b3962aa..d2174bb 100644
--- a/include/gdiplusgpstubs.h
+++ b/include/gdiplusgpstubs.h
@@ -48,5 +48,6 @@ typedef PathData GpPathData;
typedef LineCap GpLineCap;
typedef RectF GpRectF;
typedef LineJoin GpLineJoin;
+typedef DashCap GpDashCap;
#endif
More information about the wine-cvs
mailing list