/** Returns the image descriptor for the given editor descriptor, or null if it has no image. */ private ImageDescriptor getImageDescriptor(IEditorDescriptor editorDesc) { ImageDescriptor imageDesc = null; if (editorDesc == null) { imageDesc = registry.getImageDescriptor(getFileRevision().getName()); // TODO: is this case valid, and if so, what are the implications // for content-type editor bindings? } else { imageDesc = editorDesc.getImageDescriptor(); } if (imageDesc == null) { if (editorDesc.getId().equals(IEditorRegistry.SYSTEM_EXTERNAL_EDITOR_ID)) { imageDesc = registry.getSystemExternalEditorImageDescriptor(getFileRevision().getName()); } } return imageDesc; }