Example usage for com.intellij.openapi.ui SimpleToolWindowPanel setToolbar

List of usage examples for com.intellij.openapi.ui SimpleToolWindowPanel setToolbar

Introduction

In this page you can find the example usage for com.intellij.openapi.ui SimpleToolWindowPanel setToolbar.

Prototype

public void setToolbar(@Nullable JComponent c) 

Source Link

Usage

From source file:com.deepsky.findUsages.workarounds.UsageView2Impl.java

License:Apache License

public UsageView2Impl(@NotNull Project project, @NotNull UsageViewPresentation presentation,
        @NotNull UsageTarget[] targets, Factory<UsageSearcher> usageSearcherFactory) {
    myPresentation = presentation;/*from  w w  w . j a va  2  s  .  com*/
    myTargets = targets;
    myUsageSearcherFactory = usageSearcherFactory;
    myProject = project;
    myTree = new Tree() {
        {
            ToolTipManager.sharedInstance().registerComponent(this);
        }

        public String getToolTipText(MouseEvent e) {
            TreePath path = getPathForLocation(e.getX(), e.getY());
            if (path != null) {
                if (getCellRenderer() instanceof UsageViewTreeCellRenderer) {
                    return UsageViewTreeCellRenderer.getTooltipText(path.getLastPathComponent());
                }
            }
            return null;
        }

        public boolean isPathEditable(final TreePath path) {
            return path.getLastPathComponent() instanceof UsageViewTreeModelBuilder.TargetsRootNode;
        }
    };
    myRootPanel = new MyPanel(myTree);
    myModelTracker = new UsageModelTracker(project);
    Disposer.register(this, myModelTracker);

    myModel = new UsageViewTreeModelBuilder(myPresentation, targets);
    myRoot = (GroupNode) myModel.getRoot();

    myBuilder = new UsageNodeTreeBuilder(getActiveGroupingRules(project), getActiveFilteringRules(project),
            myRoot);

    final MessageBusConnection messageBusConnection = myProject.getMessageBus().connect(this);

    messageBusConnection.subscribe(UsageFilteringRuleProvider.RULES_CHANGED, new Runnable() {
        public void run() {
            rulesChanged();
        }
    });

    if (!myPresentation.isDetachedMode()) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                if (isDisposed)
                    return;
                myTree.setModel(myModel);

                myRootPanel.setLayout(new BorderLayout());

                final SimpleToolWindowPanel twPanel = new SimpleToolWindowPanel(false, true);
                myRootPanel.add(twPanel, BorderLayout.CENTER);

                JPanel toolbarPanel = new JPanel(new BorderLayout());
                toolbarPanel.add(createActionsToolbar(), BorderLayout.WEST);
                toolbarPanel.add(createFiltersToolbar(), BorderLayout.CENTER);
                twPanel.setToolbar(toolbarPanel);

                myCentralPanel = new JPanel();
                myCentralPanel.setLayout(new BorderLayout());
                setupCentralPanel();

                initTree();
                twPanel.setContent(myCentralPanel);

                myTree.setCellRenderer(new UsageViewTreeCellRenderer(UsageView2Impl.this));
                collapseAll();

                myModelTracker.addListener(UsageView2Impl.this);

                if (myPresentation.isShowCancelButton()) {
                    addButtonToLowerPane(new Runnable() {
                        public void run() {
                            close();
                        }
                    }, UsageViewBundle.message("usage.view.cancel.button"));
                }

                myTree.getSelectionModel().addTreeSelectionListener(new TreeSelectionListener() {
                    public void valueChanged(final TreeSelectionEvent e) {
                        SwingUtilities.invokeLater(new Runnable() {
                            public void run() {
                                if (isDisposed)
                                    return;
                                java.util.List<UsageInfo> infos = getSelectedUsageInfos();
                                if (infos != null && myUsagePreviewPanel != null) {
                                    myUsagePreviewPanel.updateLayout(infos);
                                }
                            }
                        });
                    }
                });
            }
        });
    }
}

From source file:com.headwire.aem.tooling.intellij.console.ConsoleLogToolWindowFactory.java

License:Apache License

