public void Draw(List<ITouchPointSizeColor> touchPoints)
{
if (touchPoints.Count == 0)
{
// no point recording anything (even if color change - e.g. user has just set the color) because we haven't drawn
// anything on screen anyway. When they do draw on screen (maybe after a few more color changes) then we will pick
// up the color change at the same time
return;
}
foreach (var touch in touchPoints)
{
if (touch.Color != this.currentColor)
{
RecordColorChange (touch.Color);
}
if (touch.Size.Width != this.currentBrushSize)
{
RecordBrushSizeChange (touch.Size);
}
this.RecordTouchPoint(touch);
}
}