_updateBoundingBox(x, y, ctx, selected, hover) {
    if (ctx !== undefined) {
      this.resize(ctx, selected, hover);
    }

    this.left = x - this.width / 2;
    this.top = y - this.height / 2;

    this.boundingBox.left = this.left;
    this.boundingBox.top = this.top;
    this.boundingBox.bottom = this.top + this.height;
    this.boundingBox.right = this.left + this.width;
  }
Actual implementation of this method call.

Doing it like this makes it easier to override
in the child classes.
@param {number} x width
@param {number} y height
@param {CanvasRenderingContext2D} ctx
@param {boolean} selected
@param {boolean} hover
@private