// Copyright (c) 2009-2010 by the projectusus.org contributors
// This software is released under the terms and conditions
// of the Eclipse Public License (EPL) 1.0.
// See http://www.eclipse.org/legal/epl-v10.html for details.
package org.projectusus.ui.viewer;
import org.eclipse.core.resources.IResourceChangeEvent;
import org.eclipse.core.resources.IResourceChangeListener;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.swt.widgets.Display;
public class RefreshViewerOnResourceChange implements IResourceChangeListener {
private final Viewer viewer;
public RefreshViewerOnResourceChange( Viewer viewer ) {
this.viewer = viewer;
}
public void resourceChanged( @SuppressWarnings( "unused" ) IResourceChangeEvent event ) {
if( viewer != null && !viewer.getControl().isDisposed() ) {
Display.getDefault().asyncExec( new Runnable() {
public void run() {
viewer.refresh();
}
} );
}
}
}