]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Add Binary or Source type check before providing PCD item choices when editing platfo...
authorjlin16 <jlin16@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 14 Sep 2006 07:06:02 +0000 (07:06 +0000)
committerjlin16 <jlin16@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 14 Sep 2006 07:06:02 +0000 (07:06 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1533 6f19259b-4bc3-4df7-8a09-765794883524

Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdFileContents.java
Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdModuleSA.java

index b54715b877b59818e794350476983db9db1bc764..946a6b64d9d8a4fea1d1d22d6eda493c4062bca6 100644 (file)
@@ -622,6 +622,7 @@ public class FpdFileContents {
                 //\r
                 sa[0] = spdPcd.getHelpText() + msaPcd.getHelpText();\r
                 sa[1] = msaPcd.getPcdItemType()+"";\r
+                sa[2] = msa.getModuleDefinitions().getBinaryModule()+"";\r
                 return true;\r
             }\r
             \r
index 8cf23681c1e72421eefe98130e31dba40ceb501e..e82ed2df8bfca8e662dabd0c9cafa92aef4af879 100644 (file)
@@ -573,17 +573,20 @@ public class FpdModuleSA extends JDialog implements ActionListener {
                         String cName = model.getValueAt(selectedRow, 0)+"";\r
                         String tsGuid = model.getValueAt(selectedRow, 1)+"";\r
                         String itemType = model.getValueAt(selectedRow, 2)+"";\r
-                        String[] pcdInfo = {"", ""};\r
+                        //\r
+                        // array for pcd related information: helpText, itemType, moduleType.\r
+                        //\r
+                        String[] pcdInfo = {"", "", ""};\r
                         getPcdInfo(cName, tsGuid, pcdInfo);\r
                         jTextAreaPcdHelp.setText(pcdInfo[0]);\r
-                        initComboBox(pcdInfo[1]);\r
+                        initComboBox(pcdInfo[1], pcdInfo[2]);\r
                         jComboBoxItemType.setSelectedItem(itemType);\r
                         jTextFieldMaxDatumSize.setEnabled(true);\r
                         jTextFieldMaxDatumSize.setVisible(true);\r
                         jTextFieldMaxDatumSize.setText(jTablePcd.getValueAt(selectedRow, 4)+"");\r
                         jTextFieldPcdDefault.setEnabled(true);\r
                         jTextFieldPcdDefault.setText(jTablePcd.getValueAt(selectedRow, 6)+"");\r
-                        if (jTablePcd.getValueAt(selectedRow, 5).equals("VOID*")) {\r
+                        if (model.getValueAt(selectedRow, 5).equals("VOID*")) {\r
                             if (pcdInfo[1].equals("FEATURE_FLAG")) {\r
                                 jTextFieldMaxDatumSize.setVisible(false);\r
                             }\r
@@ -609,7 +612,7 @@ public class FpdModuleSA extends JDialog implements ActionListener {
                             if (model.getValueAt(selectedRow, 2).equals("FEATURE_FLAG")){\r
                                 jTextFieldPcdDefault.setVisible(false);\r
                                 jComboBoxFeatureFlagValue.setVisible(true);\r
-                                jComboBoxFeatureFlagValue.setSelectedItem(jTablePcd.getValueAt(selectedRow, 6)+"");\r
+                                jComboBoxFeatureFlagValue.setSelectedItem(model.getValueAt(selectedRow, 6)+"");\r
                             }\r
                             else{\r
                                 jTextFieldPcdDefault.setVisible(true);\r
@@ -630,10 +633,10 @@ public class FpdModuleSA extends JDialog implements ActionListener {
         return jTablePcd;\r
     }\r
     \r
-    private void initComboBox(String originalType) {\r
+    private void initComboBox(String originalType, String mType) {\r
         jComboBoxItemType.removeAllItems();\r
         jComboBoxItemType.addItem(originalType);\r
-        if (originalType.equals("PATCHABLE_IN_MODULE")) {\r
+        if (originalType.equals("PATCHABLE_IN_MODULE") && mType.equalsIgnoreCase("false")) {\r
             jComboBoxItemType.addItem("FIXED_AT_BUILD");\r
         }\r
         if (originalType.equals("DYNAMIC")) {\r
@@ -1453,14 +1456,14 @@ private JComboBox getJComboBoxItemType() {
                 }\r
                 if (jComboBoxItemType.getItemCount() == 3) {\r
                     if (!jComboBoxItemType.getSelectedItem().equals("DYNAMIC")) {\r
-                        pcdDynamicToNonDynamic(model.getValueAt(row, 0)+"", model.getValueAt(row, 1)+"");\r
+                        \r
                         if (jComboBoxItemType.getSelectedItem().equals("FIXED_AT_BUILD")) {\r
                             jTextFieldPcdDefault.setText("");\r
                             jTextFieldPcdDefault.setEnabled(true);\r
                         }\r
                     }\r
                     else{\r
-                        pcdNonDynamicToDynamic(model.getValueAt(row, 0)+"", model.getValueAt(row, 1)+"");\r
+                        \r
                     }\r
                 }\r
             }\r
@@ -1555,9 +1558,17 @@ private JButton getJButtonUpdatePcd() {
                     return;\r
                 }\r
                 docConsole.setSaved(false);\r
-                model.setValueAt(jComboBoxItemType.getSelectedItem(), row, 2);\r
+                String oldItemType = model.getValueAt(row, 2)+"";\r
+                String newItemType = jComboBoxItemType.getSelectedItem()+"";\r
+                model.setValueAt(newItemType, row, 2);\r
                 model.setValueAt(jTextFieldMaxDatumSize.getText(), row, 4);\r
                 model.setValueAt(jTextFieldPcdDefault.isVisible()? jTextFieldPcdDefault.getText():jComboBoxFeatureFlagValue.getSelectedItem(), row, 6);\r
+                if (oldItemType.equals("DYNAMIC") && !newItemType.equals("DYNAMIC")) {\r
+                    pcdDynamicToNonDynamic(model.getValueAt(row, 0)+"", model.getValueAt(row, 1)+"");\r
+                }\r
+                if (!oldItemType.equals("DYNAMIC") && newItemType.equals("DYNAMIC")) {\r
+                    pcdNonDynamicToDynamic(model.getValueAt(row, 0)+"", model.getValueAt(row, 1)+"");\r
+                }\r
                 ffc.updatePcdData(moduleKey, model.getValueAt(row, 0)+"", model.getValueAt(row, 1)+"", model.getValueAt(row, 2)+"", model.getValueAt(row, 4)+"", model.getValueAt(row, 6)+"");\r
             }\r
         });\r