+++ /dev/null
-/** @file\r
- Java class SpdProtocolDecls is GUI for create library definition elements of spd file.\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
-package org.tianocore.frameworkwizard.packaging.ui;\r
-\r
-import javax.swing.JFrame;\r
-import javax.swing.JOptionPane;\r
-import javax.swing.table.DefaultTableModel;\r
-import javax.swing.table.TableModel;\r
-\r
-import org.tianocore.PackageSurfaceAreaDocument;\r
-import org.tianocore.frameworkwizard.common.Identifications.OpeningPackageType;\r
-import org.tianocore.frameworkwizard.platform.ui.ListEditor;\r
-\r
-/**\r
-GUI for create library definition elements of spd file.\r
- \r
-@since PackageEditor 1.0\r
-**/\r
-public class SpdPpiDecls extends SpdGuidDecls {\r
-\r
- /**\r
- * \r
- */\r
- private static final long serialVersionUID = 1L;\r
- private SpdFileContents sfc = null;\r
- private OpeningPackageType docConsole = null;\r
-// private JFrame topFrame = null;\r
- \r
- public SpdPpiDecls(JFrame frame) {\r
- super(frame);\r
- // TODO Auto-generated constructor stub\r
- }\r
-\r
- public SpdPpiDecls(PackageSurfaceAreaDocument.PackageSurfaceArea inPsa, JFrame frame) {\r
- this(frame);\r
- sfc = new SpdFileContents(inPsa);\r
- init(sfc);\r
- }\r
- \r
- public SpdPpiDecls(OpeningPackageType opt, JFrame frame) {\r
- this(opt.getXmlSpd(), frame);\r
- docConsole = opt;\r
- if (sfc.getSpdPkgDefsRdOnly().equals("true")) {\r
- JOptionPane.showMessageDialog(this, "This is a read-only package. You will not be able to edit contents in table.");\r
- }\r
- initFrame();\r
- }\r
- \r
- protected void initFrame() {\r
- super.initFrame();\r
- this.setTitle("PPI Declarations");\r
- starLabel.setVisible(false);\r
- ((ListEditor)getJTable().getColumnModel().getColumn(6).getCellEditor()).setCanNotBeEmpty(false);\r
- }\r
- \r
- protected void init(SpdFileContents sfc){\r
- //\r
- // initialize table using SpdFileContents object\r
- //\r
- DefaultTableModel model = getModel();\r
- if (sfc.getSpdPpiDeclarationCount() == 0) {\r
- return ;\r
- }\r
- saa = new String[sfc.getSpdPpiDeclarationCount()][7];\r
- sfc.getSpdPpiDeclarations(saa);\r
- int i = 0;\r
- while (i < saa.length) {\r
- model.addRow(saa[i]);\r
- i++;\r
- }\r
- \r
- }\r
- \r
- protected void updateRow(int row, int column, TableModel m){\r
- String[] sa = new String[7];\r
- sfc.getSpdPpiDeclaration(sa, row);\r
- Object cellData = m.getValueAt(row, column);\r
- if (cellData == null) {\r
- cellData = "";\r
- }\r
- if (cellData.equals(sa[column])) {\r
- return;\r
- }\r
- if (cellData.toString().length() == 0 && sa[column] == null) {\r
- return;\r
- }\r
- \r
- String name = m.getValueAt(row, 0) + "";\r
- String cName = m.getValueAt(row, 1) + "";\r
- String guid = m.getValueAt(row, 2) + "";\r
- String help = m.getValueAt(row, 3) + "";\r
- String archList = null;\r
- if (m.getValueAt(row, 4) != null) {\r
- archList = m.getValueAt(row, 4).toString();\r
- }\r
- String modTypeList = null;\r
- if (m.getValueAt(row, 5) != null) {\r
- modTypeList = m.getValueAt(row, 5).toString();\r
- }\r
- String guidTypeList = null;\r
- if (m.getValueAt(row, 6) != null) {\r
- guidTypeList = m.getValueAt(row, 6).toString();\r
- }\r
- String[] rowData = {name, cName, guid, help};\r
- if (!dataValidation(rowData)){\r
- return;\r
- }\r
- docConsole.setSaved(false);\r
- sfc.updateSpdPpiDecl(row, name, cName, guid, help, archList, modTypeList, guidTypeList);\r
- }\r
- \r
- protected int addRow(String[] row) {\r
- \r
- if (!dataValidation(row)){\r
- return -1;\r
- }\r
- docConsole.setSaved(false);\r
- sfc.genSpdPpiDeclarations(row[0], row[1], row[2], row[3], stringToVector(row[4]), stringToVector(row[5]), stringToVector(row[6]));\r
- return 0;\r
- }\r
- \r
- protected void removeRow(int i){\r
- sfc.removeSpdPpiDeclaration(i);\r
- docConsole.setSaved(false);\r
- }\r
- \r
- protected void clearAllRow(){\r
- sfc.removeSpdPpiDeclaration();\r
- docConsole.setSaved(false);\r
- }\r
- \r
- /**\r
- * @return Returns the sfc.\r
- */\r
- protected SpdFileContents getSfc() {\r
- return sfc;\r
- }\r
-}\r