code: protected void updatedEnabledState() {
  		boolean isEnabled = isEnabled();
  		if (oldEnabledState == null || hasChanged(oldEnabledState.booleanValue(), isEnabled)) {
  			firePropertyChange(ENABLED_PROPERTY_NAME, oldEnabledState == null ? !isEnabled : oldEnabledState
  					.booleanValue(), isEnabled);
  		}
  		oldEnabledState = Boolean.valueOf(isEnabled);
  	}
docs: This method is called when any predicate for enabled state has changed.
  This implementation fires the enabled changed event if the return value
  of {@link #isEnabled()} has changed.
  <p>
  Subclasses which have an additional predicate to enabled state must call
  this method if the state of the predicate changes.