From f8d097897ed45fb4a851322fcb6fb0ae8193700e Mon Sep 17 00:00:00 2001 From: Alexey Pegov Date: Tue, 15 Sep 2009 20:00:50 +0400 Subject: [PATCH] Pin tab action now available in Tool Window toolbar for run, debug, find usages and hierarchy toolwindows --- .../debugger/ui/DebuggerSessionTab.java | 2 + platform/icons/src/general/pin_tab.png | Bin 0 -> 849 bytes .../execution/runners/RunContentBuilder.java | 2 + .../ide/hierarchy/HierarchyBrowserBase.java | 2 + .../openapi/wm/impl/InternalDecorator.java | 8 ++- .../wm/impl/content/ToolWindowContentUi.java | 6 +- .../ui/content/TabbedPaneContentUI.java | 8 ++- .../content/tabs/PinToolwindowTabAction.java | 67 ++++++++++++++++++ .../ui/content/tabs/TabbedContentAction.java | 27 ------- .../src/idea/PlatformActions.xml | 2 + .../intellij/usages/impl/UsageViewImpl.java | 1 + .../xdebugger/impl/ui/XDebugSessionTab.java | 2 + 12 files changed, 95 insertions(+), 32 deletions(-) create mode 100644 platform/icons/src/general/pin_tab.png create mode 100644 platform/platform-impl/src/com/intellij/ui/content/tabs/PinToolwindowTabAction.java diff --git a/java/debugger/impl/src/com/intellij/debugger/ui/DebuggerSessionTab.java b/java/debugger/impl/src/com/intellij/debugger/ui/DebuggerSessionTab.java index 927a4ef55c86..7e1cb650c9e8 100644 --- a/java/debugger/impl/src/com/intellij/debugger/ui/DebuggerSessionTab.java +++ b/java/debugger/impl/src/com/intellij/debugger/ui/DebuggerSessionTab.java @@ -42,6 +42,7 @@ import com.intellij.ui.content.AlertIcon; import com.intellij.ui.content.Content; import com.intellij.ui.content.ContentManagerAdapter; import com.intellij.ui.content.ContentManagerEvent; +import com.intellij.ui.content.tabs.PinToolwindowTabAction; import com.intellij.unscramble.ThreadDumpPanel; import com.intellij.unscramble.ThreadState; import com.intellij.xdebugger.XDebuggerBundle; @@ -333,6 +334,7 @@ public class DebuggerSessionTab extends DebuggerLogConsoleManagerBase implements group.addSeparator(); + addActionToGroup(group, PinToolwindowTabAction.ACTION_NAME); group.add(new CloseAction(executor, myRunContentDescriptor, getProject())); group.add(new ContextHelpAction(executor.getHelpId())); diff --git a/platform/icons/src/general/pin_tab.png b/platform/icons/src/general/pin_tab.png new file mode 100644 index 0000000000000000000000000000000000000000..ccf38390572f20cc303686fdfe8e9be258f358c1 GIT binary patch literal 849 zcmV-X1FrmuP)4|g2=>( zNXKL_fuVPC=*b-R)>o@;ck$@`8z&qR!}^l}olK&zd|HBaeSSX#b7cu46@ea&V0=o) z!{Q(jv{hrk9KX8xi1>QEpw{dpofJB?iG7phBVP+~<9o=>3v zWehC2h}yEaW>`|cF!^c;SyL*A6G_SKV;{y7DSZxddI4v)|G=(_MXXnJq~lBQNel3~ zR+VO<4wt$UqQKX4JeA56Tq-Vg~sP5?Ptp^7W9O z{iKMN&RU2Wr6b=KdCRLW#i8lA3SR7nvQ~ra_F!FU5p_ZGI~gzr$A^taE_AwN-ki<= zs_N|;c-nh=fcEcRIXyBK_S_nuQQIqhLR%vnNadJaLcnoxN8364(3LvIq)|hNAY;63 z_<8TdUriL5V}qukz3rrz+H8yGr>^OA1$rJl*5wdsV4CQshV~J-i!#y=9KYz)Q=u8y z>`T*<+aA%W)PUV``q2tTk_p@i&Irf`nPY1PiQWk!Sk7`}ganDf(Pi> bzXccot+;GKD| + + diff --git a/platform/usageView/src/com/intellij/usages/impl/UsageViewImpl.java b/platform/usageView/src/com/intellij/usages/impl/UsageViewImpl.java index 2476c6d8efce..7580bbe2b6f8 100644 --- a/platform/usageView/src/com/intellij/usages/impl/UsageViewImpl.java +++ b/platform/usageView/src/com/intellij/usages/impl/UsageViewImpl.java @@ -423,6 +423,7 @@ public class UsageViewImpl implements UsageView, UsageModelTracker.UsageModelTra return new AnAction[]{ canPerformReRun() ? new ReRunAction() : null, new CloseAction(), + ActionManager.getInstance().getAction("PinToolwindowTab"), createRecentFindUsagesAction(), expandAllAction, collapseAllAction, diff --git a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/ui/XDebugSessionTab.java b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/ui/XDebugSessionTab.java index c74334b91ac7..fa5523c39b4e 100644 --- a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/ui/XDebugSessionTab.java +++ b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/ui/XDebugSessionTab.java @@ -23,6 +23,7 @@ import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.wm.ex.WindowManagerEx; import com.intellij.ui.content.Content; +import com.intellij.ui.content.tabs.PinToolwindowTabAction; import com.intellij.xdebugger.XDebugProcess; import com.intellij.xdebugger.XDebugSession; import com.intellij.xdebugger.XDebuggerBundle; @@ -207,6 +208,7 @@ public class XDebugSessionTab extends DebuggerLogConsoleManagerBase { group.addSeparator(); + group.add(PinToolwindowTabAction.getPinAction()); group.add(new CloseAction(executor, myRunContentDescriptor, getProject())); group.add(new ContextHelpAction(executor.getHelpId()));