code: boolean setParentNodeReference(N newParent, boolean fireEvent) {
  		final N oldParent = getParentNode();
  		if (newParent == oldParent) {
  			return false;
  		}
  		this.parent = (newParent == null) ? null : new WeakReference<>(newParent);
  		if (!fireEvent) {
  			return true;
  		}
  		firePropertyParentChanged(oldParent, newParent);
  		if (oldParent != null) {
  			oldParent.firePropertyParentChanged(toN(), oldParent, newParent);
  		}
  		return false;
  	}
docs: Set the reference to the parent node.
  
  @param newParent is the new parent.
  @param fireEvent indicates if the event must be fired or not.
  @return <code>true</code> if an event must be fired due to
  the action of this function, otherwise <code>false</code>.
  @since 4.0