in uimaj-ep-cev/src/main/java/org/apache/uima/cev/editor/CEVViewer.java [351:395]
public void resourceChanged(final IResourceChangeEvent event) {
IPreferenceStore store = CEVPlugin.getDefault().getPreferenceStore();
boolean reload = store.getBoolean(CEVPreferenceConstants.P_AUTO_REFRESH);
if (reload) {
IResourceDelta findInDelta = findInDelta(event.getDelta(), inputFile.getFile().getFullPath());
if (findInDelta != null) {
final CEVViewer t = this;
Display display = Display.getCurrent();
if (display == null) {
// [FIXME] get correct display or replace code
display = getEditorSite().getWorkbenchWindow().getShell().getDisplay();
// display = activeText.getDisplay();
if (display == null) {
display = getActiveEditor().getSite().getShell().getDisplay();
}
}
display.asyncExec(new Runnable() {
public void run() {
int page = getActivePage();
if (casDocument != null) {
for (CEVData casData : casDocument.getCASData()) {
casData.removeAnnotationListener(t);
}
}
try {
init(getEditorSite(), inputFile);
} catch (PartInitException e) {
CEVPlugin.error(e);
}
for (ICEVView each : views.values()) {
each.casChanged(casDocument);
}
for (ICEVEditor each : editors.values()) {
each.casChanged(casDocument);
}
pageChange(page);
}
});
}
}
}