Browse Source

Rectangle measure/arrange fixes.

pull/4/head
Steven Kirk 12 years ago
parent
commit
02935f19c2
  1. 15
      Perspex/Shapes/Rectangle.cs
  2. 18
      Perspex/Themes/Default/CheckBoxStyle.cs

15
Perspex/Shapes/Rectangle.cs

@ -6,28 +6,13 @@
namespace Perspex.Shapes namespace Perspex.Shapes
{ {
using System;
using System.Reactive.Linq;
using Perspex.Media; using Perspex.Media;
public class Rectangle : Shape public class Rectangle : Shape
{ {
private Size size;
public override Geometry DefiningGeometry public override Geometry DefiningGeometry
{ {
get { return new RectangleGeometry(new Rect(0, 0, this.Width, this.Height)); } get { return new RectangleGeometry(new Rect(0, 0, this.Width, this.Height)); }
} }
protected override Size MeasureOverride(Size availableSize)
{
return this.DefiningGeometry.GetRenderBounds(this.StrokeThickness).Size;
}
protected override Size ArrangeOverride(Size finalSize)
{
this.size = finalSize;
return base.ArrangeOverride(finalSize);
}
} }
} }

18
Perspex/Themes/Default/CheckBoxStyle.cs

@ -57,22 +57,22 @@ namespace Perspex.Themes.Default
}, },
Children = new PerspexList<Control> Children = new PerspexList<Control>
{ {
new Rectangle new Border
{ {
Id = "checkBorder", Id = "checkBorder",
Stroke = Brushes.Black, BorderBrush = Brushes.Black,
StrokeThickness = 2, BorderThickness = 2,
Width = 16, Width = 18,
Height = 16, Height = 18,
VerticalAlignment = VerticalAlignment.Center, VerticalAlignment = VerticalAlignment.Center,
[Grid.ColumnProperty] = 0, [Grid.ColumnProperty] = 0,
}, },
new Path new Rectangle
{ {
Id = "checkMark", Id = "checkMark",
Data = StreamGeometry.Parse("M0,0 L10,10 M10,0 L0,10"), Fill = Brushes.Black,
Stroke = Brushes.Black, Width = 10,
StrokeThickness = 2, Height = 10,
HorizontalAlignment = HorizontalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center,
VerticalAlignment = VerticalAlignment.Center, VerticalAlignment = VerticalAlignment.Center,
[Grid.ColumnProperty] = 0, [Grid.ColumnProperty] = 0,

Loading…
Cancel
Save