PackageDependenciesNode (@NotNull VirtualFile file, @Nullable PackageDependenciesNode parent) { final ProgressIndicator indicator = ProgressManager.getInstance().getProgressIndicator(); if (indicator != null) { indicator.setText(getScanningPackagesMessage()); indicator.setFraction(((double)myScannedFileCount++) / myTotalFileCount); } boolean isMarked = myMarker != null && myMarker.isMarked(file); if (isMarked) myMarkedFileCount++; if (isMarked || myAddUnmarkedFiles) { PackageDependenciesNode dirNode = parent != null ? parent : getFileParentNode(file); if (dirNode == null) return null; if (myShowFiles) { FileNode fileNode = new FileNode(file, myProject, isMarked); dirNode.add(fileNode); } else { dirNode.addFile(file, isMarked); } return dirNode; } return null; }