function ZoomScroll(config, eventBus, canvas) {

  config = config || {};

  this._enabled = false;

  this._canvas = canvas;
  this._container = canvas._container;

  this._handleWheel = bind(this._handleWheel, this);

  this._totalDelta = 0;
  this._scale = config.scale || DEFAULT_SCALE;

  var self = this;

  eventBus.on('canvas.focus.changed', function(event) {
    self._init(event.focused && config.enabled !== false);
  });
}
An implementation of zooming and scrolling within the
{@link Canvas} via the mouse wheel.

Mouse wheel zooming / scrolling may be disabled using
the {@link toggle(enabled)} method.

@param {Object} [config]
@param {boolean} [config.enabled=true] default enabled state
@param {number} [config.scale=.75] scroll sensivity
@param {EventBus} eventBus
@param {Canvas} canvas