void (boolean dataFlowToThis, @NotNull SliceRootNode rootNode, boolean splitByLeafExpressions, @NotNull @NlsContexts.TabTitle String displayName) { final SliceToolwindowSettings sliceToolwindowSettings = SliceToolwindowSettings.getInstance(myProject); final ContentManager contentManager = getContentManager(dataFlowToThis); final Content[] myContent = new Content[1]; ToolWindow toolWindow = ToolWindowManager.getInstance(myProject).getToolWindow(dataFlowToThis ? BACK_TOOLWINDOW_ID : FORTH_TOOLWINDOW_ID); final SlicePanel slicePanel = new SlicePanel(myProject, dataFlowToThis, rootNode, splitByLeafExpressions, toolWindow) { @Override protected void close() { super.close(); contentManager.removeContent(myContent[0], true); } @Override public boolean isAutoScroll() { return sliceToolwindowSettings.isAutoScroll(); } @Override public void setAutoScroll(boolean autoScroll) { sliceToolwindowSettings.setAutoScroll(autoScroll); } @Override public boolean isPreview() { return sliceToolwindowSettings.isPreview(); } @Override public void setPreview(boolean preview) { sliceToolwindowSettings.setPreview(preview); } }; myContent[0] = contentManager.getFactory().createContent(slicePanel, displayName, true); contentManager.addContent(myContent[0]); contentManager.setSelectedContent(myContent[0]); toolWindow.activate(null); }