]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/SelectModuleBelong.java
1. Merge ModuleDefinitions to MsaHeader
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / SelectModuleBelong.java
index 6b1731dc0e46c8dead0dd1c4ef4cb8f35b6ac697..f5ba066b2f651a00a31e95bb534832e2429fbeb8 100644 (file)
  **/\r
 package org.tianocore.frameworkwizard;\r
 \r
+import java.awt.Component;\r
 import java.awt.event.ActionEvent;\r
 import java.io.File;\r
 import java.util.Vector;\r
 \r
+import javax.swing.ButtonGroup;\r
 import javax.swing.JButton;\r
 import javax.swing.JComboBox;\r
 import javax.swing.JFileChooser;\r
@@ -26,9 +28,9 @@ import javax.swing.JLabel;
 import javax.swing.JPanel;\r
 import javax.swing.JTextField;\r
 \r
-import org.tianocore.ModuleSurfaceAreaDocument;\r
 import org.tianocore.MsaHeaderDocument;\r
 import org.tianocore.SpdHeaderDocument;\r
+import org.tianocore.ModuleSurfaceAreaDocument.ModuleSurfaceArea;\r
 import org.tianocore.PackageSurfaceAreaDocument.PackageSurfaceArea;\r
 import org.tianocore.PlatformHeaderDocument.PlatformHeader;\r
 import org.tianocore.PlatformSurfaceAreaDocument.PlatformSurfaceArea;\r
@@ -46,6 +48,7 @@ import org.tianocore.frameworkwizard.packaging.PackageIdentification;
 import org.tianocore.frameworkwizard.platform.PlatformIdentification;\r
 import org.tianocore.frameworkwizard.workspace.Workspace;\r
 import org.tianocore.frameworkwizard.workspace.WorkspaceTools;\r
