@Override public boolean select(Viewer viewer, Object parent, Object element) { if (element instanceof IFile) { if (fExcludes != null && fExcludes.contains(element)) { return false; } return isArchivePath(((IFile)element).getFullPath(), fAllowAllArchives); } else if (element instanceof IContainer) { // IProject, IFolder if (!fRecursive) { return true; } // ignore closed projects if (element instanceof IProject && !((IProject)element).isOpen()) return false; try { IResource[] resources= ((IContainer)element).members(); for (int i= 0; i < resources.length; i++) { // recursive! Only show containers that contain an archive if (select(viewer, parent, resources[i])) { return true; } } } catch (CoreException e) { JavaPlugin.log(e.getStatus()); } } return false; }
public boolean select(Viewer viewer, Object parent, Object element) { if (element instanceof IFile) { if (fExcludes != null && fExcludes.contains(element)) { return false; } return isArchivePath(((IFile)element).getFullPath()); } else if (element instanceof IContainer) { // IProject, IFolder if (!fRecursive) { return true; } // Ignore closed projects if (element instanceof IProject && !((IProject)element).isOpen()) return false; try { IResource[] resources= ((IContainer)element).members(); for (int i= 0; i < resources.length; i++) { // recursive! Only show containers that contain an archive if (select(viewer, parent, resources[i])) { return true; } } } catch (CoreException e) { JavaPlugin.log(e.getStatus()); } } return false; }
@Override public boolean select(Viewer viewer, Object parent, Object element) { if (element instanceof IFile) { if (fExcludes != null && fExcludes.contains(element)) { return false; } return isArchivePath(((IFile)element).getFullPath(), fAllowAllArchives); } else if (element instanceof IContainer) { // IProject, IFolder if (!fRecursive) { return true; } // ignore closed projects if (element instanceof IProject && !((IProject)element).isOpen()) return false; try { IResource[] resources= ((IContainer)element).members(); for (int i= 0; i < resources.length; i++) { // recursive! Only show containers that contain an archive if (select(viewer, parent, resources[i])) { return true; } } } catch (CoreException e) { JavaPlugin.log(e.getStatus()); } } return false; }