static void createContent(Project project, ToolWindow toolWindow, ConsoleLogConsole console, String title) {
    // update default Event Log tab title
    ContentManager contentManager = toolWindow.getContentManager();
    Content generalContent = contentManager.getContent(0);
    if (generalContent != null && contentManager.getContentCount() == 1) {
        generalContent.setDisplayName("General");
    }//from w w w  .  j a v a  2 s .  c  o  m

    final Editor editor = console.getConsoleEditor();

    SimpleToolWindowPanel panel = new SimpleToolWindowPanel(false, true) {
        @Override
        public Object getData(@NonNls String dataId) {
            return PlatformDataKeys.HELP_ID.is(dataId) ? ConsoleLog.HELP_ID : super.getData(dataId);
        }
    };
    panel.setContent(editor.getComponent());
    panel.addAncestorListener(new LogShownTracker(project));

    ActionToolbar toolbar = createToolbar(project, editor, console);
    toolbar.setTargetComponent(editor.getContentComponent());
    panel.setToolbar(toolbar.getComponent());

    Content content = ContentFactory.SERVICE.getInstance().createContent(panel, title, false);
    contentManager.addContent(content);
    contentManager.setSelectedContent(content);
}

From source file:com.intellij.notification.EventLogToolWindowFactory.java

License:Apache License

static void createContent(Project project, ToolWindow toolWindow, EventLogConsole console, String title) {
    // update default Event Log tab title
    ContentManager contentManager = toolWindow.getContentManager();
    Content generalContent = contentManager.getContent(0);
    if (generalContent != null && contentManager.getContentCount() == 1) {
        generalContent.setDisplayName("General");
    }/* w w  w  . ja  va 2s. c o m*/

    final Editor editor = console.getConsoleEditor();

    SimpleToolWindowPanel panel = new SimpleToolWindowPanel(false, true) {
        @Override
        public Object getData(@NonNls String dataId) {
            return PlatformDataKeys.HELP_ID.is(dataId) ? EventLog.HELP_ID : super.getData(dataId);
        }
    };
    panel.setContent(editor.getComponent());
    panel.addAncestorListener(new LogShownTracker(project));

    ActionToolbar toolbar = createToolbar(project, editor, console);
    toolbar.setTargetComponent(editor.getContentComponent());
    panel.setToolbar(toolbar.getComponent());

    Content content = ContentFactory.SERVICE.getInstance().createContent(panel, title, false);
    contentManager.addContent(content);
    contentManager.setSelectedContent(content);
}

From source file:com.intellij.usages.impl.UsageViewImpl.java

License:Apache License

