]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/packaging/ui/SpdHeader.java
1. change SPD Pcd editor title to "PCD Declarations".
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / packaging / ui / SpdHeader.java
index 0d482e83e39ecae910935b954cbe23474c672798..046fe8cb6c430e37d489df7cc47f9a3740d53f3a 100644 (file)
 \r
 package org.tianocore.frameworkwizard.packaging.ui;\r
 \r
-import java.awt.Rectangle;\r
 import java.awt.event.ActionEvent;\r
 import java.awt.event.ComponentEvent;\r
 import java.awt.event.FocusAdapter;\r
 import java.awt.event.FocusEvent;\r
 \r
 import javax.swing.JButton;\r
+import javax.swing.JFrame;\r
 import javax.swing.JLabel;\r
+import javax.swing.JOptionPane;\r
 import javax.swing.JPanel;\r
 import javax.swing.JScrollPane;\r
 import javax.swing.JTextArea;\r
 import javax.swing.JTextField;\r
 \r
+\r
 import org.tianocore.PackageSurfaceAreaDocument;\r
 import org.tianocore.frameworkwizard.common.DataValidation;\r
 import org.tianocore.frameworkwizard.common.Log;\r
 import org.tianocore.frameworkwizard.common.Tools;\r
+import org.tianocore.frameworkwizard.common.Identifications.OpeningPackageType;\r
 import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
 import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
 \r
