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.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.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
///\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
\r
private JComboBox jComboBoxModuleType = null;\r
\r
+ private JLabel jLabelArch = null;\r
+\r
+ private JLabel jLabelBinaryModule = null;\r
+\r
+ private JComboBox jComboBoxBinaryModule = 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 jStarLabel12 = null;\r
\r
- private MsaHeaderDocument.MsaHeader msaHeader = null;\r
+ private StarLabel jStarLabel13 = null;\r
\r
- private ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = null;\r
+ private StarLabel jStarLabel14 = null;\r
\r
- private JTextField jTextFieldCopyright = null;\r
+ private JCheckBox jCheckBoxIa32 = null;\r
\r
- private JLabel jLabelURL = null;\r
+ private JCheckBox jCheckBoxX64 = null;\r
\r
- private JTextField jTextFieldURL = null;\r
+ private JCheckBox jCheckBoxIpf = null;\r
\r
- private JScrollPane jScrollPane = null;\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
+ /**\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
private JTextField getJTextFieldBaseName() {\r
if (jTextFieldBaseName == null) {\r
jTextFieldBaseName = new JTextField();\r
- jTextFieldBaseName.setBounds(new java.awt.Rectangle(160, 10, 320, 20));\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("An brief Identifier, such as USB I/O Library, of the module");\r
+ jTextFieldBaseName.setToolTipText("A brief Identifier, such as USB I/O Library, of the module");\r
}\r
return jTextFieldBaseName;\r
}\r
if (jTextFieldGuid == null) {\r
jTextFieldGuid = new JTextField();\r
jTextFieldGuid.setPreferredSize(new java.awt.Dimension(250, 20));\r
- jTextFieldGuid.setLocation(new java.awt.Point(160, 60));\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 (8-4-4-4-12)");\r
+ jTextFieldGuid.setToolTipText("Guaranteed Unique Identification Number, Registry Format (8-4-4-4-12)");\r
}\r
return jTextFieldGuid;\r
}\r
private JTextField getJTextFieldVersion() {\r
if (jTextFieldVersion == null) {\r
jTextFieldVersion = new JTextField();\r
- jTextFieldVersion.setPreferredSize(new java.awt.Dimension(320, 20));\r
- jTextFieldVersion.setLocation(new java.awt.Point(160, 85));\r
- jTextFieldVersion.setSize(new java.awt.Dimension(320, 20));\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");\r
+ jTextFieldVersion.setToolTipText("A Version Number, 1.0, 1, 1.01, 1.0.1");\r
}\r
return jTextFieldVersion;\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(415, 60));\r
+ jButtonGenerateGuid.setLocation(new java.awt.Point(genGuidCol, 60));\r
jButtonGenerateGuid.setText("GEN");\r
jButtonGenerateGuid.addActionListener(this);\r
}\r
jTextAreaLicense.setWrapStyleWord(true);\r
jTextAreaLicense.setSelectionStart(0);\r
jTextAreaLicense.setSelectionEnd(0);\r
- jTextAreaLicense.setToolTipText("The License for this file");\r
+ jTextAreaLicense.setToolTipText("The License for this Module.");\r
}\r
return jTextAreaLicense;\r
}\r
jTextAreaDescription = new JTextArea();\r
jTextAreaDescription.setLineWrap(true);\r
jTextAreaDescription.addFocusListener(this);\r
- jTextAreaDescription.setToolTipText("A verbose description of the module");\r
+ jTextAreaDescription.setToolTipText("A verbose description of the module.");\r
jTextAreaDescription.setWrapStyleWord(true);\r
jTextAreaDescription.setSelectionStart(0);\r
jTextAreaDescription.setSelectionEnd(0);\r
**/\r
private JTextField getJTextFieldSpecification() {\r
if (jTextFieldSpecification == null) {\r
+ int specWidth = valueWidth + 50;\r
jTextFieldSpecification = new JTextField();\r
- jTextFieldSpecification.setPreferredSize(new java.awt.Dimension(320, 20));\r
+\r
+ jTextFieldSpecification.setPreferredSize(new java.awt.Dimension(specWidth, 20));\r
jTextFieldSpecification.setText("FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052");\r
- jTextFieldSpecification.setSize(new java.awt.Dimension(320, 20));\r
- jTextFieldSpecification.setLocation(new java.awt.Point(160, 435));\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
if (jScrollPaneLicense == null) {\r
jScrollPaneLicense = new JScrollPane();\r
jScrollPaneLicense.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
- jScrollPaneLicense.setSize(new java.awt.Dimension(320, 120));\r
- jScrollPaneLicense.setLocation(new java.awt.Point(160, 285));\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(320, 120));\r
+ jScrollPaneLicense.setPreferredSize(new java.awt.Dimension(valueWidth, 120));\r
}\r
return jScrollPaneLicense;\r
}\r
if (jScrollPaneDescription == null) {\r
jScrollPaneDescription = new JScrollPane();\r
jScrollPaneDescription.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
- jScrollPaneDescription.setSize(new java.awt.Dimension(320, 120));\r
- jScrollPaneDescription.setLocation(new java.awt.Point(160, 135));\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(320, 120));\r
+ jScrollPaneDescription.setPreferredSize(new java.awt.Dimension(valueWidth, 120));\r
}\r
return jScrollPaneDescription;\r
}\r
private JTextField getJTextFieldAbstract() {\r
if (jTextFieldAbstract == null) {\r
jTextFieldAbstract = new JTextField();\r
- jTextFieldAbstract.setPreferredSize(new java.awt.Dimension(320, 20));\r
- jTextFieldAbstract.setLocation(new java.awt.Point(160, 110));\r
- jTextFieldAbstract.setSize(new java.awt.Dimension(320, 20));\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
+ jTextFieldAbstract.setToolTipText("A one sentence description of this module.");\r
}\r
return jTextFieldAbstract;\r
}\r
private JComboBox getJComboBoxModuleType() {\r
if (jComboBoxModuleType == null) {\r
jComboBoxModuleType = new JComboBox();\r
- jComboBoxModuleType.setBounds(new java.awt.Rectangle(160, 35, 320, 20));\r
- jComboBoxModuleType.setPreferredSize(new java.awt.Dimension(320, 20));\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 jTextFieldCopyright \r
+ This method initializes jTextFieldURL \r
\r
- @return javax.swing.JTextField jTextFieldCopyright\r
+ @return javax.swing.JTextField \r
\r
**/\r
- private JTextField getJTextFieldCopyright() {\r
- if (jTextFieldCopyright == null) {\r
- jTextFieldCopyright = new JTextField();\r
- jTextFieldCopyright.setPreferredSize(new java.awt.Dimension(320, 20));\r
- jTextFieldCopyright.setLocation(new java.awt.Point(160, 260));\r
- jTextFieldCopyright.setSize(new java.awt.Dimension(320, 20));\r
- jTextFieldCopyright.addFocusListener(this);\r
- jTextFieldCopyright.setToolTipText("One or more copyright lines");\r
- }\r
- return jTextFieldCopyright;\r
- }\r
-\r
- /**\r
- * This method initializes jTextFieldURL \r
- * \r
- * @return javax.swing.JTextField \r
- */\r
private JTextField getJTextFieldURL() {\r
if (jTextFieldURL == null) {\r
jTextFieldURL = new JTextField();\r
- jTextFieldURL.setPreferredSize(new java.awt.Dimension(320, 20));\r
- jTextFieldURL.setLocation(new java.awt.Point(160, 410));\r
- jTextFieldURL.setSize(new java.awt.Dimension(320, 20));\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
+ 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
+ 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
return jScrollPane;\r
}\r
\r
- public static void main(String[] args) {\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 jComboBoxBinaryModule \r
+ * \r
+ * @return javax.swing.JComboBox \r
+ */\r
+ private JComboBox getJComboBoxBinaryModule() {\r
+ if (jComboBoxBinaryModule == null) {\r
+ jComboBoxBinaryModule = new JComboBox();\r
+ jComboBoxBinaryModule.setBounds(new java.awt.Rectangle(valueCol, 480, valueWidth, 20));\r
+ jComboBoxBinaryModule.setPreferredSize(new java.awt.Dimension(valueWidth, 20));\r
+ jComboBoxBinaryModule.addFocusListener(this);\r
+ jComboBoxBinaryModule.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 jComboBoxBinaryModule;\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
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
public void setViewMode(boolean isView) {\r
- //this.jButtonOk.setVisible(false);\r
- //this.jButtonCancel.setVisible(false);\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.jTextFieldCopyright.setEnabled(!isView);\r
+ this.jTextAreaCopyright.setEnabled(!isView);\r
this.jTextAreaDescription.setEnabled(!isView);\r
this.jTextFieldSpecification.setEnabled(!isView);\r
this.jTextFieldAbstract.setEnabled(!isView);\r
\r
**/\r
private void init() {\r
- this.setSize(500, 515);\r
- this.setPreferredSize(new java.awt.Dimension(490, 520));\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
jTextAreaDescription.setSelectionEnd(0);\r
}\r
if (this.msaHeader.getCopyright() != null) {\r
- this.jTextFieldCopyright.setText(this.msaHeader.getCopyright());\r
+ this.jTextAreaCopyright.setText(this.msaHeader.getCopyright());\r
}\r
if (this.msaHeader.getLicense() != null) {\r
this.jTextAreaLicense.setText(this.msaHeader.getLicense().getStringValue());\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.jComboBoxBinaryModule.setSelectedIndex(1);\r
+ } else {\r
+ this.jComboBoxBinaryModule.setSelectedIndex(0);\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
\r
jLabelURL = new JLabel();\r
jLabelURL.setText("License URL");\r
- jLabelURL.setLocation(new java.awt.Point(15, 410));\r
- jLabelURL.setSize(new java.awt.Dimension(140, 20));\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(15, 10, 140, 20));\r
+ jLabelBaseName.setBounds(new java.awt.Rectangle(labelCol, 10, labelWidth, 20));\r
jLabelModuleType = new JLabel();\r
- jLabelModuleType.setBounds(new java.awt.Rectangle(15, 35, 140, 20));\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(15, 60));\r
- jLabelGuid.setSize(new java.awt.Dimension(140, 20));\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(15, 85));\r
- jLabelVersion.setSize(new java.awt.Dimension(140, 20));\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(15, 110));\r
- jLabelAbstract.setSize(new java.awt.Dimension(140, 20));\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(15, 135));\r
- jLabelDescription.setSize(new java.awt.Dimension(140, 20));\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(15, 260));\r
- jLabelCopyright.setSize(new java.awt.Dimension(140, 20));\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(15, 285));\r
- jLabelLicense.setSize(new java.awt.Dimension(140, 20));\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(14, 435));\r
- jLabelSpecification.setSize(new java.awt.Dimension(140, 20));\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(490, 470));\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(jLabelLicense, null);\r
jContentPane.add(jLabelCopyright, null);\r
jContentPane.add(jLabelDescription, null);\r
- jContentPane.add(jLabelSpecification, null);\r
jContentPane.add(getJTextFieldSpecification(), null);\r
jContentPane.add(getJButtonOk(), null);\r
jContentPane.add(getJButtonCancel(), null);\r
jContentPane.add(getJComboBoxModuleType(), null);\r
jContentPane.add(jLabelURL, null);\r
jContentPane.add(getJTextFieldURL(), null);\r
- jContentPane.add(getJTextFieldCopyright(), null);\r
+ jContentPane.add(jLabelOutputFileBasename, null);\r
+ jContentPane.add(getJTextFieldOutputFileBasename(), null);\r
+ jContentPane.add(jLabelBinaryModule, null);\r
+ jContentPane.add(getJComboBoxBinaryModule(), 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
jStarLabel7 = new StarLabel();\r
jStarLabel7.setLocation(new java.awt.Point(0, 260));\r
jStarLabel8 = new StarLabel();\r
- jStarLabel8.setLocation(new java.awt.Point(0, 285));\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, 435));\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(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
+ \r
+ jContentPane.add(getJCheckBoxPcd(), null);\r
+ jContentPane.add(getJComboBoxPcdIsDriver(), null);\r
+ \r
+ jContentPane.add(getJCheckBoxFlashMap(), null);\r
}\r
return jContentPane;\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
// Check Base Name\r
//\r
if (isEmpty(this.jTextFieldBaseName.getText())) {\r
- Log.err("Base Name couldn't be empty");\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.err("Incorrect data type for Base Name");\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
// Check Guid\r
//\r
if (isEmpty(this.jTextFieldGuid.getText())) {\r
- Log.err("Guid Value couldn't be empty");\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.err("Incorrect data type for Guid");\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
// Check Version\r
//\r
if (isEmpty(this.jTextFieldVersion.getText())) {\r
- Log.err("Version couldn't be empty");\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.err("Incorrect data type for Version");\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
// Check Abstact\r
//\r
if (isEmpty(this.jTextFieldAbstract.getText())) {\r
- Log.err("Abstract couldn't be empty");\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.err("Incorrect data type for Abstract");\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
// Check Description\r
//\r
if (isEmpty(this.jTextAreaDescription.getText())) {\r
- Log.err("Description couldn't be empty");\r
+ Log.wrn("Update Msa Header", "Description must be entered!");\r
//this.jTextAreaDescription.requestFocus();\r
return false;\r
}\r
//\r
// Check Copyright\r
//\r
- if (isEmpty(this.jTextFieldCopyright.getText())) {\r
- Log.err("Copyright couldn't be empty");\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
// Check License\r
//\r
if (isEmpty(this.jTextAreaLicense.getText())) {\r
- Log.err("License couldn't be empty");\r
+ Log.wrn("Update Msa Header", "License must be entered!");\r
//this.jTextAreaLicense.requestFocus();\r
return false;\r
}\r
// Check Specification\r
//\r
if (isEmpty(this.jTextFieldSpecification.getText())) {\r
- Log.err("Specification couldn't be empty");\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
- Log.err("Incorrect data type for Specification");\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
public void save() {\r
try {\r
- // this.msaHeader.setModuleName(this.jTextFieldBaseName.getText());\r
- // this.msaHeader.setModuleType(ModuleTypeDef.Enum.forString(this.jComboBoxModuleType.getSelectedItem()\r
- // .toString()));\r
- // this.msaHeader.setGuidValue(this.jTextFieldGuid.getText());\r
- // this.msaHeader.setVersion(this.jTextFieldVersion.getText());\r
- // this.msaHeader.setAbstract(this.jTextFieldAbstract.getText());\r
- // this.msaHeader.setDescription(this.jTextAreaDescription.getText());\r
- // this.msaHeader.setCopyright(this.jTextFieldCopyright.getText());\r
- // if (this.msaHeader.getLicense() != null) {\r
- // this.msaHeader.getLicense().setStringValue(this.jTextAreaLicense.getText());\r
- // } else {\r
- // License mLicense = License.Factory.newInstance();\r
- // mLicense.setStringValue(this.jTextAreaLicense.getText());\r
- // this.msaHeader.setLicense(mLicense);\r
- // }\r
- // if (!isEmpty(this.jTextFieldURL.getText())) {\r
- // this.msaHeader.getLicense().setURL(this.jTextFieldURL.getText());\r
- // }\r
- // this.msaHeader.setSpecification(this.jTextFieldSpecification.getText());\r
-\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
private void initFrame() {\r
EnumerationData ed = new EnumerationData();\r
Tools.generateComboBoxByVector(jComboBoxModuleType, ed.getVModuleType());\r
+ Tools.generateComboBoxByVector(jComboBoxBinaryModule, ed.getVBoolean());\r
+ this.setSelectedItems(ed.getVSupportedArchitectures());\r
}\r
\r
/**\r
int intCurrentWidth = this.getJContentPane().getWidth();\r
int intPreferredWidth = this.getJContentPane().getPreferredSize().width;\r
\r
- resizeComponentWidth(this.jTextFieldBaseName, intCurrentWidth, intPreferredWidth);\r
- resizeComponentWidth(this.jTextFieldGuid, intCurrentWidth, intPreferredWidth);\r
- resizeComponentWidth(this.jTextFieldVersion, intCurrentWidth, intPreferredWidth);\r
- resizeComponentWidth(this.jScrollPaneLicense, intCurrentWidth, intPreferredWidth);\r
- resizeComponentWidth(this.jTextFieldURL, intCurrentWidth, intPreferredWidth);\r
- resizeComponentWidth(this.jTextFieldCopyright, intCurrentWidth, intPreferredWidth);\r
- resizeComponentWidth(this.jScrollPaneDescription, intCurrentWidth, intPreferredWidth);\r
- resizeComponentWidth(this.jTextFieldSpecification, intCurrentWidth, intPreferredWidth);\r
- resizeComponentWidth(this.jTextFieldAbstract, intCurrentWidth, intPreferredWidth);\r
- resizeComponentWidth(this.jComboBoxModuleType, intCurrentWidth, intPreferredWidth);\r
- relocateComponentX(this.jButtonGenerateGuid, intCurrentWidth, intPreferredWidth,\r
- DataType.SPACE_TO_RIGHT_FOR_GENERATE_BUTTON);\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.jComboBoxBinaryModule, 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 - 5);\r
}\r
\r
public void focusLost(FocusEvent arg0) {\r
//\r
if (arg0.getSource() == this.jTextFieldBaseName) {\r
if (isEmpty(this.jTextFieldBaseName.getText())) {\r
- Log.err("Base Name couldn't be empty");\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.err("Incorrect data type for Base Name");\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
//\r
if (arg0.getSource() == this.jTextFieldGuid) {\r
if (isEmpty(this.jTextFieldGuid.getText())) {\r
- Log.err("Guid Value couldn't be empty");\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.err("Incorrect data type for Guid");\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
//\r
if (arg0.getSource() == this.jTextFieldVersion) {\r
if (isEmpty(this.jTextFieldVersion.getText())) {\r
- Log.err("Version couldn't be empty");\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.err("Incorrect data type for Version");\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
//\r
if (arg0.getSource() == this.jTextFieldAbstract) {\r
if (isEmpty(this.jTextFieldAbstract.getText())) {\r
- Log.err("Abstract couldn't be empty");\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.err("Incorrect data type for Abstract");\r
+ Log.wrn("Update Msa Header", "Incorrect data type for Abstract, it must be sentence.");\r
//this.jTextFieldAbstract.requestFocus();\r
return;\r
}\r
//\r
if (arg0.getSource() == this.jTextAreaDescription) {\r
if (isEmpty(this.jTextAreaDescription.getText())) {\r
- Log.err("Description couldn't be empty");\r
+ Log.wrn("Update Msa Header", "Description must be entered!");\r
//this.jTextAreaDescription.requestFocus();\r
return;\r
}\r
//\r
// Check Copyright\r
//\r
- if (arg0.getSource() == this.jTextFieldCopyright) {\r
- if (isEmpty(this.jTextFieldCopyright.getText())) {\r
- Log.err("Copyright couldn't be empty");\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.jTextFieldCopyright.getText().equals(msaHeader.getCopyright())) {\r
- this.msaHeader.setCopyright(this.jTextFieldCopyright.getText());\r
+ if (!this.jTextAreaCopyright.getText().equals(msaHeader.getCopyright())) {\r
+ this.msaHeader.setCopyright(this.jTextAreaCopyright.getText());\r
} else {\r
return;\r
}\r
//\r
if (arg0.getSource() == this.jTextAreaLicense) {\r
if (isEmpty(this.jTextAreaLicense.getText())) {\r
- Log.err("License couldn't be empty");\r
+ Log.wrn("Update Msa Header", "License must be entered!");\r
//this.jTextAreaLicense.requestFocus();\r
return;\r
}\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.jComboBoxBinaryModule) {\r
+ if (jComboBoxBinaryModule.getSelectedItem().toString().equals(DataType.TRUE)) {\r
+ if (md.getBinaryModule()) {\r
+ return;\r
+ } else {\r
+ md.setBinaryModule(true);\r
+ }\r
+ } else if (jComboBoxBinaryModule.getSelectedItem().toString().equals(DataType.FALSE)) {\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("Are you using a legacy FlashMap header file?");\r
+ jCheckBoxFlashMap.addFocusListener(this);\r
+ }\r
+ return jCheckBoxFlashMap;\r
+ }\r
+ \r
}\r