Mercurial > hg > truffle
view src/share/tools/IdealGraphVisualizer/OutlineView/src/com/oracle/graal/visualizer/outline/OutlineTopComponent.java @ 4505:5d9c4796912d
Fix window modes. Open snapshot view on startup.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Sun, 05 Feb 2012 05:37:52 +0100 |
parents | d6f55cb223f4 |
children |
line wrap: on
line source
/* * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions. * */ package com.oracle.graal.visualizer.outline; import com.oracle.graal.visualizer.outline.server.ServerPanel; import com.oracle.graal.visualizer.util.LookupUtils; import com.sun.hotspot.igv.data.GraphDocument; import java.awt.BorderLayout; import javax.swing.Action; import org.openide.actions.GarbageCollectAction; import org.openide.awt.ActionID; import org.openide.awt.ActionReference; import org.openide.awt.Toolbar; import org.openide.explorer.ExplorerManager; import org.openide.explorer.ExplorerUtils; import org.openide.explorer.view.BeanTreeView; import org.openide.util.NbBundle; import org.openide.windows.TopComponent; import org.openide.windows.WindowManager; @TopComponent.Description(preferredID = OutlineTopComponent.PREFERRED_ID, persistenceType = TopComponent.PERSISTENCE_ALWAYS) @TopComponent.Registration(mode = "explorer", openAtStartup = true) @ActionID(category = "Window", id = "com.oracle.graal.visualizer.outline.OutlineTopComponent") @ActionReference(path = "Menu/Window") @TopComponent.OpenActionRegistration(displayName = "Outline", preferredID = OutlineTopComponent.PREFERRED_ID) public final class OutlineTopComponent extends TopComponent implements ExplorerManager.Provider { public static final String GLOBAL_ACTIONS_FOLDER = "Actions/Outline/Global"; public static final String NODE_ACTIONS_FOLDER = "Actions/Outline/Nodes"; public static OutlineTopComponent instance; public static final String PREFERRED_ID = "OutlineTopComponent"; private ExplorerManager manager; private GraphDocument document; private OutlineTopComponent() { initComponents(); setName(NbBundle.getMessage(OutlineTopComponent.class, "CTL_OutlineTopComponent")); setToolTipText(NbBundle.getMessage(OutlineTopComponent.class, "HINT_OutlineTopComponent")); document = new GraphDocument(); initListView(); initToolbar(); } private void initListView() { manager = new ExplorerManager(); manager.setRootContext(new CompilationNode(document)); ((BeanTreeView) this.treeView).setRootVisible(false); associateLookup(ExplorerUtils.createLookup(manager, getActionMap())); } private void initToolbar() { Toolbar toolbar = new Toolbar(); this.add(toolbar, BorderLayout.NORTH); for (Action a : LookupUtils.lookupActions(GLOBAL_ACTIONS_FOLDER, getLookup())) { toolbar.add(a); } toolbar.add(GarbageCollectAction.get(GarbageCollectAction.class).getToolbarPresenter()); toolbar.add(new ServerPanel(getDocument())); } @Override public ExplorerManager getExplorerManager() { return manager; } public GraphDocument getDocument() { return document; } public static OutlineTopComponent findInstance() { return (OutlineTopComponent) WindowManager.getDefault().findTopComponent(PREFERRED_ID); } @Override public int getPersistenceType() { return TopComponent.PERSISTENCE_NEVER; } @Override protected String preferredID() { return PREFERRED_ID; } /** * This method is called from within the constructor to initialize the form. * WARNING: Do NOT modify this code. The content of this method is always * regenerated by the Form Editor. */ // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { treeView = new BeanTreeView(); setLayout(new java.awt.BorderLayout()); add(treeView, java.awt.BorderLayout.CENTER); }// </editor-fold>//GEN-END:initComponents // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JScrollPane treeView; // End of variables declaration//GEN-END:variables }