+++ /dev/null
-/** @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.far.createui;\r
-\r
-import java.awt.event.MouseEvent;\r
-import java.awt.event.MouseListener;\r
-import java.util.ArrayList;\r
-import java.util.Iterator;\r
-import java.util.List;\r
-import java.util.Vector;\r
-\r
-import javax.swing.JButton;\r
-import javax.swing.JLabel;\r
-import javax.swing.JOptionPane;\r
-import javax.swing.JPanel;\r
-import javax.swing.JScrollPane;\r
-import javax.swing.JTextArea;\r
-\r
-import org.tianocore.frameworkwizard.common.Log;\r
-import org.tianocore.frameworkwizard.common.ui.IDialog;\r
-import org.tianocore.frameworkwizard.common.ui.iCheckBoxList.ICheckBoxList;\r
-import org.tianocore.frameworkwizard.far.FarStringDefinition;\r
-import org.tianocore.frameworkwizard.packaging.PackageIdentification;\r
-import org.tianocore.frameworkwizard.platform.PlatformIdentification;\r
-import org.tianocore.frameworkwizard.workspace.WorkspaceTools;\r
-\r
-public class CreateStepTwo extends IDialog implements MouseListener {\r
-\r
- /**\r
- * \r
- */\r
- private static final long serialVersionUID = 3003841865197005528L;\r
-\r
- private JPanel jContentPane = null;\r
-\r
- private JTextArea jTextArea = null;\r
-\r
- private JLabel jLabel = null;\r
-\r
- private JLabel jLabel1 = null;\r
-\r
- private ICheckBoxList jComboBoxPackage = null;\r
-\r
- private ICheckBoxList jComboBoxPlatform = null;\r
-\r
- private JButton jButtonNext = null;\r
-\r
- private JButton jButtonCancel = null;\r
-\r
- private JScrollPane jScrollPanePackage = null;\r
-\r
- private JScrollPane jScrollPanePlatform = null;\r
-\r
- private CreateStepThree stepThree = null;\r
-\r
- private Vector<PlatformIdentification> platformVector = null;\r
-\r
- private Vector<PackageIdentification> packageVector = null;\r
-\r
- private CreateStepOne stepOne = null;\r
-\r
- private JButton jButtonPrevious = null;\r
-\r
- public CreateStepTwo(IDialog iDialog, boolean modal, CreateStepOne stepOne) {\r
- this(iDialog, modal);\r
- this.stepOne = stepOne;\r
- }\r
-\r
- /**\r
- * This method initializes jTextArea \r
- * \r
- * @return javax.swing.JTextArea \r
- */\r
- private JTextArea getJTextArea() {\r
- if (jTextArea == null) {\r
- jTextArea = new JTextArea();\r
- jTextArea.setBounds(new java.awt.Rectangle(30, 7, 642, 50));\r
- jTextArea.setText("Choose at least one package or platform. ");\r
- jTextArea.setEditable(false);\r
- }\r
- return jTextArea;\r
- }\r
-\r
- /**\r
- * This method initializes jComboBox \r
- * \r
- * @return javax.swing.JComboBox \r
- */\r
- private ICheckBoxList getJComboBoxPackage() {\r
- if (jComboBoxPackage == null) {\r
- jComboBoxPackage = new ICheckBoxList();\r
- WorkspaceTools wt = new WorkspaceTools();\r
- Vector<String> v = new Vector<String>();\r
- packageVector = wt.getAllPackages();\r
- Iterator<PackageIdentification> iter = packageVector.iterator();\r
- while (iter.hasNext()) {\r
- PackageIdentification item = iter.next();\r
- String str = item.getName() + " " + item.getVersion() + " [" + item.getPath() + "]";\r
- v.addElement(str);\r
- }\r
- jComboBoxPackage.setAllItems(v);\r
- }\r
- return jComboBoxPackage;\r
- }\r
-\r
- /**\r
- * This method initializes jComboBox1 \r
- * \r
- * @return javax.swing.JComboBox \r
- */\r
- private ICheckBoxList getJComboBoxPlatform() {\r
- if (jComboBoxPlatform == null) {\r
- jComboBoxPlatform = new ICheckBoxList();\r
- WorkspaceTools wt = new WorkspaceTools();\r
- Vector<String> v = new Vector<String>();\r
- platformVector = wt.getAllPlatforms();\r
- Iterator<PlatformIdentification> iter = platformVector.iterator();\r
- while (iter.hasNext()) {\r
- PlatformIdentification item = iter.next();\r
- String str = item.getName() + " " + item.getVersion() + " [" + item.getPath() + "]";\r
- v.addElement(str);\r
- }\r
- jComboBoxPlatform.setAllItems(v);\r
- }\r
- return jComboBoxPlatform;\r
- }\r
-\r
- /**\r
- * This method initializes jButtonNext \r
- * \r
- * @return javax.swing.JButton \r
- */\r
- private JButton getJButtonNext() {\r
- if (jButtonNext == null) {\r
- jButtonNext = new JButton();\r
- jButtonNext.setBounds(new java.awt.Rectangle(470, 330, 90, 20));\r
- jButtonNext.setText("Next");\r
- jButtonNext.addMouseListener(this);\r
- }\r
- return jButtonNext;\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.setBounds(new java.awt.Rectangle(570, 330, 90, 20));\r
- jButtonCancel.setText("Cancel");\r
- jButtonCancel.addMouseListener(this);\r
- }\r
- return jButtonCancel;\r
- }\r
-\r
- /**\r
- * This method initializes jScrollPane \r
- * \r
- * @return javax.swing.JScrollPane \r
- */\r
- private JScrollPane getJScrollPanePackage() {\r
- if (jScrollPanePackage == null) {\r
- jScrollPanePackage = new JScrollPane();\r
- jScrollPanePackage.setBounds(new java.awt.Rectangle(140,65,535,130));\r
- jScrollPanePackage.setViewportView(getJComboBoxPackage());\r
- }\r
- return jScrollPanePackage;\r
- }\r
-\r
- /**\r
- * This method initializes jScrollPane1 \r
- * \r
- * @return javax.swing.JScrollPane \r
- */\r
- private JScrollPane getJScrollPanePlatform() {\r
- if (jScrollPanePlatform == null) {\r
- jScrollPanePlatform = new JScrollPane();\r
- jScrollPanePlatform.setBounds(new java.awt.Rectangle(140,200,535,110));\r
- jScrollPanePlatform.setViewportView(getJComboBoxPlatform());\r
- }\r
- return jScrollPanePlatform;\r
- }\r
-\r
- /**\r
- * This is the default constructor\r
- */\r
- public CreateStepTwo(IDialog iDialog, boolean modal) {\r
- super(iDialog, modal);\r
- initialize();\r
- }\r
-\r
- /**\r
- * This method initializes this\r
- * \r
- * @return void\r
- */\r
- private void initialize() {\r
- this.setSize(700, 400);\r
- this.setContentPane(getJContentPane());\r
- this.setTitle(FarStringDefinition.CREATE_STEP_TWO_TITLE);\r
- this.centerWindow();\r
- }\r
-\r
- /**\r
- * This method initializes jContentPane\r
- * \r
- * @return javax.swing.JPanel\r
- */\r
- private JPanel getJContentPane() {\r
- if (jContentPane == null) {\r
- jLabel1 = new JLabel();\r
- jLabel1.setBounds(new java.awt.Rectangle(30, 200, 100, 20));\r
- jLabel1.setText("Platforms: ");\r
- jLabel = new JLabel();\r
- jLabel.setBounds(new java.awt.Rectangle(30, 64, 100, 20));\r
- jLabel.setText("Packages:");\r
- jContentPane = new JPanel();\r
- jContentPane.setLayout(null);\r
- jContentPane.add(getJTextArea(), null);\r
- jContentPane.add(jLabel, null);\r
- jContentPane.add(jLabel1, null);\r
- jContentPane.add(getJButtonNext(), null);\r
- jContentPane.add(getJButtonCancel(), null);\r
- jContentPane.add(getJScrollPanePackage(), null);\r
- jContentPane.add(getJScrollPanePlatform(), null);\r
- jContentPane.add(getJButtonPrevious(), null);\r
- }\r
- return jContentPane;\r
- }\r
-\r
- public void mouseClicked(MouseEvent e) {\r
- if (e.getSource() == jButtonCancel) {\r
- this.setVisible(false);\r
- } else if (e.getSource() == jButtonPrevious) {\r
- this.setVisible(false);\r
- stepOne.setVisible(true);\r
- } else if (e.getSource() == jButtonNext) {\r
- //\r
- // Add some logic process here\r
- //\r
- if (jComboBoxPlatform.getAllCheckedItemsIndex().size() == 0\r
- && jComboBoxPackage.getAllCheckedItemsIndex().size() == 0) {\r
- Log.wrn("Create far", "Choose at least one package and/or platform.");\r
- return;\r
- }\r
- \r
- //\r
- // If some packages a Repackage=false, give a warning message\r
- //\r
- List<PackageIdentification> selectedPackages = getSelectedPackages();\r
- WorkspaceTools wt = new WorkspaceTools();\r
- List<PackageIdentification> allRepackablePackages = wt.getAllRepackagablePackages();\r
- \r
- List<PackageIdentification> unRepackablePackages = new Vector<PackageIdentification>();\r
- String msg = "Following selected packages: \n";\r
- Iterator<PackageIdentification> iter = selectedPackages.iterator();\r
- while (iter.hasNext()) {\r
- PackageIdentification item = iter.next();\r
- if (!allRepackablePackages.contains(item)) {\r
- unRepackablePackages.add(item);\r
- msg += item.getName() + "\n";\r
- }\r
- }\r
- msg += "is un-Repackagable. Do you want to continue? ";\r
- \r
- if (unRepackablePackages.size() > 0) {\r
- if(JOptionPane.showConfirmDialog(this, msg, "Warning", JOptionPane.YES_NO_OPTION) == JOptionPane.NO_OPTION) {\r
- return ;\r
- }\r
- }\r
- \r
- if (stepThree == null) {\r
- stepThree = new CreateStepThree(this, true, this);\r
- }\r
- this.setVisible(false);\r
- stepThree.setVisible(true);\r
- }\r
- }\r
-\r
- public void mousePressed(MouseEvent e) {\r
- // TODO Auto-generated method stub\r
-\r
- }\r
-\r
- public void mouseReleased(MouseEvent e) {\r
- // TODO Auto-generated method stub\r
-\r
- }\r
-\r
- public void mouseEntered(MouseEvent e) {\r
- // TODO Auto-generated method stub\r
-\r
- }\r
-\r
- public void mouseExited(MouseEvent e) {\r
- // TODO Auto-generated method stub\r
-\r
- }\r
-\r
- /**\r
- * This method initializes jButtonPrevious \r
- * \r
- * @return javax.swing.JButton \r
- */\r
- private JButton getJButtonPrevious() {\r
- if (jButtonPrevious == null) {\r
- jButtonPrevious = new JButton();\r
- jButtonPrevious.setBounds(new java.awt.Rectangle(370, 330, 90, 20));\r
- jButtonPrevious.setText("Previous");\r
- jButtonPrevious.addMouseListener(this);\r
- }\r
- return jButtonPrevious;\r
- }\r
-\r
- public List<PackageIdentification> getSelectedPackages() {\r
- Vector<Integer> v = jComboBoxPackage.getAllCheckedItemsIndex();\r
- List<PackageIdentification> result = new ArrayList<PackageIdentification>();\r
- for (int i = 0; i < v.size(); i++) {\r
- result.add(packageVector.get(v.get(i).intValue()));\r
- }\r
- return result;\r
- }\r
-\r
- public List<PlatformIdentification> getSelectedPlatforms() {\r
- Vector<Integer> v = jComboBoxPlatform.getAllCheckedItemsIndex();\r
- List<PlatformIdentification> result = new ArrayList<PlatformIdentification>();\r
- for (int i = 0; i < v.size(); i++) {\r
- result.add(platformVector.get(v.get(i).intValue()));\r
- }\r
- return result;\r
- }\r
-\r
- public CreateStepOne getPreviousStep() {\r
- return stepOne;\r
- }\r
-}\r