From 1263db87f00f0ddccd1cd9fdfce82b5d07d3bfca Mon Sep 17 00:00:00 2001 From: Daniil Ovchinnikov Date: Mon, 8 Aug 2016 16:48:33 +0300 Subject: [PATCH] [project-view] make method name meaningful and add docs --- .../com/intellij/ide/util/treeView/TreeViewUtil.java | 4 ++-- .../impl/nodes/ProjectViewDirectoryHelper.java | 6 +++--- .../ide/projectView/impl/nodes/PsiDirectoryNode.java | 4 ++-- .../impl/nodes/PsiFileSystemItemFilter.java | 10 +++++++++- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/java/java-impl/src/com/intellij/ide/util/treeView/TreeViewUtil.java b/java/java-impl/src/com/intellij/ide/util/treeView/TreeViewUtil.java index 8cec8eaf2742..f3c134e9e0e2 100644 --- a/java/java-impl/src/com/intellij/ide/util/treeView/TreeViewUtil.java +++ b/java/java-impl/src/com/intellij/ide/util/treeView/TreeViewUtil.java @@ -110,10 +110,10 @@ public class TreeViewUtil { if (!file.isDirectory()) { if (filter == null) return false; PsiFile childFile = manager.findFile(file); - if (childFile != null && filter.accept(childFile)) return false; + if (childFile != null && filter.shouldShow(childFile)) return false; } PsiDirectory childDir = manager.findDirectory(file); - if (childDir != null && (filter == null || filter.accept(childDir))) { + if (childDir != null && (filter == null || filter.shouldShow(childDir))) { directoriesCount++; if (strictlyEmpty && directoriesCount > 1) return false; if (JavaDirectoryService.getInstance().getPackage(childDir) != null) { diff --git a/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/ProjectViewDirectoryHelper.java b/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/ProjectViewDirectoryHelper.java index dca406edfb96..c81f6d97e587 100644 --- a/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/ProjectViewDirectoryHelper.java +++ b/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/ProjectViewDirectoryHelper.java @@ -177,7 +177,7 @@ public class ProjectViewDirectoryHelper { if (withSubDirectories) { PsiDirectory[] subdirs = psiDirectory.getSubdirectories(); for (PsiDirectory subdir : subdirs) { - if (!skipDirectory(subdir) || filter != null && !filter.accept(subdir)) { + if (!skipDirectory(subdir) || filter != null && !filter.shouldShow(subdir)) { continue; } VirtualFile directoryFile = subdir.getVirtualFile(); @@ -291,7 +291,7 @@ public class ProjectViewDirectoryHelper { if (moduleFileIndex != null && !moduleFileIndex.isInContent(vFile)) { continue; } - if (filter != null && !filter.accept((PsiFileSystemItem)child)) { + if (filter != null && !filter.shouldShow((PsiFileSystemItem)child)) { continue; } if (child instanceof PsiFile) { @@ -323,7 +323,7 @@ public class ProjectViewDirectoryHelper { final Project project = dir.getProject(); PsiDirectory[] subdirs = dir.getSubdirectories(); for (PsiDirectory subdir : subdirs) { - if (skipDirectory(subdir) || filter != null && !filter.accept(subdir)) { + if (skipDirectory(subdir) || filter != null && !filter.shouldShow(subdir)) { continue; } if (moduleFileIndex != null && !moduleFileIndex.isInContent(subdir.getVirtualFile())) { diff --git a/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/PsiDirectoryNode.java b/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/PsiDirectoryNode.java index 991755ff8b7e..e32b00009027 100644 --- a/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/PsiDirectoryNode.java +++ b/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/PsiDirectoryNode.java @@ -189,10 +189,10 @@ public class PsiDirectoryNode extends BasePsiNode implements Navig PsiFileSystemItemFilter filter = getFilter(); if (filter != null) { PsiFile psiFile = PsiManager.getInstance(project).findFile(file); - if (psiFile != null && !filter.accept(psiFile)) return false; + if (psiFile != null && !filter.shouldShow(psiFile)) return false; PsiDirectory psiDirectory = PsiManager.getInstance(project).findDirectory(file); - if (psiDirectory != null && !filter.accept(psiDirectory)) return false; + if (psiDirectory != null && !filter.shouldShow(psiDirectory)) return false; } if (Registry.is("ide.hide.excluded.files")) { diff --git a/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/PsiFileSystemItemFilter.java b/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/PsiFileSystemItemFilter.java index ca035cee0684..07c7073abd1d 100644 --- a/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/PsiFileSystemItemFilter.java +++ b/platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/PsiFileSystemItemFilter.java @@ -15,10 +15,18 @@ */ package com.intellij.ide.projectView.impl.nodes; +import com.intellij.ide.projectView.ViewSettings; +import com.intellij.psi.PsiDirectory; +import com.intellij.psi.PsiFile; import com.intellij.psi.PsiFileSystemItem; import org.jetbrains.annotations.NotNull; public interface PsiFileSystemItemFilter { - boolean accept(@NotNull PsiFileSystemItem item); + /** + * @param item {@link PsiFile file} or {@link PsiDirectory directory}. + * @return true if item should be showed in project view, otherwise false. + * @see ProjectViewDirectoryHelper#getDirectoryChildren(PsiDirectory, ViewSettings, boolean, PsiFileSystemItemFilter) + */ + boolean shouldShow(@NotNull PsiFileSystemItem item); }