Java源码示例:com.intellij.ide.projectView.BaseProjectTreeBuilder

示例1
@Override
@Nonnull
public 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();
    }
  };
}
 
示例2
private void doSelectModuleOrGroup(@Nonnull Object toSelect, final boolean requestFocus) {
  ToolWindowManager windowManager = ToolWindowManager.getInstance(myProject);
  final Runnable runnable = () -> {
    if (requestFocus) {
      ProjectView projectView = ProjectView.getInstance(myProject);
      if (projectView != null) {
        projectView.changeView(getId(), getSubId());
      }
    }
    BaseProjectTreeBuilder builder = (BaseProjectTreeBuilder)getTreeBuilder();
    if (builder != null) {
      builder.selectInWidth(toSelect, requestFocus, node -> node instanceof AbstractModuleNode || node instanceof ModuleGroupNode || node instanceof AbstractProjectNode);
    }
  };
  if (requestFocus) {
    windowManager.getToolWindow(ToolWindowId.PROJECT_VIEW).activate(runnable);
  }
  else {
    runnable.run();
  }
}
 
示例3
@Nonnull
public AsyncResult<Void> selectCB(Object element, VirtualFile file, boolean requestFocus) {
  if (file != null) {
    AbstractTreeBuilder builder = getTreeBuilder();
    if (builder instanceof BaseProjectTreeBuilder) {
      beforeSelect().doWhenDone(() -> UIUtil.invokeLaterIfNeeded(() -> {
        if (!builder.isDisposed()) {
          ((BaseProjectTreeBuilder)builder).selectAsync(element, file, requestFocus);
        }
      }));
    }
    else if (myAsyncSupport != null) {
      myAsyncSupport.select(myTree, element, file);
    }
  }
  return AsyncResult.resolved();
}
 
示例4
@Nonnull
protected BaseProjectTreeBuilder createBuilder(DefaultTreeModel treeModel) {
  return new KnowledgeViewTreeBuilder(myProject, myTree, treeModel, null, (KnowledgeViewPanelTreeStructure) myTreeStructure) {
    @Override
    protected AbstractTreeUpdater createUpdater() {
      return createTreeUpdater(this);
    }
  };
}
 
示例5
protected BaseProjectTreeBuilder createBuilder(@Nonnull DefaultTreeModel treeModel) {
  return new ProjectTreeBuilder(myProject, myTree, treeModel, null, (ProjectAbstractTreeStructureBase)myTreeStructure) {
    @Override
    protected AbstractTreeUpdater createUpdater() {
      return createTreeUpdater(this);
    }
  };
}
 
示例6
@Override
public BaseProjectTreeBuilder createBuilder(@Nonnull DefaultTreeModel model) {
  return null;
}
 
示例7
@Override
protected BaseProjectTreeBuilder createBuilder(@Nonnull DefaultTreeModel model) {
  return null;
}