X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=Tools%2FSource%2FFrameworkWizard%2Fsrc%2Forg%2Ftianocore%2Fframeworkwizard%2Fplatform%2Fui%2FDynamicTree.java;h=d47352bb3e565e6bcc68ea525e6ad36c889cd0d4;hp=bd3d4feb52e003246d41dd4f01b827782ec15828;hb=9937fde1259911b1595b794a5494cd395aba785e;hpb=a13899c5acad2f5e125abdae972b4c3d1e522f69 diff --git a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/DynamicTree.java b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/DynamicTree.java index bd3d4feb52..d47352bb3e 100644 --- a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/DynamicTree.java +++ b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/DynamicTree.java @@ -1,160 +1,42 @@ -/** @file - - The file is used to create tree view sections - - Copyright (c) 2006, Intel Corporation - All rights reserved. This program and the accompanying materials - are licensed and made available under the terms and conditions of the BSD License - which accompanies this distribution. The full text of the license may be found at - http://opensource.org/licenses/bsd-license.php - - THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, - WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - - **/ -package org.tianocore.frameworkwizard.platform.ui; -import java.awt.GridLayout; -import java.awt.Toolkit; - -import javax.swing.ImageIcon; -import javax.swing.JPanel; -import javax.swing.JScrollPane; -import javax.swing.JTree; -import javax.swing.tree.DefaultMutableTreeNode; -import javax.swing.tree.DefaultTreeCellRenderer; -import javax.swing.tree.DefaultTreeModel; -import javax.swing.tree.MutableTreeNode; -import javax.swing.tree.TreePath; -import javax.swing.tree.TreeSelectionModel; -import javax.swing.event.TreeModelEvent; -import javax.swing.event.TreeModelListener; - - -public class DynamicTree extends JPanel { - protected DefaultMutableTreeNode rootNode; - protected DefaultTreeModel treeModel; - protected JTree tree; - private Toolkit toolkit = Toolkit.getDefaultToolkit(); - - public DynamicTree() { - super(new GridLayout(1,0)); - - rootNode = new DefaultMutableTreeNode("Sections"); - treeModel = new DefaultTreeModel(rootNode); - treeModel.addTreeModelListener(new MyTreeModelListener()); - - tree = new JTree(treeModel); - DefaultTreeCellRenderer renderer = (DefaultTreeCellRenderer) tree.getCellRenderer(); - renderer.setOpenIcon(new ImageIcon("junk.gif")); - renderer.setClosedIcon(new ImageIcon("junk.gif")); - renderer.setLeafIcon(new ImageIcon("junk.gif")); - tree.setEditable(true); - tree.getSelectionModel().setSelectionMode - (TreeSelectionModel.SINGLE_TREE_SELECTION); - tree.setShowsRootHandles(true); - - JScrollPane scrollPane = new JScrollPane(tree); - add(scrollPane); - } - - /** Remove all nodes except the root node. */ - public void clear() { - rootNode.removeAllChildren(); - treeModel.reload(); - } - - public String getCurrentNodeText() { - DefaultMutableTreeNode currentNode = (DefaultMutableTreeNode)tree.getLastSelectedPathComponent(); - if (currentNode != null){ - return (String)currentNode.getUserObject(); - } - return null; - } - /** Remove the currently selected node. */ - public void removeCurrentNode() { - TreePath currentSelection = tree.getSelectionPath(); - if (currentSelection != null) { - DefaultMutableTreeNode currentNode = (DefaultMutableTreeNode) - (currentSelection.getLastPathComponent()); - MutableTreeNode parent = (MutableTreeNode)(currentNode.getParent()); - if (parent != null) { - treeModel.removeNodeFromParent(currentNode); - return; - } - } - - // Either there was no selection, or the root was selected. - toolkit.beep(); - } - - /** Add child to the currently selected node. */ - public DefaultMutableTreeNode addObject(Object child) { - DefaultMutableTreeNode parentNode = null; - TreePath parentPath = tree.getSelectionPath(); - - if (parentPath == null) { - parentNode = rootNode; - } else { - parentNode = (DefaultMutableTreeNode) - (parentPath.getLastPathComponent()); - } - - return addObject(parentNode, child, true); - } - - public DefaultMutableTreeNode addObject(DefaultMutableTreeNode parent, - Object child) { - return addObject(parent, child, false); - } - - public DefaultMutableTreeNode addObject(DefaultMutableTreeNode parent, - Object child, - boolean shouldBeVisible) { - DefaultMutableTreeNode childNode = - new DefaultMutableTreeNode(child); - - if (parent == null) { - parent = rootNode; - } - - treeModel.insertNodeInto(childNode, parent, - parent.getChildCount()); - - //Make sure the user can see the lovely new node. - if (shouldBeVisible) { - tree.scrollPathToVisible(new TreePath(childNode.getPath())); - } - return childNode; - } - - class MyTreeModelListener implements TreeModelListener { - public void treeNodesChanged(TreeModelEvent e) { - DefaultMutableTreeNode node; - node = (DefaultMutableTreeNode) - (e.getTreePath().getLastPathComponent()); - - /* - * If the event lists children, then the changed - * node is the child of the node we've already - * gotten. Otherwise, the changed node and the - * specified node are the same. - */ - try { - int index = e.getChildIndices()[0]; - node = (DefaultMutableTreeNode) - (node.getChildAt(index)); - } catch (NullPointerException exc) {} - - System.out.println("The user has finished editing the node."); - System.out.println("New value: " + node.getUserObject()); - } - public void treeNodesInserted(TreeModelEvent e) { - } - public void treeNodesRemoved(TreeModelEvent e) { - } - public void treeStructureChanged(TreeModelEvent e) { - } - } -} - - +/** @file + + The file is used to create tree view sections + + Copyright (c) 2006, Intel Corporation + All rights reserved. This program and the accompanying materials + are licensed and made available under the terms and conditions of the BSD License + which accompanies this distribution. The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + + **/ +package org.tianocore.frameworkwizard.platform.ui; +import java.awt.GridLayout; + +import javax.swing.JPanel; +import javax.swing.JTree; +import javax.swing.tree.DefaultMutableTreeNode; +import javax.swing.tree.DefaultTreeModel; + + +public class DynamicTree extends JPanel { + /** + * + */ + private static final long serialVersionUID = 1L; + protected DefaultMutableTreeNode rootNode; + protected DefaultTreeModel treeModel; + protected JTree tree; + + public DynamicTree() { + super(new GridLayout(1,0)); + + + } + + +} + +