public void SetSelection(int tx, int ty, int width, int height)
{
if (width != 0 && height != 0)
{
if (tx < 0)
{
width += tx;
tx = 0;
}
if (ty < 0)
{
height += ty;
ty = 0;
}
if (width + tx > Width) width = Width - tx;
if (height + ty > Height) height = Height - ty;
// all in tile sizes
Selection = new Rectangle(tx, ty, width, height);
}
else
{
Selection = null;
}
if (SelectionChanged != null)
{
SelectionChanged(Selection);
}
ViewModelMediator.Current.GetEvent<SelectionChangedEventArgs>().Raise(this, new SelectionChangedEventArgs() { Screen = this, Selection = Selection });
}