function ToolContext(sourceCanvas, displayCanvas, brushCanvas,
    selectionCanvasManager, drawDisplayCanvas) {
  /**
   * @type {HTMLCanvasElement}
   */
  this.sourceCanvas = sourceCanvas;
  /**
   * @type {HTMLCanvasElement}
   */
  this.displayCanvas = displayCanvas;
  /**
   * @type {HTMLCanvasElement}
   */
  this.brushCanvas = brushCanvas;
  /**
   * @type {SelectionCanvasManager}
   */
  this.selectionCanvasManager = selectionCanvasManager;
  /**
   * @type {function()}
   */
  this.drawDisplayCanvas = drawDisplayCanvas;
}
/**
 * Contains elements and callbacks Tools need.
 * @constructor
 * @struct
 * @param {HTMLCanvasElement} sourceCanvas
 * @param {HTMLCanvasElement} displayCanvas
 * @param {HTMLCanvasElement} brushCanvas
 * @param {SelectionCanvasManager} selectionCanvasManager
 * @param {function()} drawDisplayCanvas
 */
Contains elements and callbacks Tools need.
Contains elements and callbacks Tools need .
function ToolContext(sourceCanvas, displayCanvas, brushCanvas,
    selectionCanvasManager, drawDisplayCanvas) {
  this.sourceCanvas = sourceCanvas;
  this.displayCanvas = displayCanvas;
  this.brushCanvas = brushCanvas;
  this.selectionCanvasManager = selectionCanvasManager;
  this.drawDisplayCanvas = drawDisplayCanvas;
}
function ToolContext ( sourceCanvas , displayCanvas , brushCanvas , selectionCanvasManager , drawDisplayCanvas ) { this . sourceCanvas = sourceCanvas ; this . displayCanvas = displayCanvas ; this . brushCanvas = brushCanvas ; this . selectionCanvasManager = selectionCanvasManager ; this . drawDisplayCanvas = drawDisplayCanvas ; }
Contains elements and callbacks Tools need.
Contains elements and callbacks Tools need .
/**
   * @type {HTMLCanvasElement}
   */ /**
   * @type {HTMLCanvasElement}
   */ /**
   * @type {HTMLCanvasElement}
   */ /**
   * @type {SelectionCanvasManager}
   */ /**
   * @type {function()}
   */