Browse Source

Added missing properties to FormattedText.

Also use a switch for TextAlignment.ToDirect2D.
pull/58/head
Steven Kirk 12 years ago
parent
commit
493768a5ad
  1. 14
      Perspex.SceneGraph/Media/FormattedText.cs
  2. 19
      Windows/Perspex.Direct2D1/PrimitiveExtensions.cs

14
Perspex.SceneGraph/Media/FormattedText.cs

@ -25,6 +25,8 @@ namespace Perspex.Media
this.FontFamilyName = fontFamilyName;
this.FontSize = fontSize;
this.FontStyle = fontStyle;
this.FontWeight = fontWeight;
this.TextAlignment = textAlignment;
var platform = Locator.Current.GetService<IPlatformRenderInterface>();
@ -61,6 +63,12 @@ namespace Perspex.Media
private set;
}
public FontWeight FontWeight
{
get;
private set;
}
public string Text
{
get;
@ -73,6 +81,12 @@ namespace Perspex.Media
private set;
}
public TextAlignment TextAlignment
{
get;
private set;
}
public void Dispose()
{
this.PlatformImpl.Dispose();

19
Windows/Perspex.Direct2D1/PrimitiveExtensions.cs

@ -6,6 +6,7 @@
namespace Perspex.Direct2D1
{
using System;
using System.Linq;
using SharpDX;
using SharpDX.Direct2D1;
@ -132,13 +133,17 @@ namespace Perspex.Direct2D1
public static DWrite.TextAlignment ToDirect2D(this Perspex.Media.TextAlignment alignment)
{
if (alignment == Perspex.Media.TextAlignment.Left)
return DWrite.TextAlignment.Leading;
if (alignment == Perspex.Media.TextAlignment.Centered)
return DWrite.TextAlignment.Center;
return DWrite.TextAlignment.Trailing;
switch (alignment)
{
case Perspex.Media.TextAlignment.Left:
return DWrite.TextAlignment.Leading;
case Perspex.Media.TextAlignment.Centered:
return DWrite.TextAlignment.Center;
case Perspex.Media.TextAlignment.Right:
return DWrite.TextAlignment.Trailing;
default:
throw new InvalidOperationException("Invalid TextAlignment");
}
}
}
}

Loading…
Cancel
Save