+++ /dev/null
-/** @file\r
- \r
- The file is used to create, update MsaHeader of MSA file\r
- \r
- Copyright (c) 2006, Intel Corporation\r
- All rights reserved. This program and the accompanying materials\r
- are licensed and made available under the terms and conditions of the BSD License\r
- which accompanies this distribution. The full text of the license may be found at\r
- http://opensource.org/licenses/bsd-license.php\r
- \r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
- \r
- **/\r
-\r
-package org.tianocore.frameworkwizard.module.ui;\r
-\r
-import java.awt.event.ActionEvent;\r
-import java.awt.event.ComponentEvent;\r
-import java.awt.event.FocusEvent;\r
-import java.util.Vector;\r
-\r
-import javax.swing.ButtonGroup;\r
-import javax.swing.JButton;\r
-import javax.swing.JCheckBox;\r
-import javax.swing.JComboBox;\r
-import javax.swing.JLabel;\r
-import javax.swing.JPanel;\r
-import javax.swing.JScrollPane;\r
-import javax.swing.JTextArea;\r
-import javax.swing.JTextField;\r
-\r
-import org.tianocore.ExternsDocument;\r
-import org.tianocore.ModuleDefinitionsDocument;\r
-import org.tianocore.ModuleSurfaceAreaDocument;\r
-import org.tianocore.ModuleTypeDef;\r
-import org.tianocore.MsaHeaderDocument;\r
-import org.tianocore.PcdDriverTypes;\r
-import org.tianocore.LicenseDocument.License;\r
-import org.tianocore.frameworkwizard.common.DataType;\r
-import org.tianocore.frameworkwizard.common.DataValidation;\r
-import org.tianocore.frameworkwizard.common.EnumerationData;\r
-import org.tianocore.frameworkwizard.common.Log;\r
-import org.tianocore.frameworkwizard.common.Tools;\r
-import org.tianocore.frameworkwizard.common.Identifications.OpeningModuleType;\r
-import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
-import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
-import javax.swing.JRadioButton;\r
-\r
-/**\r
- The class is used to create, update MsaHeader of MSA file\r
- It extends IInternalFrame\r
- \r
-\r
-\r
- **/\r
-public class MsaHeader extends IInternalFrame {\r
-\r
- ///\r
- /// Define class Serial Version UID\r
- ///\r
- private static final long serialVersionUID = -8152099582923006900L;\r
-\r
- private int dialogWidth = 500;\r
-\r
- private int dialogHeight = 630;\r
-\r
- private final int labelWidth = 155;\r
- \r
- private int valueWidth = 320;\r
- \r
- private final int labelCol = 12;\r
- \r
- private final int valueCol = 168;\r
- //\r
- //Define class members\r
- //\r
- private JPanel jContentPane = null;\r
-\r
- private JLabel jLabelBaseName = null;\r
-\r
- private JTextField jTextFieldBaseName = null;\r
-\r
- private JLabel jLabelGuid = null;\r
-\r
- private JTextField jTextFieldGuid = null;\r
-\r
- private JLabel jLabelVersion = null;\r
-\r
- private JTextField jTextFieldVersion = null;\r
-\r
- private JButton jButtonGenerateGuid = null;\r
-\r
- private JLabel jLabelLicense = null;\r
-\r
- private JTextArea jTextAreaLicense = null;\r
-\r
- private JLabel jLabelCopyright = null;\r
-\r
- private JLabel jLabelDescription = null;\r
-\r
- private JTextArea jTextAreaDescription = null;\r
-\r
- private JLabel jLabelSpecification = null;\r
-\r
- private JTextField jTextFieldSpecification = null;\r
-\r
- private JButton jButtonOk = null;\r
-\r
- private JButton jButtonCancel = null;\r
-\r
- private JScrollPane jScrollPaneLicense = null;\r
-\r
- private JScrollPane jScrollPaneDescription = null;\r
-\r
- private JLabel jLabelAbstract = null;\r
-\r
- private JTextField jTextFieldAbstract = null;\r
-\r
- private JLabel jLabelModuleType = null;\r
-\r
- private JComboBox jComboBoxModuleType = null;\r
-\r
- private JLabel jLabelArch = null;\r
-\r
- private JLabel jLabelBinaryModule = null;\r
-\r
- private JLabel jLabelOutputFileBasename = null;\r
-\r
- private JTextField jTextFieldOutputFileBasename = null;\r
-\r
- private JScrollPane jScrollPaneCopyright = null;\r
-\r
- private JTextArea jTextAreaCopyright = null;\r
-\r
- private JLabel jLabelURL = null;\r
-\r
- private JTextField jTextFieldURL = null;\r
-\r
- private JScrollPane jScrollPane = null;\r
-\r
- private StarLabel jStarLabel1 = null;\r
-\r
- private StarLabel jStarLabel2 = null;\r
-\r
- private StarLabel jStarLabel4 = null;\r
-\r
- private StarLabel jStarLabel5 = null;\r
-\r
- private StarLabel jStarLabel6 = null;\r
-\r
- private StarLabel jStarLabel7 = null;\r
-\r
- private StarLabel jStarLabel8 = null;\r
-\r
- private StarLabel jStarLabel10 = null;\r
-\r
- private StarLabel jStarLabel12 = null;\r
-\r
- private StarLabel jStarLabel13 = null;\r
-\r
- private StarLabel jStarLabel14 = null;\r
-\r
- private JCheckBox jCheckBoxIa32 = null;\r
-\r
- private JCheckBox jCheckBoxX64 = null;\r
-\r
- private JCheckBox jCheckBoxIpf = null;\r
-\r
- private JCheckBox jCheckBoxEbc = null;\r
-\r
- private JCheckBox jCheckBoxArm = null;\r
-\r
- private JCheckBox jCheckBoxPpc = null;\r
-\r
- private JComboBox jComboBoxPcdIsDriver = null;\r
-\r
- private JCheckBox jCheckBoxPcd = null;\r
-\r
- private JCheckBox jCheckBoxFlashMap = null;\r
-\r
- //\r
- // Not used for UI\r
- //\r
- private MsaHeaderDocument.MsaHeader msaHeader = null;\r
-\r
- private ModuleDefinitionsDocument.ModuleDefinitions md = null;\r
-\r
- private ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = null;\r
-\r
- private ExternsDocument.Externs ex = null;\r
-\r
- private OpeningModuleType omt = null;\r
-\r
- private EnumerationData ed = new EnumerationData();\r
-\r
- private JRadioButton jRadioButtonBinaryModuleTrue = null;\r
-\r
- private JRadioButton jRadioButtonBinaryModuleFalse = null;\r
-\r
- /**\r
- * This method initializes jCheckBoxIa32 \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBoxIa32() {\r
- if (jCheckBoxIa32 == null) {\r
- jCheckBoxIa32 = new JCheckBox();\r
- jCheckBoxIa32.setBounds(new java.awt.Rectangle(valueCol, 505, 55, 20));\r
- jCheckBoxIa32.setText("IA32");\r
- jCheckBoxIa32.setToolTipText(DataType.SUP_ARCH_LIST_HELP_TEXT);\r
- jCheckBoxIa32.addFocusListener(this);\r
- }\r
- return jCheckBoxIa32;\r
- }\r
-\r
- /**\r
- * This method initializes jCheckBoxX64 \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBoxX64() {\r
- if (jCheckBoxX64 == null) {\r
- jCheckBoxX64 = new JCheckBox();\r
- jCheckBoxX64.setBounds(new java.awt.Rectangle(valueCol + 55, 505, 53, 20));\r
- jCheckBoxX64.setText("X64");\r
- jCheckBoxX64.setToolTipText(DataType.SUP_ARCH_LIST_HELP_TEXT);\r
- jCheckBoxX64.addFocusListener(this);\r
- }\r
- return jCheckBoxX64;\r
- }\r
-\r
- /**\r
- * This method initializes jCheckBoxIpf \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBoxIpf() {\r
- if (jCheckBoxIpf == null) {\r
- jCheckBoxIpf = new JCheckBox();\r
- jCheckBoxIpf.setBounds(new java.awt.Rectangle(valueCol + 110, 505, 52, 20));\r
- jCheckBoxIpf.setText("IPF");\r
- jCheckBoxIpf.setToolTipText(DataType.SUP_ARCH_LIST_HELP_TEXT);\r
- jCheckBoxIpf.addFocusListener(this);\r
- }\r
- return jCheckBoxIpf;\r
- }\r
-\r
- /**\r
- * This method initializes jCheckBoxEbc \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBoxEbc() {\r
- if (jCheckBoxEbc == null) {\r
- jCheckBoxEbc = new JCheckBox();\r
- jCheckBoxEbc.setBounds(new java.awt.Rectangle(valueCol + 165, 505, 53, 20));\r
- jCheckBoxEbc.setText("EBC");\r
- jCheckBoxEbc.setToolTipText(DataType.SUP_ARCH_LIST_HELP_TEXT);\r
- jCheckBoxEbc.addFocusListener(this);\r
- }\r
- return jCheckBoxEbc;\r
- }\r
-\r
- /**\r
- * This method initializes jCheckBoxArm \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBoxArm() {\r
- if (jCheckBoxArm == null) {\r
- jCheckBoxArm = new JCheckBox();\r
- jCheckBoxArm.setBounds(new java.awt.Rectangle(valueCol + 220, 505, 54, 20));\r
- jCheckBoxArm.setText("ARM");\r
- jCheckBoxArm.setToolTipText(DataType.SUP_ARCH_LIST_HELP_TEXT);\r
- jCheckBoxArm.addFocusListener(this);\r
- }\r
- return jCheckBoxArm;\r
- }\r
-\r
- /**\r
- * This method initializes jCheckBoxPpc \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBoxPpc() {\r
- if (jCheckBoxPpc == null) {\r
- jCheckBoxPpc = new JCheckBox();\r
- jCheckBoxPpc.setBounds(new java.awt.Rectangle(valueCol + 285, 505, 53, 20));\r
- jCheckBoxPpc.setText("PPC");\r
- jCheckBoxPpc.setToolTipText(DataType.SUP_ARCH_LIST_HELP_TEXT);\r
- jCheckBoxPpc.addFocusListener(this);\r
- }\r
- return jCheckBoxPpc;\r
- }\r
-\r
- /**\r
- This method initializes jTextFieldBaseName \r
- \r
- @return javax.swing.JTextField jTextFieldBaseName\r
- \r
- **/\r
- private JTextField getJTextFieldBaseName() {\r
- if (jTextFieldBaseName == null) {\r
- jTextFieldBaseName = new JTextField();\r
- jTextFieldBaseName.setBounds(new java.awt.Rectangle(valueCol, 10, valueWidth, 20));\r
- jTextFieldBaseName.setPreferredSize(new java.awt.Dimension(320, 20));\r
- jTextFieldBaseName.addFocusListener(this);\r
- jTextFieldBaseName.setToolTipText("A brief Identifier, such as USB I/O Library, of the module");\r
- }\r
- return jTextFieldBaseName;\r
- }\r
-\r
- /**\r
- This method initializes jTextFieldGuid \r
- \r
- @return javax.swing.JTextField jTextFieldGuid\r
- \r
- **/\r
- private JTextField getJTextFieldGuid() {\r
- if (jTextFieldGuid == null) {\r
- jTextFieldGuid = new JTextField();\r
- jTextFieldGuid.setPreferredSize(new java.awt.Dimension(250, 20));\r
- jTextFieldGuid.setLocation(new java.awt.Point(valueCol, 60));\r
- jTextFieldGuid.setSize(new java.awt.Dimension(250, 20));\r
- jTextFieldGuid.addFocusListener(this);\r
- jTextFieldGuid.setToolTipText("Guaranteed Unique Identification Number, Registry Format (8-4-4-4-12)");\r
- }\r
- return jTextFieldGuid;\r
- }\r
-\r
- /**\r
- This method initializes jTextFieldVersion \r
- \r
- @return javax.swing.JTextField jTextFieldVersion\r
- \r
- **/\r
- private JTextField getJTextFieldVersion() {\r
- if (jTextFieldVersion == null) {\r
- jTextFieldVersion = new JTextField();\r
- jTextFieldVersion.setPreferredSize(new java.awt.Dimension(valueWidth, 20));\r
- jTextFieldVersion.setLocation(new java.awt.Point(valueCol, 85));\r
- jTextFieldVersion.setSize(new java.awt.Dimension(valueWidth, 20));\r
- jTextFieldVersion.addFocusListener(this);\r
- jTextFieldVersion.setToolTipText("A Version Number, 1.0, 1, 1.01, 1.0.1");\r
- }\r
- return jTextFieldVersion;\r
- }\r
-\r
- /**\r
- This method initializes jButtonGenerateGuid \r
- \r
- @return javax.swing.JButton jButtonGenerateGuid\r
- \r
- **/\r
- private JButton getJButtonGenerateGuid() {\r
- if (jButtonGenerateGuid == null) {\r
- int genGuidCol = valueCol + 285;\r
- jButtonGenerateGuid = new JButton();\r
- jButtonGenerateGuid.setPreferredSize(new java.awt.Dimension(65, 20));\r
- jButtonGenerateGuid.setSize(new java.awt.Dimension(65, 20));\r
- jButtonGenerateGuid.setLocation(new java.awt.Point(genGuidCol, 60));\r
- jButtonGenerateGuid.setText("GEN");\r
- jButtonGenerateGuid.addActionListener(this);\r
- }\r
- return jButtonGenerateGuid;\r
- }\r
-\r
- /**\r
- This method initializes jTextAreaLicense \r
- \r
- @return javax.swing.JTextArea jTextAreaLicense\r
- \r
- **/\r
- private JTextArea getJTextAreaLicense() {\r
- if (jTextAreaLicense == null) {\r
- jTextAreaLicense = new JTextArea();\r
- jTextAreaLicense.setText("");\r
- jTextAreaLicense.setLineWrap(true);\r
- jTextAreaLicense.addFocusListener(this);\r
- jTextAreaLicense.setWrapStyleWord(true);\r
- jTextAreaLicense.setSelectionStart(0);\r
- jTextAreaLicense.setSelectionEnd(0);\r
- jTextAreaLicense.setToolTipText("The License for this Module.");\r
- }\r
- return jTextAreaLicense;\r
- }\r
-\r
- /**\r
- This method initializes jTextAreaDescription \r
- \r
- @return javax.swing.JTextArea jTextAreaDescription\r
- \r
- **/\r
- private JTextArea getJTextAreaDescription() {\r
- if (jTextAreaDescription == null) {\r
- jTextAreaDescription = new JTextArea();\r
- jTextAreaDescription.setLineWrap(true);\r
- jTextAreaDescription.addFocusListener(this);\r
- jTextAreaDescription.setToolTipText("A verbose description of the module.");\r
- jTextAreaDescription.setWrapStyleWord(true);\r
- jTextAreaDescription.setSelectionStart(0);\r
- jTextAreaDescription.setSelectionEnd(0);\r
- }\r
- return jTextAreaDescription;\r
- }\r
-\r
- /**\r
- This method initializes jTextFieldSpecification \r
- \r
- @return javax.swing.JTextField jTextFieldSpecification\r
- \r
- **/\r
- private JTextField getJTextFieldSpecification() {\r
- if (jTextFieldSpecification == null) {\r
- int specWidth = valueWidth + 50;\r
- jTextFieldSpecification = new JTextField();\r
-\r
- jTextFieldSpecification.setPreferredSize(new java.awt.Dimension(specWidth, 20));\r
- jTextFieldSpecification.setText("FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052");\r
- jTextFieldSpecification.setBorder(null);\r
-\r
- jTextFieldSpecification.setSize(new java.awt.Dimension(specWidth, 20));\r
- jTextFieldSpecification.setLocation(new java.awt.Point(labelCol, dialogHeight - 30));\r
- jTextFieldSpecification.setEditable(false);\r
- jTextFieldSpecification.addFocusListener(this);\r
- }\r
- return jTextFieldSpecification;\r
- }\r
-\r
- /**\r
- This method initializes jButtonOk \r
- \r
- @return javax.swing.JButton jButtonOk\r
- \r
- **/\r
- private JButton getJButtonOk() {\r
- if (jButtonOk == null) {\r
- jButtonOk = new JButton();\r
- jButtonOk.setText("OK");\r
- jButtonOk.setPreferredSize(new java.awt.Dimension(90, 20));\r
- jButtonOk.setBounds(new java.awt.Rectangle(390, 455, 90, 20));\r
- jButtonOk.addActionListener(this);\r
- jButtonOk.setVisible(false);\r
- }\r
- return jButtonOk;\r
- }\r
-\r
- /**\r
- This method initializes jButtonCancel \r
- \r
- @return javax.swing.JButton jButtonCancel\r
- \r
- **/\r
- private JButton getJButtonCancel() {\r
- if (jButtonCancel == null) {\r
- jButtonCancel = new JButton();\r
- jButtonCancel.setText("Cancel");\r
- jButtonCancel.setBounds(new java.awt.Rectangle(390, 445, 90, 20));\r
- jButtonCancel.addActionListener(this);\r
- jButtonCancel.setPreferredSize(new java.awt.Dimension(90, 20));\r
- jButtonCancel.setVisible(false);\r
- }\r
- return jButtonCancel;\r
- }\r
-\r
- /**\r
- This method initializes jScrollPaneLicense \r
- \r
- @return javax.swing.JScrollPane jScrollPaneLicense\r
- \r
- **/\r
- private JScrollPane getJScrollPaneLicense() {\r
- if (jScrollPaneLicense == null) {\r
- jScrollPaneLicense = new JScrollPane();\r
- jScrollPaneLicense.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
- jScrollPaneLicense.setSize(new java.awt.Dimension(valueWidth, 120));\r
- jScrollPaneLicense.setLocation(new java.awt.Point(valueCol, 305));\r
- jScrollPaneLicense.setViewportView(getJTextAreaLicense());\r
- jScrollPaneLicense.setPreferredSize(new java.awt.Dimension(valueWidth, 120));\r
- }\r
- return jScrollPaneLicense;\r
- }\r
-\r
- /**\r
- This method initializes jScrollPaneDescription \r
- \r
- @return javax.swing.JScrollPane jScrollPaneDescription\r
- \r
- **/\r
- private JScrollPane getJScrollPaneDescription() {\r
- if (jScrollPaneDescription == null) {\r
- jScrollPaneDescription = new JScrollPane();\r
- jScrollPaneDescription.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
- jScrollPaneDescription.setSize(new java.awt.Dimension(valueWidth, 120));\r
- jScrollPaneDescription.setLocation(new java.awt.Point(valueCol, 135));\r
- jScrollPaneDescription.setViewportView(getJTextAreaDescription());\r
- jScrollPaneDescription.setPreferredSize(new java.awt.Dimension(valueWidth, 120));\r
- }\r
- return jScrollPaneDescription;\r
- }\r
-\r
- /**\r
- This method initializes jTextFieldAbstract \r
- \r
- @return javax.swing.JTextField jTextFieldAbstract\r
- \r
- **/\r
- private JTextField getJTextFieldAbstract() {\r
- if (jTextFieldAbstract == null) {\r
- jTextFieldAbstract = new JTextField();\r
- jTextFieldAbstract.setPreferredSize(new java.awt.Dimension(valueWidth, 20));\r
- jTextFieldAbstract.setLocation(new java.awt.Point(valueCol, 110));\r
- jTextFieldAbstract.setSize(new java.awt.Dimension(valueWidth, 20));\r
- jTextFieldAbstract.addFocusListener(this);\r
- jTextFieldAbstract.setToolTipText("A one sentence description of this module.");\r
- }\r
- return jTextFieldAbstract;\r
- }\r
-\r
- /**\r
- This method initializes jComboBoxModuleType \r
- \r
- @return javax.swing.JComboBox jComboBoxModuleType\r
- \r
- **/\r
- private JComboBox getJComboBoxModuleType() {\r
- if (jComboBoxModuleType == null) {\r
- jComboBoxModuleType = new JComboBox();\r
- jComboBoxModuleType.setBounds(new java.awt.Rectangle(valueCol, 35, valueWidth, 20));\r
- jComboBoxModuleType.setPreferredSize(new java.awt.Dimension(valueWidth, 20));\r
- jComboBoxModuleType.addFocusListener(this);\r
- }\r
- return jComboBoxModuleType;\r
- }\r
-\r
- /**\r
- This method initializes jTextFieldURL \r
- \r
- @return javax.swing.JTextField \r
- \r
- **/\r
- private JTextField getJTextFieldURL() {\r
- if (jTextFieldURL == null) {\r
- jTextFieldURL = new JTextField();\r
- jTextFieldURL.setPreferredSize(new java.awt.Dimension(valueWidth, 20));\r
- jTextFieldURL.setLocation(new java.awt.Point(valueCol, 430));\r
- jTextFieldURL.setSize(new java.awt.Dimension(valueWidth, 20));\r
- jTextFieldURL.addFocusListener(this);\r
- jTextFieldURL.setToolTipText("A URL for the latest version of the license.");\r
- }\r
- return jTextFieldURL;\r
- }\r
-\r
- /**\r
- This method initializes jScrollPane \r
- \r
- @return javax.swing.JScrollPane \r
- \r
- **/\r
- private JScrollPane getJScrollPane() {\r
- if (jScrollPane == null) {\r
- jScrollPane = new JScrollPane();\r
- jScrollPane.setViewportView(getJContentPane());\r
- }\r
- return jScrollPane;\r
- }\r
-\r
- /**\r
- This method initializes jScrollPaneCopyright \r
- \r
- @return javax.swing.JScrollPane \r
- \r
- **/\r
- private JScrollPane getJScrollPaneCopyright() {\r
- if (jScrollPaneCopyright == null) {\r
- jScrollPaneCopyright = new JScrollPane();\r
- jScrollPaneCopyright.setBounds(new java.awt.Rectangle(valueCol, 260, valueWidth, 40));\r
- jScrollPaneCopyright.setPreferredSize(new java.awt.Dimension(valueWidth, 40));\r
- jScrollPaneCopyright.setViewportView(getJTextAreaCopyright());\r
- jScrollPaneCopyright.setSize(new java.awt.Dimension(valueWidth, 40));\r
- }\r
- return jScrollPaneCopyright;\r
- }\r
-\r
- /**\r
- This method initializes jTextAreaCopyright \r
- \r
- @return javax.swing.JTextArea \r
- \r
- **/\r
- private JTextArea getJTextAreaCopyright() {\r
- if (jTextAreaCopyright == null) {\r
- jTextAreaCopyright = new JTextArea();\r
- jTextAreaCopyright.setLineWrap(true);\r
- jTextAreaCopyright.addFocusListener(this);\r
- jTextAreaCopyright.setWrapStyleWord(true);\r
- jTextAreaCopyright.setSelectionStart(0);\r
- jTextAreaCopyright.setSelectionEnd(0);\r
- jTextAreaCopyright.setBounds(new java.awt.Rectangle(0, 0, valueWidth, 40));\r
- jTextAreaCopyright.setToolTipText("One or more copyright lines.");\r
- }\r
- return jTextAreaCopyright;\r
- }\r
-\r
- /**\r
- * This method initializes jTextFieldOutputFileBasename \r
- * \r
- * @return javax.swing.JTextField \r
- */\r
- private JTextField getJTextFieldOutputFileBasename() {\r
- if (jTextFieldOutputFileBasename == null) {\r
- jTextFieldOutputFileBasename = new JTextField();\r
- jTextFieldOutputFileBasename.setBounds(new java.awt.Rectangle(valueCol, 455, valueWidth, 20));\r
- jTextFieldOutputFileBasename.setPreferredSize(new java.awt.Dimension(valueWidth, 20));\r
- jTextFieldOutputFileBasename.addFocusListener(this);\r
- jTextFieldOutputFileBasename.setToolTipText("Enter a single word for generated output file names.");\r
- }\r
- return jTextFieldOutputFileBasename;\r
- }\r
-\r
- /**\r
- * This method initializes jComboBoxPcdIsDriver \r
- * \r
- * @return javax.swing.JComboBox \r
- */\r
- private JComboBox getJComboBoxPcdIsDriver() {\r
- if (jComboBoxPcdIsDriver == null) {\r
- jComboBoxPcdIsDriver = new JComboBox();\r
- jComboBoxPcdIsDriver.setPreferredSize(new java.awt.Dimension(valueWidth, 20));\r
- jComboBoxPcdIsDriver.setBounds(new java.awt.Rectangle(valueCol, 530, valueWidth, 20));\r
- jComboBoxPcdIsDriver.addItemListener(this);\r
- jComboBoxPcdIsDriver.addFocusListener(this);\r
- jComboBoxPcdIsDriver.setEnabled(false);\r
- Tools.generateComboBoxByVector(jComboBoxPcdIsDriver, ed.getVPcdDriverTypes());\r
- jComboBoxPcdIsDriver.setVisible(false);\r
- }\r
- return jComboBoxPcdIsDriver;\r
- }\r
-\r
- /**\r
- This is the default constructor\r
- \r
- **/\r
- public MsaHeader() {\r
- super();\r
- init();\r
- this.setVisible(true);\r
- }\r
-\r
- /**\r
- This is the override edit constructor\r
- \r
- @param inMsaHeader The input data of MsaHeaderDocument.MsaHeader\r
- \r
- **/\r
- public MsaHeader(OpeningModuleType inMsa) {\r
- super();\r
- this.omt = inMsa;\r
- this.msa = omt.getXmlMsa();\r
-\r
- // \r
- // Set module definitions default value\r
- //\r
- if (msa.getModuleDefinitions() == null) {\r
- ModuleDefinitionsDocument.ModuleDefinitions md = ModuleDefinitionsDocument.ModuleDefinitions.Factory\r
- .newInstance();\r
- md.setOutputFileBasename(msa.getMsaHeader().getModuleName());\r
- md.setBinaryModule(false);\r
- md.setSupportedArchitectures(ed.getVSupportedArchitectures());\r
- msa.setModuleDefinitions(md);\r
- }\r
-\r
- //\r
- // Init items of Header, Definitions and Externs\r
- //\r
- init(msa.getMsaHeader());\r
- init(msa.getModuleDefinitions());\r
- init(msa.getExterns());\r
-\r
- this.setVisible(true);\r
- this.setViewMode(false);\r
- }\r
-\r
- /**\r
- Disable all components when the mode is view\r
- \r
- @param isView true - The view mode; false - The non-view mode\r
- \r
- **/\r
- public void setViewMode(boolean isView) {\r
- if (isView) {\r
- this.jTextFieldBaseName.setEnabled(!isView);\r
- this.jTextFieldGuid.setEnabled(!isView);\r
- this.jTextFieldVersion.setEnabled(!isView);\r
- this.jTextAreaLicense.setEnabled(!isView);\r
- this.jTextAreaCopyright.setEnabled(!isView);\r
- this.jTextAreaDescription.setEnabled(!isView);\r
- this.jTextFieldSpecification.setEnabled(!isView);\r
- this.jTextFieldAbstract.setEnabled(!isView);\r
- this.jComboBoxModuleType.setEnabled(!isView);\r
- this.jButtonCancel.setEnabled(!isView);\r
- this.jButtonGenerateGuid.setEnabled(!isView);\r
- this.jButtonOk.setEnabled(!isView);\r
- }\r
- }\r
-\r
- /**\r
- This method initializes this\r
- \r
- **/\r
- private void init() {\r
- this.setSize(dialogWidth, dialogHeight);\r
- this.setPreferredSize(new java.awt.Dimension(dialogWidth, dialogHeight));\r
- this.setContentPane(getJScrollPane());\r
- this.setTitle("Module Surface Area Header");\r
- initFrame();\r
- }\r
-\r
- /**\r
- This method initializes this\r
- Fill values to all fields if these values are not empty\r
- \r
- @param inMsaHeader The input data of MsaHeaderDocument.MsaHeader\r
- \r
- **/\r
- private void init(MsaHeaderDocument.MsaHeader inMsaHeader) {\r
- init();\r
- if (inMsaHeader != null) {\r
- setMsaHeader(inMsaHeader);\r
- if (this.msaHeader.getModuleName() != null) {\r
- this.jTextFieldBaseName.setText(this.msaHeader.getModuleName());\r
- }\r
- if (this.msaHeader.getModuleType() != null) {\r
- this.jComboBoxModuleType.setSelectedItem(this.msaHeader.getModuleType().toString());\r
- }\r
- if (this.msaHeader.getGuidValue() != null) {\r
- this.jTextFieldGuid.setText(this.msaHeader.getGuidValue());\r
- }\r
- if (this.msaHeader.getVersion() != null) {\r
- this.jTextFieldVersion.setText(this.msaHeader.getVersion());\r
- }\r
- if (this.msaHeader.getAbstract() != null) {\r
- this.jTextFieldAbstract.setText(this.msaHeader.getAbstract());\r
- }\r
- if (this.msaHeader.getDescription() != null) {\r
- this.jTextAreaDescription.setText(this.msaHeader.getDescription());\r
- jTextAreaDescription.setSelectionStart(0);\r
- jTextAreaDescription.setSelectionEnd(0);\r
- }\r
- if (this.msaHeader.getCopyright() != null) {\r
- this.jTextAreaCopyright.setText(this.msaHeader.getCopyright());\r
- }\r
- if (this.msaHeader.getLicense() != null) {\r
- this.jTextAreaLicense.setText(this.msaHeader.getLicense().getStringValue());\r
- jTextAreaLicense.setSelectionStart(0);\r
- jTextAreaLicense.setSelectionEnd(0);\r
- }\r
- if (this.msaHeader.getLicense() != null && this.msaHeader.getLicense().getURL() != null) {\r
- this.jTextFieldURL.setText(this.msaHeader.getLicense().getURL());\r
- }\r
- if (this.msaHeader.getSpecification() != null) {\r
- this.jTextFieldSpecification.setText(this.msaHeader.getSpecification());\r
- }\r
- }\r
- }\r
-\r
- /**\r
- This method initializes this\r
- Fill values to all fields if these values are not empty\r
- \r
- @param inMsaHeader The input data of MsaHeaderDocument.MsaHeader\r
- \r
- **/\r
- private void init(ModuleDefinitionsDocument.ModuleDefinitions inMd) {\r
- if (inMd != null) {\r
- this.md = inMd;\r
- if (md.getSupportedArchitectures() != null) {\r
- this.setSelectedItems(Tools.convertListToVector(md.getSupportedArchitectures()));\r
- }\r
- if (md.getBinaryModule()) {\r
- this.jRadioButtonBinaryModuleTrue.setSelected(true);\r
- } else {\r
- this.jRadioButtonBinaryModuleFalse.setSelected(true);\r
- }\r
- if (md.getOutputFileBasename() != null) {\r
- this.jTextFieldOutputFileBasename.setText(md.getOutputFileBasename());\r
- }\r
- }\r
- }\r
-\r
- /**\r
- This method initializes this\r
- Fill values to all fields if these values are not empty\r
- \r
- @param inEx The input data of ExternsDocument.Externs\r
- \r
- **/\r
- private void init(ExternsDocument.Externs inEx) {\r
- if (inEx != null) {\r
- this.ex = inEx;\r
- if (ex.getPcdIsDriver() != null) {\r
- this.jCheckBoxPcd.setSelected(true);\r
- this.jComboBoxPcdIsDriver.setEnabled(true);\r
- this.jComboBoxPcdIsDriver.setSelectedItem(ex.getPcdIsDriver());\r
- // TODO: If the module type is DXE_DRIVER, set PCD_DXE_DRIVER\r
- // If the module type is PEIM, set PCD_PEI_DRIVER\r
- // If the module type is anything else, unset this!\r
- }\r
- this.jCheckBoxFlashMap.setSelected(ex.getTianoR8FlashMapH());\r
- }\r
- }\r
-\r
- /**\r
- This method initializes jContentPane\r
- \r
- @return javax.swing.JPanel jContentPane\r
- \r
- **/\r
- private JPanel getJContentPane() {\r
- if (jContentPane == null) {\r
-\r
- jLabelURL = new JLabel();\r
- jLabelURL.setText("License URL");\r
- jLabelURL.setLocation(new java.awt.Point(labelCol, 430));\r
- jLabelURL.setSize(new java.awt.Dimension(labelWidth, 20));\r
- jLabelBaseName = new JLabel();\r
- jLabelBaseName.setText("Module Name");\r
- jLabelBaseName.setBounds(new java.awt.Rectangle(labelCol, 10, labelWidth, 20));\r
- jLabelModuleType = new JLabel();\r
- jLabelModuleType.setBounds(new java.awt.Rectangle(labelCol, 35, labelWidth, 20));\r
- jLabelModuleType.setText("Module Type");\r
- jLabelGuid = new JLabel();\r
- jLabelGuid.setText("Guid Value");\r
- jLabelGuid.setLocation(new java.awt.Point(labelCol, 60));\r
- jLabelGuid.setSize(new java.awt.Dimension(labelWidth, 20));\r
- jLabelVersion = new JLabel();\r
- jLabelVersion.setText("Version");\r
- jLabelVersion.setLocation(new java.awt.Point(labelCol, 85));\r
- jLabelVersion.setSize(new java.awt.Dimension(labelWidth, 20));\r
- jLabelAbstract = new JLabel();\r
- jLabelAbstract.setText("Abstract");\r
- jLabelAbstract.setLocation(new java.awt.Point(labelCol, 110));\r
- jLabelAbstract.setSize(new java.awt.Dimension(labelWidth, 20));\r
- jLabelDescription = new JLabel();\r
- jLabelDescription.setText("Description");\r
- jLabelDescription.setLocation(new java.awt.Point(labelCol, 135));\r
- jLabelDescription.setSize(new java.awt.Dimension(labelWidth, 20));\r
- jLabelCopyright = new JLabel();\r
- jLabelCopyright.setText("Copyright");\r
- jLabelCopyright.setLocation(new java.awt.Point(labelCol, 260));\r
- jLabelCopyright.setSize(new java.awt.Dimension(labelWidth, 20));\r
- jLabelLicense = new JLabel();\r
- jLabelLicense.setText("License");\r
- jLabelLicense.setLocation(new java.awt.Point(labelCol, 305));\r
- jLabelLicense.setSize(new java.awt.Dimension(labelWidth, 20));\r
- jLabelOutputFileBasename = new JLabel();\r
- jLabelOutputFileBasename.setBounds(new java.awt.Rectangle(labelCol, 455, labelWidth, 20));\r
- jLabelOutputFileBasename.setText("Output File Basename");\r
- jLabelBinaryModule = new JLabel();\r
- jLabelBinaryModule.setBounds(new java.awt.Rectangle(labelCol, 480, labelWidth, 20));\r
- jLabelBinaryModule.setText("Binary Module");\r
- jLabelArch = new JLabel();\r
- jLabelArch.setBounds(new java.awt.Rectangle(labelCol, 505, labelWidth, 20));\r
- jLabelArch.setText("Supported Architectures");\r
- jLabelSpecification = new JLabel();\r
- jLabelSpecification.setText("Specification");\r
- jLabelSpecification.setLocation(new java.awt.Point(labelCol, 530));\r
- jLabelSpecification.setSize(new java.awt.Dimension(labelWidth, 20));\r
-\r
- jContentPane = new JPanel();\r
- jContentPane.setLayout(null);\r
- jContentPane.setPreferredSize(new java.awt.Dimension(dialogWidth - 10, dialogHeight - 10));\r
-\r
- jContentPane.addFocusListener(this);\r
-\r
- jContentPane.add(jLabelBaseName, null);\r
- jContentPane.add(getJTextFieldBaseName(), null);\r
- jContentPane.add(jLabelGuid, null);\r
- jContentPane.add(getJTextFieldGuid(), null);\r
- jContentPane.add(jLabelVersion, null);\r
- jContentPane.add(getJTextFieldVersion(), null);\r
- jContentPane.add(getJButtonGenerateGuid(), null);\r
- jContentPane.add(jLabelLicense, null);\r
- jContentPane.add(jLabelCopyright, null);\r
- jContentPane.add(jLabelDescription, null);\r
- jContentPane.add(getJTextFieldSpecification(), null);\r
- jContentPane.add(getJButtonOk(), null);\r
- jContentPane.add(getJButtonCancel(), null);\r
- jContentPane.add(getJScrollPaneLicense(), null);\r
- jContentPane.add(getJScrollPaneDescription(), null);\r
- jContentPane.add(jLabelAbstract, null);\r
- jContentPane.add(getJTextFieldAbstract(), null);\r
- jContentPane.add(jLabelModuleType, null);\r
- jContentPane.add(getJComboBoxModuleType(), null);\r
- jContentPane.add(jLabelURL, null);\r
- jContentPane.add(getJTextFieldURL(), null);\r
- jContentPane.add(jLabelOutputFileBasename, null);\r
- jContentPane.add(getJTextFieldOutputFileBasename(), null);\r
- jContentPane.add(jLabelBinaryModule, null);\r
- jContentPane.add(jLabelArch, null);\r
-\r
- 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
- jStarLabel4 = new StarLabel();\r
- jStarLabel4.setLocation(new java.awt.Point(0, 60));\r
- jStarLabel5 = new StarLabel();\r
- jStarLabel5.setLocation(new java.awt.Point(0, 85));\r
- jStarLabel6 = new StarLabel();\r
- jStarLabel6.setLocation(new java.awt.Point(0, 135));\r
- jStarLabel7 = new StarLabel();\r
- jStarLabel7.setLocation(new java.awt.Point(0, 260));\r
- jStarLabel8 = new StarLabel();\r
- jStarLabel8.setLocation(new java.awt.Point(0, 305));\r
- jStarLabel10 = new StarLabel();\r
- jStarLabel10.setLocation(new java.awt.Point(0, 110));\r
- jStarLabel12 = new StarLabel();\r
- jStarLabel12.setLocation(new java.awt.Point(0, 455));\r
- jStarLabel13 = new StarLabel();\r
- jStarLabel13.setLocation(new java.awt.Point(0, 480));\r
- jStarLabel14 = new StarLabel();\r
- jStarLabel14.setLocation(new java.awt.Point(0, 505));\r
-\r
- jContentPane.add(jStarLabel1, null);\r
- jContentPane.add(jStarLabel2, null);\r
- jContentPane.add(jStarLabel4, null);\r
- jContentPane.add(jStarLabel5, null);\r
- jContentPane.add(jStarLabel6, null);\r
- jContentPane.add(jStarLabel7, null);\r
- jContentPane.add(jStarLabel8, null);\r
- jContentPane.add(jStarLabel10, null);\r
- jContentPane.add(jStarLabel12, null);\r
- jContentPane.add(jStarLabel13, null);\r
- jContentPane.add(jStarLabel14, null);\r
- jContentPane.add(getJScrollPaneCopyright(), null);\r
-\r
- jContentPane.add(getJCheckBoxIa32(), null);\r
- jContentPane.add(getJCheckBoxX64(), null);\r
- jContentPane.add(getJCheckBoxIpf(), null);\r
- jContentPane.add(getJCheckBoxEbc(), null);\r
- jContentPane.add(getJCheckBoxArm(), null);\r
- jContentPane.add(getJCheckBoxPpc(), null);\r
-\r
- jContentPane.add(getJCheckBoxPcd(), null);\r
- jContentPane.add(getJComboBoxPcdIsDriver(), null);\r
- jContentPane.add(getJCheckBoxFlashMap(), null);\r
-\r
- ButtonGroup bg = new ButtonGroup();\r
- jContentPane.add(getJRadioButtonBinaryModuleTrue(), null);\r
- jContentPane.add(getJRadioButtonBinaryModuleFalse(), null);\r
- bg.add(getJRadioButtonBinaryModuleTrue());\r
- bg.add(getJRadioButtonBinaryModuleFalse());\r
- }\r
- return jContentPane;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)\r
- *\r
- * Override actionPerformed to listen all actions\r
- *\r
- */\r
- public void actionPerformed(ActionEvent arg0) {\r
- if (arg0.getSource() == jButtonOk) {\r
- if (this.check()) {\r
- this.save();\r
- } else {\r
- return;\r
- }\r
- this.setEdited(true);\r
- this.dispose();\r
- }\r
-\r
- if (arg0.getSource() == jButtonCancel) {\r
- this.setEdited(false);\r
- }\r
-\r
- if (arg0.getSource() == jButtonGenerateGuid) {\r
- jTextFieldGuid.setText(Tools.generateUuidString());\r
- jTextFieldGuid.requestFocus();\r
- jButtonGenerateGuid.requestFocus();\r
- }\r
-\r
- if (arg0.getSource() == this.jCheckBoxPcd) {\r
- this.jComboBoxPcdIsDriver.setEnabled(this.jCheckBoxPcd.isSelected());\r
- }\r
- }\r
-\r
- /**\r
- Data validation for all fields\r
- \r
- @retval true - All datas are valid\r
- @retval false - At least one data is invalid\r
- \r
- **/\r
- public boolean check() {\r
- //\r
- // Check if all required fields are not empty\r
- // and check if all data fields values are valid\r
- //\r
-\r
- //\r
- // Check Base Name\r
- //\r
- if (isEmpty(this.jTextFieldBaseName.getText())) {\r
- Log.wrn("Update Msa Header", "Name must be entered!");\r
- //this.jTextFieldBaseName.requestFocus();\r
- return false;\r
- }\r
- if (!DataValidation.isBaseName(this.jTextFieldBaseName.getText())) {\r
- Log.wrn("Update Msa Header", "Incorrect data type for Name, it must start with an alpha character!");\r
- //this.jTextFieldBaseName.requestFocus();\r
- return false;\r
- }\r
-\r
- //\r
- // Check Guid\r
- //\r
- if (isEmpty(this.jTextFieldGuid.getText())) {\r
- Log.wrn("Update Msa Header", "The Guid Value must be entered!");\r
- //this.jTextFieldGuid.requestFocus();\r
- return false;\r
- }\r
- if (!DataValidation.isGuid((this.jTextFieldGuid).getText())) {\r
- Log.wrn("Update Msa Header", "Incorrect data type for Guid, it must be registry format, 8-4-4-4-12");\r
- //this.jTextFieldGuid.requestFocus();\r
- return false;\r
- }\r
-\r
- //\r
- // Check Version\r
- //\r
- if (isEmpty(this.jTextFieldVersion.getText())) {\r
- Log.wrn("Update Msa Header", "Version must be entered!");\r
- //this.jTextFieldVersion.requestFocus();\r
- return false;\r
- }\r
- if (!DataValidation.isVersion(this.jTextFieldVersion.getText())) {\r
- Log.wrn("Update Msa Header", "Incorrect data type for Version, it must start with a digit.");\r
- //this.jTextFieldVersion.requestFocus();\r
- return false;\r
- }\r
-\r
- //\r
- // Check Abstact\r
- //\r
- if (isEmpty(this.jTextFieldAbstract.getText())) {\r
- Log.wrn("Update Msa Header", "Abstract must be entered!");\r
- //this.jTextFieldAbstract.requestFocus();\r
- return false;\r
- }\r
- if (!DataValidation.isAbstract(this.jTextFieldAbstract.getText())) {\r
- Log.wrn("Update Msa Header",\r
- "Incorrect data type for Abstract, is should be a sentence describing the module.");\r
- //this.jTextFieldAbstract.requestFocus();\r
- return false;\r
- }\r
-\r
- //\r
- // Check Description\r
- //\r
- if (isEmpty(this.jTextAreaDescription.getText())) {\r
- Log.wrn("Update Msa Header", "Description must be entered!");\r
- //this.jTextAreaDescription.requestFocus();\r
- return false;\r
- }\r
-\r
- //\r
- // Check Copyright\r
- //\r
- if (isEmpty(this.jTextAreaCopyright.getText())) {\r
- Log.wrn("Update Msa Header", "Copyright must be entered!");\r
- //this.jTextFieldCopyright.requestFocus();\r
- return false;\r
- }\r
-\r
- //\r
- // Check License\r
- //\r
- if (isEmpty(this.jTextAreaLicense.getText())) {\r
- Log.wrn("Update Msa Header", "License must be entered!");\r
- //this.jTextAreaLicense.requestFocus();\r
- return false;\r
- }\r
-\r
- //\r
- // Check Specification\r
- //\r
- if (isEmpty(this.jTextFieldSpecification.getText())) {\r
- Log.wrn("Update Msa Header", "Specification must exist.");\r
- //this.jTextFieldSpecification.requestFocus();\r
- return false;\r
- }\r
- if (!DataValidation.isSpecification(this.jTextFieldSpecification.getText())) {\r
- // TODO Add code to check the specification number.\r
- // Future releases of Schema may require that we process these files\r
- // differently.\r
- Log.wrn("Update Msa Header", "Incorrect data type for Specification");\r
- //this.jTextFieldSpecification.requestFocus();\r
- return false;\r
- }\r
-\r
- return true;\r
- }\r
-\r
- /**\r
- Save all components of Msa Header\r
- if exists msaHeader, set the value directly\r
- if not exists msaHeader, new an instance first\r
- \r
- **/\r
- public void save() {\r
- try {\r
- msaHeader.setSpecification(this.jTextFieldSpecification.getText());\r
- msa.setMsaHeader(msaHeader);\r
- msa.setModuleDefinitions(md);\r
- this.omt.setSaved(false);\r
- } catch (Exception e) {\r
- Log.wrn("Save Module", e.getMessage());\r
- Log.err("Save Module", e.getMessage());\r
- }\r
- }\r
-\r
- /**\r
- This method initializes Module type and Compontent type\r
- \r
- **/\r
- private void initFrame() {\r
- EnumerationData ed = new EnumerationData();\r
- Tools.generateComboBoxByVector(jComboBoxModuleType, ed.getVModuleType());\r
- this.setSelectedItems(ed.getVSupportedArchitectures());\r
- }\r
-\r
- /**\r
- Get MsaHeaderDocument.MsaHeader\r
- \r
- @return MsaHeaderDocument.MsaHeader\r
- \r
- **/\r
- public MsaHeaderDocument.MsaHeader getMsaHeader() {\r
- return msaHeader;\r
- }\r
-\r
- /**\r
- Set MsaHeaderDocument.MsaHeader\r
- \r
- @param msaHeader The input data of MsaHeaderDocument.MsaHeader\r
- \r
- **/\r
- public void setMsaHeader(MsaHeaderDocument.MsaHeader msaHeader) {\r
- this.msaHeader = msaHeader;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see java.awt.event.ComponentListener#componentResized(java.awt.event.ComponentEvent)\r
- * \r
- * Override componentResized to resize all components when frame's size is changed\r
- */\r
- public void componentResized(ComponentEvent arg0) {\r
- int intCurrentWidth = this.getJContentPane().getWidth();\r
- int intPreferredWidth = this.getJContentPane().getPreferredSize().width;\r
-\r
- Tools.resizeComponentWidth(this.jTextFieldBaseName, intCurrentWidth, intPreferredWidth);\r
- Tools.resizeComponentWidth(this.jTextFieldGuid, intCurrentWidth, intPreferredWidth);\r
- Tools.resizeComponentWidth(this.jTextFieldVersion, intCurrentWidth, intPreferredWidth);\r
- Tools.resizeComponentWidth(this.jScrollPaneLicense, intCurrentWidth, intPreferredWidth);\r
- Tools.resizeComponentWidth(this.jTextFieldURL, intCurrentWidth, intPreferredWidth);\r
- Tools.resizeComponentWidth(this.jScrollPaneCopyright, intCurrentWidth, intPreferredWidth);\r
- Tools.resizeComponentWidth(this.jScrollPaneDescription, intCurrentWidth, intPreferredWidth);\r
- Tools.resizeComponentWidth(this.jTextFieldSpecification, intCurrentWidth, intPreferredWidth);\r
- Tools.resizeComponentWidth(this.jTextFieldAbstract, intCurrentWidth, intPreferredWidth);\r
- Tools.resizeComponentWidth(this.jComboBoxModuleType, intCurrentWidth, intPreferredWidth);\r
- Tools.resizeComponentWidth(this.jTextFieldOutputFileBasename, intCurrentWidth, intPreferredWidth);\r
- Tools.resizeComponentWidth(this.jComboBoxPcdIsDriver, intCurrentWidth, intPreferredWidth);\r
-\r
- Tools.relocateComponentX(this.jButtonGenerateGuid, intCurrentWidth, intPreferredWidth,\r
- DataType.SPACE_TO_RIGHT_FOR_GENERATE_BUTTON);\r
- }\r
-\r
- public void focusLost(FocusEvent arg0) {\r
- if (this.msaHeader == null) {\r
- msaHeader = MsaHeaderDocument.MsaHeader.Factory.newInstance();\r
- }\r
-\r
- //\r
- // Check BaseName\r
- //\r
- if (arg0.getSource() == this.jTextFieldBaseName) {\r
- if (isEmpty(this.jTextFieldBaseName.getText())) {\r
- Log.wrn("Update Msa Header", "The Name must be entered!");\r
- //this.jTextFieldBaseName.requestFocus();\r
- return;\r
- }\r
- if (!DataValidation.isBaseName(this.jTextFieldBaseName.getText())) {\r
- Log.wrn("Update Msa Header", "Incorrect data type for Name, it must begin with an alpha character.");\r
- //this.jTextFieldBaseName.requestFocus();\r
- return;\r
- }\r
- if (!this.jTextFieldBaseName.getText().equals(msaHeader.getModuleName())) {\r
- this.msaHeader.setModuleName(this.jTextFieldBaseName.getText());\r
- } else {\r
- return;\r
- }\r
- }\r
-\r
- //\r
- // Check Module Type\r
- //\r
- if (arg0.getSource() == this.jComboBoxModuleType) {\r
- if (!jComboBoxModuleType.getSelectedItem().toString().equals(msaHeader.getModuleType().toString())) {\r
- msaHeader.setModuleType(ModuleTypeDef.Enum.forString(jComboBoxModuleType.getSelectedItem().toString()));\r
- } else {\r
- return;\r
- }\r
- }\r
-\r
- //\r
- // Check Guid\r
- //\r
- if (arg0.getSource() == this.jTextFieldGuid) {\r
- if (isEmpty(this.jTextFieldGuid.getText())) {\r
- Log.wrn("Update Msa Header", "Guid must be entered!");\r
- //this.jTextFieldGuid.requestFocus();\r
- return;\r
- }\r
- if (!DataValidation.isGuid((this.jTextFieldGuid).getText())) {\r
- Log.wrn("Update Msa Header", "Incorrect data type for Guid, it must be registry format. (8-4-4-4-12)");\r
- //this.jTextFieldGuid.requestFocus();\r
- return;\r
- }\r
- if (!this.jTextFieldGuid.getText().equals(msaHeader.getGuidValue())) {\r
- this.msaHeader.setGuidValue(this.jTextFieldGuid.getText());\r
- } else {\r
- return;\r
- }\r
- }\r
-\r
- //\r
- // Check Version\r
- //\r
- if (arg0.getSource() == this.jTextFieldVersion) {\r
- if (isEmpty(this.jTextFieldVersion.getText())) {\r
- Log.wrn("Update Msa Header", "Version must be entered!");\r
- //this.jTextFieldVersion.requestFocus();\r
- return;\r
- }\r
- if (!DataValidation.isVersion(this.jTextFieldVersion.getText())) {\r
- Log.wrn("Update Msa Header", "Incorrect data type for Version, it must start with a digit.");\r
- //this.jTextFieldVersion.requestFocus();\r
- return;\r
- }\r
- if (!this.jTextFieldVersion.getText().equals(msaHeader.getVersion())) {\r
- this.msaHeader.setVersion(this.jTextFieldVersion.getText());\r
- } else {\r
- return;\r
- }\r
- }\r
-\r
- //\r
- // Check Abstact\r
- //\r
- if (arg0.getSource() == this.jTextFieldAbstract) {\r
- if (isEmpty(this.jTextFieldAbstract.getText())) {\r
- Log.wrn("Update Msa Header", "Abstract must be entered!");\r
- //this.jTextFieldAbstract.requestFocus();\r
- return;\r
- }\r
- if (!DataValidation.isAbstract(this.jTextFieldAbstract.getText())) {\r
- Log.wrn("Update Msa Header", "Incorrect data type for Abstract, it must be sentence.");\r
- //this.jTextFieldAbstract.requestFocus();\r
- return;\r
- }\r
- if (!this.jTextFieldAbstract.getText().equals(msaHeader.getAbstract())) {\r
- this.msaHeader.setAbstract(this.jTextFieldAbstract.getText());\r
- } else {\r
- return;\r
- }\r
- }\r
-\r
- //\r
- // Check Description\r
- //\r
- if (arg0.getSource() == this.jTextAreaDescription) {\r
- if (isEmpty(this.jTextAreaDescription.getText())) {\r
- Log.wrn("Update Msa Header", "Description must be entered!");\r
- //this.jTextAreaDescription.requestFocus();\r
- return;\r
- }\r
- if (!this.jTextAreaDescription.getText().equals(msaHeader.getDescription())) {\r
- this.msaHeader.setDescription(this.jTextAreaDescription.getText());\r
- } else {\r
- return;\r
- }\r
- }\r
-\r
- //\r
- // Check Copyright\r
- //\r
- if (arg0.getSource() == this.jTextAreaCopyright) {\r
- if (isEmpty(this.jTextAreaCopyright.getText())) {\r
- Log.wrn("Update Msa Header", "Copyright must be entered!");\r
- //this.jTextFieldCopyright.requestFocus();\r
- return;\r
- }\r
- if (!this.jTextAreaCopyright.getText().equals(msaHeader.getCopyright())) {\r
- this.msaHeader.setCopyright(this.jTextAreaCopyright.getText());\r
- } else {\r
- return;\r
- }\r
- }\r
-\r
- //\r
- // Check License\r
- //\r
- if (arg0.getSource() == this.jTextAreaLicense) {\r
- if (isEmpty(this.jTextAreaLicense.getText())) {\r
- Log.wrn("Update Msa Header", "License must be entered!");\r
- //this.jTextAreaLicense.requestFocus();\r
- return;\r
- }\r
- if (this.msaHeader.getLicense() != null) {\r
- if (!this.jTextAreaLicense.getText().equals(msaHeader.getLicense().getStringValue())) {\r
- this.msaHeader.getLicense().setStringValue(this.jTextAreaLicense.getText());\r
- } else {\r
- return;\r
- }\r
- } else {\r
- License mLicense = License.Factory.newInstance();\r
- mLicense.setStringValue(this.jTextAreaLicense.getText());\r
- this.msaHeader.setLicense(mLicense);\r
- }\r
- }\r
-\r
- //\r
- // Check License URL\r
- //\r
- if (arg0.getSource() == this.jTextFieldURL) {\r
- if (!isEmpty(this.jTextFieldURL.getText())) {\r
- if (this.msaHeader.getLicense() == null) {\r
- License mLicense = License.Factory.newInstance();\r
- mLicense.setURL(this.jTextFieldURL.getText());\r
- this.msaHeader.setLicense(mLicense);\r
- } else {\r
- if (!this.jTextFieldURL.getText().equals(msaHeader.getLicense().getURL())) {\r
- this.msaHeader.getLicense().setURL(this.jTextFieldURL.getText());\r
- } else {\r
- return;\r
- }\r
- }\r
- }\r
- }\r
-\r
- //\r
- // Check Output File Basename\r
- //\r
- if (arg0.getSource() == this.jTextFieldOutputFileBasename) {\r
- if (isEmpty(this.jTextFieldOutputFileBasename.getText())) {\r
- Log.wrn("Update Msa Header", "Output File Basename must be entered!");\r
- // jTextFieldOutputFileBasename.removeFocusListener(this);\r
- // jTextFieldOutputFileBasename.requestFocus();\r
- // jTextFieldOutputFileBasename.addFocusListener(this);\r
- return;\r
- }\r
- if (!this.jTextFieldOutputFileBasename.getText().equals(md.getOutputFileBasename())) {\r
- this.md.setOutputFileBasename(this.jTextFieldOutputFileBasename.getText());\r
- } else {\r
- return;\r
- }\r
- }\r
-\r
- //\r
- // Check Binary Module Type\r
- //\r
- if (arg0.getSource() == this.jRadioButtonBinaryModuleTrue) {\r
- if (jRadioButtonBinaryModuleTrue.isSelected()) {\r
- if (md.getBinaryModule()) {\r
- return;\r
- } else {\r
- md.setBinaryModule(true);\r
- }\r
- }\r
- }\r
-\r
- //\r
- // Check Binary Module Type\r
- //\r
- if (arg0.getSource() == this.jRadioButtonBinaryModuleFalse) {\r
- if (jRadioButtonBinaryModuleFalse.isSelected()) {\r
- if (md.getBinaryModule()) {\r
- md.setBinaryModule(false);\r
- } else {\r
- return;\r
- }\r
- }\r
- }\r
-\r
- //\r
- // Check Supported Arch\r
- //\r
- if (arg0.getSource() == this.jCheckBoxArm || arg0.getSource() == this.jCheckBoxEbc\r
- || arg0.getSource() == this.jCheckBoxIa32 || arg0.getSource() == this.jCheckBoxIpf\r
- || arg0.getSource() == this.jCheckBoxPpc || arg0.getSource() == this.jCheckBoxX64) {\r
- if (!this.getSelectedItemsString().equals(md.getSupportedArchitectures().toString())) {\r
- md.setSupportedArchitectures(this.getSelectedItemsVector());\r
- } else {\r
- return;\r
- }\r
- }\r
-\r
- //\r
- // Check Pcd is Driver\r
- //\r
- if (arg0.getSource() == this.jCheckBoxPcd || arg0.getSource() == this.jComboBoxPcdIsDriver) {\r
- if ((this.ex == null) && this.jCheckBoxPcd.isSelected()) {\r
- this.ex = ExternsDocument.Externs.Factory.newInstance();\r
- this.ex.setPcdIsDriver(PcdDriverTypes.Enum.forString(this.jComboBoxPcdIsDriver.getSelectedItem()\r
- .toString()));\r
- this.msa.setExterns(this.ex);\r
- } else if ((this.ex != null) && (this.ex.getPcdIsDriver() == null) && this.jCheckBoxPcd.isSelected()) {\r
- this.ex.setPcdIsDriver(PcdDriverTypes.Enum.forString(this.jComboBoxPcdIsDriver.getSelectedItem()\r
- .toString()));\r
- this.msa.setExterns(this.ex);\r
- } else if ((this.ex != null) && (this.ex.getPcdIsDriver() != null)) {\r
- if (this.jCheckBoxPcd.isSelected()\r
- && !this.jComboBoxPcdIsDriver.getSelectedItem().toString().equals(\r
- this.ex.getPcdIsDriver()\r
- .toString())) {\r
- this.ex.setPcdIsDriver(PcdDriverTypes.Enum.forString(this.jComboBoxPcdIsDriver.getSelectedItem()\r
- .toString()));\r
- this.msa.setExterns(this.ex);\r
- }\r
- if (!this.jCheckBoxPcd.isSelected()) {\r
- ExternsDocument.Externs newEx = ExternsDocument.Externs.Factory.newInstance();\r
- if (this.ex.getExternList() != null) {\r
- for (int index = 0; index < this.ex.getExternList().size(); index++) {\r
- newEx.addNewExtern();\r
- newEx.setExternArray(index, this.ex.getExternArray(index));\r
- }\r
- }\r
- if (this.ex.getSpecificationList() != null) {\r
- for (int index = 0; index < this.ex.getSpecificationList().size(); index++) {\r
- newEx.addNewSpecification();\r
- newEx.setSpecificationArray(index, this.ex.getSpecificationArray(index));\r
- }\r
- }\r
- if (this.ex.getTianoR8FlashMapH()) {\r
- newEx.setTianoR8FlashMapH(this.ex.getTianoR8FlashMapH());\r
- }\r
- this.ex = newEx;\r
- this.msa.setExterns(this.ex);\r
- }\r
- }\r
- }\r
-\r
- //\r
- // Check Flash Map\r
- //\r
- if (arg0.getSource() == this.jCheckBoxFlashMap) {\r
- if ((this.ex == null) && this.jCheckBoxFlashMap.isSelected()) {\r
- this.ex = ExternsDocument.Externs.Factory.newInstance();\r
- this.ex.setTianoR8FlashMapH(this.jCheckBoxFlashMap.isSelected());\r
- this.msa.setExterns(this.ex);\r
- } else if ((this.ex != null) && this.jCheckBoxFlashMap.isSelected()) {\r
- this.ex.setTianoR8FlashMapH(this.jCheckBoxFlashMap.isSelected());\r
- this.msa.setExterns(this.ex);\r
- } else if ((this.ex != null) && !this.jCheckBoxFlashMap.isSelected()) {\r
- ExternsDocument.Externs newEx = ExternsDocument.Externs.Factory.newInstance();\r
- if (this.ex.getExternList() != null) {\r
- for (int index = 0; index < this.ex.getExternList().size(); index++) {\r
- newEx.addNewExtern();\r
- newEx.setExternArray(index, this.ex.getExternArray(index));\r
- }\r
- }\r
- if (this.ex.getSpecificationList() != null) {\r
- for (int index = 0; index < this.ex.getSpecificationList().size(); index++) {\r
- newEx.addNewSpecification();\r
- newEx.setSpecificationArray(index, this.ex.getSpecificationArray(index));\r
- }\r
- }\r
- if (this.ex.getPcdIsDriver() != null) {\r
- newEx.setPcdIsDriver(this.ex.getPcdIsDriver());\r
- }\r
- this.ex = newEx;\r
- this.msa.setExterns(this.ex);\r
- }\r
- }\r
-\r
- this.save();\r
- }\r
-\r
- private Vector<String> getSelectedItemsVector() {\r
- Vector<String> v = new Vector<String>();\r
- if (this.jCheckBoxIa32.isSelected()) {\r
- v.addElement(jCheckBoxIa32.getText());\r
- }\r
- if (this.jCheckBoxX64.isSelected()) {\r
- v.addElement(jCheckBoxX64.getText());\r
- }\r
- if (this.jCheckBoxIpf.isSelected()) {\r
- v.addElement(jCheckBoxIpf.getText());\r
- }\r
- if (this.jCheckBoxEbc.isSelected()) {\r
- v.addElement(jCheckBoxEbc.getText());\r
- }\r
- if (this.jCheckBoxArm.isSelected()) {\r
- v.addElement(jCheckBoxArm.getText());\r
- }\r
- if (this.jCheckBoxPpc.isSelected()) {\r
- v.addElement(jCheckBoxPpc.getText());\r
- }\r
- return v;\r
- }\r
-\r
- private String getSelectedItemsString() {\r
- String s = "";\r
- if (this.jCheckBoxIa32.isSelected()) {\r
- s = s + jCheckBoxIa32.getText() + " ";\r
- }\r
- if (this.jCheckBoxX64.isSelected()) {\r
- s = s + jCheckBoxX64.getText() + " ";\r
- }\r
- if (this.jCheckBoxIpf.isSelected()) {\r
- s = s + jCheckBoxIpf.getText() + " ";\r
- }\r
- if (this.jCheckBoxEbc.isSelected()) {\r
- s = s + jCheckBoxEbc.getText() + " ";\r
- }\r
- if (this.jCheckBoxArm.isSelected()) {\r
- s = s + jCheckBoxArm.getText() + " ";\r
- }\r
- if (this.jCheckBoxPpc.isSelected()) {\r
- s = s + jCheckBoxPpc.getText() + " ";\r
- }\r
- return s.trim();\r
- }\r
-\r
- private void setAllItemsSelected(boolean isSelected) {\r
- this.jCheckBoxIa32.setSelected(isSelected);\r
- this.jCheckBoxX64.setSelected(isSelected);\r
- this.jCheckBoxIpf.setSelected(isSelected);\r
- this.jCheckBoxEbc.setSelected(isSelected);\r
- this.jCheckBoxArm.setSelected(isSelected);\r
- this.jCheckBoxPpc.setSelected(isSelected);\r
- }\r
-\r
- private void setSelectedItems(Vector<String> v) {\r
- setAllItemsSelected(false);\r
- if (v != null) {\r
- for (int index = 0; index < v.size(); index++) {\r
- if (v.get(index).equals(this.jCheckBoxIa32.getText())) {\r
- this.jCheckBoxIa32.setSelected(true);\r
- continue;\r
- }\r
- if (v.get(index).equals(this.jCheckBoxIpf.getText())) {\r
- this.jCheckBoxIpf.setSelected(true);\r
- continue;\r
- }\r
- if (v.get(index).equals(this.jCheckBoxX64.getText())) {\r
- this.jCheckBoxX64.setSelected(true);\r
- continue;\r
- }\r
- if (v.get(index).equals(this.jCheckBoxEbc.getText())) {\r
- this.jCheckBoxEbc.setSelected(true);\r
- continue;\r
- }\r
- if (v.get(index).equals(this.jCheckBoxArm.getText())) {\r
- this.jCheckBoxArm.setSelected(true);\r
- continue;\r
- }\r
- if (v.get(index).equals(this.jCheckBoxPpc.getText())) {\r
- this.jCheckBoxPpc.setSelected(true);\r
- continue;\r
- }\r
- }\r
- }\r
- }\r
-\r
- /**\r
- * This method initializes jCheckBoxPcd \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBoxPcd() {\r
- if (jCheckBoxPcd == null) {\r
- jCheckBoxPcd = new JCheckBox();\r
- jCheckBoxPcd.setBounds(new java.awt.Rectangle(labelCol, 530, labelWidth, 20));\r
- jCheckBoxPcd.setText("Is this a PCD Driver?");\r
- jCheckBoxPcd.addFocusListener(this);\r
- jCheckBoxPcd.addActionListener(this);\r
- }\r
- return jCheckBoxPcd;\r
- }\r
-\r
- /**\r
- * This method initializes jCheckBoxFlashMap \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBoxFlashMap() {\r
- if (jCheckBoxFlashMap == null) {\r
- jCheckBoxFlashMap = new JCheckBox();\r
- jCheckBoxFlashMap.setBounds(new java.awt.Rectangle(labelCol, 555, 480, 20));\r
- jCheckBoxFlashMap.setText("Does this module require a legacy FlashMap header file?");\r
- jCheckBoxFlashMap.addFocusListener(this);\r
- }\r
- return jCheckBoxFlashMap;\r
- }\r
-\r
- /**\r
- * This method initializes jRadioButtonBinaryModuleTrue \r
- * \r
- * @return javax.swing.JRadioButton \r
- */\r
- private JRadioButton getJRadioButtonBinaryModuleTrue() {\r
- if (jRadioButtonBinaryModuleTrue == null) {\r
- jRadioButtonBinaryModuleTrue = new JRadioButton();\r
- jRadioButtonBinaryModuleTrue.setBounds(new java.awt.Rectangle(valueCol, 480, 140, 20));\r
- jRadioButtonBinaryModuleTrue.setText("True");\r
- jRadioButtonBinaryModuleTrue.setSelected(true);\r
- jRadioButtonBinaryModuleTrue.addFocusListener(this);\r
- jRadioButtonBinaryModuleTrue.setToolTipText("<html>Modules are either source modules <br>"\r
- + "which can be compiled or binary <br>"\r
- + "modules which are linked. <br>"\r
- + "A module cannot contain both. <br>"\r
- + "The GUID numbers should be identical <br>"\r
- + "for a binary and source MSA, <br>"\r
- + "however the BINARY MSA should have <br>"\r
- + "a higher version number.</html>");\r
- }\r
- return jRadioButtonBinaryModuleTrue;\r
- }\r
-\r
- /**\r
- * This method initializes jRadioButtonBinaryModuleFalse \r
- * \r
- * @return javax.swing.JRadioButton \r
- */\r
- private JRadioButton getJRadioButtonBinaryModuleFalse() {\r
- if (jRadioButtonBinaryModuleFalse == null) {\r
- jRadioButtonBinaryModuleFalse = new JRadioButton();\r
- jRadioButtonBinaryModuleFalse.setBounds(new java.awt.Rectangle(valueCol + 140, 480, 140, 20));\r
- jRadioButtonBinaryModuleFalse.setText("False");\r
- jRadioButtonBinaryModuleFalse.addFocusListener(this);\r
- jRadioButtonBinaryModuleFalse.setToolTipText("<html>Modules are either source modules <br>"\r
- + "which can be compiled or binary <br>"\r
- + "modules which are linked. <br>"\r
- + "A module cannot contain both. <br>"\r
- + "The GUID numbers should be identical <br>"\r
- + "for a binary and source MSA, <br>"\r
- + "however the BINARY MSA should have <br>"\r
- + "a higher version number.</html>");\r
- }\r
- return jRadioButtonBinaryModuleFalse;\r
- }\r
-}\r