| package com.intellij.projectView; |
| |
| import com.intellij.ide.SelectInTarget; |
| import com.intellij.ide.projectView.BaseProjectTreeBuilder; |
| import com.intellij.ide.projectView.ProjectView; |
| import com.intellij.ide.projectView.impl.AbstractProjectViewPSIPane; |
| import com.intellij.ide.projectView.impl.ProjectAbstractTreeStructureBase; |
| import com.intellij.ide.projectView.impl.ProjectTreeBuilder; |
| import com.intellij.ide.projectView.impl.ProjectViewTree; |
| import com.intellij.ide.util.treeView.AbstractTreeBuilder; |
| import com.intellij.ide.util.treeView.AbstractTreeUpdater; |
| import com.intellij.ide.util.treeView.AlphaComparator; |
| import com.intellij.openapi.project.DumbAwareRunnable; |
| import com.intellij.openapi.project.Project; |
| import com.intellij.openapi.startup.StartupManager; |
| import org.jetbrains.annotations.NonNls; |
| import org.jetbrains.annotations.NotNull; |
| |
| import javax.swing.*; |
| import javax.swing.tree.DefaultMutableTreeNode; |
| import javax.swing.tree.DefaultTreeModel; |
| |
| /** |
| * @author yole |
| */ |
| class TestProjectViewPSIPane extends AbstractProjectViewPSIPane { |
| private TestProjectTreeStructure myTestTreeStructure; |
| |
| public TestProjectViewPSIPane(Project project, TestProjectTreeStructure treeStructure) { |
| super(project); |
| myTestTreeStructure = treeStructure; |
| } |
| |
| @Override |
| public SelectInTarget createSelectInTarget() { |
| return null; |
| } |
| |
| @NonNls |
| public String getComponentName() { |
| return "comp name"; |
| } |
| |
| @Override |
| protected AbstractTreeUpdater createTreeUpdater(AbstractTreeBuilder treeBuilder) { |
| return new AbstractTreeUpdater(treeBuilder); |
| } |
| |
| @Override |
| @NotNull |
| protected BaseProjectTreeBuilder createBuilder(DefaultTreeModel treeModel) { |
| return new ProjectTreeBuilder(myProject, myTree, treeModel, AlphaComparator.INSTANCE, |
| (ProjectAbstractTreeStructureBase)myTreeStructure) { |
| @Override |
| protected AbstractTreeUpdater createUpdater() { |
| return createTreeUpdater(this); |
| } |
| |
| protected void addTaskToWorker(final Runnable runnable, boolean first, final Runnable postRunnable) { |
| runnable.run(); |
| postRunnable.run(); |
| } |
| }; |
| } |
| |
| @Override |
| protected ProjectAbstractTreeStructureBase createStructure() { |
| return myTestTreeStructure; |
| } |
| |
| @Override |
| protected ProjectViewTree createTree(DefaultTreeModel treeModel) { |
| return new ProjectViewTree(myProject, treeModel) { |
| @Override |
| public DefaultMutableTreeNode getSelectedNode() { |
| return null; |
| } |
| }; |
| } |
| |
| @Override |
| public Icon getIcon() { |
| return null; |
| } |
| |
| @Override |
| @NotNull |
| public String getId() { |
| return ""; |
| } |
| |
| @Override |
| public String getTitle() { |
| return null; |
| } |
| |
| @Override |
| public int getWeight() { |
| return 0; |
| } |
| |
| public void projectOpened() { |
| final Runnable runnable = new DumbAwareRunnable() { |
| @Override |
| public void run() { |
| final ProjectView projectView = ProjectView.getInstance(myProject); |
| projectView.addProjectPane(TestProjectViewPSIPane.this); |
| } |
| }; |
| StartupManager.getInstance(myProject).registerPostStartupActivity(runnable); |
| } |
| |
| public void projectClosed() { |
| } |
| |
| public void initComponent() { } |
| |
| public void disposeComponent() { |
| |
| } |
| } |