]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdPlatformDefs.java
1. only show ModuleName, version, PackageName, version, supported Arch, path in table...
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / platform / ui / FpdPlatformDefs.java
index 0f6fb8b69b9bd31c39aae5c4c194246322702fd4..e6f18d17f38045eecdae63b716b2fd30642f3bc9 100644 (file)
@@ -21,6 +21,7 @@ import javax.swing.JButton;
 import javax.swing.ListSelectionModel;\r
 \r
 import org.tianocore.PlatformSurfaceAreaDocument;\r
+import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformType;\r
 import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
 \r
 \r
@@ -28,6 +29,7 @@ import java.awt.FlowLayout;
 \r
 \r
 import javax.swing.JCheckBox;\r
+import javax.swing.JOptionPane;\r
 import javax.swing.JTextField;\r
 import javax.swing.JLabel;\r
 import javax.swing.JScrollPane;\r
@@ -60,7 +62,7 @@ public class FpdPlatformDefs extends IInternalFrame {
     private TargetTableModel imageEntryPointTableModel = null;\r
     \r
     private SkuInfoTableModel skuInfoTableModel = null;\r
-    \r
+    private OpeningPlatformType docConsole = null;\r
     private FpdFileContents ffc = null;\r
     private JPanel jPanel4 = null;\r
     private JPanel jPanel5 = null;\r
@@ -111,6 +113,11 @@ public class FpdPlatformDefs extends IInternalFrame {
         init(ffc);\r
     }\r
     \r
+    public FpdPlatformDefs(OpeningPlatformType opt) {\r
+        this(opt.getXmlFpd());\r
+        docConsole = opt;\r
+    }\r
+    \r
     /**\r
      * This method initializes jPanel  \r
      *         \r
@@ -304,6 +311,9 @@ public class FpdPlatformDefs extends IInternalFrame {
    }\r
    \r
    private void getToolChain(Vector<Object> v) {\r
+       if (docConsole != null){\r
+           docConsole.setSaved(false);\r
+       }\r
        v.removeAllElements();\r
        if (jCheckBox1.isSelected()) {\r
            v.add("IA32");\r
@@ -323,6 +333,7 @@ public class FpdPlatformDefs extends IInternalFrame {
        if (jCheckBox6.isSelected()) {\r
            v.add("PPC");\r
        }\r
+       \r
    }\r
  \r
     /**\r
@@ -397,6 +408,10 @@ public class FpdPlatformDefs extends IInternalFrame {
                 public void itemStateChanged(java.awt.event.ItemEvent e) {\r
                     Vector<Object> v = new Vector<Object>();\r
                     getToolChain(v);\r
+                    if (v.size() == 0) {\r
+                        JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+                        return;\r
+                    }\r
                     ffc.setPlatformDefsSupportedArchs(v);\r
                 }\r
             });\r
@@ -417,6 +432,10 @@ public class FpdPlatformDefs extends IInternalFrame {
                 public void itemStateChanged(java.awt.event.ItemEvent e) {\r
                     Vector<Object> v = new Vector<Object>();\r
                     getToolChain(v);\r
+                    if (v.size() == 0) {\r
+                        JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+                        return;\r
+                    }\r
                     ffc.setPlatformDefsSupportedArchs(v);\r
                 }\r
             });\r
@@ -437,6 +456,10 @@ public class FpdPlatformDefs extends IInternalFrame {
                 public void itemStateChanged(java.awt.event.ItemEvent e) {\r
                     Vector<Object> v = new Vector<Object>();\r
                     getToolChain(v);\r
+                    if (v.size() == 0) {\r
+                        JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+                        return;\r
+                    }\r
                     ffc.setPlatformDefsSupportedArchs(v);\r
                 }\r
             });\r
@@ -469,6 +492,7 @@ public class FpdPlatformDefs extends IInternalFrame {
                         for (int i = 0; i < jTable.getRowCount(); ++i) {\r
                             v.add(m.getValueAt(i, 0));\r
                         }\r
+                        docConsole.setSaved(false);\r
                         ffc.setPlatformDefsBuildTargets(v);\r
                     }\r
                 }\r
@@ -517,11 +541,15 @@ public class FpdPlatformDefs extends IInternalFrame {
         if (jComboBox == null) {\r
             jComboBox = new JComboBox();\r
             jComboBox.setPreferredSize(new Dimension(100, 20));\r
-            jComboBox.addItem("MODULE");\r
             jComboBox.addItem("UNIFIED");\r
+            jComboBox.addItem("MODULE");\r
+            \r
             jComboBox.setSelectedIndex(0);\r
             jComboBox.addItemListener(new java.awt.event.ItemListener() {\r
                 public void itemStateChanged(java.awt.event.ItemEvent e) {\r
+                    if (docConsole != null){\r
+                        docConsole.setSaved(false);\r
+                    }\r
                     ffc.setPlatformDefsInterDir(jComboBox.getSelectedItem()+"");\r
                 }\r
             });\r
@@ -588,6 +616,7 @@ public class FpdPlatformDefs extends IInternalFrame {
                         for (int i = 0; i < jTable.getRowCount(); ++i) {\r
                             v.add(imageEntryPointTableModel.getValueAt(i, 0));\r
                         }\r
+                        docConsole.setSaved(false);\r
                         ffc.setPlatformDefsBuildTargets(v);\r
                     }\r
                 }\r
@@ -662,6 +691,7 @@ public class FpdPlatformDefs extends IInternalFrame {
                         //ToDo Data Validition check.\r
                         String id = m.getValueAt(row, 0)+"";\r
                         String name = m.getValueAt(row, 1)+"";\r
+                        docConsole.setSaved(false);\r
                         ffc.updatePlatformDefsSkuInfo(row, id, name);\r
                     }\r
                 }\r
@@ -684,6 +714,10 @@ public class FpdPlatformDefs extends IInternalFrame {
                 public void itemStateChanged(java.awt.event.ItemEvent e) {\r
                     Vector<Object> v = new Vector<Object>();\r
                     getToolChain(v);\r
+                    if (v.size() == 0) {\r
+                        JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+                        return;\r
+                    }\r
                     ffc.setPlatformDefsSupportedArchs(v);\r
                 }\r
             });\r
@@ -701,10 +735,15 @@ public class FpdPlatformDefs extends IInternalFrame {
             jCheckBox5 = new JCheckBox();\r
             jCheckBox5.setPreferredSize(new java.awt.Dimension(52,20));\r
             jCheckBox5.setText("ARM");\r
+            jCheckBox5.setVisible(false);\r
             jCheckBox5.addItemListener(new java.awt.event.ItemListener() {\r
                 public void itemStateChanged(java.awt.event.ItemEvent e) {\r
                     Vector<Object> v = new Vector<Object>();\r
                     getToolChain(v);\r
+                    if (v.size() == 0) {\r
+                        JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+                        return;\r
+                    }\r
                     ffc.setPlatformDefsSupportedArchs(v);\r
                 }\r
             });\r
@@ -722,10 +761,15 @@ public class FpdPlatformDefs extends IInternalFrame {
             jCheckBox6 = new JCheckBox();\r
             jCheckBox6.setPreferredSize(new Dimension(50, 20));\r
             jCheckBox6.setText("PPC");\r
+            jCheckBox6.setVisible(false);\r
             jCheckBox6.addItemListener(new java.awt.event.ItemListener() {\r
                 public void itemStateChanged(java.awt.event.ItemEvent e) {\r
                     Vector<Object> v = new Vector<Object>();\r
                     getToolChain(v);\r
+                    if (v.size() == 0) {\r
+                        JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+                        return;\r
+                    }\r
                     ffc.setPlatformDefsSupportedArchs(v);\r
                 }\r
             });\r
@@ -771,6 +815,7 @@ public class FpdPlatformDefs extends IInternalFrame {
             jTextField.setPreferredSize(new java.awt.Dimension(300,20));\r
             jTextField.addFocusListener(new java.awt.event.FocusAdapter() {\r
                 public void focusLost(java.awt.event.FocusEvent e) {\r
+                    docConsole.setSaved(false);\r
                     ffc.setPlatformDefsOutputDir(jTextField.getText());\r
                 }\r
             });\r
@@ -852,6 +897,7 @@ public class FpdPlatformDefs extends IInternalFrame {
                     if (jTextField2.getText().length() > 0) {\r
                         String[] row = {jTextField2.getText(), jTextField3.getText()};\r
                         skuInfoTableModel.addRow(row);\r
+                        docConsole.setSaved(false);\r
                         ffc.genPlatformDefsSkuInfo(row[0], row[1]);\r
                     }\r
                 }\r
@@ -878,6 +924,7 @@ public class FpdPlatformDefs extends IInternalFrame {
                     if (jTable2.getSelectedRow() < 1) {\r
                         return;\r
                     }\r
+                    docConsole.setSaved(false);\r
                     ffc.removePlatformDefsSkuInfo(jTable2.getSelectedRow());\r
                     skuInfoTableModel.removeRow(jTable2.getSelectedRow());\r
                 }\r