*/\r
private static final long serialVersionUID = 1L;\r
\r
- static JFrame frame;\r
+ private JFrame topFrame;\r
\r
private JPanel jContentPane = null; \r
\r
private final int usageMinWidth = 60;\r
private final int supArchMinWidth = 200;\r
private final int supModMinWidth = 200;\r
-\r
+ \r
// private Object boolModifyLock = new Object();\r
// private boolean exclusiveUsage = false;\r
\r
/**\r
This is the default constructor\r
**/\r
- public SpdPcdDefs() {\r
+ public SpdPcdDefs(JFrame frame) {\r
super();\r
init();\r
initialize();\r
- \r
+ topFrame = frame;\r
}\r
\r
- public SpdPcdDefs(PackageSurfaceAreaDocument.PackageSurfaceArea inPsa) {\r
- this();\r
+ public SpdPcdDefs(PackageSurfaceAreaDocument.PackageSurfaceArea inPsa, JFrame frame) {\r
+ this(frame);\r
sfc = new SpdFileContents(inPsa);\r
init(sfc);\r
}\r
\r
- public SpdPcdDefs(OpeningPackageType opt) {\r
- this(opt.getXmlSpd());\r
+ public SpdPcdDefs(OpeningPackageType opt, JFrame frame) {\r
+ this(opt.getXmlSpd(), frame);\r
docConsole = opt;\r
}\r
/**\r
private void init(SpdFileContents sfc){\r
\r
if (sfc.getSpdPkgDefsRdOnly().equals("true")) {\r
- JOptionPane.showMessageDialog(frame, "This is a read-only package. You will not be able to edit contents in table.");\r
+ JOptionPane.showMessageDialog(topFrame, "This is a read-only package. You will not be able to edit contents in table.");\r
}\r
initFrame();\r
\r
jCheckBoxPatchInMod.isSelected(), jCheckBoxDyn.isSelected(), jCheckBoxDynEx.isSelected(),\r
archList, modTypeList};\r
try {\r
- if (!dataValidation(row)) {\r
- return;\r
- }\r
-\r
- if (tokenCNameExisted(jTextFieldToken.getText(),jTextFieldC_Name.getText())) {\r
- return;\r
- }\r
+ if (!dataValidation(row)) {\r
+ return;\r
+ }\r
+ \r
+ if (tokenCNameExisted(jTextFieldToken.getText(), jTextFieldC_Name.getText())) {\r
+ return;\r
+ }\r
} catch (Exception e) {\r
- JOptionPane.showMessageDialog(frame, "Illegal Token:"+ e.getCause());\r
+ JOptionPane.showMessageDialog(this, "Illegal Token:"+ e.getCause());\r
return;\r
}\r
\r
TableColumn dataTypeColumn = jTable.getColumnModel().getColumn(3);\r
dataTypeColumn.setCellEditor(new DefaultCellEditor(jComboBoxDataType));\r
\r
- jTable.getColumnModel().getColumn(5).setCellEditor(new LongTextEditor());\r
+ jTable.getColumnModel().getColumn(5).setCellEditor(new LongTextEditor(topFrame));\r
\r
Vector<String> vArch = new Vector<String>();\r
vArch.add("IA32");\r
vArch.add("EBC");\r
vArch.add("ARM");\r
vArch.add("PPC");\r
- jTable.getColumnModel().getColumn(11).setCellEditor(new ListEditor(vArch));\r
+ jTable.getColumnModel().getColumn(11).setCellEditor(new ListEditor(vArch, topFrame));\r
\r
Vector<String> vModule = new Vector<String>();\r
vModule.add("BASE");\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
+ jTable.getColumnModel().getColumn(12).setCellEditor(new ListEditor(vModule, topFrame));\r
\r
jTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
jTable.getSelectionModel().addListSelectionListener(new ListSelectionListener(){\r
\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
if (usage.length() == 0) {\r
- JOptionPane.showMessageDialog(frame, "You must choose at least one usage for PCD entry.");\r
+ JOptionPane.showMessageDialog(this, "You must choose at least one usage for PCD entry.");\r
return;\r
}\r
\r
}\r
if (v.contains("FEATURE_FLAG")/* && v.size() > 1 && !exclusiveUsage*/) {\r
if (v.size() > 1) {\r
- JOptionPane.showMessageDialog(frame, "Usage Feature Flag can NOT co-exist with others.");\r
- return;\r
- }\r
+ JOptionPane.showMessageDialog(this, "Usage Feature Flag can NOT co-exist with others.");\r
+ return;\r
+ }\r
// synchronized (boolModifyLock){\r
// exclusiveUsage = true;\r
// }\r
\r
Object[] o = {cName, token, ts, dataType, defaultVal, help};\r
try {\r
- if (!dataValidation(o)){\r
- return;\r
- }\r
+ if (!dataValidation(o)){\r
+ return;\r
+ }\r
}\r
catch (Exception e) {\r
- JOptionPane.showMessageDialog(frame, "Illegal Token:" + e.getCause());\r
+ JOptionPane.showMessageDialog(this, "Illegal Token:" + e.getCause());\r
return;\r
}\r
docConsole.setSaved(false);\r
\r
for (int i = 0; i < model.getRowCount(); ++i) {\r
if (model.getValueAt(i, 0).equals(cName)) {\r
- JOptionPane.showMessageDialog(frame, "C_Name already existed in table.");\r
+ JOptionPane.showMessageDialog(this, "C_Name already existed in table.");\r
return true;\r
}\r
if (model.getValueAt(i, 1).equals(token)) {\r
- JOptionPane.showMessageDialog(frame, "Token already existed in table.");\r
+ JOptionPane.showMessageDialog(this, "Token already existed in table.");\r
return true;\r
}\r
Long tokenValue = Long.decode(model.getValueAt(i, 1)+"");\r
if (tokenValue.equals(inputToken)) {\r
- JOptionPane.showMessageDialog(frame, "Same token value already existed in table.");\r
+ JOptionPane.showMessageDialog(this, "Same token value already existed in table.");\r
return true;\r
}\r
\r
\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
+ JOptionPane.showMessageDialog(this, "You must specify at least one usage.");\r
return false;\r
}\r
return true;\r
private boolean dataValidation(Object[] row) throws Exception{\r
\r
if (!DataValidation.isC_NameType(row[0].toString())) {\r
- JOptionPane.showMessageDialog(frame, "C_Name is NOT C_NameType.");\r
+ JOptionPane.showMessageDialog(this, "C_Name is NOT C_NameType.");\r
return false;\r
}\r
if (!DataValidation.isHexDoubleWordDataType(row[1].toString()) && \r
!DataValidation.isLongInt(row[1].toString(), 1, Long.MAX_VALUE)) {\r
- JOptionPane.showMessageDialog(frame, "Token is NOT correct.");\r
+ JOptionPane.showMessageDialog(this, "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
+ JOptionPane.showMessageDialog(this, "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
+ JOptionPane.showMessageDialog(this, "HelpText could NOT be empty.");\r
return false;\r
}\r
return true;\r