--- /dev/null
+/** @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