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