+++ /dev/null
-/** @file\r
- Java class PackageNew is the top level GUI for create spd 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
-package org.tianocore.packaging;\r
-\r
-import java.awt.Dimension;\r
-import java.awt.Toolkit;\r
-import java.awt.event.ActionEvent;\r
-import java.awt.event.ActionListener;\r
-import java.text.SimpleDateFormat;\r
-import java.util.Date;\r
-\r
-import javax.swing.JFrame;\r
-import javax.swing.JPanel;\r
-import javax.swing.JLabel;\r
-import javax.swing.JTextField;\r
-import javax.swing.JButton;\r
-import javax.swing.JTextArea;\r
-import javax.swing.JScrollPane;\r
-import javax.swing.JComboBox;\r
-\r
-import org.tianocore.common.Tools;\r
-import org.tianocore.packaging.common.ui.StarLabel;\r
-\r
-/**\r
- This class contains GUI components to show various GUIs for creating spd file elements\r
- \r
- @since PackageEditor 1.0\r
-**/\r
-public class PackageNew extends JFrame implements ActionListener {\r
-\r
- private JPanel jContentPane = null; // @jve:decl-index=0:visual-constraint="128,4"\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 JTextArea jTextAreaCopyright = null;\r
-\r
- private JLabel jLabelDescription = null;\r
-\r
- private JTextArea jTextAreaDescription = 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 JLabel jLabelCompontentType = null;\r
-\r
- private JComboBox jComboBox1 = null;\r
-\r
- private JComboBox jComboBoxModuleType = null;\r
-\r
- private StarLabel jStarLabel1 = null;\r
-\r
- private StarLabel jStarLabel2 = null;\r
-\r
- private StarLabel jStarLabel3 = 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 JLabel jLabelURL = null;\r
-\r
- private JTextField jTextFieldAbstractURL = null;\r
-\r
- private JLabel jLabel = null;\r
-\r
- private JComboBox jComboBox = null;\r
-\r
- private SpdFileContents sfc = null;\r
-\r
- /**\r
- This method initializes this\r
- \r
- **/\r
- private void initialize() {\r
- this.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);\r
-\r
- }\r
-\r
- /**\r
- This method initializes jTextFieldBaseName \r
- \r
- @return javax.swing.JTextField \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
- }\r
- return jTextFieldBaseName;\r
- }\r
-\r
- /**\r
- This method initializes jTextFieldGuid \r
- \r
- @return javax.swing.JTextField \r
- **/\r
- private JTextField getJTextFieldGuid() {\r
- if (jTextFieldGuid == null) {\r
- jTextFieldGuid = new JTextField();\r
- jTextFieldGuid.setBounds(new java.awt.Rectangle(160, 35, 240, 20));\r
- }\r
- return jTextFieldGuid;\r
- }\r
-\r
- /**\r
- This method initializes jTextFieldVersion \r
- \r
- @return javax.swing.JTextField \r
- **/\r
- private JTextField getJTextFieldVersion() {\r
- if (jTextFieldVersion == null) {\r
- jTextFieldVersion = new JTextField();\r
- jTextFieldVersion.setBounds(new java.awt.Rectangle(160, 60, 320, 20));\r
- }\r
- return jTextFieldVersion;\r
- }\r
-\r
- /**\r
- This method initializes jButtonGenerateGuid \r
- \r
- @return javax.swing.JButton \r
- **/\r
- private JButton getJButtonGenerateGuid() {\r
- if (jButtonGenerateGuid == null) {\r
- jButtonGenerateGuid = new JButton();\r
- jButtonGenerateGuid.setBounds(new java.awt.Rectangle(405, 35, 75, 20));\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 \r
- **/\r
- private JTextArea getJTextAreaLicense() {\r
- if (jTextAreaLicense == null) {\r
- jTextAreaLicense = new JTextArea();\r
- jTextAreaLicense.setText("");\r
- jTextAreaLicense.setLineWrap(true);\r
- }\r
- return jTextAreaLicense;\r
- }\r
-\r
- /**\r
- This method initializes jTextAreaCopyright \r
- \r
- @return javax.swing.JTextArea \r
- **/\r
- private JTextArea getJTextAreaCopyright() {\r
- if (jTextAreaCopyright == null) {\r
- jTextAreaCopyright = new JTextArea();\r
- jTextAreaCopyright.setLineWrap(true);\r
- jTextAreaCopyright.setBounds(new java.awt.Rectangle(160,172,319,20));\r
- }\r
- return jTextAreaCopyright;\r
- }\r
-\r
- /**\r
- This method initializes jTextAreaDescription \r
- \r
- @return javax.swing.JTextArea \r
- **/\r
- private JTextArea getJTextAreaDescription() {\r
- if (jTextAreaDescription == null) {\r
- jTextAreaDescription = new JTextArea();\r
- jTextAreaDescription.setLineWrap(true);\r
- }\r
- return jTextAreaDescription;\r
- }\r
-\r
- /**\r
- This method initializes jButtonNext \r
- \r
- @return javax.swing.JButton \r
- **/\r
- private JButton getJButtonOk() {\r
- if (jButtonOk == null) {\r
- jButtonOk = new JButton();\r
- jButtonOk.setText("OK");\r
- jButtonOk.setBounds(new java.awt.Rectangle(290, 481, 90, 20));\r
- jButtonOk.addActionListener(this);\r
- }\r
- return jButtonOk;\r
- }\r
-\r
- /**\r
- This method initializes jButtonCancel \r
- \r
- @return javax.swing.JButton \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, 481, 90, 20));\r
- jButtonCancel.addActionListener(this);\r
- }\r
- return jButtonCancel;\r
- }\r
-\r
- /**\r
- This method initializes jScrollPane \r
- \r
- @return javax.swing.JScrollPane \r
- **/\r
- private JScrollPane getJScrollPaneLicense() {\r
- if (jScrollPaneLicense == null) {\r
- jScrollPaneLicense = new JScrollPane();\r
- jScrollPaneLicense.setBounds(new java.awt.Rectangle(160, 85, 320, 80));\r
- jScrollPaneLicense.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
- jScrollPaneLicense.setViewportView(getJTextAreaLicense());\r
- }\r
- return jScrollPaneLicense;\r
- }\r
-\r
- /**\r
- This method initializes jScrollPane2 \r
- \r
- @return javax.swing.JScrollPane \r
- **/\r
- private JScrollPane getJScrollPaneDescription() {\r
- if (jScrollPaneDescription == null) {\r
- jScrollPaneDescription = new JScrollPane();\r
- jScrollPaneDescription.setBounds(new java.awt.Rectangle(160, 322, 320, 80));\r
- jScrollPaneDescription.setViewportView(getJTextAreaDescription());\r
- jScrollPaneDescription.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
- }\r
- return jScrollPaneDescription;\r
- }\r
-\r
- /**\r
- This method initializes jTextFieldAbstract \r
- \r
- @return javax.swing.JTextField \r
- **/\r
- private JTextField getJTextFieldAbstract() {\r
- if (jTextFieldAbstract == null) {\r
- jTextFieldAbstract = new JTextField();\r
- jTextFieldAbstract.setBounds(new java.awt.Rectangle(159,218,318,70));\r
- }\r
- return jTextFieldAbstract;\r
- }\r
-\r
- /**\r
- This method initializes jComboBoxCompontentType \r
- \r
- @return javax.swing.JComboBox \r
- **/\r
- private JComboBox getJComboBox1() {\r
- if (jComboBox1 == null) {\r
- jComboBox1 = new JComboBox();\r
- jComboBox1.setBounds(new java.awt.Rectangle(160, 465, 91, 20));\r
- }\r
- return jComboBox1;\r
- }\r
-\r
- /**\r
- This method initializes jComboBoxModuleType \r
- \r
- @return javax.swing.JComboBox \r
- **/\r
- private JComboBox getJComboBoxModuleType() {\r
- if (jComboBoxModuleType == null) {\r
- jComboBoxModuleType = new JComboBox();\r
- jComboBoxModuleType.setBounds(new java.awt.Rectangle(160, 440, 91, 20));\r
- }\r
- return jComboBoxModuleType;\r
- }\r
-\r
- /**\r
- This method initializes jTextFieldAbstractURL \r
- \r
- @return javax.swing.JTextField \r
- **/\r
- private JTextField getJTextFieldAbstractURL() {\r
- if (jTextFieldAbstractURL == null) {\r
- jTextFieldAbstractURL = new JTextField();\r
- jTextFieldAbstractURL.setBounds(new java.awt.Rectangle(159, 414, 320, 20));\r
- }\r
- return jTextFieldAbstractURL;\r
- }\r
-\r
- public PackageNew(SpdFileContents sfc) {\r
- super();\r
- initialize();\r
- init();\r
- this.setVisible(true);\r
- this.sfc = sfc;\r
-\r
- }\r
-\r
- /**\r
- Start the window at the center of screen\r
- \r
- **/\r
- protected void centerWindow(int intWidth, int intHeight) {\r
- Dimension d = Toolkit.getDefaultToolkit().getScreenSize();\r
- this.setLocation((d.width - intWidth) / 2, (d.height - intHeight) / 2);\r
- }\r
-\r
- /**\r
- Start the window at the center of screen\r
- \r
- **/\r
- protected void centerWindow() {\r
- centerWindow(this.getSize().width, this.getSize().height);\r
- }\r
-\r
- /**\r
- This method initializes this\r
- \r
- @return void\r
- **/\r
- private void init() {\r
- this.setSize(500, 560);\r
- this.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);\r
- this.setContentPane(getJContentPane());\r
- this.setTitle("SPD File Header");\r
- this.centerWindow();\r
- //this.getRootPane().setDefaultButton(jButtonOk);\r
- initFrame();\r
- }\r
-\r
- /**\r
- This method initializes jContentPane\r
- \r
- @return javax.swing.JPanel\r
- **/\r
- private JPanel getJContentPane() {\r
- if (jContentPane == null) {\r
- jLabel = new JLabel();\r
- jLabel.setBounds(new java.awt.Rectangle(15, 490, 140, 21));\r
- jLabel.setText("Re-Package");\r
- jLabelURL = new JLabel();\r
- jLabelURL.setBounds(new java.awt.Rectangle(16, 414, 25, 20));\r
- jLabelURL.setText("URL");\r
- jLabelCompontentType = new JLabel();\r
- jLabelCompontentType.setBounds(new java.awt.Rectangle(15, 465, 140, 20));\r
- jLabelCompontentType.setText("Read Only");\r
- jLabelModuleType = new JLabel();\r
- jLabelModuleType.setBounds(new java.awt.Rectangle(15, 440, 140, 20));\r
- jLabelModuleType.setText("Package Type");\r
- jLabelAbstract = new JLabel();\r
- jLabelAbstract.setBounds(new java.awt.Rectangle(15,218,140,20));\r
- jLabelAbstract.setText("Abstract");\r
- jLabelDescription = new JLabel();\r
- jLabelDescription.setText("Description");\r
- jLabelDescription.setBounds(new java.awt.Rectangle(16, 325, 140, 20));\r
- jLabelCopyright = new JLabel();\r
- jLabelCopyright.setText("Copyright");\r
- jLabelCopyright.setBounds(new java.awt.Rectangle(15, 171, 140, 20));\r
- jLabelLicense = new JLabel();\r
- jLabelLicense.setText("License");\r
- jLabelLicense.setBounds(new java.awt.Rectangle(15, 85, 140, 20));\r
- jLabelVersion = new JLabel();\r
- jLabelVersion.setText("Version");\r
- jLabelVersion.setBounds(new java.awt.Rectangle(15, 60, 140, 20));\r
- jLabelGuid = new JLabel();\r
- jLabelGuid.setPreferredSize(new java.awt.Dimension(25, 15));\r
- jLabelGuid.setBounds(new java.awt.Rectangle(15, 35, 140, 20));\r
- jLabelGuid.setText("Guid");\r
- jLabelBaseName = new JLabel();\r
- jLabelBaseName.setText("Package Name");\r
- jLabelBaseName.setBounds(new java.awt.Rectangle(15, 10, 140, 20));\r
- jContentPane = new JPanel();\r
- jContentPane.setLayout(null);\r
- jContentPane.setLocation(new java.awt.Point(0, 0));\r
- jContentPane.setSize(new java.awt.Dimension(500, 524));\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(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(jLabelCompontentType, null);\r
- jContentPane.add(getJComboBox1(), null);\r
- jContentPane.add(getJComboBoxModuleType(), 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
- jStarLabel3 = new StarLabel();\r
- jStarLabel3.setLocation(new java.awt.Point(0, 60));\r
- jStarLabel4 = new StarLabel();\r
- jStarLabel4.setLocation(new java.awt.Point(0, 85));\r
- jStarLabel5 = new StarLabel();\r
- jStarLabel5.setLocation(new java.awt.Point(0, 171));\r
- jStarLabel6 = new StarLabel();\r
- jStarLabel6.setLocation(new java.awt.Point(1, 325));\r
- jStarLabel7 = new StarLabel();\r
- jStarLabel7.setLocation(new java.awt.Point(0,218));\r
- jStarLabel8 = new StarLabel();\r
- jStarLabel8.setLocation(new java.awt.Point(0, 440));\r
-\r
- jContentPane.add(jStarLabel1, null);\r
- jContentPane.add(jStarLabel2, null);\r
- jContentPane.add(jStarLabel3, null);\r
- jContentPane.add(jStarLabel4, null);\r
- jContentPane.add(jStarLabel5, null);\r
- jContentPane.add(jStarLabel6, null);\r
- jContentPane.add(jStarLabel7, null);\r
- jContentPane.add(jStarLabel8, null);\r
- jContentPane.add(jLabelURL, null);\r
- jContentPane.add(getJTextFieldAbstractURL(), null);\r
- jContentPane.add(jLabel, null);\r
- jContentPane.add(getJComboBox(), null);\r
- jContentPane.add(getJTextAreaCopyright(), null);\r
- }\r
- return jContentPane;\r
- }\r
-\r
- public void actionPerformed(ActionEvent arg0) {\r
- if (arg0.getSource() == jButtonOk) {\r
- this.save();\r
- this.dispose();\r
- }\r
-\r
- if (arg0.getSource() == jButtonCancel) {\r
- this.dispose();\r
- }\r
-\r
- if (arg0.getSource() == jButtonGenerateGuid) {\r
- jTextFieldGuid.setText(Tools.generateUuidString());\r
- }\r
- }\r
-\r
- /**\r
- Save all components of Msa Header\r
- if exist, set the value directly\r
- if not exist, new instance first\r
- \r
- **/\r
- private void save() {\r
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");\r
- Date date = new Date();\r
- sfc.genSpdHeader(jTextFieldBaseName.getText(), jTextFieldGuid.getText(), jTextFieldVersion.getText(),\r
- jTextFieldAbstract.getText(), jTextAreaDescription.getText(), jTextAreaCopyright.getText(),\r
- jTextAreaLicense.getText(), format.format(date), format.format(date),\r
- jTextFieldAbstractURL.getText(), jComboBoxModuleType.getSelectedItem().toString(),\r
- jComboBox1.getSelectedItem().toString(), jComboBox.getSelectedItem().toString(), null, null);\r
- }\r
-\r
- /**\r
- This method initializes module type and compontent type\r
- \r
- **/\r
- private void initFrame() {\r
- jComboBoxModuleType.addItem("SOURCE");\r
- jComboBoxModuleType.addItem("BINARY");\r
- jComboBoxModuleType.addItem("MIXED");\r
-\r
- jComboBox1.addItem("true");\r
- jComboBox1.addItem("false");\r
-\r
- jComboBox.addItem("false");\r
- jComboBox.addItem("true");\r
-\r
- }\r
-\r
- /**\r
- This method initializes jComboBox \r
- \r
- @return javax.swing.JComboBox \r
- **/\r
- private JComboBox getJComboBox() {\r
- if (jComboBox == null) {\r
- jComboBox = new JComboBox();\r
- jComboBox.setBounds(new java.awt.Rectangle(160, 490, 90, 20));\r
- }\r
- return jComboBox;\r
- }\r
-\r
-} // @jve:decl-index=0:visual-constraint="38,-22"\r