/**
   * Called when the roll changes due to user input.
   *
   * @param rollChange Change in roll.
   * @param actionAttribs Action that caused the change.
   */
  protected void onRoll(Angle rollChange, ViewInputAttributes.ActionAttributes actionAttribs) {
    View view = this.getView();
    if (view == null) // include this test to ensure any derived implementation performs it
    {
      return;
    }

    if (view instanceof BasicFlyView) {
      BasicFlyView flyView = (BasicFlyView) view;
      this.setRoll(flyView, this.uiAnimControl, flyView.getRoll().add(rollChange), actionAttribs);

      view.firePropertyChange(AVKey.VIEW, null, view);
    }
  }