import java.util.ListIterator;\r
import java.util.Vector;\r
\r
-import javax.xml.namespace.QName;\r
\r
import org.apache.xmlbeans.XmlObject;\r
import org.apache.xmlbeans.XmlOptions;\r
e.setCName(cName);\r
e.setGuidValue(guid);\r
e.setHelpText(hlp);\r
- if (stringToList(guidTypeList) != null && !guidTypeList.equals("")) {\r
+ if (stringToList(guidTypeList) != null) {\r
e.setGuidTypeList(stringToList(guidTypeList));\r
}\r
+ else{\r
+ e.setGuidTypeList(null);\r
+ }\r
if (stringToList(archList) != null){\r
e.setSupArchList(stringToList(archList));\r
}\r
+ else{\r
+ e.setSupArchList(null);\r
+ }\r
if (stringToList(modTypeList) != null) {\r
e.setSupModuleList(stringToList(modTypeList));\r
}\r
+ else{\r
+ e.setSupModuleList(null);\r
+ }\r
\r
}\r
cursor.dispose();\r
if (stringToList(archList) != null){\r
e.setSupArchList(stringToList(archList));\r
}\r
+ else{\r
+ e.setSupArchList(null);\r
+ }\r
if (stringToList(modTypeList) != null) {\r
e.setSupModuleList(stringToList(modTypeList));\r
}\r
+ else{\r
+ e.setSupModuleList(null);\r
+ }\r
}\r
cursor.dispose();\r
}\r
if (stringToList(archList) != null){\r
e.setSupArchList(stringToList(archList));\r
}\r
+ else{\r
+ e.setSupArchList(null);\r
+ }\r
if (stringToList(modTypeList) != null) {\r
e.setSupModuleList(stringToList(modTypeList));\r
}\r
+ else{\r
+ e.setSupModuleList(null);\r
+ }\r
}\r
cursor.dispose();\r
}\r
e.setCName(cName);\r
e.setGuidValue(guid);\r
e.setHelpText(help);\r
- if (guidTypeList != null && guidTypeList.size() > 0) {\r
- e.setGuidTypeList(new ArrayList<String>(guidTypeList));\r
- }\r
- if (archList != null && archList.size() > 0){\r
- e.setSupArchList(new ArrayList<String>(archList));\r
- }\r
- if (modTypeList != null && modTypeList.size() > 0) {\r
- e.setSupModuleList(new ArrayList<String>(modTypeList));\r
- }\r
+ e.setGuidTypeList(guidTypeList);\r
+ e.setSupArchList(archList);\r
+ e.setSupModuleList(modTypeList);\r
+// if (guidTypeList != null && guidTypeList.size() > 0) {\r
+// e.setGuidTypeList(new ArrayList<String>(guidTypeList));\r
+// }\r
+// if (archList != null && archList.size() > 0){\r
+// e.setSupArchList(new ArrayList<String>(archList));\r
+// }\r
+// if (modTypeList != null && modTypeList.size() > 0) {\r
+// e.setSupModuleList(new ArrayList<String>(modTypeList));\r
+// }\r
return;\r
}\r
if (parent instanceof ProtocolDeclarationsDocument.ProtocolDeclarations) {\r
pe.setCName(cName);\r
pe.setGuidValue(guid);\r
pe.setHelpText(help);\r
- if (archList != null && archList.size() > 0){\r
- pe.setSupArchList(new ArrayList<String>(archList));\r
- }\r
- if (modTypeList != null && modTypeList.size() > 0) {\r
- pe.setSupModuleList(new ArrayList<String>(modTypeList));\r
- }\r
+ pe.setSupArchList(archList);\r
+ pe.setSupModuleList(modTypeList);\r
+// if (archList != null && archList.size() > 0){\r
+// pe.setSupArchList(new ArrayList<String>(archList));\r
+// }\r
+// if (modTypeList != null && modTypeList.size() > 0) {\r
+// pe.setSupModuleList(new ArrayList<String>(modTypeList));\r
+// }\r
return;\r
}\r
if (parent instanceof PpiDeclarationsDocument.PpiDeclarations) {\r
ppe.setCName(cName);\r
ppe.setGuidValue(guid);\r
ppe.setHelpText(help);\r
- if (archList != null && archList.size() > 0){\r
- ppe.setSupArchList(new ArrayList<String>(archList));\r
- }\r
- if (archList != null && modTypeList.size() > 0) {\r
- ppe.setSupModuleList(new ArrayList<String>(modTypeList));\r
- }\r
+ ppe.setSupArchList(archList);\r
+ ppe.setSupModuleList(modTypeList);\r
+// if (archList != null && archList.size() > 0){\r
+// ppe.setSupArchList(new ArrayList<String>(archList));\r
+// }\r
+// if (archList != null && modTypeList.size() > 0) {\r
+// ppe.setSupModuleList(new ArrayList<String>(modTypeList));\r
+// }\r
return;\r
}\r
\r
}\r
\r
private List<String> stringToList(String s){\r
- if (s == null) {\r
+ if (s == null || s.length() == 0) {\r
return null;\r
}\r
- ArrayList<String> al = new ArrayList<String>();\r
+ Vector<String> al = new Vector<String>();\r
String[] sArray = s.split(" ");\r
for(int i = 0; i < sArray.length; ++i){\r
al.add(sArray[i]);\r
return al; \r
}\r
\r
- private String listToString(List<String> l) {\r
+ private String listToString(List l) {\r
if (l == null) {\r
return null;\r
}\r
**/\r
package org.tianocore.frameworkwizard.packaging.ui;\r
\r
-import java.awt.BorderLayout;\r
import java.awt.Dimension;\r
-import java.awt.Toolkit;\r
import java.awt.event.ActionEvent;\r
-import java.awt.event.ActionListener;\r
import java.awt.event.ComponentEvent;\r
-import java.io.File;\r
import java.util.Vector;\r
\r
-import javax.swing.DefaultListModel;\r
-import javax.swing.JFileChooser;\r
import javax.swing.JOptionPane;\r
import javax.swing.JPanel;\r
-import javax.swing.JRadioButton;\r
import javax.swing.JTable;\r
import javax.swing.JTextField;\r
-import javax.swing.JComboBox;\r
import javax.swing.JLabel;\r
-import javax.swing.JList;\r
import javax.swing.JScrollPane;\r
import javax.swing.JButton;\r
import javax.swing.JFrame;\r
import javax.swing.table.TableModel;\r
\r
import org.tianocore.PackageSurfaceAreaDocument;\r
-import org.tianocore.frameworkwizard.common.DataType;\r
+import org.tianocore.frameworkwizard.common.DataValidation;\r
import org.tianocore.frameworkwizard.common.Tools;\r
import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
import org.tianocore.frameworkwizard.common.ui.iCheckBoxList.ICheckBoxList;\r
+import org.tianocore.frameworkwizard.platform.ui.ListEditor;\r
\r
/**\r
GUI for create library definition elements of spd file.\r
@since PackageEditor 1.0\r
**/\r
public class SpdGuidDecls extends IInternalFrame implements TableModelListener{\r
+ /**\r
+ * \r
+ */\r
+ private static final long serialVersionUID = 1L;\r
+\r
static JFrame frame;\r
\r
private SpdFileContents sfc = null;\r
model.addColumn("GuidTypes");\r
jTable.getColumnModel().getColumn(2).setCellEditor(new GuidEditor());\r
\r
+ Vector<String> vArch = new Vector<String>();\r
+ vArch.add("IA32");\r
+ vArch.add("X64");\r
+ vArch.add("IPF");\r
+ vArch.add("EBC");\r
+ vArch.add("ARM");\r
+ vArch.add("PPC");\r
+ jTable.getColumnModel().getColumn(4).setCellEditor(new ListEditor(vArch));\r
+ \r
+ Vector<String> vModule = new Vector<String>();\r
+ vModule.add("BASE");\r
+ vModule.add("SEC");\r
+ vModule.add("PEI_CORE");\r
+ vModule.add("PEIM");\r
+ vModule.add("DXE_CORE");\r
+ vModule.add("DXE_DRIVER");\r
+ vModule.add("DXE_RUNTIME_DRIVER");\r
+ vModule.add("DXE_SAL_DRIVER");\r
+ vModule.add("DXE_SMM_DRIVER");\r
+ vModule.add("UEFI_DRIVER");\r
+ vModule.add("UEFI_APPLICATION");\r
+ vModule.add("USER_DEFINED");\r
+ jTable.getColumnModel().getColumn(5).setCellEditor(new ListEditor(vModule));\r
+ \r
+ Vector<String> vGuid = new Vector<String>();\r
+ vGuid.add("DATA_HUB_RECORD");\r
+ vGuid.add("EFI_EVENT");\r
+ vGuid.add("EFI_SYSTEM_CONFIGURATION_TABLE");\r
+ vGuid.add("EFI_VARIABLE");\r
+ vGuid.add("GUID");\r
+ vGuid.add("HII_PACKAGE_LIST");\r
+ vGuid.add("HOB");\r
+ vGuid.add("TOKEN_SPACE_GUID");\r
+ jTable.getColumnModel().getColumn(6).setCellEditor(new ListEditor(vGuid));\r
+ \r
jTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
jTable.getSelectionModel().addListSelectionListener(new ListSelectionListener(){\r
public void valueChanged(ListSelectionEvent e) {\r
if (m.getValueAt(row, 6) != null){\r
guidTypeList = m.getValueAt(row, 6).toString();\r
}\r
- \r
+ String[] rowData = {name, cName, guid, help};\r
+ if (!dataValidation(rowData)){\r
+ return;\r
+ }\r
\r
sfc.updateSpdGuidDecl(row, name, cName, guid, help, archList, modTypeList, guidTypeList);\r
}\r
if (arg0.getSource() == jButtonAdd) {\r
\r
//ToDo: check before add\r
- String[] row = {"", "", "", "", "", "", null};\r
+ String[] row = {"", "", "", "", "", "", ""};\r
row[3] = jTextField.getText();\r
row[2] = jTextFieldAdd.getText();\r
row[1] = jTextFieldVersion.getText();\r
if (row[5].length() == 0) {\r
row[5] = null;\r
}\r
- if (iCheckBoxList1.getAllCheckedItemsString() != null) {\r
- row[6] = vectorToString(iCheckBoxList1.getAllCheckedItemsString());\r
+ row[6] = vectorToString(iCheckBoxList1.getAllCheckedItemsString());\r
+ if (row[6].length() == 0) {\r
+ row[6] = null;\r
+ }\r
+ \r
+ if (!dataValidation(row)) {\r
+ return;\r
}\r
model.addRow(row);\r
addRow(row);\r
}\r
\r
if (arg0.getSource() == jButtonGen) {\r
- guidDialog = new GenGuidDialog(this);\r
- guidDialog.setGuid(jTextFieldAdd.getText());\r
- guidDialog.setVisible(true);\r
+ jTextFieldAdd.setText(Tools.generateUuidString());\r
}\r
\r
if (arg0.getActionCommand().equals("GenGuidValue")) {\r
\r
}\r
\r
+ protected boolean dataValidation(String[] row){\r
+ if (!DataValidation.isUiNameType(row[0])) {\r
+ JOptionPane.showMessageDialog(this, "Name is NOT UiNameType.");\r
+ return false;\r
+ }\r
+ if (!DataValidation.isGuid(row[2])) {\r
+ JOptionPane.showMessageDialog(this, "Guid Value is NOT GuidType.");\r
+ return false;\r
+ }\r
+ if (!DataValidation.isC_NameType(row[1])) {\r
+ JOptionPane.showMessageDialog(this, "C_Name is NOT C_NameType.");\r
+ return false;\r
+ }\r
+ if (row[3].length() == 0) {\r
+ JOptionPane.showMessageDialog(this, "HelpText could NOT be empty.");\r
+ return false;\r
+ }\r
+ return true;\r
+ }\r
+ \r
protected void addRow(String[] row) {\r
Vector<String> vArch = iCheckBoxList.getAllCheckedItemsString();\r
Vector<String> vModType = iCheckBoxList2.getAllCheckedItemsString();\r
v.add("X64");\r
v.add("IPF");\r
v.add("EBC");\r
- \r
+ v.add("ARM");\r
+ v.add("PPC");\r
iCheckBoxList.setAllItems(v);\r
}\r
return iCheckBoxList;\r
\r
package org.tianocore.frameworkwizard.packaging.ui;\r
\r
-import java.awt.Rectangle;\r
import java.awt.event.ActionEvent;\r
import java.awt.event.ComponentEvent;\r
import java.awt.event.FocusAdapter;\r
import java.awt.event.FocusEvent;\r
\r
import javax.swing.JButton;\r
+import javax.swing.JFrame;\r
import javax.swing.JLabel;\r
+import javax.swing.JOptionPane;\r
import javax.swing.JPanel;\r
import javax.swing.JScrollPane;\r
import javax.swing.JTextArea;\r
//\r
//Define class members\r
//\r
+ static JFrame frame;\r
+ \r
private JPanel jContentPane = null;\r
\r
private JLabel jLabelBaseName = null;\r
jTextFieldBaseName.setPreferredSize(new java.awt.Dimension(320,20));\r
jTextFieldBaseName.addFocusListener(new FocusAdapter(){\r
public void focusLost(FocusEvent e){\r
+ if (!DataValidation.isUiNameType(jTextFieldBaseName.getText())) {\r
+ JOptionPane.showMessageDialog(frame, "Package Name is NOT UiNameType.");\r
+ return;\r
+ }\r
sfc.setSpdHdrPkgName(jTextFieldBaseName.getText());\r
}\r
});\r
jTextFieldGuid.setPreferredSize(new java.awt.Dimension(250,20));\r
jTextFieldGuid.addFocusListener(new FocusAdapter(){\r
public void focusLost(FocusEvent e){\r
+ if (!DataValidation.isGuid(jTextFieldGuid.getText())) {\r
+ JOptionPane.showMessageDialog(frame, "Guid is NOT GuidType.");\r
+ return;\r
+ }\r
sfc.setSpdHdrGuidValue(jTextFieldGuid.getText());\r
}\r
});\r
jTextFieldVersion.setPreferredSize(new java.awt.Dimension(320,20));\r
jTextFieldVersion.addFocusListener(new FocusAdapter(){\r
public void focusLost(FocusEvent e){\r
+ if (!DataValidation.isVersion(jTextFieldVersion.getText())) {\r
+ JOptionPane.showMessageDialog(frame, "Version is NOT version type.");\r
+ return;\r
+ }\r
sfc.setSpdHdrVer(jTextFieldVersion.getText());\r
} \r
});\r
jTextAreaLicense.setLineWrap(true);\r
jTextAreaLicense.addFocusListener(new FocusAdapter(){\r
public void focusLost(FocusEvent e){\r
+ if (jTextAreaLicense.getText().length() == 0) {\r
+ JOptionPane.showMessageDialog(frame, "License contents could NOT be empty.");\r
+ return;\r
+ }\r
sfc.setSpdHdrLicense(jTextAreaLicense.getText());\r
}\r
});\r
jTextAreaDescription.setPreferredSize(new java.awt.Dimension(317,77));\r
jTextAreaDescription.addFocusListener(new FocusAdapter(){\r
public void focusLost(FocusEvent e){\r
+ if (jTextAreaDescription.getText().length() == 0) {\r
+ JOptionPane.showMessageDialog(frame, "Description contents could NOT be empty.");\r
+ return;\r
+ }\r
sfc.setSpdHdrDescription(jTextAreaDescription.getText());\r
}\r
});\r
jTextFieldAbstract.setPreferredSize(new java.awt.Dimension(320, 20));\r
jTextFieldAbstract.addFocusListener(new FocusAdapter(){\r
public void focusLost(FocusEvent e){\r
+ if (!DataValidation.isAbstract(jTextFieldAbstract.getText())) {\r
+ JOptionPane.showMessageDialog(frame, "Abstract could NOT be empty.");\r
+ return;\r
+ }\r
sfc.setSpdHdrAbs(jTextFieldAbstract.getText());\r
}\r
});\r
jTextFieldCopyright.setPreferredSize(new java.awt.Dimension(320,20));\r
jTextFieldCopyright.addFocusListener(new FocusAdapter(){\r
public void focusLost(FocusEvent e){\r
+ if (!DataValidation.isCopyright(jTextFieldCopyright.getText())) {\r
+ JOptionPane.showMessageDialog(frame, "Copyright contents could not be empty.");\r
+ return;\r
+ }\r
sfc.setSpdHdrCopyright(jTextFieldCopyright.getText());\r
} \r
});\r
resizeComponentWidth(this.jTextFieldBaseName, intCurrentWidth,intPreferredWidth);\r
resizeComponentWidth(this.jTextFieldGuid, intCurrentWidth,intPreferredWidth);\r
resizeComponentWidth(this.jTextFieldVersion, intCurrentWidth,intPreferredWidth);\r
+ resizeComponentWidth(this.jTextField, intCurrentWidth,intPreferredWidth);\r
resizeComponentWidth(this.jScrollPaneLicense, intCurrentWidth,intPreferredWidth);\r
resizeComponentWidth(this.jTextFieldCopyright, intCurrentWidth,intPreferredWidth);\r
resizeComponentWidth(this.jScrollPaneDescription, intCurrentWidth,intPreferredWidth);\r
**/\r
package org.tianocore.frameworkwizard.packaging.ui;\r
\r
-import java.awt.BorderLayout;\r
import java.awt.Dimension;\r
-import java.awt.Toolkit;\r
import java.awt.event.ActionEvent;\r
-import java.awt.event.ActionListener;\r
import java.awt.event.ComponentEvent;\r
-import java.awt.event.FocusAdapter;\r
-import java.awt.event.FocusEvent;\r
-import java.awt.event.FocusListener;\r
import java.io.File;\r
import java.util.Vector;\r
\r
import javax.swing.AbstractAction;\r
-import javax.swing.DefaultListModel;\r
import javax.swing.JFileChooser;\r
import javax.swing.JOptionPane;\r
import javax.swing.JPanel;\r
import javax.swing.JTextField;\r
import javax.swing.JComboBox;\r
import javax.swing.JLabel;\r
-import javax.swing.JList;\r
import javax.swing.JScrollPane;\r
import javax.swing.JButton;\r
import javax.swing.JFrame;\r
import javax.swing.table.TableModel;\r
\r
import org.tianocore.PackageSurfaceAreaDocument;\r
-import org.tianocore.frameworkwizard.common.DataType;\r
+import org.tianocore.frameworkwizard.common.DataValidation;\r
import org.tianocore.frameworkwizard.common.Tools;\r
import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
import org.tianocore.frameworkwizard.common.ui.iCheckBoxList.ICheckBoxList;\r
+import org.tianocore.frameworkwizard.platform.ui.ListEditor;\r
\r
import javax.swing.JCheckBox;\r
\r
@since PackageEditor 1.0\r
**/\r
public class SpdLibClassDecls extends IInternalFrame implements TableModelListener{\r
+ /**\r
+ * \r
+ */\r
+ private static final long serialVersionUID = 1L;\r
+\r
static JFrame frame;\r
\r
private JTable jTable = null;\r
\r
private JButton jButtonClearAll = null;\r
\r
- private JButton jButtonCancel = null;\r
-\r
private JButton jButtonOk = null;\r
\r
private JLabel jLabel = null;\r
\r
private ICheckBoxList iCheckBoxListArch = null;\r
\r
+ private JCheckBox jCheckBox4 = null;\r
+\r
+ private JCheckBox jCheckBox5 = null;\r
+\r
/**\r
This method initializes this\r
\r
private JTextField getJTextFieldAdd() {\r
if (jTextFieldAdd == null) {\r
jTextFieldAdd = new JTextField();\r
- jTextFieldAdd.setBounds(new java.awt.Rectangle(122,6,343,20));\r
+ jTextFieldAdd.setBounds(new java.awt.Rectangle(122,6,390,20));\r
jTextFieldAdd.setPreferredSize(new java.awt.Dimension(260,20));\r
jTextFieldAdd.setEnabled(true);\r
}\r
private JScrollPane getJScrollPane() {\r
if (jScrollPane == null) {\r
jScrollPane = new JScrollPane();\r
- jScrollPane.setBounds(new java.awt.Rectangle(12,302,351,164));\r
+ jScrollPane.setBounds(new java.awt.Rectangle(12,351,608,139));\r
jScrollPane.setPreferredSize(new java.awt.Dimension(330,150));\r
jScrollPane.setViewportView(getJTable());\r
}\r
model.addColumn("InstanceVersion");\r
model.addColumn("SupportedArch");\r
model.addColumn("SupportedModule");\r
+ \r
+ Vector<String> vArch = new Vector<String>();\r
+ vArch.add("IA32");\r
+ vArch.add("X64");\r
+ vArch.add("IPF");\r
+ vArch.add("EBC");\r
+ vArch.add("ARM");\r
+ vArch.add("PPC");\r
+ jTable.getColumnModel().getColumn(5).setCellEditor(new ListEditor(vArch));\r
+ \r
+ Vector<String> vModule = new Vector<String>();\r
+ vModule.add("BASE");\r
+ vModule.add("SEC");\r
+ vModule.add("PEI_CORE");\r
+ vModule.add("PEIM");\r
+ vModule.add("DXE_CORE");\r
+ vModule.add("DXE_DRIVER");\r
+ vModule.add("DXE_RUNTIME_DRIVER");\r
+ vModule.add("DXE_SAL_DRIVER");\r
+ vModule.add("DXE_SMM_DRIVER");\r
+ vModule.add("UEFI_DRIVER");\r
+ vModule.add("UEFI_APPLICATION");\r
+ vModule.add("USER_DEFINED");\r
+ jTable.getColumnModel().getColumn(6).setCellEditor(new ListEditor(vModule));\r
\r
jTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
jTable.getSelectionModel().addListSelectionListener(new ListSelectionListener(){\r
if (m.getValueAt(row, 6) != null) {\r
module = m.getValueAt(row, 6).toString();\r
}\r
+ String[] rowData = {lib, hdr, hlp};\r
+ if (!dataValidation(rowData)) {\r
+ return;\r
+ }\r
sfc.updateSpdLibClass(row, lib, hdr, hlp, guid, ver, arch, module);\r
}\r
}\r
private JButton getJButtonAdd() {\r
if (jButtonAdd == null) {\r
jButtonAdd = new JButton();\r
- jButtonAdd.setBounds(new java.awt.Rectangle(374,303,90,20));\r
jButtonAdd.setText("Add");\r
+ jButtonAdd.setSize(new java.awt.Dimension(80,20));\r
+ jButtonAdd.setLocation(new java.awt.Point(365,315));\r
jButtonAdd.addActionListener(this);\r
}\r
return jButtonAdd;\r
private JButton getJButtonRemove() {\r
if (jButtonRemove == null) {\r
jButtonRemove = new JButton();\r
- jButtonRemove.setBounds(new java.awt.Rectangle(374,381,90,20));\r
jButtonRemove.setText("Remove");\r
+ jButtonRemove.setSize(new java.awt.Dimension(80,20));\r
+ jButtonRemove.setLocation(new java.awt.Point(449,315));\r
jButtonRemove.addActionListener(this);\r
}\r
return jButtonRemove;\r
private JButton getJButtonClearAll() {\r
if (jButtonClearAll == null) {\r
jButtonClearAll = new JButton();\r
- jButtonClearAll.setBounds(new java.awt.Rectangle(374,411,90,20));\r
jButtonClearAll.setText("Clear All");\r
+ jButtonClearAll.setSize(new java.awt.Dimension(86,20));\r
+ jButtonClearAll.setLocation(new java.awt.Point(536,315));\r
jButtonClearAll.addActionListener(this);\r
}\r
return jButtonClearAll;\r
}\r
\r
- /**\r
- This method initializes jButtonCancel \r
- \r
- @return javax.swing.JButton \r
- **/\r
- private JButton getJButtonCancel() {\r
- if (jButtonCancel == null) {\r
- jButtonCancel = new JButton();\r
- jButtonCancel.setPreferredSize(new java.awt.Dimension(90, 20));\r
- jButtonCancel.setLocation(new java.awt.Point(390, 305));\r
- jButtonCancel.setText("Cancel");\r
- jButtonCancel.setSize(new java.awt.Dimension(90, 20));\r
- jButtonCancel.setVisible(false);\r
- jButtonCancel.addActionListener(this);\r
- }\r
- return jButtonCancel;\r
- }\r
-\r
/**\r
This method initializes jButton \r
\r
private JScrollPane getJContentPane(){\r
if (topScrollPane == null){\r
topScrollPane = new JScrollPane();\r
- topScrollPane.setSize(new java.awt.Dimension(483,500));\r
+ topScrollPane.setSize(new java.awt.Dimension(634,500));\r
topScrollPane.setViewportView(getJContentPane1());\r
}\r
return topScrollPane;\r
jLabel5.setText("Supported Arch");\r
jLabel5.setEnabled(true);\r
jLabel4 = new JLabel();\r
- jLabel4.setBounds(new java.awt.Rectangle(16,160,196,16));\r
+ jLabel4.setBounds(new java.awt.Rectangle(16,138,196,16));\r
jLabel4.setEnabled(true);\r
jLabel4.setText("Recommended Instance Version");\r
jLabel3 = new JLabel();\r
- jLabel3.setBounds(new java.awt.Rectangle(17,112,175,16));\r
+ jLabel3.setBounds(new java.awt.Rectangle(17,112,195,16));\r
jLabel3.setEnabled(true);\r
jLabel3.setText("Recommended Instance GUID");\r
jLabel2 = new JLabel();\r
jStarLabel1 = new StarLabel();\r
jStarLabel1.setLocation(new java.awt.Point(1,7));\r
jStarLabel2 = new StarLabel();\r
- jStarLabel2.setLocation(new java.awt.Point(1,56));\r
+ jStarLabel2.setLocation(new java.awt.Point(-1,74));\r
jLabel = new JLabel();\r
- jLabel.setBounds(new java.awt.Rectangle(16,56,199,22));\r
+ jLabel.setBounds(new java.awt.Rectangle(14,74,199,22));\r
jLabel.setText("Include Header for Specified Class");\r
\r
jContentPane = new JPanel();\r
jContentPane.add(getJButtonAdd(), null);\r
jContentPane.add(getJButtonRemove(), null);\r
jContentPane.add(getJButtonClearAll(), null);\r
- jContentPane.add(getJButtonCancel(), null);\r
jContentPane.add(getJButtonOk(), null);\r
\r
jContentPane.add(getJTextField(), null);\r
jContentPane.add(jLabel6, null);\r
\r
jContentPane.add(getJScrollPaneArch(), null);\r
+ jContentPane.add(getJCheckBox4(), null);\r
+ jContentPane.add(getJCheckBox5(), null);\r
}\r
\r
return jContentPane;\r
this.dispose();\r
\r
}\r
- if (arg0.getSource() == jButtonCancel) {\r
- this.dispose();\r
- }\r
\r
if (arg0.getSource() == jButtonAdd) {\r
\r
row[0] = jTextFieldAdd.getText();\r
row[1] = jTextField.getText().replace('\\', '/');\r
row[2] = jTextFieldHelp.getText();\r
- row[5] = booleanToString(jCheckBox.isSelected(), jCheckBox1.isSelected(), jCheckBox2.isSelected(), jCheckBox3.isSelected());\r
+ row[5] = booleanToString(jCheckBox.isSelected(), jCheckBox1.isSelected(), jCheckBox2.isSelected(), jCheckBox3.isSelected(), jCheckBox4.isSelected(), jCheckBox5.isSelected());\r
if (row[5].length() == 0){\r
row[5] = null;\r
}\r
if (row[6].length() == 0){\r
row[6] = null;\r
}\r
+ if (!dataValidation(row)) {\r
+ return;\r
+ }\r
model.addRow(row);\r
sfc.genSpdLibClassDeclarations(row[0], row[3], row[1], row[2], row[5], null, null, row[4], null, row[6]);\r
\r
}\r
}\r
\r
- \r
+ private boolean dataValidation(String[] row) {\r
+ if (!DataValidation.isKeywordType(row[0])) {\r
+ JOptionPane.showMessageDialog(frame, "Library Class is NOT KeyWord Type.");\r
+ return false;\r
+ }\r
+ if (!DataValidation.isPathAndFilename(row[1])) {\r
+ JOptionPane.showMessageDialog(frame, "Include Header is NOT PathAndFilename Type.");\r
+ }\r
+ if (row[2].length() == 0) {\r
+ JOptionPane.showMessageDialog(frame, "HelpText could NOT be empty.");\r
+ }\r
+ return true;\r
+ }\r
/**\r
Add contents in list to sfc\r
**/\r
private JTextField getJTextField() {\r
if (jTextField == null) {\r
jTextField = new JTextField();\r
- jTextField.setBounds(new java.awt.Rectangle(16,83,346,21));\r
+ jTextField.setBounds(new java.awt.Rectangle(221,75,290,21));\r
jTextField.setPreferredSize(new java.awt.Dimension(260,20));\r
}\r
return jTextField;\r
private JButton getJButtonBrowse() {\r
if (jButtonBrowse == null) {\r
jButtonBrowse = new JButton();\r
- jButtonBrowse.setBounds(new java.awt.Rectangle(376,82,90,20));\r
+ jButtonBrowse.setBounds(new java.awt.Rectangle(528,75,90,20));\r
jButtonBrowse.setText("Browse");\r
jButtonBrowse.setPreferredSize(new java.awt.Dimension(80,20));\r
jButtonBrowse.addActionListener(new AbstractAction() {\r
\r
+ /**\r
+ * \r
+ */\r
+ private static final long serialVersionUID = 1L;\r
+\r
public void actionPerformed(ActionEvent arg0) {\r
//\r
// Select files from current pkg\r
resizeComponentWidth(this.jTextFieldAdd, this.getWidth(), intPreferredWidth);\r
resizeComponentWidth(this.jTextFieldHelp, this.getWidth(), intPreferredWidth);\r
resizeComponentWidth(this.jScrollPane, this.getWidth(), intPreferredWidth);\r
- relocateComponentX(this.jButtonBrowse, this.getWidth(), this.getPreferredSize().width,25);\r
- relocateComponentX(this.jButtonClearAll, this.getWidth(), this.getPreferredSize().width,25);\r
- relocateComponentX(this.jButtonRemove, this.getWidth(), this.getPreferredSize().width,25);\r
- relocateComponentX(this.jButtonAdd, this.getWidth(), this.getPreferredSize().width,50);\r
\r
}\r
/**\r
private JTextField getJTextFieldHelp() {\r
if (jTextFieldHelp == null) {\r
jTextFieldHelp = new JTextField();\r
- jTextFieldHelp.setBounds(new java.awt.Rectangle(122,33,343,20));\r
+ jTextFieldHelp.setBounds(new java.awt.Rectangle(122,33,390,20));\r
jTextFieldHelp.setPreferredSize(new java.awt.Dimension(260,20));\r
}\r
return jTextFieldHelp;\r
private JTextField getJTextField1() {\r
if (jTextField1 == null) {\r
jTextField1 = new JTextField();\r
- jTextField1.setBounds(new java.awt.Rectangle(16,135,344,20));\r
+ jTextField1.setBounds(new java.awt.Rectangle(220,110,291,20));\r
jTextField1.setEnabled(true);\r
}\r
return jTextField1;\r
private JTextField getJTextField2() {\r
if (jTextField2 == null) {\r
jTextField2 = new JTextField();\r
- jTextField2.setBounds(new java.awt.Rectangle(16,184,344,20));\r
+ jTextField2.setBounds(new java.awt.Rectangle(218,135,292,20));\r
jTextField2.setEnabled(true);\r
}\r
return jTextField2;\r
private JCheckBox getJCheckBox1() {\r
if (jCheckBox1 == null) {\r
jCheckBox1 = new JCheckBox();\r
- jCheckBox1.setBounds(new java.awt.Rectangle(197,213,49,20));\r
+ jCheckBox1.setBounds(new java.awt.Rectangle(182,213,49,20));\r
jCheckBox1.setText("X64");\r
jCheckBox1.setPreferredSize(new java.awt.Dimension(21,20));\r
}\r
jCheckBox2 = new JCheckBox();\r
jCheckBox2.setText("IPF");\r
jCheckBox2.setSize(new java.awt.Dimension(50,20));\r
- jCheckBox2.setLocation(new java.awt.Point(258,213));\r
+ jCheckBox2.setLocation(new java.awt.Point(237,213));\r
jCheckBox2.setPreferredSize(new java.awt.Dimension(21,20));\r
}\r
return jCheckBox2;\r
private JCheckBox getJCheckBox3() {\r
if (jCheckBox3 == null) {\r
jCheckBox3 = new JCheckBox();\r
- jCheckBox3.setBounds(new java.awt.Rectangle(319,213,59,20));\r
+ jCheckBox3.setBounds(new java.awt.Rectangle(286,213,50,20));\r
jCheckBox3.setText("EBC");\r
jCheckBox3.setPreferredSize(new java.awt.Dimension(21,20));\r
}\r
private JScrollPane getJScrollPaneArch() {\r
if (jScrollPaneArch == null) {\r
jScrollPaneArch = new JScrollPane();\r
- jScrollPaneArch.setBounds(new java.awt.Rectangle(130,252,230,45));\r
+ jScrollPaneArch.setBounds(new java.awt.Rectangle(130,252,230,88));\r
jScrollPaneArch.setPreferredSize(new java.awt.Dimension(320, 80));\r
jScrollPaneArch.setViewportView(getICheckBoxListSupportedArchitectures());\r
}\r
return iCheckBoxListArch;\r
}\r
\r
- private String booleanToString(boolean b1, boolean b2, boolean b3, boolean b4){\r
+ private String booleanToString(boolean b1, boolean b2, boolean b3, boolean b4, boolean b5, boolean b6){\r
String s = " ";\r
if (b1){\r
s += "IA32 ";\r
if (b4){\r
s += "EBC ";\r
}\r
+ if (b5){\r
+ s += "ARM ";\r
+ }\r
+ if (b6){\r
+ s += "PPC ";\r
+ }\r
return s.trim();\r
}\r
\r
}\r
return s.trim();\r
}\r
+ /**\r
+ * This method initializes jCheckBox4 \r
+ * \r
+ * @return javax.swing.JCheckBox \r
+ */\r
+ private JCheckBox getJCheckBox4() {\r
+ if (jCheckBox4 == null) {\r
+ jCheckBox4 = new JCheckBox();\r
+ jCheckBox4.setBounds(new java.awt.Rectangle(343,213,60,20));\r
+ jCheckBox4.setText("ARM");\r
+ jCheckBox4.setPreferredSize(new Dimension(60, 20));\r
+ }\r
+ return jCheckBox4;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jCheckBox5 \r
+ * \r
+ * @return javax.swing.JCheckBox \r
+ */\r
+ private JCheckBox getJCheckBox5() {\r
+ if (jCheckBox5 == null) {\r
+ jCheckBox5 = new JCheckBox();\r
+ jCheckBox5.setBounds(new java.awt.Rectangle(400,213,60,20));\r
+ jCheckBox5.setText("PPC");\r
+ jCheckBox5.setPreferredSize(new Dimension(60, 20));\r
+ }\r
+ return jCheckBox5;\r
+ }\r
+\r
public static void main(String[] args){\r
new SpdLibClassDecls().setVisible(true);\r
}\r
**/\r
package org.tianocore.frameworkwizard.packaging.ui;\r
\r
-import java.awt.BorderLayout;\r
import java.awt.Dimension;\r
-import java.awt.Toolkit;\r
import java.awt.event.ActionEvent;\r
-import java.awt.event.ActionListener;\r
import java.awt.event.ComponentEvent;\r
import java.io.File;\r
-import java.util.Vector;\r
\r
import javax.swing.AbstractAction;\r
-import javax.swing.DefaultListModel;\r
import javax.swing.JFileChooser;\r
import javax.swing.JOptionPane;\r
import javax.swing.JPanel;\r
-import javax.swing.JRadioButton;\r
import javax.swing.JTable;\r
import javax.swing.JTextField;\r
-import javax.swing.JComboBox;\r
import javax.swing.JLabel;\r
-import javax.swing.JList;\r
import javax.swing.JScrollPane;\r
import javax.swing.JButton;\r
import javax.swing.JFrame;\r
import javax.swing.table.TableModel;\r
\r
import org.tianocore.PackageSurfaceAreaDocument;\r
-import org.tianocore.frameworkwizard.common.DataType;\r
import org.tianocore.frameworkwizard.common.Tools;\r
import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
@since PackageEditor 1.0\r
**/\r
public class SpdMsaFiles extends IInternalFrame implements TableModelListener{\r
+ /**\r
+ * \r
+ */\r
+ private static final long serialVersionUID = 1L;\r
+\r
static JFrame frame;\r
\r
private JScrollPane jScrollPane = null; // @jve:decl-index=0:visual-constraint="10,95"\r
if (arg0.getSource() == jButtonAdd) {\r
//ToDo: check before add\r
String[] row = {jTextField.getText().replace('\\', '/')};\r
- \r
+ if (jTextField.getText().length() == 0) {\r
+ JOptionPane.showMessageDialog(this, "Msa File is NOT PathAndFilename type.");\r
+ return;\r
+ }\r
model.addRow(row);\r
sfc.genSpdMsaFiles(row[0], null, null, null);\r
}\r
TableModel m = (TableModel)arg0.getSource();\r
if (arg0.getType() == TableModelEvent.UPDATE){\r
String file = m.getValueAt(row, 0) + "";\r
-\r
+ if (file.length() == 0) {\r
+ JOptionPane.showMessageDialog(this, "Msa File is NOT PathAndFilename type.");\r
+ return;\r
+ }\r
sfc.updateSpdMsaFile(row, file, null, null, null);\r
}\r
}\r
jButtonBrowse.setText("Browse");\r
jButtonBrowse.setPreferredSize(new java.awt.Dimension(90,20));\r
jButtonBrowse.addActionListener(new AbstractAction() {\r
+ /**\r
+ * \r
+ */\r
+ private static final long serialVersionUID = 1L;\r
+\r
public void actionPerformed(ActionEvent e) {\r
//\r
// Select files from current workspace\r
package org.tianocore.frameworkwizard.packaging.ui;\r
\r
import javax.swing.JPanel;\r
-import javax.swing.JDialog;\r
import javax.swing.JLabel;\r
import javax.swing.JComboBox;\r
import java.awt.Dimension;\r
\r
public class SpdPackageDefinitions extends IInternalFrame {\r
\r
+ /**\r
+ * \r
+ */\r
+ private static final long serialVersionUID = 1L;\r
private JPanel jContentPane = null;\r
private JLabel jLabel = null;\r
private JComboBox jComboBoxReadOnly = null;\r
jComboBoxReadOnly = new JComboBox();\r
jComboBoxReadOnly.setBounds(new java.awt.Rectangle(95,22,117,20));\r
jComboBoxReadOnly.setPreferredSize(new Dimension(80, 20));\r
- jComboBoxReadOnly.addItem("TRUE");\r
- jComboBoxReadOnly.addItem("FALSE");\r
+ jComboBoxReadOnly.addItem("true");\r
+ jComboBoxReadOnly.addItem("false");\r
jComboBoxReadOnly.setSelectedIndex(1);\r
jComboBoxReadOnly.addItemListener(new java.awt.event.ItemListener() {\r
public void itemStateChanged(java.awt.event.ItemEvent e) {\r
jComboBoxRePackage = new JComboBox();\r
jComboBoxRePackage.setBounds(new java.awt.Rectangle(95,62,116,20));\r
jComboBoxRePackage.setPreferredSize(new Dimension(80, 20));\r
- jComboBoxRePackage.addItem("FALSE");\r
- jComboBoxRePackage.addItem("TRUE");\r
+ jComboBoxRePackage.addItem("false");\r
+ jComboBoxRePackage.addItem("true");\r
jComboBoxRePackage.setSelectedIndex(0);\r
jComboBoxRePackage.addItemListener(new java.awt.event.ItemListener() {\r
public void itemStateChanged(java.awt.event.ItemEvent e) {\r
**/\r
package org.tianocore.frameworkwizard.packaging.ui;\r
\r
-import java.awt.BorderLayout;\r
import java.awt.Dimension;\r
-import java.awt.Toolkit;\r
import java.awt.event.ActionEvent;\r
-import java.awt.event.ActionListener;\r
import java.awt.event.ComponentEvent;\r
import java.io.File;\r
-import java.util.Vector;\r
\r
import javax.swing.DefaultCellEditor;\r
-import javax.swing.DefaultListModel;\r
import javax.swing.JFileChooser;\r
import javax.swing.JOptionPane;\r
import javax.swing.JPanel;\r
import javax.swing.JTextField;\r
import javax.swing.JComboBox;\r
import javax.swing.JLabel;\r
-import javax.swing.JList;\r
import javax.swing.JScrollPane;\r
import javax.swing.JButton;\r
import javax.swing.JFrame;\r
import javax.swing.table.TableModel;\r
\r
import org.tianocore.PackageSurfaceAreaDocument;\r
-import org.tianocore.frameworkwizard.common.DataType;\r
+import org.tianocore.frameworkwizard.common.DataValidation;\r
import org.tianocore.frameworkwizard.common.Tools;\r
import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
@since PackageEditor 1.0\r
**/\r
public class SpdPackageHeaders extends IInternalFrame implements TableModelListener{\r
+ /**\r
+ * \r
+ */\r
+ private static final long serialVersionUID = 1L;\r
+\r
static JFrame frame;\r
\r
private SpdFileContents sfc = null;\r
\r
private JPanel jContentPane = null;\r
\r
- private JRadioButton jRadioButtonAdd = null;\r
-\r
private JRadioButton jRadioButtonSelect = null;\r
\r
- private JTextField jTextFieldAdd = null;\r
-\r
private JComboBox jComboBoxSelect = null;\r
\r
private JButton jButtonAdd = null;\r
\r
}\r
\r
- /**\r
- This method initializes jRadioButtonAdd \r
- \r
- @return javax.swing.JRadioButton \r
- **/\r
- private JRadioButton getJRadioButtonAdd() {\r
- if (jRadioButtonAdd == null) {\r
- jRadioButtonAdd = new JRadioButton();\r
- jRadioButtonAdd.setBounds(new java.awt.Rectangle(9,35,197,20));\r
- jRadioButtonAdd.setText("Add a new ModuleType");\r
- jRadioButtonAdd.setEnabled(false);\r
- jRadioButtonAdd.addActionListener(this);\r
- jRadioButtonAdd.setSelected(false);\r
- }\r
- return jRadioButtonAdd;\r
- }\r
-\r
/**\r
This method initializes jRadioButtonSelect \r
\r
return jRadioButtonSelect;\r
}\r
\r
- /**\r
- This method initializes jTextFieldAdd \r
- \r
- @return javax.swing.JTextField \r
- **/\r
- private JTextField getJTextFieldAdd() {\r
- if (jTextFieldAdd == null) {\r
- jTextFieldAdd = new JTextField();\r
- jTextFieldAdd.setBounds(new java.awt.Rectangle(220, 35, 260, 20));\r
- jTextFieldAdd.setPreferredSize(new java.awt.Dimension(260,20));\r
- jTextFieldAdd.setEnabled(false);\r
- }\r
- return jTextFieldAdd;\r
- }\r
-\r
/**\r
This method initializes jComboBoxSelect \r
\r
jContentPane.add(jLabel, null);\r
jContentPane.add(jStarLabel1, null);\r
jContentPane.add(jStarLabel2, null);\r
- jContentPane.add(getJRadioButtonAdd(), null);\r
jContentPane.add(getJRadioButtonSelect(), null);\r
- jContentPane.add(getJTextFieldAdd(), null);\r
jContentPane.add(getJComboBoxSelect(), null);\r
jContentPane.add(getJButtonAdd(), null);\r
jContentPane.add(getJButtonRemove(), null);\r
\r
if (arg0.getSource() == jButtonAdd) {\r
String strLibClass = "";\r
- if (jRadioButtonAdd.isSelected()) {\r
- strLibClass = jTextFieldAdd.getText();\r
- }\r
+ \r
if (jRadioButtonSelect.isSelected()) {\r
strLibClass = jComboBoxSelect.getSelectedItem().toString();\r
}\r
String[] row = {"", ""};\r
row[0] = strLibClass;\r
row[1] = jTextField.getText().replace('\\', '/');\r
+ if (!dataValidation(row)) {\r
+ return;\r
+ }\r
model.addRow(row);\r
sfc.genSpdModuleHeaders(row[0], row[1], null, null, null, null, null, null);\r
}\r
sfc.removeSpdPkgHeader();\r
}\r
\r
- if (arg0.getSource() == jRadioButtonAdd) {\r
- if (jRadioButtonAdd.isSelected()) {\r
- jRadioButtonSelect.setSelected(false);\r
- jTextFieldAdd.setEnabled(true);\r
- jComboBoxSelect.setEnabled(false);\r
- }\r
- if (!jRadioButtonSelect.isSelected() && !jRadioButtonAdd.isSelected()) {\r
- jRadioButtonAdd.setSelected(true);\r
- jTextFieldAdd.setEnabled(true);\r
- jComboBoxSelect.setEnabled(false);\r
- }\r
- }\r
-\r
- if (arg0.getSource() == jRadioButtonSelect) {\r
- if (jRadioButtonSelect.isSelected()) {\r
- jRadioButtonAdd.setSelected(false);\r
- jTextFieldAdd.setEnabled(false);\r
- jComboBoxSelect.setEnabled(true);\r
- }\r
- if (!jRadioButtonSelect.isSelected() && !jRadioButtonAdd.isSelected()) {\r
- jRadioButtonSelect.setSelected(true);\r
- jTextFieldAdd.setEnabled(false);\r
- jComboBoxSelect.setEnabled(true);\r
- }\r
+ }\r
+ \r
+ private boolean dataValidation(String[] row) {\r
+ if (!DataValidation.isPathAndFilename(row[1])) {\r
+ JOptionPane.showMessageDialog(this, "Include header path is NOT PathAndFilename type.");\r
+ return false;\r
}\r
+ \r
+ return true;\r
}\r
\r
/**\r
jButtonBrowse.setText("Browse");\r
jButtonBrowse.setPreferredSize(new java.awt.Dimension(92,20));\r
jButtonBrowse.addActionListener(new javax.swing.AbstractAction() {\r
+ /**\r
+ * \r
+ */\r
+ private static final long serialVersionUID = 1L;\r
+\r
public void actionPerformed(ActionEvent e) {\r
//\r
// Select files from current workspace\r
if (jTable == null) {\r
model = new DefaultTableModel();\r
jTable = new JTable(model);\r
+ jTable.setRowHeight(20);\r
model.addColumn("ModuleType");\r
model.addColumn("IncludeHeader");\r
TableColumn typeColumn = jTable.getColumnModel().getColumn(0);\r
if (arg0.getType() == TableModelEvent.UPDATE){\r
String pkg = m.getValueAt(row, 0) + "";\r
String hdr = m.getValueAt(row, 1) + "";\r
+ String[] rowData = {pkg, hdr};\r
+ if (!dataValidation(rowData)) {\r
+ return;\r
+ }\r
sfc.updateSpdPkgHdr(row, pkg, hdr);\r
}\r
}\r
int intPreferredWidth = 500;\r
\r
resizeComponentWidth(this.jComboBoxSelect, this.getWidth(), intPreferredWidth);\r
- resizeComponentWidth(this.jTextFieldAdd, this.getWidth(), intPreferredWidth);\r
resizeComponentWidth(this.jTextField, this.getWidth(), intPreferredWidth);\r
resizeComponentWidth(this.jScrollPane, this.getWidth(), intPreferredWidth);\r
relocateComponentX(this.jButtonBrowse, this.getWidth(), this.getPreferredSize().width, 30);\r
\r
import org.tianocore.PackageSurfaceAreaDocument;\r
\r
+import org.tianocore.frameworkwizard.common.DataValidation;\r
import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
import javax.swing.JScrollPane;\r
import javax.swing.JTable;\r
import javax.swing.JCheckBox;\r
import org.tianocore.frameworkwizard.common.ui.iCheckBoxList.ICheckBoxList;\r
+import org.tianocore.frameworkwizard.platform.ui.ListEditor;\r
+\r
import java.awt.Rectangle;\r
import java.util.Vector;\r
\r
\r
private JButton jButtonClearAll = null;\r
\r
- private JButton jButtonGen = null;\r
- \r
- private GenGuidDialog guidDialog = null;\r
-\r
private JScrollPane jScrollPane = null;\r
\r
private JTable jTable = null;\r
jContentPane.add(getJButtonAdd(), null);\r
jContentPane.add(getJButtonRemove(), null);\r
jContentPane.add(getJButtonClearAll(), null);\r
- jContentPane.add(getJButtonGen(), null);\r
jContentPane.add(getJScrollPane(), null);\r
jContentPane.add(starLabel, null);\r
jContentPane.add(getJCheckBox(), null);\r
if (arg0.getSource() == jButtonOk) {\r
this.save();\r
this.dispose();\r
-\r
}\r
if (arg0.getSource() == jButtonCancel) {\r
this.dispose();\r
\r
if (arg0.getSource() == jButtonAdd) {\r
//ToDo: check before add\r
- if (!checkValid()) {\r
+ boolean[] b = {jCheckBox.isSelected(), jCheckBox1.isSelected(), jCheckBox2.isSelected(), jCheckBox3.isSelected(), jCheckBox4.isSelected()};\r
+ if (!checkValidUsage(b)) {\r
return;\r
}\r
- \r
String archList = vectorToString(iCheckBoxList.getAllCheckedItemsString());\r
if (archList.length() == 0) {\r
archList = null;\r
jCheckBox.isSelected(), jCheckBox1.isSelected(),\r
jCheckBox2.isSelected(), jCheckBox3.isSelected(), jCheckBox4.isSelected(),\r
archList, modTypeList};\r
- \r
+ if (!dataValidation(row)) {\r
+ return;\r
+ }\r
model.addRow(row);\r
\r
String usage = getValidUsage(jCheckBox.isSelected(), jCheckBox1.isSelected(), jCheckBox2.isSelected(), jCheckBox3.isSelected(), jCheckBox4.isSelected());\r
sfc.removeSpdPcdDefinition();\r
}\r
\r
- if (arg0.getSource() == jButtonGen) {\r
- guidDialog = new GenGuidDialog(this);\r
- guidDialog.setGuid(jTextFieldTsGuid.getText());\r
- guidDialog.setVisible(true);\r
- }\r
- \r
- if (arg0.getActionCommand().equals("GenGuidValue")) {\r
- jTextFieldTsGuid.setText(guidDialog.getGuid());\r
- }\r
-\r
}\r
\r
protected void save() {\r
private JTextField getJTextFieldTsGuid() {\r
if (jTextFieldTsGuid == null) {\r
jTextFieldTsGuid = new JTextField();\r
- jTextFieldTsGuid.setBounds(new java.awt.Rectangle(156,58,249,20));\r
- jTextFieldTsGuid.setPreferredSize(new java.awt.Dimension(250,20));\r
+ jTextFieldTsGuid.setPreferredSize(new java.awt.Dimension(315,20));\r
+ jTextFieldTsGuid.setSize(new java.awt.Dimension(317,20));\r
+ jTextFieldTsGuid.setLocation(new java.awt.Point(156,58));\r
}\r
return jTextFieldTsGuid;\r
}\r
return jButtonClearAll;\r
}\r
\r
- /**\r
- * This method initializes jButtonGen \r
- * \r
- * @return javax.swing.JButton \r
- */\r
- private JButton getJButtonGen() {\r
- if (jButtonGen == null) {\r
- jButtonGen = new JButton();\r
- jButtonGen.setBounds(new java.awt.Rectangle(414,57,58,20));\r
- jButtonGen.setPreferredSize(new java.awt.Dimension(56,20));\r
- jButtonGen.setText("Gen");\r
- jButtonGen.addActionListener(this);\r
- }\r
- return jButtonGen;\r
- }\r
- \r
public void componentResized(ComponentEvent arg0) {\r
int intPreferredWidth = 500;\r
\r
resizeComponentWidth(this.jTextField, this.getWidth(), intPreferredWidth);\r
resizeComponentWidth(this.jScrollPane, this.getWidth(), intPreferredWidth);\r
\r
- resizeComponentWidth(this.jTextField, this.getWidth(), intPreferredWidth);\r
resizeComponentWidth(this.jTextFieldDefaultValue, this.getWidth(), intPreferredWidth);\r
// relocateComponentX(this.jButtonClearAll, this.getWidth(), DataType.SPACE_TO_RIGHT_FOR_GENERATE_BUTTON);\r
// relocateComponentX(this.jButtonRemove, this.getWidth(), DataType.SPACE_TO_RIGHT_FOR_GENERATE_BUTTON);\r
// relocateComponentX(this.jButtonAdd, this.getWidth(), DataType.SPACE_TO_RIGHT_FOR_GENERATE_BUTTON);\r
- relocateComponentX(this.jButtonGen, this.getWidth(), this.getPreferredSize().width, 30);\r
}\r
\r
/**\r
if (jTable == null) {\r
model = new CheckboxTableModel();\r
jTable = new JTable(model);\r
+ jTable.setRowHeight(20);\r
jTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);\r
jTable.setSize(new Dimension(1000, 300));\r
\r
model.addColumn("DynamicEx");\r
model.addColumn("SupportedArch");\r
model.addColumn("SupportedModule");\r
- jTable.getColumnModel().getColumn(2).setCellEditor(new GuidEditor());\r
\r
//ToDo: add a valid usage editor\r
\r
TableColumn dataTypeColumn = jTable.getColumnModel().getColumn(3);\r
dataTypeColumn.setCellEditor(new DefaultCellEditor(jComboBoxDataType));\r
\r
+ Vector<String> vArch = new Vector<String>();\r
+ vArch.add("IA32");\r
+ vArch.add("X64");\r
+ vArch.add("IPF");\r
+ vArch.add("EBC");\r
+ vArch.add("ARM");\r
+ vArch.add("PPC");\r
+ jTable.getColumnModel().getColumn(11).setCellEditor(new ListEditor(vArch));\r
+ \r
+ Vector<String> vModule = new Vector<String>();\r
+ vModule.add("BASE");\r
+ vModule.add("SEC");\r
+ vModule.add("PEI_CORE");\r
+ vModule.add("PEIM");\r
+ vModule.add("DXE_CORE");\r
+ vModule.add("DXE_DRIVER");\r
+ vModule.add("DXE_RUNTIME_DRIVER");\r
+ vModule.add("DXE_SAL_DRIVER");\r
+ vModule.add("DXE_SMM_DRIVER");\r
+ vModule.add("UEFI_DRIVER");\r
+ vModule.add("UEFI_APPLICATION");\r
+ vModule.add("USER_DEFINED");\r
+ jTable.getColumnModel().getColumn(12).setCellEditor(new ListEditor(vModule));\r
+ \r
jTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
jTable.getSelectionModel().addListSelectionListener(new ListSelectionListener(){\r
public void valueChanged(ListSelectionEvent e) {\r
String usage = getValidUsage(new Boolean(m.getValueAt(row, 6)+""), new Boolean(m.getValueAt(row, 7)+""), new Boolean(m.getValueAt(row, 8)+""), new Boolean(m.getValueAt(row, 9)+""), new Boolean(m.getValueAt(row, 10)+""));\r
String archList = vectorToString(iCheckBoxList.getAllCheckedItemsString());\r
String modTypeList = vectorToString(iCheckBoxList1.getAllCheckedItemsString());\r
+ if (usage.length() == 0) {\r
+ JOptionPane.showMessageDialog(frame, "You must choose at least one usage for PCD entry.");\r
+ return;\r
+ }\r
+ Object[] o = {cName, token, ts, dataType, defaultVal, help};\r
+ if (!dataValidation(o)){\r
+ return;\r
+ }\r
sfc.updateSpdPcdDefinition(row, cName, token, dataType, usage, ts, defaultVal, help, archList, modTypeList);\r
}\r
}\r
return usage.trim();\r
}\r
\r
- private boolean checkValid() {\r
- if (!(jCheckBox.isSelected() || jCheckBox1.isSelected() || jCheckBox2.isSelected() || jCheckBox3.isSelected() || jCheckBox4.isSelected())){\r
+ private boolean checkValidUsage(boolean[] b) {\r
+ if (!(b[0] || b[1] || b[2] || b[3] || b[4])){\r
JOptionPane.showMessageDialog(frame, "You must specify at least one usage.");\r
return false;\r
}\r
return true;\r
}\r
+ private boolean dataValidation(Object[] row) {\r
+ \r
+ if (!DataValidation.isC_NameType(row[0].toString())) {\r
+ JOptionPane.showMessageDialog(frame, "C_Name is NOT C_NameType.");\r
+ return false;\r
+ }\r
+ if (!(DataValidation.isHexDoubleWordDataType(row[1].toString()) || \r
+ DataValidation.isInt(row[1].toString(), 0, 0xffffffff))) {\r
+ JOptionPane.showMessageDialog(frame, "Token is NOT correct.");\r
+ return false;\r
+ }\r
+ if (!DataValidation.isC_NameType(row[2].toString())) {\r
+ JOptionPane.showMessageDialog(frame, "Token Space is NOT C_NameType");\r
+ return false;\r
+ }\r
+ if (row[5].toString().length() == 0) {\r
+ JOptionPane.showMessageDialog(frame, "HelpText could NOT be empty.");\r
+ return false;\r
+ }\r
+ return true;\r
+ }\r
\r
/**\r
* This method initializes jScrollPane1 \r
v.add("X64");\r
v.add("IPF");\r
v.add("EBC");\r
+ v.add("ARM");\r
+ v.add("PPC");\r
iCheckBoxList.setAllItems(v);\r
}\r
return iCheckBoxList;\r
**/\r
package org.tianocore.frameworkwizard.packaging.ui;\r
\r
-import javax.swing.event.TableModelEvent;\r
import javax.swing.table.DefaultTableModel;\r
import javax.swing.table.TableModel;\r
\r
**/\r
public class SpdPpiDecls extends SpdGuidDecls {\r
\r
+ /**\r
+ * \r
+ */\r
+ private static final long serialVersionUID = 1L;\r
private SpdFileContents sfc = null;\r
\r
public SpdPpiDecls() {\r
if (m.getValueAt(row, 5) != null) {\r
modTypeList = m.getValueAt(row, 5).toString();\r
}\r
+ String[] rowData = {name, cName, guid, help};\r
+ if (!dataValidation(rowData)){\r
+ return;\r
+ }\r
sfc.updateSpdPpiDecl(row, name, cName, guid, help, archList, modTypeList);\r
}\r
\r
protected void addRow(String[] row) {\r
+ \r
+ if (!dataValidation(row)){\r
+ return;\r
+ }\r
sfc.genSpdPpiDeclarations(row[0], row[1], row[2], row[3], stringToVector(row[4]), stringToVector(row[5]));\r
}\r
\r
**/\r
public class SpdProtocolDecls extends SpdGuidDecls {\r
\r
+ /**\r
+ * \r
+ */\r
+ private static final long serialVersionUID = 1L;\r
private SpdFileContents sfc = null;\r
\r
public SpdProtocolDecls() {\r
if (m.getValueAt(row, 5) != null) {\r
modTypeList = m.getValueAt(row, 5).toString();\r
}\r
+ String[] rowData = {name, cName, guid, help};\r
+ if (!dataValidation(rowData)){\r
+ return;\r
+ }\r
\r
sfc.updateSpdProtocolDecl(row, name, cName, guid, help, archList, modTypeList);\r
}\r
\r
protected void addRow(String[] row) {\r
+ if (!dataValidation(row)){\r
+ return;\r
+ }\r
sfc.genSpdProtocolDeclarations(row[0], row[1], row[2], row[3], stringToVector(row[4]), stringToVector(row[5]));\r
}\r
\r