From 432ae76aa5c812554119a855c85a763dc792acea Mon Sep 17 00:00:00 2001 From: Alain Magloire Date: Fri, 30 Apr 2004 04:08:23 +0000 Subject: [PATCH] Do not show the files in the workspace --- .../internal/ui/cview/IncludeRefContainer.java | 16 +++++++++++++++- .../internal/ui/cview/LibraryRefContainer.java | 16 +++++++++++++++- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/IncludeRefContainer.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/IncludeRefContainer.java index 1df0842b823..b9fe235e33d 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/IncludeRefContainer.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/IncludeRefContainer.java @@ -11,10 +11,15 @@ package org.eclipse.cdt.internal.ui.cview; +import java.util.ArrayList; + import org.eclipse.cdt.core.model.CModelException; import org.eclipse.cdt.core.model.ICProject; +import org.eclipse.cdt.core.model.IIncludeReference; import org.eclipse.cdt.internal.ui.CPluginImages; +import org.eclipse.core.resources.IContainer; import org.eclipse.core.runtime.IAdaptable; +import org.eclipse.core.runtime.IPath; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.ui.model.IWorkbenchAdapter; @@ -51,7 +56,16 @@ public class IncludeRefContainer implements IAdaptable, IWorkbenchAdapter{ */ public Object[] getChildren(Object o) { try { - return fCProject.getIncludeReferences(); + IIncludeReference[] references = fCProject.getIncludeReferences(); + ArrayList list = new ArrayList(references.length); + for (int i = 0; i < references.length; i++) { + IPath path = references[i].getPath(); + IContainer container = references[i].getCModel().getWorkspace().getRoot().getContainerForLocation(path); + if (container == null || !container.isAccessible()) { + list.add(references[i]); + } + } + return list.toArray(); } catch (CModelException e) { } return EMPTY; diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/LibraryRefContainer.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/LibraryRefContainer.java index cf42c172799..52d343c98fe 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/LibraryRefContainer.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/cview/LibraryRefContainer.java @@ -11,10 +11,15 @@ package org.eclipse.cdt.internal.ui.cview; +import java.util.ArrayList; + import org.eclipse.cdt.core.model.CModelException; import org.eclipse.cdt.core.model.ICProject; +import org.eclipse.cdt.core.model.ILibraryReference; import org.eclipse.cdt.internal.ui.CPluginImages; +import org.eclipse.core.resources.IFile; import org.eclipse.core.runtime.IAdaptable; +import org.eclipse.core.runtime.IPath; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.ui.model.IWorkbenchAdapter; @@ -51,7 +56,16 @@ public class LibraryRefContainer implements IAdaptable, IWorkbenchAdapter { */ public Object[] getChildren(Object o) { try { - return fCProject.getLibraryReferences(); + ILibraryReference[] references = fCProject.getLibraryReferences(); + ArrayList list = new ArrayList(references.length); + for (int i = 0; i < references.length; i++) { + IPath path = references[i].getPath(); + IFile file = references[i].getCModel().getWorkspace().getRoot().getFileForLocation(path); + if (file == null || !file.isAccessible()) { + list.add(references[i]); + } + } + return list.toArray(); } catch (CModelException e) { } return EMPTY;