Bug 14444 java editor refers to internal jcore classes
ClassFileEditor CompilationUnitDocumentProvider JavaMarkerAnnotation
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ClassFileEditor.java
SourceAttachmentForm form= new SourceAttachmentForm(file);
			fSourceAttachmentForm= form.createControl(fParent);
			fStackLayout.topControl= fSourceAttachmentForm;
			fParent.layout();
		
		} else {
		
			if (fSourceAttachmentForm != null) {
				fSourceAttachmentForm.dispose();
				fSourceAttachmentForm= null;
				fStackLayout.topControl= fViewerComposite;		
				fParent.layout();
			}
		}		
	}	
	/*
	 * @see ClassFileDocumentProvider.InputChangeListener#inputChanged(IClassFileEditorInput)
	 */
	public void inputChanged(final IClassFileEditorInput input) {
		if (input != null && input.equals(getEditorInput())) {	
			ISourceViewer viewer= getSourceViewer();
			if (viewer != null) {
				StyledText textWidget= viewer.getTextWidget();
				if (textWidget != null && !textWidget.isDisposed()) {
					textWidget.getDisplay().asyncExec(new Runnable() {
						public void run() {
							setInput(input);
						}
					});
				}