Module: wine Branch: master Commit: 6893ef397ba63205bd102c5b262c943684fdf911 URL: http://source.winehq.org/git/wine.git/?a=commit;h=6893ef397ba63205bd102c5b26...
Author: Evan Stade estade@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