java.lang.Objectcom.ibm.jdg2e.view.marker.MarkerContentProvider
This content provider processes the input (IWorkspace to find the
content required in the viewer. This is defined as recent edit markers whose
marker id is defined in the MarkerView.MARKER_ID field.
A IResourceChangeListener is implemented by this content provider so
that it can react to marker changes.
| Constructor Summary | |
|---|---|
(package private) |
MarkerContentProvider()
The constructor. |
| Method Summary | |
|---|---|
void |
dispose()
Remove resource change listener |
java.lang.Object[] |
getElements(java.lang.Object parent)
Obtains content from the input in the form of an array of IMarker
elements. |
void |
inputChanged(org.eclipse.jface.viewers.Viewer v,
java.lang.Object oldInput,
java.lang.Object newInput)
Saves input reference and adds change listener first time around. |
void |
resourceChanged(org.eclipse.core.resources.IResourceChangeEvent event)
React to changes that impact the elements in the associated viewer. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
MarkerContentProvider()
| Method Detail |
public void dispose()
dispose in interface org.eclipse.jface.viewers.IContentProviderIContentProvider.dispose()public java.lang.Object[] getElements(java.lang.Object parent)
IMarker
elements.
getElements in interface org.eclipse.jface.viewers.IStructuredContentProviderIMarker objects from the workspaceIStructuredContentProvider.getElements(java.lang.Object)
public void inputChanged(org.eclipse.jface.viewers.Viewer v,
java.lang.Object oldInput,
java.lang.Object newInput)
inputChanged in interface org.eclipse.jface.viewers.IContentProviderIContentProvider.inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)public void resourceChanged(org.eclipse.core.resources.IResourceChangeEvent event)
As this method is not fired on the UI thread we need to use the SWT Display
to get back on the UI thread before telling the viewer to refresh. An asyncExec
will work here as we do not need to visit the delta in the runnable.
If resource delta must be visited inside the runnable then a syncExec must
be used to ensure the delta is not discarded.
resourceChanged in interface org.eclipse.core.resources.IResourceChangeListenerIResourceChangeListener.resourceChanged(org.eclipse.core.resources.IResourceChangeEvent)