Change radio button in package header editor to a label.

Force user to select GUID type when adding a GUID declaration.
Check duplicated PCD cName and toke value when adding a PCD declaration.
Change PCD token space text field to a drop-down list containing GUIDs with "TOKEN_SPACE_GUID" type and without type specified from GUID declarations in this package.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1355 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
jlin16 2006-08-22 23:54:09 +00:00
parent 8a11d13aa3
commit 5f97c02984
7 changed files with 159 additions and 68 deletions

View File

@ -730,6 +730,17 @@ public class SpdFileContents {
} }
} }
public void getSpdGuidDeclWithType (Vector<String> vGuidCName, String type) {
if (psaRoot.getGuidDeclarations() == null) {
return;
}
List<GuidDeclarationsDocument.GuidDeclarations.Entry> l = psaRoot.getGuidDeclarations().getEntryList();
for (int i = 0; i < l.size(); ++i) {
if (l.get(i).getGuidTypeList() == null || l.get(i).getGuidTypeList().contains(type)) {
vGuidCName.add(l.get(i).getCName());
}
}
}
/** /**
Get the number of GUID declarations from the size of List Get the number of GUID declarations from the size of List

View File

@ -67,7 +67,7 @@ public class SpdGuidDecls extends IInternalFrame implements TableModelListener{
private JPanel jContentPane = null; private JPanel jContentPane = null;
private JTextField jTextFieldAdd = null; private JTextField jTextFieldGuid = null;
private JScrollPane jScrollPane = null; private JScrollPane jScrollPane = null;
@ -107,11 +107,11 @@ public class SpdGuidDecls extends IInternalFrame implements TableModelListener{
private JScrollPane topScrollPane = null; // @jve:decl-index=0:visual-constraint="10,213" private JScrollPane topScrollPane = null; // @jve:decl-index=0:visual-constraint="10,213"
private JLabel jLabelVer = null; private JLabel jLabelCName = null;
private GenGuidDialog guidDialog = null; private GenGuidDialog guidDialog = null;
private JTextField jTextFieldVersion = null; private JTextField jTextFieldCName = null;
private JLabel jLabelHelp = null; private JLabel jLabelHelp = null;
@ -142,18 +142,18 @@ public class SpdGuidDecls extends IInternalFrame implements TableModelListener{
} }
/** /**
This method initializes jTextFieldAdd This method initializes jTextFieldGuid
@return javax.swing.JTextField @return javax.swing.JTextField
**/ **/
protected JTextField getJTextFieldAdd() { protected JTextField getJTextFieldGuid() {
if (jTextFieldAdd == null) { if (jTextFieldGuid == null) {
jTextFieldAdd = new JTextField(); jTextFieldGuid = new JTextField();
jTextFieldAdd.setBounds(new java.awt.Rectangle(137,35,337,20)); jTextFieldGuid.setBounds(new java.awt.Rectangle(137,60,435,20));
jTextFieldAdd.setPreferredSize(new java.awt.Dimension(335,20)); jTextFieldGuid.setPreferredSize(new java.awt.Dimension(200,20));
} }
return jTextFieldAdd; return jTextFieldGuid;
} }
/** /**
@ -466,11 +466,11 @@ public class SpdGuidDecls extends IInternalFrame implements TableModelListener{
jLabelHelp.setText("HelpText"); jLabelHelp.setText("HelpText");
jLabelHelp.setSize(new java.awt.Dimension(109,20)); jLabelHelp.setSize(new java.awt.Dimension(109,20));
jLabelHelp.setLocation(new java.awt.Point(14,85)); jLabelHelp.setLocation(new java.awt.Point(14,85));
jLabelVer = new JLabel(); jLabelCName = new JLabel();
jLabelVer.setBounds(new java.awt.Rectangle(14,60,111,20)); jLabelCName.setBounds(new java.awt.Rectangle(14,35,111,20));
jLabelVer.setText("C_Name"); jLabelCName.setText("C_Name");
jLabelGuid = new JLabel(); jLabelGuid = new JLabel();
jLabelGuid.setBounds(new java.awt.Rectangle(15,35,112,20)); jLabelGuid.setBounds(new java.awt.Rectangle(15,60,112,20));
jLabelGuid.setText("Guid Value"); jLabelGuid.setText("Guid Value");
jLabelName = new JLabel(); jLabelName = new JLabel();
jLabelName.setBounds(new java.awt.Rectangle(15,10,113,20)); jLabelName.setBounds(new java.awt.Rectangle(15,10,113,20));
@ -491,9 +491,9 @@ public class SpdGuidDecls extends IInternalFrame implements TableModelListener{
jContentPane.add(jStarLabel2, null); jContentPane.add(jStarLabel2, null);
jContentPane.add(jStarLabel3, null); jContentPane.add(jStarLabel3, null);
jContentPane.add(jStarLabel4, null); jContentPane.add(jStarLabel4, null);
jContentPane.add(jLabelVer, null); jContentPane.add(jLabelCName, null);
jContentPane.add(getJTextFieldVersion(), null); jContentPane.add(getJTextFieldCName(), null);
jContentPane.add(getJTextFieldAdd(), null); jContentPane.add(getJTextFieldGuid(), null);
jContentPane.add(getJScrollPane(), null); jContentPane.add(getJScrollPane(), null);
jContentPane.add(getJButtonAdd(), null); jContentPane.add(getJButtonAdd(), null);
jContentPane.add(getJButtonRemove(), null); jContentPane.add(getJButtonRemove(), null);
@ -545,8 +545,8 @@ public class SpdGuidDecls extends IInternalFrame implements TableModelListener{
//ToDo: check before add //ToDo: check before add
String[] row = {"", "", "", "", "", "", ""}; String[] row = {"", "", "", "", "", "", ""};
row[3] = jTextFieldHelp.getText(); row[3] = jTextFieldHelp.getText();
row[2] = jTextFieldAdd.getText(); row[2] = jTextFieldGuid.getText();
row[1] = jTextFieldVersion.getText(); row[1] = jTextFieldCName.getText();
row[0] = jTextFieldName.getText(); row[0] = jTextFieldName.getText();
row[4] = vectorToString(iCheckBoxListArch.getAllCheckedItemsString()); row[4] = vectorToString(iCheckBoxListArch.getAllCheckedItemsString());
if (row[4].length() == 0) { if (row[4].length() == 0) {
@ -565,9 +565,12 @@ public class SpdGuidDecls extends IInternalFrame implements TableModelListener{
return; return;
} }
if (addRow(row) == -1) {
return;
}
model.addRow(row); model.addRow(row);
jTable.changeSelection(model.getRowCount()-1, 0, false, false); jTable.changeSelection(model.getRowCount()-1, 0, false, false);
addRow(row);
} }
// //
// remove selected line // remove selected line
@ -592,11 +595,11 @@ public class SpdGuidDecls extends IInternalFrame implements TableModelListener{
} }
if (arg0.getSource() == jButtonGen) { if (arg0.getSource() == jButtonGen) {
jTextFieldAdd.setText(Tools.generateUuidString()); jTextFieldGuid.setText(Tools.generateUuidString());
} }
if (arg0.getActionCommand().equals("GenGuidValue")) { if (arg0.getActionCommand().equals("GenGuidValue")) {
jTextFieldAdd.setText(guidDialog.getGuid()); jTextFieldGuid.setText(guidDialog.getGuid());
} }
} }
@ -621,7 +624,7 @@ public class SpdGuidDecls extends IInternalFrame implements TableModelListener{
return true; return true;
} }
protected void addRow(String[] row) { protected int addRow(String[] row) {
Vector<String> vArch = iCheckBoxListArch.getAllCheckedItemsString(); Vector<String> vArch = iCheckBoxListArch.getAllCheckedItemsString();
if (vArch.size() == 0) { if (vArch.size() == 0) {
vArch = null; vArch = null;
@ -634,10 +637,15 @@ public class SpdGuidDecls extends IInternalFrame implements TableModelListener{
if (vguidType.size() == 0) { if (vguidType.size() == 0) {
vguidType = null; vguidType = null;
} }
if (vguidType == null) {
JOptionPane.showMessageDialog(this, "You must select one GUID type.");
return -1;
}
if (docConsole != null) { if (docConsole != null) {
docConsole.setSaved(false); docConsole.setSaved(false);
} }
sfc.genSpdGuidDeclarations(row[0], row[1], row[2], row[3], vArch, vModType, vguidType); sfc.genSpdGuidDeclarations(row[0], row[1], row[2], row[3], vArch, vModType, vguidType);
return 0;
} }
protected void removeRow(int i){ protected void removeRow(int i){
@ -692,25 +700,25 @@ public class SpdGuidDecls extends IInternalFrame implements TableModelListener{
} }
/** /**
* This method initializes jTextFieldVersion * This method initializes jTextFieldCName
* *
* @return javax.swing.JTextField * @return javax.swing.JTextField
*/ */
protected JTextField getJTextFieldVersion() { protected JTextField getJTextFieldCName() {
if (jTextFieldVersion == null) { if (jTextFieldCName == null) {
jTextFieldVersion = new JTextField(); jTextFieldCName = new JTextField();
jTextFieldVersion.setBounds(new java.awt.Rectangle(137,60,225,20)); jTextFieldCName.setBounds(new java.awt.Rectangle(137,35,337,20));
jTextFieldVersion.setPreferredSize(new java.awt.Dimension(225,20)); jTextFieldCName.setPreferredSize(new java.awt.Dimension(335,20));
} }
return jTextFieldVersion; return jTextFieldCName;
} }
public void componentResized(ComponentEvent arg0) { public void componentResized(ComponentEvent arg0) {
int intPreferredWidth = 500; int intPreferredWidth = 500;
Tools.resizeComponentWidth(this.jTextFieldName, this.getWidth(), intPreferredWidth); Tools.resizeComponentWidth(this.jTextFieldName, this.getWidth(), intPreferredWidth);
Tools.resizeComponentWidth(this.jTextFieldAdd, this.getWidth(), intPreferredWidth);
Tools.resizeComponentWidth(this.jTextFieldVersion, this.getWidth(), intPreferredWidth); Tools.resizeComponentWidth(this.jTextFieldCName, this.getWidth(), intPreferredWidth);
Tools.resizeComponentWidth(this.jTextFieldHelp, this.getWidth(), intPreferredWidth); Tools.resizeComponentWidth(this.jTextFieldHelp, this.getWidth(), intPreferredWidth);
Tools.resizeComponentWidth(this.jScrollPane, this.getWidth(), intPreferredWidth); Tools.resizeComponentWidth(this.jScrollPane, this.getWidth(), intPreferredWidth);
Tools.relocateComponentX(this.jButtonGen, this.getWidth(), this.getPreferredSize().width, 40); Tools.relocateComponentX(this.jButtonGen, this.getWidth(), this.getPreferredSize().width, 40);

View File

@ -200,8 +200,7 @@ public class SpdLibClassDecls extends IInternalFrame implements TableModelListen
private JScrollPane getJScrollPane() { private JScrollPane getJScrollPane() {
if (jScrollPane == null) { if (jScrollPane == null) {
jScrollPane = new JScrollPane(); jScrollPane = new JScrollPane();
jScrollPane.setBounds(new java.awt.Rectangle(12,351,608,253)); jScrollPane.setBounds(new java.awt.Rectangle(12,351,400,253));
jScrollPane.setPreferredSize(new java.awt.Dimension(500,419));
jScrollPane.setViewportView(getJTable()); jScrollPane.setViewportView(getJTable());
} }
return jScrollPane; return jScrollPane;

View File

@ -21,7 +21,6 @@ import javax.swing.DefaultCellEditor;
import javax.swing.JFileChooser; import javax.swing.JFileChooser;
import javax.swing.JOptionPane; import javax.swing.JOptionPane;
import javax.swing.JPanel; import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTable; import javax.swing.JTable;
import javax.swing.JTextField; import javax.swing.JTextField;
import javax.swing.JComboBox; import javax.swing.JComboBox;
@ -68,7 +67,7 @@ public class SpdPackageHeaders extends IInternalFrame implements TableModelListe
private JPanel jContentPane = null; private JPanel jContentPane = null;
private JRadioButton jRadioButtonSelect = null; private JLabel jLabelSelect = null;
private JComboBox jComboBoxSelect = null; private JComboBox jComboBoxSelect = null;
@ -117,15 +116,14 @@ public class SpdPackageHeaders extends IInternalFrame implements TableModelListe
@return javax.swing.JRadioButton @return javax.swing.JRadioButton
**/ **/
private JRadioButton getJRadioButtonSelect() { private JLabel getJLabelSelect() {
if (jRadioButtonSelect == null) { if (jLabelSelect == null) {
jRadioButtonSelect = new JRadioButton(); jLabelSelect = new JLabel();
jRadioButtonSelect.setBounds(new java.awt.Rectangle(9,10,198,20)); jLabelSelect.setBounds(new java.awt.Rectangle(14,10,198,20));
jRadioButtonSelect.setText("Select Existing ModuleType"); jLabelSelect.setText("Select ModuleType");
jRadioButtonSelect.addActionListener(this);
jRadioButtonSelect.setSelected(true);
} }
return jRadioButtonSelect; return jLabelSelect;
} }
/** /**
@ -321,7 +319,7 @@ public class SpdPackageHeaders extends IInternalFrame implements TableModelListe
jContentPane.add(jLabel, null); jContentPane.add(jLabel, null);
jContentPane.add(jStarLabel1, null); jContentPane.add(jStarLabel1, null);
jContentPane.add(jStarLabel2, null); jContentPane.add(jStarLabel2, null);
jContentPane.add(getJRadioButtonSelect(), null); jContentPane.add(getJLabelSelect(), null);
jContentPane.add(getJComboBoxSelect(), null); jContentPane.add(getJComboBoxSelect(), null);
jContentPane.add(getJButtonAdd(), null); jContentPane.add(getJButtonAdd(), null);
jContentPane.add(getJButtonRemove(), null); jContentPane.add(getJButtonRemove(), null);
@ -374,9 +372,7 @@ public class SpdPackageHeaders extends IInternalFrame implements TableModelListe
if (arg0.getSource() == jButtonAdd) { if (arg0.getSource() == jButtonAdd) {
String strLibClass = ""; String strLibClass = "";
if (jRadioButtonSelect.isSelected()) { strLibClass = jComboBoxSelect.getSelectedItem().toString();
strLibClass = jComboBoxSelect.getSelectedItem().toString();
}
//ToDo: check before add //ToDo: check before add
String[] row = {"", ""}; String[] row = {"", ""};
row[0] = strLibClass; row[0] = strLibClass;

View File

@ -102,7 +102,7 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
private JLabel jLabelTokenSpace = null; private JLabel jLabelTokenSpace = null;
private JTextField jTextFieldTsGuid = null; private JComboBox jComboBoxTsGuid = null;
private JLabel jLabelVarVal = null; private JLabel jLabelVarVal = null;
@ -270,11 +270,12 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
} }
} }
}); });
initFrame();
this.setVisible(true); this.setVisible(true);
} }
private void init(SpdFileContents sfc){ private void init(SpdFileContents sfc){
initFrame(sfc);
if (sfc.getSpdPcdDefinitionCount() == 0) { if (sfc.getSpdPcdDefinitionCount() == 0) {
return ; return ;
} }
@ -379,7 +380,7 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
jContentPane.add(jLabelItemType, null); jContentPane.add(jLabelItemType, null);
jContentPane.add(jLabelC_Name, null); jContentPane.add(jLabelC_Name, null);
jContentPane.add(jLabelTokenSpace, null); jContentPane.add(jLabelTokenSpace, null);
jContentPane.add(getJTextFieldTsGuid(), null); jContentPane.add(getJComboBoxTsGuid(), null);
jContentPane.add(jLabelVarVal, null); jContentPane.add(jLabelVarVal, null);
jContentPane.add(getJTextFieldC_Name(), null); jContentPane.add(getJTextFieldC_Name(), null);
jContentPane.add(jLabelToken, null); jContentPane.add(jLabelToken, null);
@ -431,7 +432,7 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
jContentPane.add(jLabelTokenSpace, null); jContentPane.add(jLabelTokenSpace, null);
**/ **/
private void initFrame() { private void initFrame(SpdFileContents sfc) {
jComboBoxDataType.addItem("UINT8"); jComboBoxDataType.addItem("UINT8");
jComboBoxDataType.addItem("UINT16"); jComboBoxDataType.addItem("UINT16");
@ -440,11 +441,17 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
jComboBoxDataType.addItem("VOID*"); jComboBoxDataType.addItem("VOID*");
jComboBoxDataType.addItem("BOOLEAN"); jComboBoxDataType.addItem("BOOLEAN");
jComboBoxDataType.setSelectedIndex(0); jComboBoxDataType.setSelectedIndex(0);
Vector<String> vGuidCName = new Vector<String>();
sfc.getSpdGuidDeclWithType(vGuidCName, "TOKEN_SPACE_GUID");
for (int i = 0; i < vGuidCName.size(); ++i) {
jComboBoxTsGuid.addItem(vGuidCName.get(i));
}
} }
public void actionPerformed(ActionEvent arg0) { public void actionPerformed(ActionEvent arg0) {
docConsole.setSaved(false);
if (arg0.getSource() == jButtonOk) { if (arg0.getSource() == jButtonOk) {
this.save(); this.save();
this.dispose(); this.dispose();
@ -455,6 +462,7 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
if (arg0.getSource() == jButtonAdd) { if (arg0.getSource() == jButtonAdd) {
//ToDo: check before add //ToDo: check before add
boolean[] b = {jCheckBoxFeatureFlag.isSelected(), jCheckBoxFixedAtBuild.isSelected(), jCheckBoxPatchInMod.isSelected(), jCheckBoxDyn.isSelected(), jCheckBoxDynEx.isSelected()}; boolean[] b = {jCheckBoxFeatureFlag.isSelected(), jCheckBoxFixedAtBuild.isSelected(), jCheckBoxPatchInMod.isSelected(), jCheckBoxDyn.isSelected(), jCheckBoxDynEx.isSelected()};
if (!checkValidUsage(b)) { if (!checkValidUsage(b)) {
return; return;
@ -468,7 +476,7 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
modTypeList = null; modTypeList = null;
} }
Object[] row = {jTextFieldC_Name.getText(), jTextFieldToken.getText(), Object[] row = {jTextFieldC_Name.getText(), jTextFieldToken.getText(),
jTextFieldTsGuid.getText(), jComboBoxDataType.getSelectedItem(), jComboBoxTsGuid.getSelectedItem(), jComboBoxDataType.getSelectedItem(),
jTextFieldDefaultValue.getText(), jTextFieldHelp.getText(), jTextFieldDefaultValue.getText(), jTextFieldHelp.getText(),
jCheckBoxFeatureFlag.isSelected(), jCheckBoxFixedAtBuild.isSelected(), jCheckBoxFeatureFlag.isSelected(), jCheckBoxFixedAtBuild.isSelected(),
jCheckBoxPatchInMod.isSelected(), jCheckBoxDyn.isSelected(), jCheckBoxDynEx.isSelected(), jCheckBoxPatchInMod.isSelected(), jCheckBoxDyn.isSelected(), jCheckBoxDynEx.isSelected(),
@ -476,6 +484,11 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
if (!dataValidation(row)) { if (!dataValidation(row)) {
return; return;
} }
if (tokenCNameExisted(jTextFieldToken.getText(), jTextFieldC_Name.getText())) {
return;
}
model.addRow(row); model.addRow(row);
jTable.changeSelection(model.getRowCount()-1, 0, false, false); jTable.changeSelection(model.getRowCount()-1, 0, false, false);
String usage = getValidUsage(jCheckBoxFeatureFlag.isSelected(), jCheckBoxFixedAtBuild.isSelected(), jCheckBoxPatchInMod.isSelected(), jCheckBoxDyn.isSelected(), jCheckBoxDynEx.isSelected()); String usage = getValidUsage(jCheckBoxFeatureFlag.isSelected(), jCheckBoxFixedAtBuild.isSelected(), jCheckBoxPatchInMod.isSelected(), jCheckBoxDyn.isSelected(), jCheckBoxDynEx.isSelected());
@ -483,6 +496,7 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
usage = null; usage = null;
} }
sfc.genSpdPcdDefinitions(row[0]+"", row[1]+"", row[3]+"", usage, row[2]+"", row[4]+"", row[5]+"", archList, modTypeList); sfc.genSpdPcdDefinitions(row[0]+"", row[1]+"", row[3]+"", usage, row[2]+"", row[4]+"", row[5]+"", archList, modTypeList);
docConsole.setSaved(false);
} }
// //
// remove selected line // remove selected line
@ -495,6 +509,7 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
if (rowSelected >= 0) { if (rowSelected >= 0) {
model.removeRow(rowSelected); model.removeRow(rowSelected);
sfc.removeSpdPcdDefinition(rowSelected); sfc.removeSpdPcdDefinition(rowSelected);
docConsole.setSaved(false);
} }
} }
@ -504,6 +519,7 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
} }
model.setRowCount(0); model.setRowCount(0);
sfc.removeSpdPcdDefinition(); sfc.removeSpdPcdDefinition();
docConsole.setSaved(false);
} }
} }
@ -513,18 +529,17 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
} }
/** /**
* This method initializes jTextFieldTsGuid * This method initializes jComboBoxTsGuid
* *
* @return javax.swing.JTextField * @return javax.swing.JComboBox
*/ */
private JTextField getJTextFieldTsGuid() { private JComboBox getJComboBoxTsGuid() {
if (jTextFieldTsGuid == null) { if (jComboBoxTsGuid == null) {
jTextFieldTsGuid = new JTextField(); jComboBoxTsGuid = new JComboBox();
jTextFieldTsGuid.setPreferredSize(new java.awt.Dimension(315,20)); jComboBoxTsGuid.setBounds(new java.awt.Rectangle(156,58,315,20));
jTextFieldTsGuid.setSize(new java.awt.Dimension(317,20));
jTextFieldTsGuid.setLocation(new java.awt.Point(156,58));
} }
return jTextFieldTsGuid; return jComboBoxTsGuid;
} }
/** /**
@ -609,7 +624,7 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
Tools.resizeComponentWidth(this.jTextFieldC_Name, this.getWidth(), intPreferredWidth); Tools.resizeComponentWidth(this.jTextFieldC_Name, this.getWidth(), intPreferredWidth);
Tools.resizeComponentWidth(this.jTextFieldToken, this.getWidth(), intPreferredWidth); Tools.resizeComponentWidth(this.jTextFieldToken, this.getWidth(), intPreferredWidth);
Tools.resizeComponentWidth(this.jTextFieldTsGuid, this.getWidth(), intPreferredWidth); Tools.resizeComponentWidth(this.jComboBoxTsGuid, this.getWidth(), intPreferredWidth);
Tools.resizeComponentWidth(this.jTextFieldDefaultValue, this.getWidth(), intPreferredWidth); Tools.resizeComponentWidth(this.jTextFieldDefaultValue, this.getWidth(), intPreferredWidth);
Tools.resizeComponentWidth(this.jTextFieldHelp, this.getWidth(), intPreferredWidth); Tools.resizeComponentWidth(this.jTextFieldHelp, this.getWidth(), intPreferredWidth);
Tools.resizeComponentWidth(this.jScrollPane, this.getWidth(), intPreferredWidth); Tools.resizeComponentWidth(this.jScrollPane, this.getWidth(), intPreferredWidth);
@ -812,6 +827,16 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
jCheckBoxFeatureFlag.setBounds(new java.awt.Rectangle(156,161,100,21)); jCheckBoxFeatureFlag.setBounds(new java.awt.Rectangle(156,161,100,21));
jCheckBoxFeatureFlag.setText("Feature Flag"); jCheckBoxFeatureFlag.setText("Feature Flag");
jCheckBoxFeatureFlag.setPreferredSize(new java.awt.Dimension(21,20)); jCheckBoxFeatureFlag.setPreferredSize(new java.awt.Dimension(21,20));
jCheckBoxFeatureFlag.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent e) {
if (jCheckBoxFeatureFlag.isSelected()) {
jCheckBoxPatchInMod.setSelected(false);
jCheckBoxFixedAtBuild.setSelected(false);
jCheckBoxDyn.setSelected(false);
jCheckBoxDynEx.setSelected(false);
}
}
});
} }
return jCheckBoxFeatureFlag; return jCheckBoxFeatureFlag;
} }
@ -827,6 +852,13 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
jCheckBoxFixedAtBuild.setBounds(new java.awt.Rectangle(312,133,108,20)); jCheckBoxFixedAtBuild.setBounds(new java.awt.Rectangle(312,133,108,20));
jCheckBoxFixedAtBuild.setText("Fixed at Build"); jCheckBoxFixedAtBuild.setText("Fixed at Build");
jCheckBoxFixedAtBuild.setPreferredSize(new java.awt.Dimension(21,20)); jCheckBoxFixedAtBuild.setPreferredSize(new java.awt.Dimension(21,20));
jCheckBoxFixedAtBuild.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent e) {
if (jCheckBoxFixedAtBuild.isSelected()) {
jCheckBoxFeatureFlag.setSelected(false);
}
}
});
} }
return jCheckBoxFixedAtBuild; return jCheckBoxFixedAtBuild;
} }
@ -842,6 +874,13 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
jCheckBoxPatchInMod.setBounds(new java.awt.Rectangle(156,133,154,20)); jCheckBoxPatchInMod.setBounds(new java.awt.Rectangle(156,133,154,20));
jCheckBoxPatchInMod.setText("Patchable in Module"); jCheckBoxPatchInMod.setText("Patchable in Module");
jCheckBoxPatchInMod.setPreferredSize(new java.awt.Dimension(21,20)); jCheckBoxPatchInMod.setPreferredSize(new java.awt.Dimension(21,20));
jCheckBoxPatchInMod.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent e) {
if (jCheckBoxPatchInMod.isSelected()) {
jCheckBoxFeatureFlag.setSelected(false);
}
}
});
} }
return jCheckBoxPatchInMod; return jCheckBoxPatchInMod;
} }
@ -857,6 +896,13 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
jCheckBoxDyn.setBounds(new java.awt.Rectangle(278,161,80,20)); jCheckBoxDyn.setBounds(new java.awt.Rectangle(278,161,80,20));
jCheckBoxDyn.setText("Dynamic"); jCheckBoxDyn.setText("Dynamic");
jCheckBoxDyn.setPreferredSize(new java.awt.Dimension(21,20)); jCheckBoxDyn.setPreferredSize(new java.awt.Dimension(21,20));
jCheckBoxDyn.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent e) {
if (jCheckBoxDyn.isSelected()) {
jCheckBoxFeatureFlag.setSelected(false);
}
}
});
} }
return jCheckBoxDyn; return jCheckBoxDyn;
} }
@ -872,6 +918,13 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
jCheckBoxDynEx.setBounds(new java.awt.Rectangle(371,161,99,20)); jCheckBoxDynEx.setBounds(new java.awt.Rectangle(371,161,99,20));
jCheckBoxDynEx.setText("DynamicEx"); jCheckBoxDynEx.setText("DynamicEx");
jCheckBoxDynEx.setPreferredSize(new java.awt.Dimension(21,20)); jCheckBoxDynEx.setPreferredSize(new java.awt.Dimension(21,20));
jCheckBoxDynEx.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent e) {
if (jCheckBoxDynEx.isSelected()) {
jCheckBoxFeatureFlag.setSelected(false);
}
}
});
} }
return jCheckBoxDynEx; return jCheckBoxDynEx;
} }
@ -897,6 +950,28 @@ public class SpdPcdDefs extends IInternalFrame implements TableModelListener{
return usage.trim(); return usage.trim();
} }
private boolean tokenCNameExisted(String token, String cName) {
Integer inputToken = Integer.decode(token);
for (int i = 0; i < jTable.getRowCount(); ++i) {
if (jTable.getValueAt(i, 0).equals(cName)) {
JOptionPane.showMessageDialog(frame, "C_Name already existed in table.");
return true;
}
if (jTable.getValueAt(i, 1).equals(token)) {
JOptionPane.showMessageDialog(frame, "Token already existed in table.");
return true;
}
Integer tokenValue = Integer.decode(jTable.getValueAt(i, 1)+"");
if (tokenValue.equals(inputToken)) {
JOptionPane.showMessageDialog(frame, "Same token value already existed in table.");
return true;
}
}
return false;
}
private boolean checkValidUsage(boolean[] b) { private boolean checkValidUsage(boolean[] b) {
if (!(b[0] || b[1] || b[2] || b[3] || b[4])){ if (!(b[0] || b[1] || b[2] || b[3] || b[4])){
JOptionPane.showMessageDialog(frame, "You must specify at least one usage."); JOptionPane.showMessageDialog(frame, "You must specify at least one usage.");

View File

@ -109,13 +109,14 @@ public class SpdPpiDecls extends SpdGuidDecls {
sfc.updateSpdPpiDecl(row, name, cName, guid, help, archList, modTypeList, guidTypeList); sfc.updateSpdPpiDecl(row, name, cName, guid, help, archList, modTypeList, guidTypeList);
} }
protected void addRow(String[] row) { protected int addRow(String[] row) {
if (!dataValidation(row)){ if (!dataValidation(row)){
return; return -1;
} }
docConsole.setSaved(false); docConsole.setSaved(false);
sfc.genSpdPpiDeclarations(row[0], row[1], row[2], row[3], stringToVector(row[4]), stringToVector(row[5]), stringToVector(row[6])); sfc.genSpdPpiDeclarations(row[0], row[1], row[2], row[3], stringToVector(row[4]), stringToVector(row[5]), stringToVector(row[6]));
return 0;
} }
protected void removeRow(int i){ protected void removeRow(int i){

View File

@ -110,12 +110,13 @@ public class SpdProtocolDecls extends SpdGuidDecls {
sfc.updateSpdProtocolDecl(row, name, cName, guid, help, archList, modTypeList, guidTypeList); sfc.updateSpdProtocolDecl(row, name, cName, guid, help, archList, modTypeList, guidTypeList);
} }
protected void addRow(String[] row) { protected int addRow(String[] row) {
if (!dataValidation(row)){ if (!dataValidation(row)){
return; return -1;
} }
docConsole.setSaved(false); docConsole.setSaved(false);
sfc.genSpdProtocolDeclarations(row[0], row[1], row[2], row[3], stringToVector(row[4]), stringToVector(row[5]), stringToVector(row[6])); sfc.genSpdProtocolDeclarations(row[0], row[1], row[2], row[3], stringToVector(row[4]), stringToVector(row[5]), stringToVector(row[6]));
return 0;
} }
protected void removeRow(int i){ protected void removeRow(int i){