protected void postProjectStateChanged(final Object root) { postRunnable(new Runnable() {
protected void postProjectStateChanged(final Object root, Collection runnables) { runnables.add(new Runnable() {
	protected void postProjectStateChanged(final Object root) {		postRunnable(new Runnable() {			public void run() {				//fPart.projectStateChanged(root); 				Control ctrl= fViewer.getControl();				if (ctrl != null && !ctrl.isDisposed()) {					fViewer.refresh(root, true);					// trigger a syntetic selection change so that action refresh their					// enable state.					fViewer.setSelection(fViewer.getSelection());				}			}		});	}