@@ -52,6 +55,8 @@ public class SpdHeader extends IInternalFrame {
     //\r
     //Define class members\r
     //\r
+    static JFrame frame;\r
+    \r
     private JPanel jContentPane = null;\r
 \r
     private JLabel jLabelBaseName = null;\r
@@ -111,6 +116,8 @@ public class SpdHeader extends IInternalFrame {
     private StarLabel jStarLabel9 = null;\r
     \r
     private SpdFileContents sfc = null;\r
+    \r
+    private OpeningPackageType docConsole = null;\r
 \r
     private JTextField jTextFieldCopyright = null;\r
     \r
@@ -133,6 +140,11 @@ public class SpdHeader extends IInternalFrame {
             jTextFieldBaseName.setPreferredSize(new java.awt.Dimension(320,20));\r
             jTextFieldBaseName.addFocusListener(new FocusAdapter(){\r
                 public void focusLost(FocusEvent e){\r
+                    if (!DataValidation.isUiNameType(jTextFieldBaseName.getText())) {\r
+                        JOptionPane.showMessageDialog(frame, "Package Name is NOT UiNameType.");\r
+                        return;\r
+                    }\r
+                    docConsole.setSaved(false);\r
                     sfc.setSpdHdrPkgName(jTextFieldBaseName.getText());\r
                 }\r
             });\r
@@ -153,6 +165,11 @@ public class SpdHeader extends IInternalFrame {
             jTextFieldGuid.setPreferredSize(new java.awt.Dimension(250,20));\r
             jTextFieldGuid.addFocusListener(new FocusAdapter(){\r
                 public void focusLost(FocusEvent e){\r
+                    if (!DataValidation.isGuid(jTextFieldGuid.getText())) {\r
+                        JOptionPane.showMessageDialog(frame, "Guid is NOT GuidType.");\r
+                        return;\r
+                    }\r
+                    docConsole.setSaved(false);\r
                     sfc.setSpdHdrGuidValue(jTextFieldGuid.getText());\r
                 }\r
             });\r
@@ -173,6 +190,11 @@ public class SpdHeader extends IInternalFrame {
             jTextFieldVersion.setPreferredSize(new java.awt.Dimension(320,20));\r
             jTextFieldVersion.addFocusListener(new FocusAdapter(){\r
                public void focusLost(FocusEvent e){\r
+                   if (!DataValidation.isVersion(jTextFieldVersion.getText())) {\r
+                       JOptionPane.showMessageDialog(frame, "Version is NOT version type.");\r
+                       return;\r
+                   }\r
+                   docConsole.setSaved(false);\r
                    sfc.setSpdHdrVer(jTextFieldVersion.getText());\r
                } \r
             });\r
@@ -206,10 +228,15 @@ public class SpdHeader extends IInternalFrame {
         if (jTextAreaLicense == null) {\r
             jTextAreaLicense = new JTextArea();\r
             jTextAreaLicense.setText("");\r
-            jTextAreaLicense.setPreferredSize(new java.awt.Dimension(317,77));\r
+//            jTextAreaLicense.setPreferredSize(new java.awt.Dimension(317,77));\r
             jTextAreaLicense.setLineWrap(true);\r
             jTextAreaLicense.addFocusListener(new FocusAdapter(){\r
                 public void focusLost(FocusEvent e){\r
+                    if (jTextAreaLicense.getText().length() == 0) {\r
+                        JOptionPane.showMessageDialog(frame, "License contents could NOT be empty.");\r
+                        return;\r
+                    }\r
+                    docConsole.setSaved(false);\r
                     sfc.setSpdHdrLicense(jTextAreaLicense.getText());\r
                 }\r
             });\r
@@ -227,9 +254,14 @@ public class SpdHeader extends IInternalFrame {
         if (jTextAreaDescription == null) {\r
             jTextAreaDescription = new JTextArea();\r
             jTextAreaDescription.setLineWrap(true);\r
-            jTextAreaDescription.setPreferredSize(new java.awt.Dimension(317,77));\r
+//            jTextAreaDescription.setPreferredSize(new java.awt.Dimension(317,77));\r
             jTextAreaDescription.addFocusListener(new FocusAdapter(){\r
                 public void focusLost(FocusEvent e){\r
+                    if (jTextAreaDescription.getText().length() == 0) {\r
+                        JOptionPane.showMessageDialog(frame, "Description contents could NOT be empty.");\r
+                        return;\r
+                    }\r
+                    docConsole.setSaved(false);\r
                     sfc.setSpdHdrDescription(jTextAreaDescription.getText());\r
                 }\r
             });\r
@@ -246,7 +278,7 @@ public class SpdHeader extends IInternalFrame {
     private JTextField getJTextFieldSpecification() {\r
         if (jTextFieldSpecification == null) {\r
             jTextFieldSpecification = new JTextField();\r
-            jTextFieldSpecification.setBounds(new java.awt.Rectangle(160, 305, 320, 20));\r
+            jTextFieldSpecification.setBounds(new java.awt.Rectangle(161,330,320,20));\r
             jTextFieldSpecification.setEditable(false);\r
             jTextFieldSpecification.setPreferredSize(new java.awt.Dimension(320,20));\r
             jTextFieldSpecification.addFocusListener(new FocusAdapter(){\r
@@ -301,7 +333,7 @@ public class SpdHeader extends IInternalFrame {
     private JScrollPane getJScrollPaneLicense() {\r
         if (jScrollPaneLicense == null) {\r
             jScrollPaneLicense = new JScrollPane();\r
-            jScrollPaneLicense.setBounds(new java.awt.Rectangle(160, 85, 320, 80));\r
+            jScrollPaneLicense.setBounds(new java.awt.Rectangle(161,108,320,80));\r
             jScrollPaneLicense.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
             jScrollPaneLicense.setPreferredSize(new java.awt.Dimension(320,80));\r
             jScrollPaneLicense.setViewportView(getJTextAreaLicense());\r
@@ -318,7 +350,7 @@ public class SpdHeader extends IInternalFrame {
     private JScrollPane getJScrollPaneDescription() {\r
         if (jScrollPaneDescription == null) {\r
             jScrollPaneDescription = new JScrollPane();\r
-            jScrollPaneDescription.setBounds(new java.awt.Rectangle(160, 220, 320, 80));\r
+            jScrollPaneDescription.setBounds(new java.awt.Rectangle(160,244,320,80));\r
             jScrollPaneDescription.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
             jScrollPaneDescription.setViewportView(getJTextAreaDescription());\r
         }\r
@@ -334,10 +366,15 @@ public class SpdHeader extends IInternalFrame {
     private JTextField getJTextFieldAbstract() {\r
         if (jTextFieldAbstract == null) {\r
             jTextFieldAbstract = new JTextField();\r
-            jTextFieldAbstract.setBounds(new java.awt.Rectangle(160,195,320,20));\r
+            jTextFieldAbstract.setBounds(new java.awt.Rectangle(161,220,320,20));\r
             jTextFieldAbstract.setPreferredSize(new java.awt.Dimension(320, 20));\r
             jTextFieldAbstract.addFocusListener(new FocusAdapter(){\r
                 public void focusLost(FocusEvent e){\r
+                    if (!DataValidation.isAbstract(jTextFieldAbstract.getText())) {\r
+                        JOptionPane.showMessageDialog(frame, "Abstract could NOT be empty.");\r
+                        return;\r
+                    }\r
+                    docConsole.setSaved(false);\r
                     sfc.setSpdHdrAbs(jTextFieldAbstract.getText());\r
                 }\r
             });\r
@@ -354,10 +391,15 @@ public class SpdHeader extends IInternalFrame {
     private JTextField getJTextFieldCopyright() {\r
         if (jTextFieldCopyright == null) {\r
             jTextFieldCopyright = new JTextField();\r
-            jTextFieldCopyright.setBounds(new java.awt.Rectangle(160,330,320, 20));\r
+            jTextFieldCopyright.setBounds(new java.awt.Rectangle(160,86,320,20));\r
             jTextFieldCopyright.setPreferredSize(new java.awt.Dimension(320,20));\r
             jTextFieldCopyright.addFocusListener(new FocusAdapter(){\r
                public void focusLost(FocusEvent e){\r
+                   if (!DataValidation.isCopyright(jTextFieldCopyright.getText())) {\r
+                       JOptionPane.showMessageDialog(frame, "Copyright contents could not be empty.");\r
+                       return;\r
+                   }\r
+                   docConsole.setSaved(false);\r
                    sfc.setSpdHdrCopyright(jTextFieldCopyright.getText());\r
                } \r
             });\r
@@ -373,12 +415,13 @@ public class SpdHeader extends IInternalFrame {
     private JTextField getJTextField() {\r
         if (jTextField == null) {\r
             jTextField = new JTextField();\r
-            jTextField.setBounds(new java.awt.Rectangle(160,170,320,20));\r
+            jTextField.setBounds(new java.awt.Rectangle(161,195,320,20));\r
             jTextField.setPreferredSize(new java.awt.Dimension(320, 20));\r
             jTextField.addFocusListener(new FocusAdapter(){\r
                public void focusLost(FocusEvent e){\r
                    sfc.setSpdHdrLicense(jTextAreaLicense.getText());\r
                    sfc.setSpdHdrUrl(jTextField.getText());\r
+                   docConsole.setSaved(false);\r
                } \r
             });\r
         }\r
@@ -410,6 +453,11 @@ public class SpdHeader extends IInternalFrame {
         sfc = new SpdFileContents(inPsa);\r
         init(sfc);\r
     }\r
+    \r
+    public SpdHeader(OpeningPackageType opt){\r
+        this(opt.getXmlSpd());\r
+        docConsole = opt;\r
+    }\r
     /**\r
      This method initializes this\r
      \r
@@ -455,7 +503,15 @@ public class SpdHeader extends IInternalFrame {
             if (sfc.getSpdHdrSpec() != null) {\r
                 jTextFieldSpecification.setText(sfc.getSpdHdrSpec());\r
             }\r
-\r
+            sfc.setSpdHdrSpec(jTextFieldSpecification.getText());\r
+            \r
+            if (!sfc.getSpdPkgDefsRdOnly().equals("true")) {\r
+                sfc.setSpdPkgDefsRdOnly("false");\r
+            }\r
+            if (!sfc.getSpdPkgDefsRePkg().equals("true")) {\r
+                sfc.setSpdPkgDefsRePkg("false");\r
+            }\r
+            \r
     }\r
 \r
     /**\r
@@ -467,27 +523,27 @@ public class SpdHeader extends IInternalFrame {
     private JPanel getJContentPane() {\r
         if (jContentPane == null) {\r
                jLabel = new JLabel();\r
-               jLabel.setBounds(new java.awt.Rectangle(15,170,140,20));\r
+               jLabel.setBounds(new java.awt.Rectangle(16,195,140,20));\r
                jLabel.setText("URL");\r
                jContentPane = new JPanel();\r
             jContentPane.setLayout(null);\r
             jContentPane.setLocation(new java.awt.Point(0, 0));\r
             jContentPane.setPreferredSize(new java.awt.Dimension(500, 524));\r
             jLabelAbstract = new JLabel();\r
-            jLabelAbstract.setBounds(new java.awt.Rectangle(15, 220, 140, 20));\r
+            jLabelAbstract.setBounds(new java.awt.Rectangle(16,245,140,20));\r
             jLabelAbstract.setText("Description");\r
             jLabelSpecification = new JLabel();\r
             jLabelSpecification.setText("Specification");\r
-            jLabelSpecification.setBounds(new java.awt.Rectangle(15, 305, 140, 20));\r
+            jLabelSpecification.setBounds(new java.awt.Rectangle(16,330,140,20));\r
             jLabelDescription = new JLabel();\r
             jLabelDescription.setText("Abstract");\r
-            jLabelDescription.setBounds(new java.awt.Rectangle(15, 195, 140, 20));\r
+            jLabelDescription.setBounds(new java.awt.Rectangle(16,220,140,20));\r
             jLabelCopyright = new JLabel();\r
             jLabelCopyright.setText("Copyright");\r
-            jLabelCopyright.setBounds(new java.awt.Rectangle(15, 330, 140, 20));\r
+            jLabelCopyright.setBounds(new java.awt.Rectangle(15,86,140,20));\r
             jLabelLicense = new JLabel();\r
             jLabelLicense.setText("License");\r
-            jLabelLicense.setBounds(new java.awt.Rectangle(15, 85, 140, 20));\r
+            jLabelLicense.setBounds(new java.awt.Rectangle(16,110,140,20));\r
             jLabelVersion = new JLabel();\r
             jLabelVersion.setText("Version");\r
             jLabelVersion.setBounds(new java.awt.Rectangle(15, 60, 140, 20));\r
@@ -523,16 +579,16 @@ public class SpdHeader extends IInternalFrame {
             jStarLabel3 = new StarLabel();\r
             jStarLabel3.setLocation(new java.awt.Point(0, 60));\r
             jStarLabel4 = new StarLabel();\r
-            jStarLabel4.setLocation(new java.awt.Point(0, 85));\r
+            jStarLabel4.setLocation(new java.awt.Point(1,110));\r
             jStarLabel5 = new StarLabel();\r
-            jStarLabel5.setLocation(new java.awt.Point(0, 330));\r
+            jStarLabel5.setLocation(new java.awt.Point(0,86));\r
             jStarLabel6 = new StarLabel();\r
-            jStarLabel6.setLocation(new java.awt.Point(0, 195));\r
+            jStarLabel6.setLocation(new java.awt.Point(1,220));\r
             jStarLabel7 = new StarLabel();\r
-            jStarLabel7.setLocation(new java.awt.Point(0, 305));\r
+            jStarLabel7.setLocation(new java.awt.Point(1,330));\r
             jStarLabel7.setEnabled(false);\r
             jStarLabel9 = new StarLabel();\r
-            jStarLabel9.setLocation(new java.awt.Point(0, 220));\r
+            jStarLabel9.setLocation(new java.awt.Point(1,245));\r
             jContentPane.add(jStarLabel1, null);\r
             jContentPane.add(jStarLabel2, null);\r
             jContentPane.add(jStarLabel3, null);\r
@@ -556,6 +612,7 @@ public class SpdHeader extends IInternalFrame {
      *\r
      */\r
     public void actionPerformed(ActionEvent arg0) {\r
+        docConsole.setSaved(false);\r
         if (arg0.getSource() == jButtonOk) {\r
             this.save();\r
             this.setEdited(true);\r
@@ -666,6 +723,7 @@ public class SpdHeader extends IInternalFrame {
                resizeComponentWidth(this.jTextFieldBaseName, intCurrentWidth,intPreferredWidth);\r
                resizeComponentWidth(this.jTextFieldGuid, intCurrentWidth,intPreferredWidth);\r
                resizeComponentWidth(this.jTextFieldVersion, intCurrentWidth,intPreferredWidth);\r
+        resizeComponentWidth(this.jTextField, intCurrentWidth,intPreferredWidth);\r
                resizeComponentWidth(this.jScrollPaneLicense, intCurrentWidth,intPreferredWidth);\r
                resizeComponentWidth(this.jTextFieldCopyright, intCurrentWidth,intPreferredWidth);\r
                resizeComponentWidth(this.jScrollPaneDescription, intCurrentWidth,intPreferredWidth);\r