+import javax.swing.JRadioButton;\r
 \r
 public class SelectModuleBelong extends IDialog {\r
 \r
@@ -97,6 +100,8 @@ public class SelectModuleBelong extends IDialog {
 \r
     private StarLabel jStarLabel5 = null;\r
 \r
+    private ButtonGroup bg = new ButtonGroup();\r
+\r
     private WorkspaceTools wt = new WorkspaceTools();\r
 \r
     private ModuleIdentification mid = null;\r
@@ -104,9 +109,21 @@ public class SelectModuleBelong extends IDialog {
     private PackageIdentification pid = null;\r
 \r
     private PlatformIdentification fid = null;\r
+    \r
+    private ModuleSurfaceArea msa = null;\r
+    \r
+    private PackageSurfaceArea spd = null;\r
+    \r
+    private PlatformSurfaceArea fpd = null;\r
 \r
     private int mode = -1;\r
 \r
+    private JLabel jLabelIsLibrary = null;\r
+\r
+    private JRadioButton jRadioButtonYes = null;\r
+\r
+    private JRadioButton jRadioButtonNo = null;\r
+\r
     /**\r
      * This method initializes jComboBoxExistingPackage        \r
      *         \r
@@ -128,7 +145,7 @@ public class SelectModuleBelong extends IDialog {
     private JButton getJButtonOk() {\r
         if (jButtonOk == null) {\r
             jButtonOk = new JButton();\r
-            jButtonOk.setBounds(new java.awt.Rectangle(310, 140, 80, 20));\r
+            jButtonOk.setBounds(new java.awt.Rectangle(310, 165, 80, 20));\r
             jButtonOk.setText("Ok");\r
             jButtonOk.addActionListener(this);\r
         }\r
@@ -143,7 +160,7 @@ public class SelectModuleBelong extends IDialog {
     private JButton getJButtonCancel() {\r
         if (jButtonCancel == null) {\r
             jButtonCancel = new JButton();\r
-            jButtonCancel.setBounds(new java.awt.Rectangle(395, 140, 80, 20));\r
+            jButtonCancel.setBounds(new java.awt.Rectangle(395, 165, 80, 20));\r
             jButtonCancel.setText("Cancel");\r
             jButtonCancel.addActionListener(this);\r
         }\r
@@ -158,7 +175,7 @@ public class SelectModuleBelong extends IDialog {
     private JTextField getJTextFieldFilePath() {\r
         if (jTextFieldFilePath == null) {\r
             jTextFieldFilePath = new JTextField();\r
-            jTextFieldFilePath.setBounds(new java.awt.Rectangle(140, 35, 250, 20));\r
+            jTextFieldFilePath.setBounds(new java.awt.Rectangle(140, 60, 250, 20));\r
         }\r
         return jTextFieldFilePath;\r
     }\r
@@ -171,7 +188,7 @@ public class SelectModuleBelong extends IDialog {
     private JButton getJButtonBrowse() {\r
         if (jButtonBrowse == null) {\r
             jButtonBrowse = new JButton();\r
-            jButtonBrowse.setBounds(new java.awt.Rectangle(395, 35, 85, 20));\r
+            jButtonBrowse.setBounds(new java.awt.Rectangle(395, 60, 85, 20));\r
             jButtonBrowse.setText("Browse");\r
             jButtonBrowse.addActionListener(this);\r
         }\r
@@ -186,7 +203,7 @@ public class SelectModuleBelong extends IDialog {
     private JTextField getJTextFieldName() {\r
         if (jTextFieldName == null) {\r
             jTextFieldName = new JTextField();\r
-            jTextFieldName.setBounds(new java.awt.Rectangle(140, 60, 340, 20));\r
+            jTextFieldName.setBounds(new java.awt.Rectangle(140, 85, 340, 20));\r
         }\r
         return jTextFieldName;\r
     }\r
@@ -199,7 +216,7 @@ public class SelectModuleBelong extends IDialog {
     private JTextField getJTextFieldGuid() {\r
         if (jTextFieldGuid == null) {\r
             jTextFieldGuid = new JTextField();\r
-            jTextFieldGuid.setBounds(new java.awt.Rectangle(140, 85, 250, 20));\r
+            jTextFieldGuid.setBounds(new java.awt.Rectangle(140, 110, 250, 20));\r
         }\r
         return jTextFieldGuid;\r
     }\r
@@ -212,7 +229,7 @@ public class SelectModuleBelong extends IDialog {
     private JButton getJButtonGen() {\r
         if (jButtonGen == null) {\r
             jButtonGen = new JButton();\r
-            jButtonGen.setBounds(new java.awt.Rectangle(395, 85, 85, 20));\r
+            jButtonGen.setBounds(new java.awt.Rectangle(395, 110, 85, 20));\r
             jButtonGen.setText("GEN");\r
             jButtonGen.addActionListener(this);\r
         }\r
@@ -227,11 +244,41 @@ public class SelectModuleBelong extends IDialog {
     private JTextField getJTextFieldVersion() {\r
         if (jTextFieldVersion == null) {\r
             jTextFieldVersion = new JTextField();\r
-            jTextFieldVersion.setBounds(new java.awt.Rectangle(140, 110, 340, 20));\r
+            jTextFieldVersion.setBounds(new java.awt.Rectangle(140, 135, 340, 20));\r
         }\r
         return jTextFieldVersion;\r
     }\r
 \r
+    /**\r
+     * This method initializes jRadioButtonYes \r
+     *         \r
+     * @return javax.swing.JRadioButton        \r
+     */\r
+    private JRadioButton getJRadioButtonYes() {\r
+        if (jRadioButtonYes == null) {\r
+            jRadioButtonYes = new JRadioButton();\r
+            jRadioButtonYes.setBounds(new java.awt.Rectangle(140, 35, 100, 20));\r
+            jRadioButtonYes.setSelected(false);\r
+            jRadioButtonYes.setText("Yes");\r
+        }\r
+        return jRadioButtonYes;\r
+    }\r
+\r
+    /**\r
+     * This method initializes jRadioButtonNo  \r
+     *         \r
+     * @return javax.swing.JRadioButton        \r
+     */\r
+    private JRadioButton getJRadioButtonNo() {\r
+        if (jRadioButtonNo == null) {\r
+            jRadioButtonNo = new JRadioButton();\r
+            jRadioButtonNo.setBounds(new java.awt.Rectangle(300, 35, 110, 20));\r
+            jRadioButtonNo.setSelected(true);\r
+            jRadioButtonNo.setText("No");\r
+        }\r
+        return jRadioButtonNo;\r
+    }\r
+\r
     /**\r
      * @param args\r
      */\r
@@ -260,6 +307,23 @@ public class SelectModuleBelong extends IDialog {
             this.jStarLabel1.setVisible(false);\r
             this.jLabelPackage.setVisible(false);\r
             this.jComboBoxExistingPackage.setVisible(false);\r
+            this.jLabelIsLibrary.setVisible(false);\r
+            this.jRadioButtonYes.setVisible(false);\r
+            this.jRadioButtonNo.setVisible(false);\r
+            upLocation(this.jStarLabel2, 50);\r
+            upLocation(this.jStarLabel3, 50);\r
+            upLocation(this.jStarLabel4, 50);\r
+            upLocation(this.jStarLabel5, 50);\r
+            upLocation(this.jLabelFilePath, 50);\r
+            upLocation(this.jLabelName, 50);\r
+            upLocation(this.jLabelGuid, 50);\r
+            upLocation(this.jLabelVersion, 50);\r
+            upLocation(this.jTextFieldFilePath, 50);\r
+            upLocation(this.jTextFieldName, 50);\r
+            upLocation(this.jTextFieldGuid, 50);\r
+            upLocation(this.jTextFieldVersion, 50);\r
+            upLocation(this.jButtonBrowse, 50);\r
+            upLocation(this.jButtonGen, 50);\r
         }\r
     }\r
 \r
@@ -269,9 +333,9 @@ public class SelectModuleBelong extends IDialog {
      * @return void\r
      */\r
     private void init() {\r
-        this.setSize(500, 200);\r
+        this.setSize(500, 230);\r
         this.setContentPane(getJContentPane());\r
-        this.setTitle("New Module");\r
+        this.setTitle("New");\r
         this.centerWindow();\r
     }\r
 \r
@@ -282,24 +346,27 @@ public class SelectModuleBelong extends IDialog {
      */\r
     private JPanel getJContentPane() {\r
         if (jContentPane == null) {\r
+            jLabelIsLibrary = new JLabel();\r
+            jLabelIsLibrary.setBounds(new java.awt.Rectangle(15, 35, 120, 20));\r
+            jLabelIsLibrary.setText("Is a Library");\r
             jLabelVersion = new JLabel();\r
-            jLabelVersion.setBounds(new java.awt.Rectangle(15, 110, 120, 20));\r
+            jLabelVersion.setBounds(new java.awt.Rectangle(15, 135, 120, 20));\r
             jLabelVersion.setText("Version");\r
             jLabelGuid = new JLabel();\r
-            jLabelGuid.setBounds(new java.awt.Rectangle(15, 85, 120, 20));\r
+            jLabelGuid.setBounds(new java.awt.Rectangle(15, 110, 120, 20));\r
             jLabelGuid.setText("Guid");\r
             jLabelName = new JLabel();\r
-            jLabelName.setBounds(new java.awt.Rectangle(15, 60, 120, 20));\r
+            jLabelName.setBounds(new java.awt.Rectangle(15, 85, 120, 20));\r
             jLabelName.setText("Name");\r
             jLabelFilePath = new JLabel();\r
-            jLabelFilePath.setBounds(new java.awt.Rectangle(15, 35, 120, 20));\r
+            jLabelFilePath.setBounds(new java.awt.Rectangle(15, 60, 120, 20));\r
             jLabelFilePath.setText("File Path");\r
             jLabelPackage = new JLabel();\r
             jLabelPackage.setBounds(new java.awt.Rectangle(15, 10, 120, 20));\r
             jLabelPackage.setText("Choose Package");\r
             jContentPane = new JPanel();\r
             jContentPane.setLayout(null);\r
-            jContentPane.setSize(new java.awt.Dimension(490, 175));\r
+            jContentPane.setSize(new java.awt.Dimension(490, 198));\r
             jContentPane.add(getJComboBoxExistingPackage(), null);\r
             jContentPane.add(getJButtonOk(), null);\r
             jContentPane.add(getJButtonCancel(), null);\r
@@ -318,18 +385,23 @@ public class SelectModuleBelong extends IDialog {
             jStarLabel1 = new StarLabel();\r
             jStarLabel1.setLocation(new java.awt.Point(0, 10));\r
             jStarLabel2 = new StarLabel();\r
-            jStarLabel2.setLocation(new java.awt.Point(0, 35));\r
+            jStarLabel2.setLocation(new java.awt.Point(0, 60));\r
             jStarLabel3 = new StarLabel();\r
-            jStarLabel3.setLocation(new java.awt.Point(0, 60));\r
+            jStarLabel3.setLocation(new java.awt.Point(0, 85));\r
             jStarLabel4 = new StarLabel();\r
-            jStarLabel4.setLocation(new java.awt.Point(0, 85));\r
+            jStarLabel4.setLocation(new java.awt.Point(0, 110));\r
             jStarLabel5 = new StarLabel();\r
-            jStarLabel5.setLocation(new java.awt.Point(0, 110));\r
+            jStarLabel5.setLocation(new java.awt.Point(0, 135));\r
             jContentPane.add(jStarLabel1, null);\r
             jContentPane.add(jStarLabel2, null);\r
             jContentPane.add(jStarLabel3, null);\r
             jContentPane.add(jStarLabel4, null);\r
             jContentPane.add(jStarLabel5, null);\r
+            jContentPane.add(jLabelIsLibrary, null);\r
+            jContentPane.add(getJRadioButtonYes(), null);\r
+            jContentPane.add(getJRadioButtonNo(), null);\r
+            bg.add(getJRadioButtonNo());\r
+            bg.add(getJRadioButtonYes());\r
         }\r
         return jContentPane;\r
     }\r
@@ -406,19 +478,19 @@ public class SelectModuleBelong extends IDialog {
         // Check if all required fields are not empty\r
         //\r
         if (isEmpty(this.jTextFieldFilePath.getText())) {\r
-            Log.err("File Path couldn't be empty");\r
+            Log.wrn("New File", "File Path couldn't be empty");\r
             return false;\r
         }\r
         if (isEmpty(this.jTextFieldName.getText())) {\r
-            Log.err("Name couldn't be empty");\r
+            Log.wrn("New File", "Name couldn't be empty");\r
             return false;\r
         }\r
         if (isEmpty(this.jTextFieldGuid.getText())) {\r
-            Log.err("Guid Value couldn't be empty");\r
+            Log.wrn("New File", "Guid Value couldn't be empty");\r
             return false;\r
         }\r
         if (isEmpty(this.jTextFieldVersion.getText())) {\r
-            Log.err("Version couldn't be empty");\r
+            Log.wrn("New File", "Version couldn't be empty");\r
             return false;\r
         }\r
 \r
@@ -426,11 +498,11 @@ public class SelectModuleBelong extends IDialog {
         // Check if all fields have correct data types \r
         //\r
         if (!DataValidation.isBaseName(this.jTextFieldName.getText())) {\r
-            Log.err("Incorrect data type for Base Name");\r
+            Log.wrn("New File", "Incorrect data type for Base Name");\r
             return false;\r
         }\r
         if (!DataValidation.isGuid((this.jTextFieldGuid).getText())) {\r
-            Log.err("Incorrect data type for Guid");\r
+            Log.wrn("New File", "Incorrect data type for Guid");\r
             return false;\r
         }\r
 \r
@@ -444,7 +516,7 @@ public class SelectModuleBelong extends IDialog {
 \r
             for (int index = 0; index < msaFile.size(); index++) {\r
                 if (msaFile.elementAt(index).equals(modulePath)) {\r
-                    Log.err("This module is already existing in selected package");\r
+                    Log.wrn("New File", "This module is already existing in selected package");\r
                     return false;\r
                 }\r
             }\r
@@ -459,7 +531,7 @@ public class SelectModuleBelong extends IDialog {
             if (vPackageList != null && vPackageList.size() > 0) {\r
                 for (int index = 0; index < vPackageList.size(); index++) {\r
                     if (vPackageList.get(index).getPath().equals(path)) {\r
-                        Log.err("This package is already existing in database");\r
+                        Log.wrn("New File", "This package is already existing in database");\r
                         return false;\r
                     }\r
                 }\r
@@ -475,7 +547,7 @@ public class SelectModuleBelong extends IDialog {
             if (vPlatfromList != null && vPlatfromList.size() > 0) {\r
                 for (int index = 0; index < vPlatfromList.size(); index++) {\r
                     if (vPlatfromList.get(index).getPath().equals(path)) {\r
-                        Log.err("This platform is already existing in database");\r
+                        Log.wrn("New File", "This platform is already existing in database");\r
                         return false;\r
                     }\r
                 }\r
@@ -506,7 +578,7 @@ public class SelectModuleBelong extends IDialog {
      \r
      **/\r
     private void saveModule() {\r
-        ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = null;\r
+        msa = null;\r
         String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
 \r
         //\r
@@ -515,7 +587,7 @@ public class SelectModuleBelong extends IDialog {
         try {\r
             MsaHeaderDocument.MsaHeader msaHeader = null;\r
 \r
-            msa = ModuleSurfaceAreaDocument.ModuleSurfaceArea.Factory.newInstance();\r
+            msa = ModuleSurfaceArea.Factory.newInstance();\r
             msaHeader = MsaHeaderDocument.MsaHeader.Factory.newInstance();\r
 \r
             msaHeader.setModuleName(this.jTextFieldName.getText());\r
@@ -533,8 +605,8 @@ public class SelectModuleBelong extends IDialog {
         //\r
         try {\r
             SaveFile.saveMsaFile(path, msa);\r
-\r
         } catch (Exception e) {\r
+            Log.wrn("Save Module to file system", e.getMessage());\r
             Log.err("Save Module to file system", e.getMessage());\r
             return;\r
         }\r
@@ -543,7 +615,7 @@ public class SelectModuleBelong extends IDialog {
         // Save to identification\r
         //\r
         mid = new ModuleIdentification(this.jTextFieldName.getText(), this.jTextFieldGuid.getText(),\r
-                                       this.jTextFieldVersion.getText(), path);\r
+                                       this.jTextFieldVersion.getText(), path, jRadioButtonYes.isSelected());\r
         mid.setPackageId(packages.elementAt(this.jComboBoxExistingPackage.getSelectedIndex()));\r
     }\r
 \r
@@ -552,7 +624,7 @@ public class SelectModuleBelong extends IDialog {
      \r
      **/\r
     private void savePackage() {\r
-        PackageSurfaceArea spd = null;\r
+        spd = null;\r
         String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
 \r
         //\r
@@ -570,7 +642,7 @@ public class SelectModuleBelong extends IDialog {
 \r
             spd.setSpdHeader(spdHeader);\r
         } catch (Exception e) {\r
-            Log.err("Save PackageSurfaceArea Document", e.getMessage());\r
+            Log.wrn("Save PackageSurfaceArea Document", e.getMessage());\r
             return;\r
         }\r
 \r
@@ -581,6 +653,7 @@ public class SelectModuleBelong extends IDialog {
             SaveFile.saveSpdFile(path, spd);\r
 \r
         } catch (Exception e) {\r
+            Log.wrn("Save Package to file system", e.getMessage());\r
             Log.err("Save Package to file system", e.getMessage());\r
             return;\r
         }\r
@@ -597,7 +670,7 @@ public class SelectModuleBelong extends IDialog {
      \r
      **/\r
     private void savePlatform() {\r
-        PlatformSurfaceArea fpd = null;\r
+        fpd = null;\r
         String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
 \r
         //\r
@@ -615,7 +688,7 @@ public class SelectModuleBelong extends IDialog {
 \r
             fpd.setPlatformHeader(fpdHeader);\r
         } catch (Exception e) {\r
-            Log.err("Save FrameworkPlatformDescription Document", e.getMessage());\r
+            Log.wrn("Save FrameworkPlatformDescription Document", e.getMessage());\r
             return;\r
         }\r
 \r
@@ -626,6 +699,7 @@ public class SelectModuleBelong extends IDialog {
             SaveFile.saveFpdFile(path, fpd);\r
 \r
         } catch (Exception e) {\r
+            Log.wrn("Save Platform to file system", e.getMessage());\r
             Log.err("Save Platform to file system", e.getMessage());\r
             return;\r
         }\r
@@ -641,23 +715,27 @@ public class SelectModuleBelong extends IDialog {
         return mid;\r
     }\r
 \r
-    public void setMid(ModuleIdentification mid) {\r
-        this.mid = mid;\r
-    }\r
-\r
     public PlatformIdentification getFid() {\r
         return fid;\r
     }\r
 \r
-    public void setFid(PlatformIdentification fid) {\r
-        this.fid = fid;\r
-    }\r
-\r
     public PackageIdentification getPid() {\r
         return pid;\r
     }\r
 \r
-    public void setPid(PackageIdentification pid) {\r
-        this.pid = pid;\r
+    private void upLocation(Component c, int size) {\r
+        c.setLocation(c.getLocation().x, c.getLocation().y - size);\r
+    }\r
+\r
+    public PlatformSurfaceArea getFpd() {\r
+        return fpd;\r
+    }\r
+\r
+    public ModuleSurfaceArea getMsa() {\r
+        return msa;\r
+    }\r
+\r
+    public PackageSurfaceArea getSpd() {\r
+        return spd;\r
     }\r
 }\r