From cdf47bf3142a414d5023e162f2a040dd09e333cc Mon Sep 17 00:00:00 2001 From: susloparov Date: Tue, 8 Dec 2015 03:14:11 +0600 Subject: [PATCH] Fixes #313 --- .../Perspex.Direct2D1/PrimitiveExtensions.cs | 33 +++++++++---------- 1 file changed, 15 insertions(+), 18 deletions(-) diff --git a/src/Windows/Perspex.Direct2D1/PrimitiveExtensions.cs b/src/Windows/Perspex.Direct2D1/PrimitiveExtensions.cs index fac270dd7c..65d3ce2dad 100644 --- a/src/Windows/Perspex.Direct2D1/PrimitiveExtensions.cs +++ b/src/Windows/Perspex.Direct2D1/PrimitiveExtensions.cs @@ -71,26 +71,23 @@ namespace Perspex.Direct2D1 /// The Direct2D brush. public static StrokeStyle ToDirect2DStrokeStyle(this Perspex.Media.Pen pen, SharpDX.Direct2D1.RenderTarget target) { - if (pen.DashStyle != null) + var properties = new StrokeStyleProperties { - if (pen.DashStyle.Dashes != null && pen.DashStyle.Dashes.Count > 0) - { - var properties = new StrokeStyleProperties - { - DashStyle = DashStyle.Custom, - DashOffset = (float)pen.DashStyle.Offset, - MiterLimit = (float)pen.MiterLimit, - LineJoin = pen.LineJoin.ToDirect2D(), - StartCap = pen.StartLineCap.ToDirect2D(), - EndCap = pen.EndLineCap.ToDirect2D(), - DashCap = pen.DashCap.ToDirect2D() - }; - - return new StrokeStyle(target.Factory, properties, pen.DashStyle?.Dashes.Select(x => (float)x).ToArray()); - } + DashStyle = DashStyle.Solid, + MiterLimit = (float)pen.MiterLimit, + LineJoin = pen.LineJoin.ToDirect2D(), + StartCap = pen.StartLineCap.ToDirect2D(), + EndCap = pen.EndLineCap.ToDirect2D(), + DashCap = pen.DashCap.ToDirect2D() + }; + var dashes = new float[0]; + if (pen.DashStyle?.Dashes != null && pen.DashStyle.Dashes.Count > 0) + { + properties.DashStyle = DashStyle.Custom; + properties.DashOffset = (float)pen.DashStyle.Offset; + dashes = pen.DashStyle?.Dashes.Select(x => (float)x).ToArray(); } - - return null; + return new StrokeStyle(target.Factory, properties, dashes); } ///