Java源码示例:com.intellij.ide.projectView.impl.nodes.ClassTreeNode
示例1
@Nullable
@Override
public PsiFileAndName toPsiFileAndName(BlazeProjectData projectData, ProjectViewNode<?> node) {
if (!(node instanceof ClassTreeNode)) {
return null;
}
PsiClass psiClass = ((ClassTreeNode) node).getPsiClass();
if (psiClass == null) {
return null;
}
PsiFile file = psiClass.getContainingFile();
return file != null ? new PsiFileAndName(file, psiClass.getName()) : null;
}
示例2
@Nullable
@Override
public PsiFileAndName toPsiFileAndName(BlazeProjectData projectData, ProjectViewNode<?> node) {
if (!(node instanceof ClassTreeNode)) {
return null;
}
PsiClass psiClass = ((ClassTreeNode) node).getPsiClass();
if (psiClass == null) {
return null;
}
PsiFile file = psiClass.getContainingFile();
return file != null ? new PsiFileAndName(file, psiClass.getName()) : null;
}
示例3
@Override
@Nullable
protected PsiClass getSelectedFromTreeUserObject(DefaultMutableTreeNode node) {
Object userObject = node.getUserObject();
if (!(userObject instanceof ClassTreeNode)) return null;
ClassTreeNode descriptor = (ClassTreeNode)userObject;
return descriptor.getPsiClass();
}
示例4
@Override
public boolean isForMe(ProjectViewNode node) {
if (node instanceof ClassTreeNode) {
ClassTreeNode classNode = (ClassTreeNode) node;
if (classNode.isTopLevel()) {
return true;
}
}
return false;
}
示例5
@Override
protected VirtualFile getVirtualFile(ProjectViewNode node) {
ClassTreeNode classNode = (ClassTreeNode) node;
return PsiUtilBase.getVirtualFile(classNode.getPsiClass());
}