protected override Size MeasureOverride(Size constraint)
{
//Program.GameMess.GameDebug("MeasureOverride " + constraint);
if (img == null)
return constraint;
img.Measure(constraint);
if (img.Clip != null)
{
var clipRect = ((RectangleGeometry)img.Clip);
clipRect.Rect = new Rect(img.DesiredSize);
var cs = Card == null ? Program.GameEngine.Definition.CardSize : Card.Size;
//clipRect.RadiusX = clipRect.RadiusY = Program.GameEngine.Definition.CardCornerRadius * clipRect.Rect.Height / cs.Height;
if (IsUp)
{
clipRect.RadiusX = clipRect.RadiusY = cs.CornerRadius * clipRect.Rect.Height / cs.Height;
}
else
{
clipRect.RadiusX = clipRect.RadiusY = cs.BackCornerRadius * clipRect.Rect.Height / cs.BackHeight;
}
}
return img.DesiredSize;
}