import java.awt.BorderLayout;\r
import javax.swing.JPanel;\r
\r
-import javax.swing.DefaultCellEditor;\r
-import javax.swing.DefaultListModel;\r
import javax.swing.JFrame;\r
import javax.swing.JTabbedPane;\r
import javax.swing.JButton;\r
+import javax.swing.ListSelectionModel;\r
\r
import org.tianocore.PlatformSurfaceAreaDocument;\r
+import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformType;\r
import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
\r
\r
\r
\r
import javax.swing.JCheckBox;\r
+import javax.swing.JOptionPane;\r
import javax.swing.JTextField;\r
import javax.swing.JLabel;\r
import javax.swing.JScrollPane;\r
import javax.swing.JTable;\r
import javax.swing.event.InternalFrameAdapter;\r
import javax.swing.event.InternalFrameEvent;\r
-import javax.swing.event.ListSelectionEvent;\r
-import javax.swing.event.ListSelectionListener;\r
import javax.swing.event.TableModelEvent;\r
import javax.swing.event.TableModelListener;\r
import javax.swing.table.DefaultTableModel;\r
-import javax.swing.table.TableColumn;\r
import javax.swing.table.TableModel;\r
import javax.swing.JComboBox;\r
import java.awt.Dimension;\r
-import javax.swing.JRadioButton;\r
-import javax.swing.JTextArea;\r
-import java.awt.CardLayout;\r
+import java.util.Vector;\r
\r
public class FpdPlatformDefs extends IInternalFrame {\r
\r
private static final long serialVersionUID = 1L;\r
static JFrame frame;\r
private JPanel jContentPane = null;\r
- private JPanel jPanel = null;\r
- private JPanel jPanel1 = null;\r
- private JPanel jPanel2 = null;\r
- private JPanel jPanel3 = null;\r
+ private JPanel jPanelContentEast = null;\r
+ private JPanel jPanelContentWest = null;\r
+ private JPanel jPanelContentNorth = null;\r
private JTabbedPane jTabbedPane = null;\r
- private JButton jButtonOk = null;\r
- private JButton jButtonCancel = null;\r
- private JPanel jPanelFvImageW = null;\r
- private JScrollPane jScrollPane = null;\r
- private DefaultTableModel imageEntryPointTableModel = null;\r
- private DefaultTableModel outputDirectoryTableModel = null;\r
+ private TargetTableModel buildTargetTableModel = null;\r
\r
- private DefaultTableModel skuInfoTableModel = null;\r
- private DefaultTableModel fdfBlocksTableModel = null;\r
- private DefaultTableModel fdfRegionsTableModel = null;\r
- private DefaultTableModel fdfSubRegionsTableModel = null;\r
- \r
- private JLabel jLabel17 = null;\r
- private DefaultListModel listModel = new DefaultListModel();\r
+ private SkuInfoTableModel skuInfoTableModel = null;\r
+ private OpeningPlatformType docConsole = null;\r
private FpdFileContents ffc = null;\r
- private JPanel jPanel4 = null;\r
- private JPanel jPanel5 = null;\r
+ private JPanel jPanelGeneralTab = null;\r
+ private JPanel jPanelGeneralTabNorth = null;\r
private JLabel jLabel = null;\r
- private JCheckBox jCheckBox1 = null;\r
- private JCheckBox jCheckBox2 = null;\r
- private JCheckBox jCheckBox3 = null;\r
- private JPanel jPanel6 = null;\r
- private JLabel jLabel1 = null;\r
- private JCheckBox jCheckBox4 = null;\r
- private JComboBox jComboBox = null;\r
- private JTextField jTextField = null;\r
- private JTable jTable = null;\r
- private JPanel jPanel7 = null;\r
- private JLabel jLabel2 = null;\r
- private JTextField jTextField1 = null;\r
- private JButton jButton2 = null;\r
- private JButton jButton3 = null;\r
- private JScrollPane jScrollPane2 = null;\r
- private JTable jTable1 = null;\r
- private JLabel jLabel3 = null;\r
- private JScrollPane jScrollPane3 = null;\r
- private JTable jTable2 = null;\r
- private JLabel jLabel4 = null;\r
- private JTextField jTextField2 = null;\r
- private JLabel jLabel5 = null;\r
- private JTextField jTextField3 = null;\r
- private JLabel jLabel6 = null;\r
- private JButton jButton4 = null;\r
- private JButton jButton5 = null;\r
- private JLabel jLabel7 = null;\r
+ private JCheckBox jCheckBoxIa32 = null;\r
+ private JCheckBox jCheckBoxX64 = null;\r
+ private JCheckBox jCheckBoxIpf = null;\r
+ private JPanel jPanelGeneralTabSouth = null;\r
+ private JCheckBox jCheckBoxInterDir = null;\r
+ private JComboBox jComboBoxInterDir = null;\r
+ private JTable jTableBuildTargets = null;\r
+ private JPanel jPanelGeneralTabCenter = null;\r
+ private JLabel jLabelBuildTargets = null;\r
+ private JTextField jTextFieldBuildTarget = null;\r
+ private JButton jButtonAddBuildTarget = null;\r
+ private JButton jButtonDelBuildTarget = null;\r
+ private JScrollPane jScrollPaneBuildTargets = null;\r
+ private JScrollPane jScrollPaneSkuInfo = null;\r
+ private JTable jTableSkuInfo = null;\r
+ private JCheckBox jCheckBoxEbc = null;\r
+ private JCheckBox jCheckBoxArm = null;\r
+ private JCheckBox jCheckBoxPpc = null;\r
+ private JPanel jPanelDir = null;\r
+ private JLabel jLabelPad = null;\r
+ private JLabel jLabelOutputDir = null;\r
+ private JTextField jTextFieldOutputDir = null;\r
+ private JPanel jPanelSkuInfo = null;\r
+ private JLabel jLabelSkuInfo = null;\r
+ private JLabel jLabelSkuId = null;\r
+ private JTextField jTextFieldSkuId = null;\r
+ private JLabel jLabelSkuName = null;\r
+ private JTextField jTextFieldSkuName = null;\r
+ private JButton jButtonSkuAdd = null;\r
+ private JButton jButtonSkuDel = null;\r
+ private JLabel jLabelPadd = null;\r
public FpdPlatformDefs() {\r
super();\r
// TODO Auto-generated constructor stub\r
init(ffc);\r
}\r
\r
- /**\r
- * This method initializes jPanel \r
- * \r
- * @return javax.swing.JPanel \r
- */\r
- private JPanel getJPanel() {\r
- if (jPanel == null) {\r
- jPanel = new JPanel();\r
- }\r
- return jPanel;\r
+ public FpdPlatformDefs(OpeningPlatformType opt) {\r
+ this(opt.getXmlFpd());\r
+ docConsole = opt;\r
}\r
-\r
+ \r
/**\r
- * This method initializes jPanel1 \r
+ * This method initializes jPanel \r
* \r
* @return javax.swing.JPanel \r
*/\r
- private JPanel getJPanel1() {\r
- if (jPanel1 == null) {\r
- FlowLayout flowLayout = new FlowLayout();\r
- flowLayout.setAlignment(java.awt.FlowLayout.RIGHT);\r
- flowLayout.setHgap(15);\r
- jPanel1 = new JPanel();\r
- jPanel1.setLayout(flowLayout);\r
- jPanel1.setComponentOrientation(java.awt.ComponentOrientation.LEFT_TO_RIGHT);\r
- jPanel1.add(getJButtonCancel(), null);\r
- jPanel1.add(getJButtonOk(), null);\r
+ private JPanel getJPanelContentEast() {\r
+ if (jPanelContentEast == null) {\r
+ jPanelContentEast = new JPanel();\r
}\r
- return jPanel1;\r
+ return jPanelContentEast;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JPanel \r
*/\r
- private JPanel getJPanel2() {\r
- if (jPanel2 == null) {\r
- jPanel2 = new JPanel();\r
+ private JPanel getJPanelContentWest() {\r
+ if (jPanelContentWest == null) {\r
+ jPanelContentWest = new JPanel();\r
}\r
- return jPanel2;\r
+ return jPanelContentWest;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JPanel \r
*/\r
- private JPanel getJPanel3() {\r
- if (jPanel3 == null) {\r
- jPanel3 = new JPanel();\r
+ private JPanel getJPanelContentNorth() {\r
+ if (jPanelContentNorth == null) {\r
+ jPanelContentNorth = new JPanel();\r
}\r
- return jPanel3;\r
+ return jPanelContentNorth;\r
}\r
\r
/**\r
if (jTabbedPane == null) {\r
jTabbedPane = new JTabbedPane();\r
\r
- jTabbedPane.addTab("General", null, getJPanel4(), null);\r
+ jTabbedPane.addTab("General", null, getJPanelGeneralTab(), null);\r
\r
}\r
return jTabbedPane;\r
}\r
\r
/**\r
- * This method initializes jButtonOk \r
- * \r
- * @return javax.swing.JButton \r
- */\r
- private JButton getJButtonOk() {\r
- if (jButtonOk == null) {\r
- jButtonOk = new JButton();\r
- jButtonOk.setPreferredSize(new java.awt.Dimension(80,20));\r
- jButtonOk.setText("Cancel");\r
- jButtonOk.setVisible(false);\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.setPreferredSize(new java.awt.Dimension(80,20));\r
- jButtonCancel.setText("Ok");\r
- jButtonCancel.setVisible(false);\r
- }\r
- return jButtonCancel;\r
- }\r
-\r
- /**\r
- * This method initializes jPanelFvImageW \r
- * \r
- * @return javax.swing.JPanel \r
- */\r
- private JPanel getJPanelFvImageW() {\r
- if (jPanelFvImageW == null) {\r
- jPanelFvImageW = new JPanel();\r
- jPanelFvImageW.setPreferredSize(new java.awt.Dimension(10,2));\r
- }\r
- return jPanelFvImageW;\r
- }\r
-\r
-\r
- /**\r
* This method initializes this\r
* \r
* @return void\r
this.setTitle("FPD Platform Definitions");\r
this.addInternalFrameListener(new InternalFrameAdapter(){\r
public void internalFrameDeactivated(InternalFrameEvent e){\r
- if (jTable.isEditing()) {\r
- jTable.getCellEditor().stopCellEditing();\r
+ if (jTableBuildTargets.isEditing()) {\r
+ jTableBuildTargets.getCellEditor().stopCellEditing();\r
}\r
- if (jTable2.isEditing()) {\r
- jTable2.getCellEditor().stopCellEditing();\r
+ if (jTableSkuInfo.isEditing()) {\r
+ jTableSkuInfo.getCellEditor().stopCellEditing();\r
}\r
\r
}\r
}\r
\r
private void init(FpdFileContents ffc) {\r
+ Vector<Object> v = new Vector<Object>();\r
+ ffc.getPlatformDefsSupportedArchs(v);\r
+ showToolChain(v);\r
+ \r
+ buildTargetTableModel.setRowCount(0);\r
+ v.removeAllElements();\r
+ ffc.getPlatformDefsBuildTargets(v);\r
+ for (int i = 0; i < v.size(); ++i){\r
+ Object[] row = {v.get(i)};\r
+ buildTargetTableModel.addRow(row);\r
+ }\r
+ \r
+ String[][] saa = new String[ffc.getPlatformDefsSkuInfoCount()][2];\r
+ ffc.getPlatformDefsSkuInfos(saa);\r
+ for (int i = 0; i < saa.length; ++i) {\r
+ skuInfoTableModel.addRow(saa[i]);\r
+ }\r
+ \r
+ String interDir = ffc.getPlatformDefsInterDir();\r
+ if (interDir != null) {\r
+ jComboBoxInterDir.setSelectedItem(interDir);\r
+ }\r
\r
+ String outputDir = ffc.getPlatformDefsOutputDir();\r
+ if (outputDir != null) {\r
+ jTextFieldOutputDir.setText(outputDir);\r
+ }\r
}\r
\r
+ private void showToolChain(Vector<Object> v) {\r
+ if (v.contains("IA32")) {\r
+ jCheckBoxIa32.setSelected(true);\r
+ }\r
+ else{\r
+ jCheckBoxIa32.setSelected(false);\r
+ }\r
+ if (v.contains("X64")) {\r
+ jCheckBoxX64.setSelected(true);\r
+ }\r
+ else{\r
+ jCheckBoxX64.setSelected(false);\r
+ }\r
+ if (v.contains("IPF")) {\r
+ jCheckBoxIpf.setSelected(true);\r
+ }\r
+ else{\r
+ jCheckBoxIpf.setSelected(false);\r
+ }\r
+ if (v.contains("EBC")) {\r
+ jCheckBoxEbc.setSelected(true);\r
+ }\r
+ else{\r
+ jCheckBoxEbc.setSelected(false);\r
+ }\r
+ if (v.contains("ARM")) {\r
+ jCheckBoxArm.setSelected(true);\r
+ }\r
+ else{\r
+ jCheckBoxArm.setSelected(false);\r
+ }\r
+ if (v.contains("PPC")) {\r
+ jCheckBoxPpc.setSelected(true);\r
+ }\r
+ else{\r
+ jCheckBoxPpc.setSelected(false);\r
+ }\r
+ }\r
\r
+ private void getToolChain(Vector<Object> v) {\r
+ if (docConsole != null){\r
+ docConsole.setSaved(false);\r
+ }\r
+ v.removeAllElements();\r
+ if (jCheckBoxIa32.isSelected()) {\r
+ v.add("IA32");\r
+ }\r
+ if (jCheckBoxX64.isSelected()) {\r
+ v.add("X64");\r
+ }\r
+ if (jCheckBoxIpf.isSelected()) {\r
+ v.add("IPF");\r
+ }\r
+ if (jCheckBoxEbc.isSelected()) {\r
+ v.add("EBC");\r
+ }\r
+ if (jCheckBoxArm.isSelected()) {\r
+ v.add("ARM");\r
+ }\r
+ if (jCheckBoxPpc.isSelected()) {\r
+ v.add("PPC");\r
+ }\r
+ \r
+ }\r
\r
/**\r
* This method initializes jContentPane\r
if (jContentPane == null) {\r
jContentPane = new JPanel();\r
jContentPane.setLayout(new BorderLayout());\r
- jContentPane.add(getJPanel(), java.awt.BorderLayout.EAST);\r
- jContentPane.add(getJPanel1(), java.awt.BorderLayout.SOUTH);\r
- jContentPane.add(getJPanel2(), java.awt.BorderLayout.WEST);\r
- jContentPane.add(getJPanel3(), java.awt.BorderLayout.NORTH);\r
+ jContentPane.add(getJPanelContentEast(), java.awt.BorderLayout.EAST);\r
+ jContentPane.add(getJPanelContentWest(), java.awt.BorderLayout.WEST);\r
+ jContentPane.add(getJPanelContentNorth(), java.awt.BorderLayout.NORTH);\r
jContentPane.add(getJTabbedPane(), java.awt.BorderLayout.CENTER);\r
}\r
return jContentPane;\r
* \r
* @return javax.swing.JPanel \r
*/\r
- private JPanel getJPanel4() {\r
- if (jPanel4 == null) {\r
- jPanel4 = new JPanel();\r
- jPanel4.setLayout(new BorderLayout());\r
- jPanel4.add(getJPanel5(), java.awt.BorderLayout.NORTH);\r
- jPanel4.add(getJPanel6(), java.awt.BorderLayout.SOUTH);\r
- jPanel4.add(getJPanel7(), java.awt.BorderLayout.CENTER);\r
+ private JPanel getJPanelGeneralTab() {\r
+ if (jPanelGeneralTab == null) {\r
+ jPanelGeneralTab = new JPanel();\r
+ jPanelGeneralTab.setLayout(new BorderLayout());\r
+ jPanelGeneralTab.add(getJPanelGeneralTabNorth(), java.awt.BorderLayout.NORTH);\r
+ jPanelGeneralTab.add(getJPanelGeneralTabSouth(), java.awt.BorderLayout.SOUTH);\r
+ jPanelGeneralTab.add(getJPanelGeneralTabCenter(), java.awt.BorderLayout.CENTER);\r
}\r
- return jPanel4;\r
+ return jPanelGeneralTab;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JPanel \r
*/\r
- private JPanel getJPanel5() {\r
- if (jPanel5 == null) {\r
+ private JPanel getJPanelGeneralTabNorth() {\r
+ if (jPanelGeneralTabNorth == null) {\r
jLabel = new JLabel();\r
- jLabel.setText("Tool Chain Families");\r
+ jLabel.setText("Supported Archs");\r
FlowLayout flowLayout2 = new FlowLayout();\r
flowLayout2.setAlignment(FlowLayout.LEFT);\r
- flowLayout2.setHgap(20);\r
- jPanel5 = new JPanel();\r
- jPanel5.setLayout(flowLayout2);\r
- jPanel5.add(jLabel, null);\r
- jPanel5.add(getJCheckBox1(), null);\r
- jPanel5.add(getJCheckBox2(), null);\r
- jPanel5.add(getJCheckBox3(), null);\r
+ flowLayout2.setHgap(12);\r
+ jPanelGeneralTabNorth = new JPanel();\r
+ jPanelGeneralTabNorth.setLayout(flowLayout2);\r
+ jPanelGeneralTabNorth.add(jLabel, null);\r
+ jPanelGeneralTabNorth.add(getJCheckBoxIa32(), null);\r
+ jPanelGeneralTabNorth.add(getJCheckBoxX64(), null);\r
+ jPanelGeneralTabNorth.add(getJCheckBoxIpf(), null);\r
+ jPanelGeneralTabNorth.add(getJCheckBoxEbc(), null);\r
+ jPanelGeneralTabNorth.add(getJCheckBoxArm(), null);\r
+ jPanelGeneralTabNorth.add(getJCheckBoxPpc(), null);\r
}\r
- return jPanel5;\r
+ return jPanelGeneralTabNorth;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JCheckBox \r
*/\r
- private JCheckBox getJCheckBox1() {\r
- if (jCheckBox1 == null) {\r
- jCheckBox1 = new JCheckBox();\r
- jCheckBox1.setText("MSFT");\r
+ private JCheckBox getJCheckBoxIa32() {\r
+ if (jCheckBoxIa32 == null) {\r
+ jCheckBoxIa32 = new JCheckBox();\r
+ jCheckBoxIa32.setText("IA32");\r
+ jCheckBoxIa32.addItemListener(new java.awt.event.ItemListener() {\r
+ public void itemStateChanged(java.awt.event.ItemEvent e) {\r
+ Vector<Object> v = new Vector<Object>();\r
+ getToolChain(v);\r
+ if (v.size() == 0) {\r
+ JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+ return;\r
+ }\r
+ ffc.setPlatformDefsSupportedArchs(v);\r
+ }\r
+ });\r
}\r
- return jCheckBox1;\r
+ return jCheckBoxIa32;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JCheckBox \r
*/\r
- private JCheckBox getJCheckBox2() {\r
- if (jCheckBox2 == null) {\r
- jCheckBox2 = new JCheckBox();\r
- jCheckBox2.setText("GCC");\r
+ private JCheckBox getJCheckBoxX64() {\r
+ if (jCheckBoxX64 == null) {\r
+ jCheckBoxX64 = new JCheckBox();\r
+ jCheckBoxX64.setText("X64");\r
+ jCheckBoxX64.addItemListener(new java.awt.event.ItemListener() {\r
+ public void itemStateChanged(java.awt.event.ItemEvent e) {\r
+ Vector<Object> v = new Vector<Object>();\r
+ getToolChain(v);\r
+ if (v.size() == 0) {\r
+ JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+ return;\r
+ }\r
+ ffc.setPlatformDefsSupportedArchs(v);\r
+ }\r
+ });\r
}\r
- return jCheckBox2;\r
+ return jCheckBoxX64;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JCheckBox \r
*/\r
- private JCheckBox getJCheckBox3() {\r
- if (jCheckBox3 == null) {\r
- jCheckBox3 = new JCheckBox();\r
- jCheckBox3.setText("INTC");\r
+ private JCheckBox getJCheckBoxIpf() {\r
+ if (jCheckBoxIpf == null) {\r
+ jCheckBoxIpf = new JCheckBox();\r
+ jCheckBoxIpf.setText("IPF");\r
+ jCheckBoxIpf.addItemListener(new java.awt.event.ItemListener() {\r
+ public void itemStateChanged(java.awt.event.ItemEvent e) {\r
+ Vector<Object> v = new Vector<Object>();\r
+ getToolChain(v);\r
+ if (v.size() == 0) {\r
+ JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+ return;\r
+ }\r
+ ffc.setPlatformDefsSupportedArchs(v);\r
+ }\r
+ });\r
}\r
- return jCheckBox3;\r
+ return jCheckBoxIpf;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JTable \r
*/\r
- private JTable getJTable() {\r
- if (jTable == null) {\r
- imageEntryPointTableModel = new DefaultTableModel();\r
- imageEntryPointTableModel.addColumn("Build Target");\r
- }\r
- return jTable;\r
- }\r
-\r
- /**\r
- * This method initializes jTable1 \r
- * \r
- * @return javax.swing.JTable \r
- */\r
- private JTable getJTable1() {\r
- if (jTable1 == null) {\r
- outputDirectoryTableModel = new DefaultTableModel();\r
- outputDirectoryTableModel.addColumn("Output Directory");\r
- outputDirectoryTableModel.addColumn("Intermediate Directories");\r
+ private JTable getJTableBuildTargets() {\r
+ if (jTableBuildTargets == null) {\r
+ buildTargetTableModel = new TargetTableModel();\r
+ buildTargetTableModel.addColumn("Build Target");\r
+ jTableBuildTargets = new JTable(buildTargetTableModel);\r
+ jTableBuildTargets.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
\r
- TableColumn imDirCol = jTable1.getColumnModel().getColumn(1);\r
- JComboBox cb = new JComboBox();\r
- cb.addItem("MODULE");\r
- cb.addItem("UNIFIED");\r
- imDirCol.setCellEditor(new DefaultCellEditor(cb));\r
+ jTableBuildTargets.getModel().addTableModelListener(new TableModelListener() {\r
+ public void tableChanged(TableModelEvent arg0) {\r
+ // TODO Auto-generated method stub\r
+ if (jTableBuildTargets.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ TableModel m = (TableModel)arg0.getSource();\r
+ if (arg0.getType() == TableModelEvent.UPDATE){\r
+ //ToDo Data Validition check.\r
+ Vector<Object> v = new Vector<Object>();\r
+ for (int i = 0; i < jTableBuildTargets.getRowCount(); ++i) {\r
+ v.add(m.getValueAt(i, 0));\r
+ }\r
+ docConsole.setSaved(false);\r
+ ffc.setPlatformDefsBuildTargets(v);\r
+ }\r
+ }\r
+ });\r
}\r
- return jTable1;\r
+ return jTableBuildTargets;\r
}\r
\r
-\r
/**\r
* This method initializes jPanel6 \r
* \r
* @return javax.swing.JPanel \r
*/\r
- private JPanel getJPanel6() {\r
- if (jPanel6 == null) {\r
- jLabel7 = new JLabel();\r
- jLabel7.setPreferredSize(new java.awt.Dimension(100,20));\r
- jLabel7.setText("");\r
- jLabel1 = new JLabel();\r
- jLabel1.setText("Output Directory");\r
+ private JPanel getJPanelGeneralTabSouth() {\r
+ if (jPanelGeneralTabSouth == null) {\r
FlowLayout flowLayout3 = new FlowLayout();\r
flowLayout3.setAlignment(FlowLayout.LEFT);\r
flowLayout3.setHgap(20);\r
- jPanel6 = new JPanel();\r
- jPanel6.setPreferredSize(new java.awt.Dimension(10,250));\r
- jPanel6.setLayout(flowLayout3);\r
- jPanel6.add(getJCheckBox4(), null);\r
- jPanel6.add(getJComboBox(), null);\r
- jPanel6.add(jLabel7, null);\r
- jPanel6.add(jLabel1, null);\r
- jPanel6.add(getJTextField(), null);\r
+ jPanelGeneralTabSouth = new JPanel();\r
+ jPanelGeneralTabSouth.setPreferredSize(new java.awt.Dimension(10,200));\r
+ jPanelGeneralTabSouth.setLayout(flowLayout3);\r
+ jPanelGeneralTabSouth.add(getJPanelDir(), null);\r
}\r
- return jPanel6;\r
+ return jPanelGeneralTabSouth;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JCheckBox \r
*/\r
- private JCheckBox getJCheckBox4() {\r
- if (jCheckBox4 == null) {\r
- jCheckBox4 = new JCheckBox();\r
- jCheckBox4.setText("Intermediate Directories");\r
+ private JCheckBox getJCheckBoxInterDir() {\r
+ if (jCheckBoxInterDir == null) {\r
+ jCheckBoxInterDir = new JCheckBox();\r
+ jCheckBoxInterDir.setText("Intermediate Directories");\r
}\r
- return jCheckBox4;\r
+ return jCheckBoxInterDir;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JComboBox \r
*/\r
- private JComboBox getJComboBox() {\r
- if (jComboBox == null) {\r
- jComboBox = new JComboBox();\r
- jComboBox.setPreferredSize(new Dimension(100, 20));\r
- jComboBox.addItem("MODULE");\r
- jComboBox.addItem("UNIFIED");\r
- jComboBox.setSelectedIndex(0);\r
- }\r
- return jComboBox;\r
- }\r
-\r
- /**\r
- * This method initializes jTextField \r
- * \r
- * @return javax.swing.JTextField \r
- */\r
- private JTextField getJTextField() {\r
- if (jTextField == null) {\r
- jTextField = new JTextField();\r
- jTextField.setPreferredSize(new java.awt.Dimension(350,20));\r
+ private JComboBox getJComboBoxInterDir() {\r
+ if (jComboBoxInterDir == null) {\r
+ jComboBoxInterDir = new JComboBox();\r
+ jComboBoxInterDir.setPreferredSize(new Dimension(100, 20));\r
+ jComboBoxInterDir.addItem("UNIFIED");\r
+ jComboBoxInterDir.addItem("MODULE");\r
+ \r
+ jComboBoxInterDir.setSelectedIndex(0);\r
+ jComboBoxInterDir.addItemListener(new java.awt.event.ItemListener() {\r
+ public void itemStateChanged(java.awt.event.ItemEvent e) {\r
+ if (docConsole != null){\r
+ docConsole.setSaved(false);\r
+ }\r
+ ffc.setPlatformDefsInterDir(jComboBoxInterDir.getSelectedItem()+"");\r
+ }\r
+ });\r
}\r
- return jTextField;\r
+ return jComboBoxInterDir;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JPanel \r
*/\r
- private JPanel getJPanel7() {\r
- if (jPanel7 == null) {\r
- jLabel6 = new JLabel();\r
- jLabel6.setPreferredSize(new java.awt.Dimension(280,20));\r
- jLabel6.setText(" ");\r
- jLabel5 = new JLabel();\r
- jLabel5.setPreferredSize(new java.awt.Dimension(40,20));\r
- jLabel5.setText("Name");\r
- jLabel4 = new JLabel();\r
- jLabel4.setPreferredSize(new java.awt.Dimension(20,20));\r
- jLabel4.setText("ID");\r
- jLabel3 = new JLabel();\r
- jLabel3.setPreferredSize(new java.awt.Dimension(109,20));\r
- jLabel3.setText("SKU Information");\r
- jLabel2 = new JLabel();\r
- jLabel2.setPreferredSize(new Dimension(109, 16));\r
- jLabel2.setText("Build Targets");\r
+ private JPanel getJPanelGeneralTabCenter() {\r
+ if (jPanelGeneralTabCenter == null) {\r
+ jLabelBuildTargets = new JLabel();\r
+ jLabelBuildTargets.setPreferredSize(new Dimension(109, 16));\r
+ jLabelBuildTargets.setText("Build Targets");\r
FlowLayout flowLayout4 = new FlowLayout();\r
flowLayout4.setAlignment(FlowLayout.LEFT);\r
flowLayout4.setHgap(20);\r
- jPanel7 = new JPanel();\r
- jPanel7.setPreferredSize(new Dimension(972, 100));\r
- jPanel7.setLayout(flowLayout4);\r
- jPanel7.add(jLabel2, null);\r
- jPanel7.add(getJTextField1(), null);\r
- jPanel7.add(getJButton2(), null);\r
- jPanel7.add(getJButton3(), null);\r
- jPanel7.add(getJScrollPane2(), null);\r
- jPanel7.add(jLabel3, null);\r
- jPanel7.add(jLabel4, null);\r
- jPanel7.add(getJTextField2(), null);\r
- jPanel7.add(jLabel5, null);\r
- jPanel7.add(getJTextField3(), null);\r
- jPanel7.add(getJScrollPane3(), null);\r
- jPanel7.add(jLabel6, null);\r
- jPanel7.add(getJButton4(), null);\r
- jPanel7.add(getJButton5(), null);\r
- }\r
- return jPanel7;\r
+ jPanelGeneralTabCenter = new JPanel();\r
+ jPanelGeneralTabCenter.setPreferredSize(new Dimension(972, 100));\r
+ jPanelGeneralTabCenter.setLayout(flowLayout4);\r
+ jPanelGeneralTabCenter.add(jLabelBuildTargets, null);\r
+ jPanelGeneralTabCenter.add(getJTextFieldBuildTarget(), null);\r
+ jPanelGeneralTabCenter.add(getJButtonAddBuildTarget(), null);\r
+ jPanelGeneralTabCenter.add(getJButtonDelBuildTarget(), null);\r
+ jPanelGeneralTabCenter.add(getJScrollPaneBuildTargets(), null);\r
+ jPanelGeneralTabCenter.add(getJPanelSkuInfo(), null);\r
+ jPanelGeneralTabCenter.add(getJScrollPaneSkuInfo(), null);\r
+ }\r
+ return jPanelGeneralTabCenter;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JTextField \r
*/\r
- private JTextField getJTextField1() {\r
- if (jTextField1 == null) {\r
- jTextField1 = new JTextField();\r
- jTextField1.setPreferredSize(new Dimension(150, 20));\r
+ private JTextField getJTextFieldBuildTarget() {\r
+ if (jTextFieldBuildTarget == null) {\r
+ jTextFieldBuildTarget = new JTextField();\r
+ jTextFieldBuildTarget.setPreferredSize(new Dimension(150, 20));\r
}\r
- return jTextField1;\r
+ return jTextFieldBuildTarget;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JButton \r
*/\r
- private JButton getJButton2() {\r
- if (jButton2 == null) {\r
- jButton2 = new JButton();\r
- jButton2.setPreferredSize(new Dimension(70, 20));\r
- jButton2.setText("Add");\r
+ private JButton getJButtonAddBuildTarget() {\r
+ if (jButtonAddBuildTarget == null) {\r
+ jButtonAddBuildTarget = new JButton();\r
+ jButtonAddBuildTarget.setPreferredSize(new Dimension(70, 20));\r
+ jButtonAddBuildTarget.setText("Add");\r
+ jButtonAddBuildTarget.addActionListener(new java.awt.event.ActionListener() {\r
+ public void actionPerformed(java.awt.event.ActionEvent e) {\r
+ if (jTextFieldBuildTarget.getText().length() > 0) {\r
+ String[] row = {jTextFieldBuildTarget.getText()};\r
+ buildTargetTableModel.addRow(row);\r
+ Vector<Object> v = new Vector<Object>();\r
+ for (int i = 0; i < jTableBuildTargets.getRowCount(); ++i) {\r
+ v.add(buildTargetTableModel.getValueAt(i, 0));\r
+ }\r
+ docConsole.setSaved(false);\r
+ ffc.setPlatformDefsBuildTargets(v);\r
+ }\r
+ }\r
+ });\r
}\r
- return jButton2;\r
+ return jButtonAddBuildTarget;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JButton \r
*/\r
- private JButton getJButton3() {\r
- if (jButton3 == null) {\r
- jButton3 = new JButton();\r
- jButton3.setPreferredSize(new Dimension(70, 20));\r
- jButton3.setText("Delete");\r
+ private JButton getJButtonDelBuildTarget() {\r
+ if (jButtonDelBuildTarget == null) {\r
+ jButtonDelBuildTarget = new JButton();\r
+ jButtonDelBuildTarget.setPreferredSize(new Dimension(70, 20));\r
+ jButtonDelBuildTarget.setText("Delete");\r
+ jButtonDelBuildTarget.setVisible(false);\r
}\r
- return jButton3;\r
+ return jButtonDelBuildTarget;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JScrollPane \r
*/\r
- private JScrollPane getJScrollPane2() {\r
- if (jScrollPane2 == null) {\r
- jScrollPane2 = new JScrollPane();\r
- jScrollPane2.setPreferredSize(new Dimension(453, 100));\r
- jScrollPane2.setViewportView(getJTable());\r
+ private JScrollPane getJScrollPaneBuildTargets() {\r
+ if (jScrollPaneBuildTargets == null) {\r
+ jScrollPaneBuildTargets = new JScrollPane();\r
+ jScrollPaneBuildTargets.setPreferredSize(new Dimension(453, 100));\r
+ jScrollPaneBuildTargets.setViewportView(getJTableBuildTargets());\r
}\r
- return jScrollPane2;\r
+ return jScrollPaneBuildTargets;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JScrollPane \r
*/\r
- private JScrollPane getJScrollPane3() {\r
- if (jScrollPane3 == null) {\r
- jScrollPane3 = new JScrollPane();\r
- jScrollPane3.setPreferredSize(new java.awt.Dimension(453,100));\r
- jScrollPane3.setViewportView(getJTable2());\r
+ private JScrollPane getJScrollPaneSkuInfo() {\r
+ if (jScrollPaneSkuInfo == null) {\r
+ jScrollPaneSkuInfo = new JScrollPane();\r
+ jScrollPaneSkuInfo.setPreferredSize(new java.awt.Dimension(453,100));\r
+ jScrollPaneSkuInfo.setViewportView(getJTableSkuInfo());\r
}\r
- return jScrollPane3;\r
+ return jScrollPaneSkuInfo;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JTable \r
*/\r
- private JTable getJTable2() {\r
- if (jTable2 == null) {\r
- skuInfoTableModel = new DefaultTableModel();\r
+ private JTable getJTableSkuInfo() {\r
+ if (jTableSkuInfo == null) {\r
+ skuInfoTableModel = new SkuInfoTableModel();\r
skuInfoTableModel.addColumn("SKU ID");\r
skuInfoTableModel.addColumn("Name");\r
- jTable2 = new JTable(skuInfoTableModel);\r
+ jTableSkuInfo = new JTable(skuInfoTableModel);\r
+ \r
+ jTableSkuInfo.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
+ \r
+ jTableSkuInfo.getModel().addTableModelListener(new TableModelListener() {\r
+ public void tableChanged(TableModelEvent arg0) {\r
+ // TODO Auto-generated method stub\r
+ int row = arg0.getFirstRow();\r
+ TableModel m = (TableModel)arg0.getSource();\r
+ if (arg0.getType() == TableModelEvent.UPDATE){\r
+ //ToDo Data Validition check.\r
+ String id = m.getValueAt(row, 0)+"";\r
+ String name = m.getValueAt(row, 1)+"";\r
+ docConsole.setSaved(false);\r
+ ffc.updatePlatformDefsSkuInfo(row, id, name);\r
+ }\r
+ }\r
+ });\r
+ }\r
+ return jTableSkuInfo;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jCheckBox \r
+ * \r
+ * @return javax.swing.JCheckBox \r
+ */\r
+ private JCheckBox getJCheckBoxEbc() {\r
+ if (jCheckBoxEbc == null) {\r
+ jCheckBoxEbc = new JCheckBox();\r
+ jCheckBoxEbc.setPreferredSize(new java.awt.Dimension(50,20));\r
+ jCheckBoxEbc.setText("EBC");\r
+ jCheckBoxEbc.addItemListener(new java.awt.event.ItemListener() {\r
+ public void itemStateChanged(java.awt.event.ItemEvent e) {\r
+ Vector<Object> v = new Vector<Object>();\r
+ getToolChain(v);\r
+ if (v.size() == 0) {\r
+ JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+ return;\r
+ }\r
+ ffc.setPlatformDefsSupportedArchs(v);\r
+ }\r
+ });\r
+ }\r
+ return jCheckBoxEbc;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jCheckBox5 \r
+ * \r
+ * @return javax.swing.JCheckBox \r
+ */\r
+ private JCheckBox getJCheckBoxArm() {\r
+ if (jCheckBoxArm == null) {\r
+ jCheckBoxArm = new JCheckBox();\r
+ jCheckBoxArm.setPreferredSize(new java.awt.Dimension(52,20));\r
+ jCheckBoxArm.setText("ARM");\r
+ jCheckBoxArm.setVisible(false);\r
+ jCheckBoxArm.addItemListener(new java.awt.event.ItemListener() {\r
+ public void itemStateChanged(java.awt.event.ItemEvent e) {\r
+ Vector<Object> v = new Vector<Object>();\r
+ getToolChain(v);\r
+ if (v.size() == 0) {\r
+ JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+ return;\r
+ }\r
+ ffc.setPlatformDefsSupportedArchs(v);\r
+ }\r
+ });\r
+ }\r
+ return jCheckBoxArm;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jCheckBox6 \r
+ * \r
+ * @return javax.swing.JCheckBox \r
+ */\r
+ private JCheckBox getJCheckBoxPpc() {\r
+ if (jCheckBoxPpc == null) {\r
+ jCheckBoxPpc = new JCheckBox();\r
+ jCheckBoxPpc.setPreferredSize(new Dimension(50, 20));\r
+ jCheckBoxPpc.setText("PPC");\r
+ jCheckBoxPpc.setVisible(false);\r
+ jCheckBoxPpc.addItemListener(new java.awt.event.ItemListener() {\r
+ public void itemStateChanged(java.awt.event.ItemEvent e) {\r
+ Vector<Object> v = new Vector<Object>();\r
+ getToolChain(v);\r
+ if (v.size() == 0) {\r
+ JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");\r
+ return;\r
+ }\r
+ ffc.setPlatformDefsSupportedArchs(v);\r
+ }\r
+ });\r
+ }\r
+ return jCheckBoxPpc;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jPanel8 \r
+ * \r
+ * @return javax.swing.JPanel \r
+ */\r
+ private JPanel getJPanelDir() {\r
+ if (jPanelDir == null) {\r
+ FlowLayout flowLayout1 = new FlowLayout();\r
+ flowLayout1.setAlignment(java.awt.FlowLayout.LEFT);\r
+ jLabelOutputDir = new JLabel();\r
+ jLabelOutputDir.setText("Output Directory");\r
+ jLabelPad = new JLabel();\r
+ jLabelPad.setPreferredSize(new java.awt.Dimension(150,20));\r
+ jLabelPad.setText("");\r
+ jPanelDir = new JPanel();\r
+ jPanelDir.setLayout(flowLayout1);\r
+ jPanelDir.setPreferredSize(new java.awt.Dimension(450,100));\r
+ jPanelDir.setBorder(javax.swing.BorderFactory.createEtchedBorder(javax.swing.border.EtchedBorder.RAISED));\r
+ jPanelDir.add(getJCheckBoxInterDir(), null);\r
+ jPanelDir.add(getJComboBoxInterDir(), null);\r
+ jPanelDir.add(jLabelPad, null);\r
+ jPanelDir.add(jLabelOutputDir, null);\r
+ jPanelDir.add(getJTextFieldOutputDir(), null);\r
}\r
- return jTable2;\r
+ return jPanelDir;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jTextField \r
+ * \r
+ * @return javax.swing.JTextField \r
+ */\r
+ private JTextField getJTextFieldOutputDir() {\r
+ if (jTextFieldOutputDir == null) {\r
+ jTextFieldOutputDir = new JTextField();\r
+ jTextFieldOutputDir.setPreferredSize(new java.awt.Dimension(300,20));\r
+ jTextFieldOutputDir.addFocusListener(new java.awt.event.FocusAdapter() {\r
+ public void focusLost(java.awt.event.FocusEvent e) {\r
+ docConsole.setSaved(false);\r
+ ffc.setPlatformDefsOutputDir(jTextFieldOutputDir.getText());\r
+ }\r
+ });\r
+ }\r
+ return jTextFieldOutputDir;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jPanel9 \r
+ * \r
+ * @return javax.swing.JPanel \r
+ */\r
+ private JPanel getJPanelSkuInfo() {\r
+ if (jPanelSkuInfo == null) {\r
+ jLabelPadd = new JLabel();\r
+ jLabelPadd.setPreferredSize(new Dimension(280, 20));\r
+ jLabelPadd.setText(" ");\r
+ jLabelSkuName = new JLabel();\r
+ jLabelSkuName.setPreferredSize(new Dimension(40, 20));\r
+ jLabelSkuName.setText("Name");\r
+ jLabelSkuId = new JLabel();\r
+ jLabelSkuId.setPreferredSize(new Dimension(20, 20));\r
+ jLabelSkuId.setText("ID");\r
+ jLabelSkuInfo = new JLabel();\r
+ jLabelSkuInfo.setPreferredSize(new java.awt.Dimension(150,20));\r
+ jLabelSkuInfo.setText("SKU Information");\r
+ jPanelSkuInfo = new JPanel();\r
+ jPanelSkuInfo.setPreferredSize(new java.awt.Dimension(450,70));\r
+ jPanelSkuInfo.add(jLabelSkuInfo, null);\r
+ jPanelSkuInfo.add(jLabelPadd, null);\r
+ jPanelSkuInfo.add(jLabelSkuId, null);\r
+ jPanelSkuInfo.add(getJTextFieldSkuId(), null);\r
+ jPanelSkuInfo.add(jLabelSkuName, null);\r
+ jPanelSkuInfo.add(getJTextFieldSkuName(), null);\r
+ jPanelSkuInfo.add(getJButtonSkuAdd(), null);\r
+ jPanelSkuInfo.add(getJButtonSkuDel(), null);\r
+ }\r
+ return jPanelSkuInfo;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JTextField \r
*/\r
- private JTextField getJTextField2() {\r
- if (jTextField2 == null) {\r
- jTextField2 = new JTextField();\r
- jTextField2.setPreferredSize(new java.awt.Dimension(50,20));\r
+ private JTextField getJTextFieldSkuId() {\r
+ if (jTextFieldSkuId == null) {\r
+ jTextFieldSkuId = new JTextField();\r
+ jTextFieldSkuId.setPreferredSize(new Dimension(50, 20));\r
}\r
- return jTextField2;\r
+ return jTextFieldSkuId;\r
}\r
\r
/**\r
* \r
* @return javax.swing.JTextField \r
*/\r
- private JTextField getJTextField3() {\r
- if (jTextField3 == null) {\r
- jTextField3 = new JTextField();\r
- jTextField3.setPreferredSize(new Dimension(150, 20));\r
+ private JTextField getJTextFieldSkuName() {\r
+ if (jTextFieldSkuName == null) {\r
+ jTextFieldSkuName = new JTextField();\r
+ jTextFieldSkuName.setPreferredSize(new Dimension(150, 20));\r
}\r
- return jTextField3;\r
+ return jTextFieldSkuName;\r
}\r
\r
/**\r
- * This method initializes jButton4 \r
+ * This method initializes jButton \r
* \r
* @return javax.swing.JButton \r
*/\r
- private JButton getJButton4() {\r
- if (jButton4 == null) {\r
- jButton4 = new JButton();\r
- jButton4.setPreferredSize(new Dimension(70, 20));\r
- jButton4.setText("Add");\r
+ private JButton getJButtonSkuAdd() {\r
+ if (jButtonSkuAdd == null) {\r
+ jButtonSkuAdd = new JButton();\r
+ jButtonSkuAdd.setPreferredSize(new Dimension(70, 20));\r
+ jButtonSkuAdd.setText("Add");\r
+ jButtonSkuAdd.addActionListener(new java.awt.event.ActionListener() {\r
+ public void actionPerformed(java.awt.event.ActionEvent e) {\r
+ if (jTextFieldSkuId.getText().length() > 0) {\r
+ String[] row = {jTextFieldSkuId.getText(), jTextFieldSkuName.getText()};\r
+ skuInfoTableModel.addRow(row);\r
+ docConsole.setSaved(false);\r
+ ffc.genPlatformDefsSkuInfo(row[0], row[1]);\r
+ }\r
+ }\r
+ });\r
}\r
- return jButton4;\r
+ return jButtonSkuAdd;\r
}\r
\r
/**\r
- * This method initializes jButton5 \r
+ * This method initializes jButton1 \r
* \r
* @return javax.swing.JButton \r
*/\r
- private JButton getJButton5() {\r
- if (jButton5 == null) {\r
- jButton5 = new JButton();\r
- jButton5.setPreferredSize(new Dimension(70, 20));\r
- jButton5.setText("Delete");\r
+ private JButton getJButtonSkuDel() {\r
+ if (jButtonSkuDel == null) {\r
+ jButtonSkuDel = new JButton();\r
+ jButtonSkuDel.setPreferredSize(new Dimension(70, 20));\r
+ jButtonSkuDel.setText("Delete");\r
+ jButtonSkuDel.addActionListener(new java.awt.event.ActionListener() {\r
+ public void actionPerformed(java.awt.event.ActionEvent e) {\r
+ if (jTableSkuInfo.isEditing()) {\r
+ jTableSkuInfo.getCellEditor().stopCellEditing();\r
+ }\r
+ if (jTableSkuInfo.getSelectedRow() < 1) {\r
+ return;\r
+ }\r
+ docConsole.setSaved(false);\r
+ ffc.removePlatformDefsSkuInfo(jTableSkuInfo.getSelectedRow());\r
+ skuInfoTableModel.removeRow(jTableSkuInfo.getSelectedRow());\r
+ }\r
+ });\r
}\r
- return jButton5;\r
+ return jButtonSkuDel;\r
}\r
\r
\r
} // @jve:decl-index=0:visual-constraint="10,10"\r
\r
+class SkuInfoTableModel extends DefaultTableModel{\r
+ /**\r
+ * \r
+ */\r
+ private static final long serialVersionUID = 1L;\r
+\r
+ public boolean isCellEditable(int row, int column) {\r
+ if (row == 0) {\r
+ return false;\r
+ }\r
+ return true;\r
+ }\r
+}\r
+\r
+class TargetTableModel extends DefaultTableModel{\r
+ private static final long serialVersionUID = 1L;\r
+\r
+ public boolean isCellEditable(int row, int column) {\r
+ if (row < 2) {\r
+ return false;\r
+ }\r
+ return true;\r
+ }\r
+}\r
+\r
\r