/// <summary>
        /// Buckets the fill on canvas.
        /// </summary>
        /// <param name="canvas">The canvas.</param>
        /// <param name="tokens">The tokens.</param>
        public void BucketFillOnCanvas(Canvas canvas, string[] tokens)
        {
            try
            {
                Point[] points = GetPoints(canvas, tokens, 1);

                char newColor = tokens[tokens.Length - 1][0];

                CanvasRenderer.BucketFillArea(points[0], newColor);

                CanvasRenderer.Draw();
            }
            catch (InvalidPointException invalidPointException)
            {
                OutputWriter.SendToOutput(invalidPointException.Message, true);
            }
        }