-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
waste.cs
38 lines (31 loc) · 1.01 KB
/
waste.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System;
using System.Windows;
using System.Collections.Generic;
namespace Solitaire
{
public class Waste : Container
{
public int shownCount = 3;
protected override Size ArrangeOverride(Size finalSize)
{
double x = 0;
double step = Math.Round(finalSize.Width * 0.3);
int count = this.InternalChildren.Count;
for (int a = 0; a < count; a++)
{
var child = this.InternalChildren[a];
child.Arrange(new Rect(new Point(x, 0), child.DesiredSize));
// the last cards (based on the 'shownCount' value) are place with a x-offset, the others are stacked in each other
if (a >= count - this.shownCount)
{
x += step;
}
}
return finalSize;
}
public override bool canDrop(List<Card> cards)
{
return false;
}
}
}