SearchScope (String scopeType, PsiElement thisClass) { SearchScope searchScope = GlobalSearchScope.allScope(myProject); if (HierarchyBrowserBaseEx.SCOPE_CLASS.equals(scopeType)) { searchScope = new LocalSearchScope(thisClass); } else if (HierarchyBrowserBaseEx.SCOPE_MODULE.equals(scopeType)) { Module module = ModuleUtilCore.findModuleForPsiElement(thisClass); searchScope = module == null ? new LocalSearchScope(thisClass) : module.getModuleScope(true); } else if (HierarchyBrowserBaseEx.SCOPE_PROJECT.equals(scopeType)) { searchScope = GlobalSearchScopesCore.projectProductionScope(myProject); } else if (HierarchyBrowserBaseEx.SCOPE_TEST.equals(scopeType)) { searchScope = GlobalSearchScopesCore.projectTestScope(myProject); } else { NamedScope namedScope = NamedScopesHolder.getScope(myProject, scopeType); if (namedScope != null) { searchScope = GlobalSearchScopesCore.filterScope(myProject, namedScope); } } return searchScope; }