]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Source/MigrationTools/org/tianocore/migration/MsaTreeEditor.java
add lisence
[mirror_edk2.git] / Tools / Source / MigrationTools / org / tianocore / migration / MsaTreeEditor.java
CommitLineData
90503bad 1package org.tianocore.migration;\r
2\r
3import java.awt.*;\r
4import java.awt.event.*;\r
5import javax.swing.*;\r
6import javax.swing.tree.*;\r
7\r
8public class MsaTreeEditor extends JPanel {\r
609384c5 9 /**\r
10 * Define class Serial Version UID\r
11 */\r
12 private static final long serialVersionUID = 3169905938472150649L;\r
fed802b1 13/*\r
14 MsaTreeEditor(ModuleInfo m, UI u, ModuleSurfaceAreaDocument md) {\r
15 mi = m;\r
16 ui = u;\r
17 msadoc = md;\r
18 \r
19 //rootNode = msadoc.getDomNode();\r
20 rootNode = new DefaultMutableTreeNode("Root Node");\r
21 treeModel = new DefaultTreeModel(rootNode);\r
609384c5 22\r
fed802b1 23 tree = new JTree(treeModel);\r
24 tree.setEditable(true);\r
25 tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);\r
26 tree.setShowsRootHandles(false);\r
27 tree.addMouseListener(mouseadapter);\r
28\r
29 JScrollPane scrollPane = new JScrollPane(tree);\r
30 add(scrollPane);\r
31 \r
32 popupmenu = new JPopupMenu();\r
33 menuitemadd = new JMenuItem("addNode");\r
34 menuitemdel = new JMenuItem("deleteNode");\r
35 popupmenu.add(menuitemadd);\r
36 popupmenu.add(menuitemdel);\r
37 menuitemadd.addActionListener(actionListener);\r
38 menuitemdel.addActionListener(actionListener);\r
39 \r
40 addNode(rootNode, "1st");\r
41 addNode(rootNode, "2nd");\r
42 }\r
43*/\r
5ad6d22a 44 MsaTreeEditor() {\r
90503bad 45 rootNode = new DefaultMutableTreeNode("Root Node");\r
46 treeModel = new DefaultTreeModel(rootNode);\r
47\r
48 tree = new JTree(treeModel);\r
49 tree.setEditable(true);\r
50 tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);\r
51 tree.setShowsRootHandles(false);\r
52 tree.addMouseListener(mouseadapter);\r
53\r
54 JScrollPane scrollPane = new JScrollPane(tree);\r
55 add(scrollPane);\r
56 \r
57 popupmenu = new JPopupMenu();\r
fed802b1 58 menuitemadd = new JMenuItem("addNode");\r
59 menuitemdel = new JMenuItem("deleteNode");\r
90503bad 60 popupmenu.add(menuitemadd);\r
61 popupmenu.add(menuitemdel);\r
62 menuitemadd.addActionListener(actionListener);\r
63 menuitemdel.addActionListener(actionListener);\r
64 \r
65 addNode(rootNode, "1st");\r
66 addNode(rootNode, "2nd");\r
67 }\r
68 \r
fed802b1 69 //private ModuleSurfaceAreaDocument msadoc;\r
90503bad 70 \r
71 private JTree tree;\r
72 private DefaultMutableTreeNode rootNode;\r
73 private DefaultTreeModel treeModel;\r
fed802b1 74 private JMenuItem menuitemadd, menuitemdel;\r
90503bad 75 \r
76 private JPopupMenu popupmenu;\r
77 private MouseAdapter mouseadapter = new MouseAdapter() {\r
78 public void mouseReleased(MouseEvent me) {\r
79 if (me.getClickCount() == 1 && SwingUtilities.isRightMouseButton(me)) {\r
80 tree.setSelectionPath(tree.getPathForLocation(me.getX(), me.getY()));\r
81 popupmenu.show(tree, me.getX(), me.getY());\r
82 }\r
83 }\r
84 };\r
85 private ActionListener actionListener = new ActionListener() {\r
86 public void actionPerformed(ActionEvent ae) {\r
fed802b1 87 if (ae.getSource() == menuitemadd) {\r
88 addNode();\r
89 } else if (ae.getSource() == menuitemdel) {\r
90 delNode();\r
91 }\r
90503bad 92 }\r
93 };\r
94 \r
fed802b1 95 private void delNode() {\r
96 treeModel.removeNodeFromParent((DefaultMutableTreeNode)(tree.getSelectionPath().getLastPathComponent()));\r
97 }\r
98 \r
99 private void addNode() {\r
482407d3 100 addNode((DefaultMutableTreeNode)(tree.getSelectionPath().getLastPathComponent()), MigrationTool.ui.getInput("Input Node Name"));\r
90503bad 101 }\r
102 \r
fed802b1 103 private void addNode(DefaultMutableTreeNode parentNode, Object child) {\r
90503bad 104 DefaultMutableTreeNode childNode = new DefaultMutableTreeNode(child);\r
105 treeModel.insertNodeInto(childNode, parentNode, parentNode.getChildCount());\r
106 tree.scrollPathToVisible(new TreePath(childNode.getPath()));\r
107 }\r
fed802b1 108 /*\r
109 public static void init(ModuleInfo mi, UI ui, ModuleSurfaceAreaDocument msadoc) throws Exception {\r
110 init(mi, ui);\r
111 }\r
112 */\r
5ad6d22a 113 public static void init() throws Exception {\r
90503bad 114 UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());\r
115\r
116 JFrame frame = new JFrame("MsaTreeEditor");\r
117 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);\r
118\r
5ad6d22a 119 MsaTreeEditor mte = new MsaTreeEditor();\r
90503bad 120 mte.setLayout(new GridBagLayout());\r
121 mte.setOpaque(true);\r
122 frame.setContentPane(mte);\r
123\r
124 frame.pack();\r
125 frame.setVisible(true);\r
126 }\r
127}