1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

Check for a valid ITranslationUnit before making

the link to the Editor.
This commit is contained in:
Alain Magloire 2003-04-16 18:42:48 +00:00
parent 7dd6d81653
commit c84084e3fa

View file

@ -19,6 +19,7 @@ import org.eclipse.cdt.core.model.ICModel;
import org.eclipse.cdt.core.model.ICProject; import org.eclipse.cdt.core.model.ICProject;
import org.eclipse.cdt.core.model.IParent; import org.eclipse.cdt.core.model.IParent;
import org.eclipse.cdt.core.model.ISourceReference; import org.eclipse.cdt.core.model.ISourceReference;
import org.eclipse.cdt.core.model.ITranslationUnit;
import org.eclipse.cdt.core.resources.MakeUtil; import org.eclipse.cdt.core.resources.MakeUtil;
import org.eclipse.cdt.internal.ui.StandardCElementLabelProvider; import org.eclipse.cdt.internal.ui.StandardCElementLabelProvider;
import org.eclipse.cdt.internal.ui.editor.OpenIncludeAction; import org.eclipse.cdt.internal.ui.editor.OpenIncludeAction;
@ -1127,14 +1128,20 @@ public class CView extends ViewPart implements IMenuListener, ISetSelectionTarge
Object obj= selection.getFirstElement(); Object obj= selection.getFirstElement();
if (selection.size() == 1) { if (selection.size() == 1) {
if (obj instanceof ISourceReference) {
ITranslationUnit tu = ((ISourceReference)obj).getTranslationUnit();
if (tu != null) {
IEditorPart part= EditorUtility.isOpenInEditor(obj); IEditorPart part= EditorUtility.isOpenInEditor(obj);
if (part != null) { if (part != null) {
IWorkbenchPage page= getSite().getPage(); IWorkbenchPage page= getSite().getPage();
page.bringToTop(part); page.bringToTop(part);
if (obj instanceof ICElement) if (obj instanceof ICElement) {
EditorUtility.revealInEditor(part, (ICElement) obj); EditorUtility.revealInEditor(part, (ICElement) obj);
} }
} }
}
}
}
} }