UsageViewImpl(@NotNull final Project project, @NotNull UsageViewPresentation presentation,
        @NotNull UsageTarget[] targets, Factory<UsageSearcher> usageSearcherFactory) {
    myPresentation = presentation;/*from   www. jav  a 2 s  .  co m*/
    myTargets = targets;
    myUsageSearcherFactory = usageSearcherFactory;
    myProject = project;
    myTree = new Tree() {
        {
            ToolTipManager.sharedInstance().registerComponent(this);
        }

        @Override
        public String getToolTipText(MouseEvent e) {
            TreePath path = getPathForLocation(e.getX(), e.getY());
            if (path != null) {
                if (getCellRenderer() instanceof UsageViewTreeCellRenderer) {
                    return UsageViewTreeCellRenderer.getTooltipFromPresentation(path.getLastPathComponent());
                }
            }
            return null;
        }

        @Override
        public boolean isPathEditable(final TreePath path) {
            return path.getLastPathComponent() instanceof UsageViewTreeModelBuilder.TargetsRootNode;
        }

        // hack to avoid quadratic expandAll()
        @Override
        public Enumeration<TreePath> getExpandedDescendants(TreePath parent) {
            return expandingAll ? EmptyEnumeration.<TreePath>getInstance()
                    : super.getExpandedDescendants(parent);
        }
    };
    myRootPanel = new MyPanel(myTree);
    Disposer.register(this, myRootPanel);
    myModelTracker = new UsageModelTracker(project);
    Disposer.register(this, myModelTracker);

    myModel = new UsageViewTreeModelBuilder(myPresentation, targets);
    myRoot = (GroupNode) myModel.getRoot();
    myBuilder = new UsageNodeTreeBuilder(myTargets, getActiveGroupingRules(project),
            getActiveFilteringRules(project), myRoot);

    final MessageBusConnection messageBusConnection = myProject.getMessageBus().connect(this);
    messageBusConnection.subscribe(UsageFilteringRuleProvider.RULES_CHANGED, new Runnable() {
        @Override
        public void run() {
            rulesChanged();
        }
    });

    myUsageViewTreeCellRenderer = new UsageViewTreeCellRenderer(this);
    if (!myPresentation.isDetachedMode()) {
        UIUtil.invokeLaterIfNeeded(new Runnable() {
            @Override
            public void run() {
                // lock here to avoid concurrent execution of this init and dispose in other thread
                synchronized (lock) {
                    if (isDisposed)
                        return;
                    myTree.setModel(myModel);

                    myRootPanel.setLayout(new BorderLayout());

                    SimpleToolWindowPanel toolWindowPanel = new SimpleToolWindowPanel(false, true);
                    myRootPanel.add(toolWindowPanel, BorderLayout.CENTER);

                    JPanel toolbarPanel = new JPanel(new BorderLayout());
                    toolbarPanel.add(createActionsToolbar(), BorderLayout.WEST);
                    toolbarPanel.add(createFiltersToolbar(), BorderLayout.CENTER);
                    toolWindowPanel.setToolbar(toolbarPanel);

                    myCentralPanel = new JPanel(new BorderLayout());
                    setupCentralPanel();

                    initTree();
                    toolWindowPanel.setContent(myCentralPanel);

                    myTree.setCellRenderer(myUsageViewTreeCellRenderer);
                    collapseAll();

                    myModelTracker.addListener(UsageViewImpl.this);

                    if (myPresentation.isShowCancelButton()) {
                        addButtonToLowerPane(new Runnable() {
                            @Override
                            public void run() {
                                close();
                            }
                        }, UsageViewBundle.message("usage.view.cancel.button"));
                    }

                    myTree.getSelectionModel().addTreeSelectionListener(new TreeSelectionListener() {
                        @Override
                        public void valueChanged(final TreeSelectionEvent e) {
                            SwingUtilities.invokeLater(new Runnable() {
                                @Override
                                public void run() {
                                    if (isDisposed || myProject.isDisposed())
                                        return;
                                    updateOnSelectionChanged();
                                }
                            });
                        }
                    });
                }
            }
        });
    }
    myTransferToEDTQueue = new TransferToEDTQueue<Runnable>("Insert usages", new Processor<Runnable>() {
        @Override
        public boolean process(Runnable runnable) {
            runnable.run();
            return true;
        }
    }, new Condition<Object>() {
        @Override
        public boolean value(Object o) {
            return isDisposed || project.isDisposed();
        }
    }, 200);
}

From source file:com.urswolfer.intellij.plugin.gerrit.ui.GerritToolWindow.java

License:Apache License

public SimpleToolWindowPanel createToolWindowContent(final Project project) {
    changeListPanel.registerChangeListPanel(this);
    diffManager.registerDiffTool(commentsDiffTool);

    SimpleToolWindowPanel panel = new SimpleToolWindowPanel(true, true);

    ActionToolbar toolbar = createToolbar(project);
    toolbar.setTargetComponent(changeListPanel);
    panel.setToolbar(toolbar.getComponent());

    RepositoryChangesBrowser repositoryChangesBrowser = repositoryChangesBrowserProvider.get(project,
            changeListPanel);// w  ww . jav  a2  s .c  o m

    Splitter detailsSplitter = new Splitter(true, 0.6f);
    detailsSplitter.setShowDividerControls(true);

    changeListPanel
            .setBorder(IdeBorderFactory.createBorder(SideBorder.TOP | SideBorder.RIGHT | SideBorder.BOTTOM));
    detailsSplitter.setFirstComponent(changeListPanel);

    detailsPanel = new GerritChangeDetailsPanel(project);
    changeListPanel.addListSelectionListener(new Consumer<ChangeInfo>() {
        @Override
        public void consume(ChangeInfo changeInfo) {
            changeSelected(changeInfo, project);
        }
    });
    JPanel details = detailsPanel.getComponent();
    details.setBorder(IdeBorderFactory.createBorder(SideBorder.TOP | SideBorder.RIGHT));
    detailsSplitter.setSecondComponent(details);

    Splitter horizontalSplitter = new Splitter(false, 0.7f);
    horizontalSplitter.setShowDividerControls(true);
    horizontalSplitter.setFirstComponent(detailsSplitter);
    horizontalSplitter.setSecondComponent(repositoryChangesBrowser);

    panel.setContent(horizontalSplitter);

    reloadChanges(project, false);

    changeListPanel.showSetupHintWhenRequired(project);

    return panel;
}

From source file:edu.wpi.tjclark.netconsole.NetConsoleToolWindowFactory.java

