Bug 161738 [Undo] - API - promote ability to quietly compute status to operations API
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/undo/WorkspaceUndoMonitor.java
private int numChanges = 0;
	/**
	 * The IUndoableOperation in progress, or <code>null</code> if there is
	 * none in progress.
	 */
	private IUndoableOperation operationInProgress = null;
	/**
	 * Resource listener used to determine how often to validate the workspace
	 * undo history.
	 */
	private IResourceChangeListener resourceListener;
	/**
	 * Operation history listener used to determine whether there is an undoable
	 * operation in progress.
	 */
	private IOperationHistoryListener historyListener;
	/**
	 * Construct an instance. Should only be called by {@link #getInstance()}
	 */
	private WorkspaceUndoMonitor() {
		if (Policy.DEBUG_UNDOMONITOR) {
			System.out.println(DEBUG_PREFIX + "Installing listeners"); 
		}
		resourceListener = getResourceChangeListener();
		ResourcesPlugin.getWorkspace().addResourceChangeListener(
				resourceListener);
		historyListener = getOperationHistoryListener();
		getOperationHistory().addOperationHistoryListener(historyListener);
	}
	/**