/** Overrides positionChanged(PositionChangedEvent) to clear the board of any arrows/circles. */
  public void positionChanged(PositionChangedEvent evt) {
    super.positionChanged(evt);

    if (evt.getGame() != game) return;

    ((ChessclubJBoard) board).removeAllArrows();
    ((ChessclubJBoard) board).removeAllCircles();
  }
  /** Overrides illegalMoveAttempted(IllegalMoveEvent) to clear the board of any arrows/circles. */
  public void illegalMoveAttempted(IllegalMoveEvent evt) {
    super.illegalMoveAttempted(evt);

    if (evt.getGame() != game) return;

    ((ChessclubJBoard) board).removeAllArrows();
    ((ChessclubJBoard) board).removeAllCircles();
  }
  /** Overrides moveMade(MoveMadeEvent) to clear the board of any arrows/circles. */
  public void moveMade(MoveMadeEvent evt) {
    super.moveMade(evt);

    if (evt.getGame() != game) return;

    ((ChessclubJBoard) board).removeAllArrows();
    ((ChessclubJBoard) board).removeAllCircles();
  }
  /** Overrides takebackOccurred(TakebackEvent) to clear the board of any arrows/circles. */
  public void takebackOccurred(TakebackEvent evt) {
    super.takebackOccurred(evt);

    if (evt.getGame() != game) return;

    ((ChessclubJBoard) board).removeAllArrows();
    ((ChessclubJBoard) board).removeAllCircles();
  }