Browse Source

Merge remote-tracking branch 'origin/master' into perspex-gallery

pull/156/head
Nelson Carrillo 11 years ago
parent
commit
8760cbce89
  1. 15
      src/Gtk/Perspex.Cairo/Media/FormattedTextImpl.cs
  2. BIN
      tests/Perspex.RenderTests/Controls/BorderTests.cs
  3. 24
      tests/Perspex.RenderTests/Media/VisualBrushTests.cs

15
src/Gtk/Perspex.Cairo/Media/FormattedTextImpl.cs

@ -36,6 +36,7 @@ namespace Perspex.Cairo.Media
};
Layout.Alignment = textAlignment.ToCairo();
Layout.Attributes = new Pango.AttrList();
}
public Size Constraint
@ -115,7 +116,19 @@ namespace Perspex.Cairo.Media
public void SetForegroundBrush(Brush brush, int startIndex, int count)
{
// TODO: Implement.
var scb = brush as SolidColorBrush;
if (scb != null)
{
var color = new Pango.Color();
color.Parse(string.Format("#{0}", scb.Color.ToString().Substring(3)));
var brushAttr = new Pango.AttrForeground(color);
brushAttr.StartIndex = (uint)startIndex;
brushAttr.EndIndex = (uint)(startIndex + count);
Layout.Attributes.Insert(brushAttr);
}
}
}
}

BIN
tests/Perspex.RenderTests/Controls/BorderTests.cs

Binary file not shown.

24
tests/Perspex.RenderTests/Media/VisualBrushTests.cs

@ -83,7 +83,11 @@ namespace Perspex.Direct2D1.RenderTests.Media
CompareImages();
}
#if PERSPEX_CAIRO
[Fact(Skip = "Font scaling currently broken on cairo")]
#else
[Fact]
#endif
public void VisualBrush_NoStretch_NoTile_Alignment_Center()
{
Decorator target = new Decorator
@ -133,7 +137,11 @@ namespace Perspex.Direct2D1.RenderTests.Media
CompareImages();
}
#if PERSPEX_CAIRO
[Fact(Skip = "Font scaling currently broken on cairo")]
#else
[Fact]
#endif
public void VisualBrush_Fill_NoTile()
{
Decorator target = new Decorator
@ -156,7 +164,11 @@ namespace Perspex.Direct2D1.RenderTests.Media
CompareImages();
}
#if PERSPEX_CAIRO
[Fact(Skip = "Font scaling currently broken on cairo")]
#else
[Fact]
#endif
public void VisualBrush_Uniform_NoTile()
{
Decorator target = new Decorator
@ -179,7 +191,11 @@ namespace Perspex.Direct2D1.RenderTests.Media
CompareImages();
}
#if PERSPEX_CAIRO
[Fact(Skip = "Font scaling currently broken on cairo")]
#else
[Fact]
#endif
public void VisualBrush_UniformToFill_NoTile()
{
Decorator target = new Decorator
@ -226,7 +242,11 @@ namespace Perspex.Direct2D1.RenderTests.Media
CompareImages();
}
#if PERSPEX_CAIRO
[Fact(Skip = "Font scaling currently broken on cairo")]
#else
[Fact]
#endif
public void VisualBrush_NoStretch_NoTile_BottomRightQuarterDest()
{
Decorator target = new Decorator
@ -356,7 +376,11 @@ namespace Perspex.Direct2D1.RenderTests.Media
CompareImages();
}
#if PERSPEX_CAIRO
[Fact(Skip = "Font scaling currently broken on cairo")]
#else
[Fact]
#endif
public void VisualBrush_NoStretch_FlipXY_TopLeftDest()
{
Decorator target = new Decorator

Loading…
Cancel
Save