docs: public int handleFieldChanged(boolean bDisplayOption, int iMoveMode)
      {
          int iErrorCode = DBConstants.NORMAL_RETURN;
          FieldListener nextListener = (FieldListener)this.getNextValidListener(iMoveMode);
          while (nextListener != null)
          {
              boolean bOldState = nextListener.setEnabledListener(false);      // Disable the listener to eliminate echos
              iErrorCode = nextListener.fieldChanged(bDisplayOption, iMoveMode);
              nextListener.setEnabledListener(bOldState);       // Reenable
              if (iErrorCode != DBConstants.NORMAL_RETURN)
                  return iErrorCode;
              nextListener = (FieldListener)nextListener.getNextValidListener(iMoveMode);
          }
          if (iMoveMode == DBConstants.SCREEN_MOVE)
              if (iErrorCode == DBConstants.NORMAL_RETURN)
                  if (this.getRecord() != null)
              iErrorCode = this.getRecord().handleRecordChange(this, DBConstants.FIELD_CHANGED_TYPE, bDisplayOption);   // Tell table that I'm getting changed (if not locked)
          return iErrorCode;
      }