]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Java/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/ListEditor.java
Restructuring for better separation of Tool packages.
[mirror_edk2.git] / Tools / Java / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / platform / ui / ListEditor.java
diff --git a/Tools/Java/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/ListEditor.java b/Tools/Java/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/ListEditor.java
new file mode 100644 (file)
index 0000000..89523b2
--- /dev/null
@@ -0,0 +1,106 @@
+/** @file\r
+ Java class GuidEditor.\r
\r
+Copyright (c) 2006, Intel Corporation\r
+All rights reserved. This program and the accompanying materials\r
+are licensed and made available under the terms and conditions of the BSD License\r
+which accompanies this distribution.  The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php\r
+\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
+**/\r
+package org.tianocore.frameworkwizard.platform.ui;\r
+\r
+import java.awt.Component;\r
+import java.awt.event.ActionEvent;\r
+import java.awt.event.ActionListener;\r
+import java.util.Vector;\r
+\r
+import javax.swing.AbstractCellEditor;\r
+import javax.swing.JButton;\r
+import javax.swing.JFrame;\r
+import javax.swing.JTable;\r
+import javax.swing.table.TableCellEditor;\r
+\r
+\r
+/**\r
+ Editor for table cell with GUID value.\r
+ @since PackageEditor 1.0\r
+ **/\r
+public class ListEditor extends AbstractCellEditor implements TableCellEditor, ActionListener {\r
+\r
+    /**\r
+     * \r
+     */\r
+    private static final long serialVersionUID = 1L;\r
+    String archs;\r
+    JButton button;\r
+    static JFrame frame;\r
+    GenListDialog dialog;\r
+    protected static final String EDIT = "edit";\r
+\r
+    public ListEditor() {\r
+        \r
+        button = new JButton();\r
+        button.setActionCommand(EDIT);\r
+        button.addActionListener(this);\r
+        button.setBorderPainted(false);\r
+\r
+        \r
+        dialog = new GenListDialog(this);\r
+        \r
+    }\r
+    \r
+    public ListEditor(Vector<String> v) {\r
+        this();\r
+        dialog.initList(v);\r
+    }\r
+\r
+    /* (non-Javadoc)\r
+     * @see javax.swing.table.TableCellEditor#getTableCellEditorComponent(javax.swing.JTable, java.lang.Object, boolean, int, int)\r
+     */\r
+    public Component getTableCellEditorComponent(JTable arg0, Object arg1, boolean arg2, int arg3, int arg4) {\r
+        // TODO Auto-generated method stub\r
+        archs = (String)arg1;\r
+        return button;\r
+    }\r
+\r
+    /* (non-Javadoc)\r
+     * @see javax.swing.CellEditor#getCellEditorValue()\r
+     */\r
+    public Object getCellEditorValue() {\r
+        // TODO Auto-generated method stub\r
+        return archs;\r
+    }\r
+\r
+    /* (non-Javadoc)\r
+     * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)\r
+     */\r
+    public void actionPerformed(ActionEvent arg0) {\r
+        // TODO Auto-generated method stub\r
+        if (EDIT.equals(arg0.getActionCommand())) {\r
+            //The user has clicked the cell, so\r
+            //bring up the dialog.\r
+            button.setText(archs);\r
+            dialog.setList(archs);\r
+            dialog.setVisible(true);\r
+\r
+            //Make the renderer reappear.\r
+            fireEditingStopped();\r
+        }\r
+        else { //User pressed dialog's "OK" button.\r
+            Vector<String> v = dialog.getList();\r
+            String s = " ";\r
+            for (int i = 0; i < v.size(); ++i) {\r
+                s += v.get(i);\r
+                s += " ";\r
+            }\r
+            archs = s.trim();\r
+            dialog.dispose();\r
+        }\r
+\r
+    }\r
+\r
+}\r