License:Open Source License

@Override
public void createToolWindowContent(Project project, ToolWindow toolWindow) {
    final Document document = new PlainDocument();
    final NetConsoleClient netConsole = new NetConsoleClient(document);

    final JXTextArea textArea = new JXTextArea();
    textArea.setDocument(document);/* w  w w  . ja v a  2s  . c  om*/
    textArea.setEditable(false);

    final DefaultActionGroup actionGroup = new DefaultActionGroup();
    actionGroup.addAction(new AutoScrollAction(netConsole, textArea));
    actionGroup.addAction(new ClearAction(netConsole));
    actionGroup.addAction(new DisableAction(netConsole, textArea));

    final SimpleToolWindowPanel netConsolePanel = new SimpleToolWindowPanel(false, false);
    final ActionToolbar toolbar = ActionManager.getInstance().createActionToolbar(ActionPlaces.UNKNOWN,
            actionGroup, false);
    netConsolePanel.setToolbar(toolbar.getComponent());
    netConsolePanel.setContent(new JBScrollPane(textArea));

    final ContentFactory contentFactory = ContentFactory.SERVICE.getInstance();
    final Content content = contentFactory.createContent(netConsolePanel, "", true);
    toolWindow.getContentManager().addContent(content);
}

From source file:io.flutter.view.FlutterView.java

License:Open Source License

public void initToolWindow(@NotNull ToolWindow toolWindow) {
    final ContentFactory contentFactory = ContentFactory.SERVICE.getInstance();

    final Content toolContent = contentFactory.createContent(null, null, false);
    final SimpleToolWindowPanel toolWindowPanel = new SimpleToolWindowPanel(true, true);
    toolContent.setComponent(toolWindowPanel);
    //Disposer.register(this, toolWindowPanel);
    toolContent.setCloseable(false);/* w w w. ja  v a2 s  .  c  o  m*/

    final DefaultActionGroup toolbarGroup = new DefaultActionGroup();
    toolbarGroup.add(new DebugDrawAction(this));
    toolbarGroup.add(new RepaintRainbowAction(this));
    toolbarGroup.add(new PerformanceOverlayAction(this));
    toolbarGroup.add(new TimeDilationAction(this));
    toolbarGroup.addSeparator();
    toolbarGroup.add(new ObservatoryTimelineAction(this));

    final JPanel mainContent = new JPanel(new BorderLayout());

    toolWindowPanel.setToolbar(ActionManager.getInstance()
            .createActionToolbar("FlutterViewToolbar", toolbarGroup, true).getComponent());
    toolWindowPanel.setContent(mainContent);

    final ContentManager contentManager = toolWindow.getContentManager();
    contentManager.addContent(toolContent);
    contentManager.setSelectedContent(toolContent);
}

From source file:net.orfjackal.sbt.plugin.SbtConsole.java

License:Open Source License

public void attachToToolWindow(ToolWindow window) {
    // org.jetbrains.idea.maven.embedder.MavenConsoleImpl#ensureAttachedToToolWindow
    SimpleToolWindowPanel toolWindowPanel = new SimpleToolWindowPanel(false, true);
    JComponent consoleComponent = consoleView.getComponent();
    toolWindowPanel.setContent(consoleComponent);
    StartSbtAction startSbtAction = new StartSbtAction();
    toolWindowPanel.setToolbar(createToolbar(startSbtAction));
    startSbtAction.registerCustomShortcutSet(CommonShortcuts.getRerun(), consoleComponent);

    Content content = ContentFactory.SERVICE.getInstance().createContent(toolWindowPanel, title, true);
    content.putUserData(CONSOLE_KEY, SbtConsole.this);

    window.getContentManager().addContent(content);
    window.getContentManager().setSelectedContent(content);

    removeUnusedTabs(window, content);//from w  w w  .  j a  va 2s .  c  o  m
}

From source file:org.codinjutsu.tools.jenkins.util.GuiUtil.java

License:Apache License

public static void installActionGroupInToolBar(ActionGroup actionGroup, SimpleToolWindowPanel toolWindowPanel,
        ActionManager actionManager, String toolBarName) {
    if (actionManager == null) {
        return;/* www  . ja  v a 2 s.  co m*/
    }

    JComponent actionToolbar = ActionManager.getInstance().createActionToolbar(toolBarName, actionGroup, true)
            .getComponent();
    toolWindowPanel.setToolbar(actionToolbar);
}