Bug 127861 [DataBinding] Mark API provisional
bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/viewers/UpdatableTreeContentProvider.java
}
    /**
     * Adds a dirty listener to this content provider. This listener will be notified
     * whenever background processing starts or stops anywhere in the tree. This
     * is commonly used by label providers to decorate nodes that are being recomputed
     * asynchronously. 
     * <p>
     * The listener will recieve a
     * ChangeEvent.STALE or ChangeEvent.NOT_STALE event with the source pointing
     * to an element in the tree whenever the stale state changes for any node.
     * </p>
     * 
     * @param toAdd listener to add
     */
    public void addDirtyListener(IChangeListener toAdd) {
    	dirtyListeners.add(toAdd);
    }
    /**
     * Removes a listener previously added via addDirtyListener
     * 
     * @param toRemove
     */
    public void removeDirtyListener(IChangeListener toRemove) {
    	dirtyListeners.remove(toRemove);
    }
    private void doFireAdd(Collection added) {
        elements.doFireAdd(added);
    }
    private boolean isDisposed() {
        return treeViewer.getControl().isDisposed();