本文整理汇总了Java中com.intellij.ide.projectView.impl.ProjectRootsUtil.getModuleSourceRoot方法的典型用法代码示例。如果您正苦于以下问题:Java ProjectRootsUtil.getModuleSourceRoot方法的具体用法?Java ProjectRootsUtil.getModuleSourceRoot怎么用?Java ProjectRootsUtil.getModuleSourceRoot使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.intellij.ide.projectView.impl.ProjectRootsUtil
的用法示例。
在下文中一共展示了ProjectRootsUtil.getModuleSourceRoot方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getIcon
import com.intellij.ide.projectView.impl.ProjectRootsUtil; //导入方法依赖的package包/类
@Override
public Icon getIcon(@NotNull final PsiElement element, final int flags) {
if (element instanceof PsiDirectory) {
final PsiDirectory psiDirectory = (PsiDirectory)element;
final VirtualFile vFile = psiDirectory.getVirtualFile();
Project project = psiDirectory.getProject();
SourceFolder sourceFolder = ProjectRootsUtil.getModuleSourceRoot(vFile, project);
if (sourceFolder != null) {
return SourceRootPresentation.getSourceRootIcon(sourceFolder);
}
else {
Icon excludedIcon = getIconIfExcluded(project, vFile);
return excludedIcon != null ? excludedIcon : PlatformIcons.DIRECTORY_CLOSED_ICON;
}
}
return null;
}
示例2: getIcon
import com.intellij.ide.projectView.impl.ProjectRootsUtil; //导入方法依赖的package包/类
@Override
@Nullable
public Icon getIcon(@NotNull PsiElement element, int flags) {
if (element instanceof PsiDirectory) {
final PsiDirectory psiDirectory = (PsiDirectory)element;
final VirtualFile vFile = psiDirectory.getVirtualFile();
final Project project = psiDirectory.getProject();
SourceFolder sourceFolder;
Icon symbolIcon;
if (vFile.getParent() == null && vFile.getFileSystem() instanceof ArchiveFileSystem) {
symbolIcon = PlatformIcons.JAR_ICON;
}
else if (ProjectRootsUtil.isModuleContentRoot(vFile, project)) {
Module module = ProjectRootManager.getInstance(project).getFileIndex().getModuleForFile(vFile);
symbolIcon = module != null ? ModuleType.get(module).getIcon() : PlatformIcons.CONTENT_ROOT_ICON_CLOSED;
}
else if ((sourceFolder = ProjectRootsUtil.getModuleSourceRoot(vFile, project)) != null) {
symbolIcon = SourceRootPresentation.getSourceRootIcon(sourceFolder);
}
else if (JavaDirectoryService.getInstance().getPackage(psiDirectory) != null) {
symbolIcon = PlatformIcons.PACKAGE_ICON;
}
else if (!Registry.is("ide.hide.excluded.files") && ProjectRootManager.getInstance(project).getFileIndex().isExcluded(vFile)) {
symbolIcon = AllIcons.Modules.ExcludeRoot;
}
else {
symbolIcon = PlatformIcons.DIRECTORY_CLOSED_ICON;
}
return ElementBase.createLayeredIcon(element, symbolIcon, 0);
}
return null;
}
示例3: getDirectoryIcon
import com.intellij.ide.projectView.impl.ProjectRootsUtil; //导入方法依赖的package包/类
/**
* Return correct instance of directory icon (taken straight from the source code)
*
* @param element
*/
private Icon getDirectoryIcon(final PsiDirectory element) {
final VirtualFile vFile = element.getVirtualFile();
final Project project = element.getProject();
final SourceFolder sourceFolder;
Icon symbolIcon = null;
if (vFile.getParent() == null && vFile.getFileSystem() instanceof ArchiveFileSystem) {
symbolIcon = PlatformIcons.JAR_ICON;
} else if (ProjectRootsUtil.isModuleContentRoot(vFile, project)) {
final Module module = ProjectRootManager.getInstance(project).getFileIndex().getModuleForFile(vFile);
symbolIcon = module != null ? ModuleType.get(module).getIcon() : PlatformIcons.CONTENT_ROOT_ICON_CLOSED;
} else if ((sourceFolder = ProjectRootsUtil.getModuleSourceRoot(vFile, project)) != null) {
symbolIcon = SourceRootPresentation.getSourceRootIcon(sourceFolder);
} else if (hasJFS && JrtFileSystem.isModuleRoot(vFile)) {
symbolIcon = AllIcons.Nodes.JavaModuleRoot;
} else if (hasJDS && JavaDirectoryService.getInstance().getPackage(element) != null) {
symbolIcon = PlatformIcons.PACKAGE_ICON;
} else if (!Registry.is("ide.hide.excluded.files") && ProjectRootManager.getInstance(project).getFileIndex().isExcluded(vFile)) {
symbolIcon = AllIcons.Modules.ExcludeRoot;
}
try {
if (ProjectRootsUtil.findUnloadedModuleByContentRoot(vFile, project) != null) {
symbolIcon = AllIcons.Modules.UnloadedModule;
}
} catch (NoSuchMethodError e) {
// till android studio implements this shit;
}
if (symbolIcon != null) {
return ElementBase.createLayeredIcon(element, symbolIcon, 0);
} else {
return TintedIconsService.getIcon("/icons/nodes/folderClosed.png", "ff00cc");
}
}