List of usage examples for com.intellij.openapi.wm ToolWindow getAnchor
ToolWindowAnchor getAnchor();
From source file:com.intellij.ide.actions.ResizeToolWindowAction.java
License:Apache License
protected void stretch(ToolWindow wnd, boolean isHorizontalStretching, boolean isIncrementAction) { ToolWindowScrollable scrollable = getScrollable(wnd, isHorizontalStretching); if (scrollable == null) return;/*from w w w. j a v a 2 s . c om*/ ToolWindowAnchor anchor = wnd.getAnchor(); if (isHorizontalStretching && !anchor.isHorizontal()) { incWidth(wnd, scrollable.getNextHorizontalScroll(), (anchor == ToolWindowAnchor.LEFT) == isIncrementAction); } else if (!isHorizontalStretching && anchor.isHorizontal()) { incHeight(wnd, scrollable.getNextVerticalScroll(), (anchor == ToolWindowAnchor.TOP) != isIncrementAction); } }
From source file:com.intellij.slicer.SlicePanel.java
License:Apache License
public SlicePanel(@NotNull final Project project, boolean dataFlowToThis, @NotNull SliceNode rootNode, boolean splitByLeafExpressions, @NotNull final ToolWindow toolWindow) { super(new BorderLayout()); myToolWindow = toolWindow;/*from ww w. j ava2 s. c om*/ final ToolWindowManagerListener listener = new ToolWindowManagerListener() { ToolWindowAnchor myAnchor = toolWindow.getAnchor(); @Override public void toolWindowRegistered(@NotNull String id) { } @Override public void stateChanged() { if (!project.isOpen()) { return; } if (toolWindow.getAnchor() != myAnchor) { myAnchor = myToolWindow.getAnchor(); layoutPanel(); } } }; ToolWindowManagerEx.getInstanceEx(project).addToolWindowManagerListener(listener); Disposer.register(this, new Disposable() { @Override public void dispose() { ToolWindowManagerEx.getInstanceEx(project).removeToolWindowManagerListener(listener); } }); ApplicationManager.getApplication().assertIsDispatchThread(); myProject = project; myTree = createTree(); myBuilder = new SliceTreeBuilder(myTree, project, dataFlowToThis, rootNode, splitByLeafExpressions); myBuilder.setCanYieldUpdate(!ApplicationManager.getApplication().isUnitTestMode()); Disposer.register(this, myBuilder); myBuilder.addSubtreeToUpdate((DefaultMutableTreeNode) myTree.getModel().getRoot(), new Runnable() { @Override public void run() { if (isDisposed || myBuilder.isDisposed() || myProject.isDisposed()) { return; } final SliceNode rootNode = myBuilder.getRootSliceNode(); myBuilder.expand(rootNode, new Runnable() { @Override public void run() { if (isDisposed || myBuilder.isDisposed() || myProject.isDisposed()) { return; } myBuilder.select(rootNode.myCachedChildren.get(0)); //first there is ony one child } }); treeSelectionChanged(); } }); layoutPanel(); }