X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=Tools%2FSource%2FFrameworkWizard%2Fsrc%2Forg%2Ftianocore%2Fframeworkwizard%2Fplatform%2Fui%2FFpdPlatformDefs.java;h=454df225e153e6171fdde63bb74b4e915d46bc8f;hp=2133e05464e04f4c6bb151ade443e1acae7d821f;hb=72a4deab42c6b275d48ee84573bf2f8c2549f50c;hpb=440537339ee813c0d52ab4e88746cd3fe42fdc33 diff --git a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdPlatformDefs.java b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdPlatformDefs.java index 2133e05464..454df225e1 100644 --- a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdPlatformDefs.java +++ b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdPlatformDefs.java @@ -1,179 +1,211 @@ /** @file - Java class FpdPlatformDefs is GUI for Flash element operation in SPD file. + Java class FpdPlatformDefs is GUI for Flash element operation in SPD file. -Copyright (c) 2006, Intel Corporation -All rights reserved. This program and the accompanying materials -are licensed and made available under the terms and conditions of the BSD License -which accompanies this distribution. The full text of the license may be found at -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -**/ + Copyright (c) 2006, Intel Corporation + All rights reserved. This program and the accompanying materials + are licensed and made available under the terms and conditions of the BSD License + which accompanies this distribution. The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + **/ package org.tianocore.frameworkwizard.platform.ui; import java.awt.BorderLayout; import javax.swing.JPanel; -import javax.swing.DefaultCellEditor; -import javax.swing.DefaultListModel; import javax.swing.JFrame; import javax.swing.JTabbedPane; import javax.swing.JButton; +import javax.swing.ListSelectionModel; import org.tianocore.PlatformSurfaceAreaDocument; +import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformType; import org.tianocore.frameworkwizard.common.ui.IInternalFrame; - - -import java.awt.FlowLayout; - +import org.tianocore.frameworkwizard.toolchain.ToolChainId; import javax.swing.JCheckBox; +import javax.swing.JOptionPane; import javax.swing.JTextField; import javax.swing.JLabel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.event.InternalFrameAdapter; import javax.swing.event.InternalFrameEvent; -import javax.swing.event.ListSelectionEvent; -import javax.swing.event.ListSelectionListener; +//import javax.swing.event.ListSelectionEvent; +//import javax.swing.event.ListSelectionListener; import javax.swing.event.TableModelEvent; import javax.swing.event.TableModelListener; import javax.swing.table.DefaultTableModel; -import javax.swing.table.TableColumn; import javax.swing.table.TableModel; import javax.swing.JComboBox; import java.awt.Dimension; -import javax.swing.JRadioButton; -import javax.swing.JTextArea; -import java.awt.CardLayout; +import java.util.Vector; public class FpdPlatformDefs extends IInternalFrame { - /** - * - */ - private static final long serialVersionUID = 1L; + private static boolean Debug = false; + + private final int dialogWidth = 600; + + private final int oneRowHeight = 20; + + private final int twoRowHeight = 40; + + // private final int threeRowHeight = 60; + + private final int fourRowHeight = 80; + + private final int sepHeight = 6; + + // private final int sepWidth = 10; + + private final int offsetWidth = 70; + + private final int buttonWidth = 90; + + private final int rowOne = 12; + + private final int rowTwo = rowOne + oneRowHeight + sepHeight * 3; + + private final int rowThree = rowTwo + oneRowHeight + sepHeight; + + private final int rowFour = rowThree + oneRowHeight + sepHeight; + + private final int rowFive = rowFour + fourRowHeight + sepHeight * 3; + + private final int rowSix = rowFive + oneRowHeight + sepHeight; + + private final int rowSeven = rowSix + oneRowHeight + sepHeight; + + private final int rowEight = rowSeven + oneRowHeight + sepHeight; + + private final int rowNine = rowEight + oneRowHeight + sepHeight; + + private final int rowTen = rowNine + fourRowHeight + sepHeight + sepHeight * 3; + + private final int rowEleven = rowTen + oneRowHeight + sepHeight; + + private final int rowTwelve = rowEleven + oneRowHeight + sepHeight; + + private final int dialogHeight = rowTwelve + twoRowHeight; + + private final int labelColumn = 12; + + private final int valueColumn = 168; + + private final int labelWidth = 155; + + private final int valueWidth = 320; + + private final int valueCenter = valueColumn + (valueWidth / 2); + + private final int tableHeight = fourRowHeight; + + private final int tableWidth = valueWidth; + static JFrame frame; + private JPanel jContentPane = null; - private JPanel jPanel = null; - private JPanel jPanel1 = null; - private JPanel jPanel2 = null; - private JPanel jPanel3 = null; + private JTabbedPane jTabbedPane = null; - private JButton jButtonOk = null; - private JButton jButtonCancel = null; - private JPanel jPanelFvImageW = null; - private JScrollPane jScrollPane = null; - private DefaultTableModel imageEntryPointTableModel = null; - private DefaultTableModel outputDirectoryTableModel = null; - - private DefaultTableModel skuInfoTableModel = null; - private DefaultTableModel fdfBlocksTableModel = null; - private DefaultTableModel fdfRegionsTableModel = null; - private DefaultTableModel fdfSubRegionsTableModel = null; - - private JLabel jLabel17 = null; - private DefaultListModel listModel = new DefaultListModel(); + + private TargetTableModel buildTargetTableModel = null; + + private SkuInfoTableModel skuInfoTableModel = null; + + private OpeningPlatformType docConsole = null; + private FpdFileContents ffc = null; - private JPanel jPanel4 = null; - private JPanel jPanel5 = null; - private JLabel jLabel = null; - private JCheckBox jCheckBox1 = null; - private JCheckBox jCheckBox2 = null; - private JCheckBox jCheckBox3 = null; - private JPanel jPanel6 = null; - private JLabel jLabel1 = null; - private JCheckBox jCheckBox4 = null; - private JComboBox jComboBox = null; - private JTextField jTextField = null; - private JTable jTable = null; - private JPanel jPanel7 = null; - private JLabel jLabel2 = null; - private JTextField jTextField1 = null; - private JButton jButton2 = null; - private JButton jButton3 = null; - private JScrollPane jScrollPane2 = null; - private JTable jTable1 = null; - private JLabel jLabel3 = null; - private JScrollPane jScrollPane3 = null; - private JTable jTable2 = null; - private JLabel jLabel4 = null; - private JTextField jTextField2 = null; - private JLabel jLabel5 = null; - private JTextField jTextField3 = null; - private JLabel jLabel6 = null; - private JButton jButton4 = null; - private JButton jButton5 = null; - private JLabel jLabel7 = null; + + private JPanel jPanelGeneralTab = null; + + private JPanel jPanelGeneralContainer = null; + + private JLabel jLabelSupArch = null; + + private JCheckBox jCheckBoxIa32 = null; + + private JCheckBox jCheckBoxX64 = null; + + private JCheckBox jCheckBoxIpf = null; + + private JComboBox jComboBoxInterDir = null; + + private JComboBox jBuildTargetComboBox = null; + + private JTable jTableBuildTargets = null; + + private JPanel jArchitectureSelections = null; + + private JLabel jLabelBuildTargets = null; + + // private JTextField jTextFieldBuildTarget = null; + + private JButton jButtonAddBuildTarget = null; + + private JButton jButtonDelBuildTarget = null; + + private JScrollPane jScrollPaneBuildTargets = null; + + private JScrollPane jScrollPaneSkuInfo = null; + + private JTable jTableSkuInfo = null; + + private JCheckBox jCheckBoxEbc = null; + + private JCheckBox jCheckBoxArm = null; + + private JCheckBox jCheckBoxPpc = null; + + private JLabel jLabelSkuInfo = null; + + private JLabel jLabelSkuId = null; + + private JTextField jTextFieldSkuId = null; + + private JLabel jLabelSkuName = null; + + private JTextField jTextFieldSkuName = null; + + private JButton jButtonSkuAdd = null; + + private JButton jButtonSkuDel = null; + + private JLabel jLabelIntermediateDirs = null; + + private JLabel jLabelOutputDir = null; + + private JTextField jTextFieldOutputDir = null; + + private JLabel jLabelOutputInfo = null; + + private int selectedRow = -1; + + /** + * The following are not used by the UI + */ + private static final long serialVersionUID = 1L; + + private ToolChainId tid = new ToolChainId(); + public FpdPlatformDefs() { super(); - // TODO Auto-generated constructor stub - initialize(); this.setBounds(new java.awt.Rectangle(0, 0, 500, 370)); this.setVisible(true); } - public FpdPlatformDefs(PlatformSurfaceAreaDocument.PlatformSurfaceArea fpd){ + public FpdPlatformDefs(PlatformSurfaceAreaDocument.PlatformSurfaceArea fpd) { this(); ffc = new FpdFileContents(fpd); init(ffc); } - - /** - * This method initializes jPanel - * - * @return javax.swing.JPanel - */ - private JPanel getJPanel() { - if (jPanel == null) { - jPanel = new JPanel(); - } - return jPanel; - } - /** - * This method initializes jPanel1 - * - * @return javax.swing.JPanel - */ - private JPanel getJPanel1() { - if (jPanel1 == null) { - FlowLayout flowLayout = new FlowLayout(); - flowLayout.setAlignment(java.awt.FlowLayout.RIGHT); - flowLayout.setHgap(15); - jPanel1 = new JPanel(); - jPanel1.setLayout(flowLayout); - jPanel1.setComponentOrientation(java.awt.ComponentOrientation.LEFT_TO_RIGHT); - jPanel1.add(getJButtonCancel(), null); - jPanel1.add(getJButtonOk(), null); - } - return jPanel1; - } - - /** - * This method initializes jPanel2 - * - * @return javax.swing.JPanel - */ - private JPanel getJPanel2() { - if (jPanel2 == null) { - jPanel2 = new JPanel(); - } - return jPanel2; - } - - /** - * This method initializes jPanel3 - * - * @return javax.swing.JPanel - */ - private JPanel getJPanel3() { - if (jPanel3 == null) { - jPanel3 = new JPanel(); - } - return jPanel3; + public FpdPlatformDefs(OpeningPlatformType opt) { + this(opt.getXmlFpd()); + docConsole = opt; } /** @@ -184,86 +216,123 @@ public class FpdPlatformDefs extends IInternalFrame { private JTabbedPane getJTabbedPane() { if (jTabbedPane == null) { jTabbedPane = new JTabbedPane(); - - jTabbedPane.addTab("General", null, getJPanel4(), null); - + jTabbedPane.addTab("General", null, getJPanelGeneralTab(), null); } return jTabbedPane; } /** - * This method initializes jButtonOk - * - * @return javax.swing.JButton - */ - private JButton getJButtonOk() { - if (jButtonOk == null) { - jButtonOk = new JButton(); - jButtonOk.setPreferredSize(new java.awt.Dimension(80,20)); - jButtonOk.setText("Cancel"); - jButtonOk.setVisible(false); - } - return jButtonOk; - } - - /** - * This method initializes jButtonCancel - * - * @return javax.swing.JButton - */ - private JButton getJButtonCancel() { - if (jButtonCancel == null) { - jButtonCancel = new JButton(); - jButtonCancel.setPreferredSize(new java.awt.Dimension(80,20)); - jButtonCancel.setText("Ok"); - jButtonCancel.setVisible(false); - } - return jButtonCancel; - } - - /** - * This method initializes jPanelFvImageW - * - * @return javax.swing.JPanel - */ - private JPanel getJPanelFvImageW() { - if (jPanelFvImageW == null) { - jPanelFvImageW = new JPanel(); - jPanelFvImageW.setPreferredSize(new java.awt.Dimension(10,2)); - } - return jPanelFvImageW; - } - - - /** * This method initializes this * * @return void */ private void initialize() { - this.setSize(518, 650); + this.setSize(dialogWidth, dialogHeight); this.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); - this.setContentPane(getJContentPane()); this.setTitle("FPD Platform Definitions"); - this.addInternalFrameListener(new InternalFrameAdapter(){ - public void internalFrameDeactivated(InternalFrameEvent e){ - if (jTable.isEditing()) { - jTable.getCellEditor().stopCellEditing(); + this.setContentPane(getJContentPane()); + this.addInternalFrameListener(new InternalFrameAdapter() { + public void internalFrameDeactivated(InternalFrameEvent e) { + if (jTableBuildTargets.isEditing()) { + jTableBuildTargets.getCellEditor().stopCellEditing(); } - if (jTable2.isEditing()) { - jTable2.getCellEditor().stopCellEditing(); + if (jTableSkuInfo.isEditing()) { + jTableSkuInfo.getCellEditor().stopCellEditing(); } - + } }); } private void init(FpdFileContents ffc) { - + Vector v = new Vector(); + ffc.getPlatformDefsSupportedArchs(v); + showSupportedArchitectures(v); + v.removeAllElements(); + + ffc.getPlatformDefsBuildTargets(v); + buildTargetTableModel.setRowCount(0); + for (int i = 0; i < v.size(); ++i) { + Object[] row = { v.get(i) }; + buildTargetTableModel.addRow(row); + } + + String[][] saa = new String[ffc.getPlatformDefsSkuInfoCount()][2]; + ffc.getPlatformDefsSkuInfos(saa); + for (int i = 0; i < saa.length; ++i) { + skuInfoTableModel.addRow(saa[i]); + } + + String interDir = ffc.getPlatformDefsInterDir(); + if (interDir != null) { + jComboBoxInterDir.setSelectedItem(interDir); + } + + String outputDir = ffc.getPlatformDefsOutputDir(); + if (outputDir != null) { + jTextFieldOutputDir.setText(outputDir); + } } - - - + + private void showSupportedArchitectures(Vector v) { + if (v.contains("IA32")) { + jCheckBoxIa32.setSelected(true); + } else { + jCheckBoxIa32.setSelected(false); + } + if (v.contains("X64")) { + jCheckBoxX64.setSelected(true); + } else { + jCheckBoxX64.setSelected(false); + } + if (v.contains("IPF")) { + jCheckBoxIpf.setSelected(true); + } else { + jCheckBoxIpf.setSelected(false); + } + if (v.contains("EBC")) { + jCheckBoxEbc.setSelected(true); + } else { + jCheckBoxEbc.setSelected(false); + } + if (v.contains("ARM")) { + jCheckBoxArm.setSelected(true); + } else { + jCheckBoxArm.setSelected(false); + } + if (v.contains("PPC")) { + jCheckBoxPpc.setSelected(true); + } else { + jCheckBoxPpc.setSelected(false); + } + } + + private void getSupportedArchitectures(Vector v) { + if (docConsole != null) { + docConsole.setSaved(false); + } + v.removeAllElements(); + if (jCheckBoxIa32.isSelected()) { + v.add("IA32"); + } + if (jCheckBoxX64.isSelected()) { + v.add("X64"); + } + if (jCheckBoxIpf.isSelected()) { + v.add("IPF"); + } + if (jCheckBoxEbc.isSelected()) { + v.add("EBC"); + } + if (jCheckBoxArm.isSelected()) { + v.add("ARM"); + } + if (jCheckBoxPpc.isSelected()) { + v.add("PPC"); + } + + } + /** * This method initializes jContentPane * @@ -273,10 +342,6 @@ public class FpdPlatformDefs extends IInternalFrame { if (jContentPane == null) { jContentPane = new JPanel(); jContentPane.setLayout(new BorderLayout()); - jContentPane.add(getJPanel(), java.awt.BorderLayout.EAST); - jContentPane.add(getJPanel1(), java.awt.BorderLayout.SOUTH); - jContentPane.add(getJPanel2(), java.awt.BorderLayout.WEST); - jContentPane.add(getJPanel3(), java.awt.BorderLayout.NORTH); jContentPane.add(getJTabbedPane(), java.awt.BorderLayout.CENTER); } return jContentPane; @@ -287,15 +352,17 @@ public class FpdPlatformDefs extends IInternalFrame { * * @return javax.swing.JPanel */ - private JPanel getJPanel4() { - if (jPanel4 == null) { - jPanel4 = new JPanel(); - jPanel4.setLayout(new BorderLayout()); - jPanel4.add(getJPanel5(), java.awt.BorderLayout.NORTH); - jPanel4.add(getJPanel6(), java.awt.BorderLayout.SOUTH); - jPanel4.add(getJPanel7(), java.awt.BorderLayout.CENTER); + private JPanel getJPanelGeneralTab() { + if (jPanelGeneralTab == null) { + jPanelGeneralTab = new JPanel(); + jPanelGeneralTab.setBounds(new java.awt.Rectangle(0, 0, dialogWidth * 2, dialogHeight * 3)); + jPanelGeneralTab.setPreferredSize(new java.awt.Dimension(dialogWidth + 10, (dialogHeight * 3) + 10)); + jPanelGeneralTab.setAutoscrolls(true); + jPanelGeneralTab.setLocation(0, 0); + jPanelGeneralTab.setLayout(null); + jPanelGeneralTab.add(getJPanelGeneralContainer(), null); } - return jPanel4; + return jPanelGeneralTab; } /** @@ -303,21 +370,92 @@ public class FpdPlatformDefs extends IInternalFrame { * * @return javax.swing.JPanel */ - private JPanel getJPanel5() { - if (jPanel5 == null) { - jLabel = new JLabel(); - jLabel.setText("Tool Chain Families"); - FlowLayout flowLayout2 = new FlowLayout(); - flowLayout2.setAlignment(FlowLayout.LEFT); - flowLayout2.setHgap(20); - jPanel5 = new JPanel(); - jPanel5.setLayout(flowLayout2); - jPanel5.add(jLabel, null); - jPanel5.add(getJCheckBox1(), null); - jPanel5.add(getJCheckBox2(), null); - jPanel5.add(getJCheckBox3(), null); - } - return jPanel5; + private JPanel getJPanelGeneralContainer() { + if (jPanelGeneralContainer == null) { + jLabelSupArch = new JLabel(); + jLabelSupArch.setText("Supported Architectures"); + jLabelSupArch.setBounds(new java.awt.Rectangle(labelColumn, rowOne, labelWidth, oneRowHeight)); + jLabelBuildTargets = new JLabel(); + jLabelBuildTargets.setText("Build Targets"); + jLabelBuildTargets.setBounds(new java.awt.Rectangle(labelColumn, rowTwo, labelWidth, oneRowHeight)); + jLabelSkuInfo = new JLabel(); + jLabelSkuInfo.setText("SKU Information"); + jLabelSkuInfo.setBounds(new java.awt.Rectangle(labelColumn, rowFive, labelWidth, oneRowHeight)); + jLabelSkuId = new JLabel(); + jLabelSkuId.setText("SKU ID Number"); + jLabelSkuId.setBounds(new java.awt.Rectangle(labelColumn + 10, rowSix, labelWidth, oneRowHeight)); + jLabelSkuName = new JLabel(); + jLabelSkuName.setText("SKU Name"); + jLabelSkuName.setBounds(new java.awt.Rectangle(labelColumn + 10, rowSeven, labelWidth, oneRowHeight)); + jLabelOutputInfo = new JLabel(); + jLabelOutputInfo.setText("Output Directory Configuration"); + jLabelOutputInfo.setBounds(new java.awt.Rectangle(labelColumn, rowTen, valueWidth, oneRowHeight)); + jLabelIntermediateDirs = new JLabel(); + jLabelIntermediateDirs.setText("Intermediate Build Directories"); + jLabelIntermediateDirs.setBounds(new java.awt.Rectangle(labelColumn + 10, rowEleven, valueWidth, + oneRowHeight)); + jLabelOutputDir = new JLabel(); + jLabelOutputDir.setText("Name of the Output Directory"); + jLabelOutputDir.setBounds(new java.awt.Rectangle(labelColumn + 10, rowTwelve, valueWidth, oneRowHeight)); + + jPanelGeneralContainer = new JPanel(); + jPanelGeneralContainer.setLayout(null); + jPanelGeneralContainer.setLocation(new java.awt.Point(2, 2)); + jPanelGeneralContainer.setBounds(new java.awt.Rectangle(2, 2, dialogWidth * 2, dialogHeight)); + jPanelGeneralContainer.setPreferredSize(new java.awt.Dimension(dialogWidth, dialogHeight)); + + jPanelGeneralContainer.add(jLabelSupArch, null); + jPanelGeneralContainer.add(getArchitectureSelections(), null); + + jPanelGeneralContainer.add(jLabelBuildTargets, null); + // jPanelGeneralContainer.add(getJTextFieldBuildTarget(), null); + jPanelGeneralContainer.add(getJBuildTargetComboBox(), null); + + jPanelGeneralContainer.add(getJButtonAddBuildTarget(), null); + jPanelGeneralContainer.add(getJButtonDelBuildTarget(), null); + jPanelGeneralContainer.add(getJScrollPaneBuildTargets(), null); + + jPanelGeneralContainer.add(jLabelSkuInfo, null); + jPanelGeneralContainer.add(jLabelSkuId, null); + jPanelGeneralContainer.add(getJTextFieldSkuId(), null); + jPanelGeneralContainer.add(jLabelSkuName, null); + jPanelGeneralContainer.add(getJTextFieldSkuName(), null); + jPanelGeneralContainer.add(getJButtonSkuAdd(), null); + jPanelGeneralContainer.add(getJButtonSkuDel(), null); + jPanelGeneralContainer.add(getJScrollPaneSkuInfo(), null); + + jPanelGeneralContainer.add(jLabelOutputInfo, null); + jPanelGeneralContainer.add(jLabelIntermediateDirs, null); + jPanelGeneralContainer.add(getJComboBoxInterDir(), null); + jPanelGeneralContainer.add(jLabelOutputDir, null); + jPanelGeneralContainer.add(getJTextFieldOutputDir(), null); + + } + return jPanelGeneralContainer; + } + + /** + * This method initializes jArchitectureSelections Row 4 + * + * @return jArchitectureSelections + */ + private JPanel getArchitectureSelections() { + if (jArchitectureSelections == null) { + jArchitectureSelections = new JPanel(); + jArchitectureSelections.setLayout(null); + jArchitectureSelections.add(getJCheckBoxIa32(), null); + jArchitectureSelections.add(getJCheckBoxX64(), null); + jArchitectureSelections.add(getJCheckBoxIpf(), null); + jArchitectureSelections.add(getJCheckBoxEbc(), null); + jArchitectureSelections.add(getJCheckBoxArm(), null); + jArchitectureSelections.add(getJCheckBoxPpc(), null); + jArchitectureSelections.setBounds(new java.awt.Rectangle(valueColumn, rowOne, valueWidth, oneRowHeight)); + jArchitectureSelections.setPreferredSize(new java.awt.Dimension(valueWidth, oneRowHeight)); + jArchitectureSelections.setLocation(new java.awt.Point(valueColumn, rowOne)); + jArchitectureSelections.setToolTipText("A Platform may support one or more architectures," + + "
at least one architecture must be selected!"); + } + return jArchitectureSelections; } /** @@ -325,12 +463,24 @@ public class FpdPlatformDefs extends IInternalFrame { * * @return javax.swing.JCheckBox */ - private JCheckBox getJCheckBox1() { - if (jCheckBox1 == null) { - jCheckBox1 = new JCheckBox(); - jCheckBox1.setText("MSFT"); + private JCheckBox getJCheckBoxIa32() { + if (jCheckBoxIa32 == null) { + jCheckBoxIa32 = new JCheckBox(); + jCheckBoxIa32.setText("IA32"); + jCheckBoxIa32.setBounds(new java.awt.Rectangle(0, 0, 55, 20)); + jCheckBoxIa32.addItemListener(new java.awt.event.ItemListener() { + public void itemStateChanged(java.awt.event.ItemEvent e) { + Vector v = new Vector(); + getSupportedArchitectures(v); + if (v.size() == 0) { + JOptionPane.showMessageDialog(frame, "Platform must support at least ONE Architecture."); + return; + } + ffc.setPlatformDefsSupportedArchs(v); + } + }); } - return jCheckBox1; + return jCheckBoxIa32; } /** @@ -338,12 +488,24 @@ public class FpdPlatformDefs extends IInternalFrame { * * @return javax.swing.JCheckBox */ - private JCheckBox getJCheckBox2() { - if (jCheckBox2 == null) { - jCheckBox2 = new JCheckBox(); - jCheckBox2.setText("GCC"); + private JCheckBox getJCheckBoxX64() { + if (jCheckBoxX64 == null) { + jCheckBoxX64 = new JCheckBox(); + jCheckBoxX64.setText("X64"); + jCheckBoxX64.setBounds(new java.awt.Rectangle(55, 0, 53, 20)); + jCheckBoxX64.addItemListener(new java.awt.event.ItemListener() { + public void itemStateChanged(java.awt.event.ItemEvent e) { + Vector v = new Vector(); + getSupportedArchitectures(v); + if (v.size() == 0) { + JOptionPane.showMessageDialog(frame, "Platform must support at least ONE Architecture."); + return; + } + ffc.setPlatformDefsSupportedArchs(v); + } + }); } - return jCheckBox2; + return jCheckBoxX64; } /** @@ -351,216 +513,390 @@ public class FpdPlatformDefs extends IInternalFrame { * * @return javax.swing.JCheckBox */ - private JCheckBox getJCheckBox3() { - if (jCheckBox3 == null) { - jCheckBox3 = new JCheckBox(); - jCheckBox3.setText("INTC"); + private JCheckBox getJCheckBoxIpf() { + if (jCheckBoxIpf == null) { + jCheckBoxIpf = new JCheckBox(); + jCheckBoxIpf.setText("IPF"); + jCheckBoxIpf.setBounds(new java.awt.Rectangle(108, 0, 52, 20)); + jCheckBoxIpf.addItemListener(new java.awt.event.ItemListener() { + public void itemStateChanged(java.awt.event.ItemEvent e) { + Vector v = new Vector(); + getSupportedArchitectures(v); + if (v.size() == 0) { + JOptionPane.showMessageDialog(frame, "Platform must support at least ONE Architecture."); + return; + } + ffc.setPlatformDefsSupportedArchs(v); + } + }); } - return jCheckBox3; + return jCheckBoxIpf; } - + /** - * This method initializes jTable + * This method initializes jCheckBox * - * @return javax.swing.JTable + * @return javax.swing.JCheckBox */ - private JTable getJTable() { - if (jTable == null) { - imageEntryPointTableModel = new DefaultTableModel(); - imageEntryPointTableModel.addColumn("Build Target"); + private JCheckBox getJCheckBoxEbc() { + if (jCheckBoxEbc == null) { + jCheckBoxEbc = new JCheckBox(); + // jCheckBoxEbc.setPreferredSize(new java.awt.Dimension(50, 20)); + jCheckBoxEbc.setBounds(new java.awt.Rectangle(160, 0, 53, 20)); + jCheckBoxEbc.setText("EBC"); + jCheckBoxEbc.setVisible(true); + jCheckBoxEbc.addItemListener(new java.awt.event.ItemListener() { + public void itemStateChanged(java.awt.event.ItemEvent e) { + Vector v = new Vector(); + getSupportedArchitectures(v); + if (v.size() == 0) { + JOptionPane.showMessageDialog(frame, "Platform must support at least ONE Architecture."); + return; + } + ffc.setPlatformDefsSupportedArchs(v); + } + }); } - return jTable; + return jCheckBoxEbc; } /** - * This method initializes jTable1 + * This method initializes jCheckBox5 * - * @return javax.swing.JTable + * @return javax.swing.JCheckBox */ - private JTable getJTable1() { - if (jTable1 == null) { - outputDirectoryTableModel = new DefaultTableModel(); - outputDirectoryTableModel.addColumn("Output Directory"); - outputDirectoryTableModel.addColumn("Intermediate Directories"); - - TableColumn imDirCol = jTable1.getColumnModel().getColumn(1); - JComboBox cb = new JComboBox(); - cb.addItem("MODULE"); - cb.addItem("UNIFIED"); - imDirCol.setCellEditor(new DefaultCellEditor(cb)); + private JCheckBox getJCheckBoxArm() { + if (jCheckBoxArm == null) { + jCheckBoxArm = new JCheckBox(); + // jCheckBoxArm.setPreferredSize(new java.awt.Dimension(52, 20)); + jCheckBoxArm.setBounds(new java.awt.Rectangle(213, 0, 54, 20)); + jCheckBoxArm.setText("ARM"); + jCheckBoxArm.setVisible(true); + jCheckBoxArm.addItemListener(new java.awt.event.ItemListener() { + public void itemStateChanged(java.awt.event.ItemEvent e) { + Vector v = new Vector(); + getSupportedArchitectures(v); + if (v.size() == 0) { + JOptionPane.showMessageDialog(frame, "Platform must support at least ONE Architecture."); + return; + } + ffc.setPlatformDefsSupportedArchs(v); + } + }); } - return jTable1; + return jCheckBoxArm; } + /** + * This method initializes jCheckBox6 + * + * @return javax.swing.JCheckBox + */ + private JCheckBox getJCheckBoxPpc() { + if (jCheckBoxPpc == null) { + jCheckBoxPpc = new JCheckBox(); + // jCheckBoxPpc.setPreferredSize(new Dimension(50, 20)); + jCheckBoxPpc.setBounds(new java.awt.Rectangle(267, 0, 53, 20)); + jCheckBoxPpc.setText("PPC"); + jCheckBoxPpc.setVisible(true); + jCheckBoxPpc.addItemListener(new java.awt.event.ItemListener() { + public void itemStateChanged(java.awt.event.ItemEvent e) { + Vector v = new Vector(); + getSupportedArchitectures(v); + if (v.size() == 0) { + JOptionPane.showMessageDialog(frame, "Platform must support at least ONE Architecture."); + return; + } + ffc.setPlatformDefsSupportedArchs(v); + } + }); + } + return jCheckBoxPpc; + } /** - * This method initializes jPanel6 - * - * @return javax.swing.JPanel + * Use a ComboBox for BuildTargets + * + * @return javax.swing.JComboBox jBuildTargetComboBox */ - private JPanel getJPanel6() { - if (jPanel6 == null) { - jLabel7 = new JLabel(); - jLabel7.setPreferredSize(new java.awt.Dimension(100,20)); - jLabel7.setText(""); - jLabel1 = new JLabel(); - jLabel1.setText("Output Directory"); - FlowLayout flowLayout3 = new FlowLayout(); - flowLayout3.setAlignment(FlowLayout.LEFT); - flowLayout3.setHgap(20); - jPanel6 = new JPanel(); - jPanel6.setPreferredSize(new java.awt.Dimension(10,250)); - jPanel6.setLayout(flowLayout3); - jPanel6.add(getJCheckBox4(), null); - jPanel6.add(getJComboBox(), null); - jPanel6.add(jLabel7, null); - jPanel6.add(jLabel1, null); - jPanel6.add(getJTextField(), null); - } - return jPanel6; + private JComboBox getJBuildTargetComboBox() { + if (jBuildTargetComboBox == null) { + String toolBt = null; + if (tid.getToolsDefTargetNames() == null) + toolBt = "DEBUG RELEASE"; + else + toolBt = tid.getToolsDefTargetNames().trim(); + + if ((toolBt.contains("*")) || (toolBt.length() < 1)) { + toolBt = "DEBUG RELEASE"; + } + if (Debug) + System.out.println("Using Build Targets: " + toolBt.trim()); + + toolBt = toolBt.replaceAll(" ", ":"); + toolBt = " :" + toolBt; + if (Debug) + System.out.println("Using Build Targets: " + toolBt.trim()); + String[] buildTargets = toolBt.trim().split(":"); + + jBuildTargetComboBox = new JComboBox(buildTargets); + jBuildTargetComboBox.setEditable(true); + jBuildTargetComboBox.setPreferredSize(new Dimension(valueWidth, oneRowHeight)); + jBuildTargetComboBox.setBounds(new java.awt.Rectangle(valueColumn, rowTwo, valueWidth, oneRowHeight)); + jBuildTargetComboBox.setLocation(new java.awt.Point(valueColumn, rowTwo)); + jBuildTargetComboBox.setToolTipText("Select a defined Target and then click Add,
" + + "or enter a new, one word TargetName and then click Add.
" + + "Remember to define the Targetname in the tool defintion file." + + ""); + + } + return jBuildTargetComboBox; } /** - * This method initializes jCheckBox4 + * This method initializes jTextField1 * - * @return javax.swing.JCheckBox + * @return javax.swing.JTextField + */ + // private JTextField getJTextFieldBuildTarget() { + // if (jTextFieldBuildTarget == null) { + // jTextFieldBuildTarget = new JTextField(); + // jTextFieldBuildTarget.setPreferredSize(new Dimension(valueWidth, oneRowHeight)); + // jTextFieldBuildTarget.setBounds(new java.awt.Rectangle(valueColumn, rowTwo, valueWidth, oneRowHeight)); + // jTextFieldBuildTarget.setLocation(new java.awt.Point(valueColumn, rowTwo)); + // } + // return jTextFieldBuildTarget; + // } + /** + * This method initializes jButton2 + * + * @return javax.swing.JButton */ - private JCheckBox getJCheckBox4() { - if (jCheckBox4 == null) { - jCheckBox4 = new JCheckBox(); - jCheckBox4.setText("Intermediate Directories"); + private JButton getJButtonAddBuildTarget() { + if (jButtonAddBuildTarget == null) { + jButtonAddBuildTarget = new JButton(); + jButtonAddBuildTarget.setPreferredSize(new Dimension(buttonWidth, oneRowHeight)); + jButtonAddBuildTarget.setBounds(new java.awt.Rectangle(valueCenter - buttonWidth - 5, rowThree, + buttonWidth, oneRowHeight)); + jButtonAddBuildTarget.setLocation(new java.awt.Point(valueCenter - buttonWidth - 5, rowThree)); + jButtonAddBuildTarget.setText("Add"); + jButtonAddBuildTarget.setVisible(true); + + jButtonAddBuildTarget.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent e) { + // Used with Text Field + // if (jTextFieldBuildTarget.getText().length() > 0) { + // String[] row = { jTextFieldBuildTarget.getText() }; + // jTextFieldBuildTarget.setText(""); + // buildTargetTableModel.addRow(row); + // Vector v = new Vector(); + // for (int i = 0; i < jTableBuildTargets.getRowCount(); ++i) { + // v.add(buildTargetTableModel.getValueAt(i, 0)); + // } + // docConsole.setSaved(false); + // ffc.setPlatformDefsBuildTargets(v); + // } + // Use with ComboBox + if (jBuildTargetComboBox.getSelectedItem().toString().length() > 0) { + String[] row = { jBuildTargetComboBox.getSelectedItem().toString() }; + buildTargetTableModel.addRow(row); + Vector v = new Vector(); + for (int i = 0; i < jTableBuildTargets.getRowCount(); ++i) { + v.add(buildTargetTableModel.getValueAt(i, 0)); + } + } + } + }); } - return jCheckBox4; + return jButtonAddBuildTarget; } /** - * This method initializes jComboBox + * This method initializes jButton3 * - * @return javax.swing.JComboBox + * @return javax.swing.JButton */ - private JComboBox getJComboBox() { - if (jComboBox == null) { - jComboBox = new JComboBox(); - jComboBox.setPreferredSize(new Dimension(100, 20)); - jComboBox.addItem("MODULE"); - jComboBox.addItem("UNIFIED"); - jComboBox.setSelectedIndex(0); + private JButton getJButtonDelBuildTarget() { + if (jButtonDelBuildTarget == null) { + jButtonDelBuildTarget = new JButton(); + jButtonDelBuildTarget.setPreferredSize(new Dimension(buttonWidth, oneRowHeight)); + jButtonDelBuildTarget + .setBounds(new java.awt.Rectangle(valueCenter + 5, rowThree, buttonWidth, oneRowHeight)); + jButtonDelBuildTarget.setLocation(new java.awt.Point(valueCenter + 5, rowThree)); + jButtonDelBuildTarget.setText("Delete"); + jButtonDelBuildTarget.setVisible(true); + + jButtonDelBuildTarget.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent e) { + if (jTableBuildTargets.getSelectedRow() < 0 || jTableBuildTargets.getSelectedRow() < 0) { + return; + } + buildTargetTableModel.removeRow(jTableBuildTargets.getSelectedRow()); + Vector v = new Vector(); + for (int i = 0; i < jTableBuildTargets.getRowCount(); ++i) { + v.remove(buildTargetTableModel.getValueAt(i, 0)); + } + docConsole.setSaved(false); + ffc.setPlatformDefsBuildTargets(v); + } + }); } - return jComboBox; + return jButtonDelBuildTarget; } /** - * This method initializes jTextField + * This method initializes jScrollPane2 * - * @return javax.swing.JTextField + * @return javax.swing.JScrollPane */ - private JTextField getJTextField() { - if (jTextField == null) { - jTextField = new JTextField(); - jTextField.setPreferredSize(new java.awt.Dimension(350,20)); + private JScrollPane getJScrollPaneBuildTargets() { + if (jScrollPaneBuildTargets == null) { + jScrollPaneBuildTargets = new JScrollPane(); + jScrollPaneBuildTargets.setPreferredSize(new Dimension(tableWidth - 20, tableHeight - 20)); + jScrollPaneBuildTargets.setBounds(new java.awt.Rectangle(valueColumn, rowFour, tableWidth - 5, + tableHeight - 5)); + jScrollPaneBuildTargets.setLocation(new java.awt.Point(valueColumn, rowFour)); + jScrollPaneBuildTargets + .setBorder(javax.swing.BorderFactory + .createEtchedBorder(javax.swing.border.EtchedBorder.RAISED)); + + jScrollPaneBuildTargets.setViewportView(getJTableBuildTargets()); } - return jTextField; + return jScrollPaneBuildTargets; } /** - * This method initializes jPanel7 - * - * @return javax.swing.JPanel + * This method initializes jTable + * + * @return javax.swing.JTable */ - private JPanel getJPanel7() { - if (jPanel7 == null) { - jLabel6 = new JLabel(); - jLabel6.setPreferredSize(new java.awt.Dimension(280,20)); - jLabel6.setText(" "); - jLabel5 = new JLabel(); - jLabel5.setPreferredSize(new java.awt.Dimension(40,20)); - jLabel5.setText("Name"); - jLabel4 = new JLabel(); - jLabel4.setPreferredSize(new java.awt.Dimension(20,20)); - jLabel4.setText("ID"); - jLabel3 = new JLabel(); - jLabel3.setPreferredSize(new java.awt.Dimension(109,20)); - jLabel3.setText("SKU Information"); - jLabel2 = new JLabel(); - jLabel2.setPreferredSize(new Dimension(109, 16)); - jLabel2.setText("Build Targets"); - FlowLayout flowLayout4 = new FlowLayout(); - flowLayout4.setAlignment(FlowLayout.LEFT); - flowLayout4.setHgap(20); - jPanel7 = new JPanel(); - jPanel7.setPreferredSize(new Dimension(972, 100)); - jPanel7.setLayout(flowLayout4); - jPanel7.add(jLabel2, null); - jPanel7.add(getJTextField1(), null); - jPanel7.add(getJButton2(), null); - jPanel7.add(getJButton3(), null); - jPanel7.add(getJScrollPane2(), null); - jPanel7.add(jLabel3, null); - jPanel7.add(jLabel4, null); - jPanel7.add(getJTextField2(), null); - jPanel7.add(jLabel5, null); - jPanel7.add(getJTextField3(), null); - jPanel7.add(getJScrollPane3(), null); - jPanel7.add(jLabel6, null); - jPanel7.add(getJButton4(), null); - jPanel7.add(getJButton5(), null); - } - return jPanel7; + private JTable getJTableBuildTargets() { + if (jTableBuildTargets == null) { + buildTargetTableModel = new TargetTableModel(); + + jTableBuildTargets = new JTable(buildTargetTableModel); + jTableBuildTargets.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); + jTableBuildTargets.setRowHeight(oneRowHeight); + jTableBuildTargets.setToolTipText("Select one of the Targets from the table and
" + + "click Delete to remove the target from the platform."); + buildTargetTableModel.addColumn("Build Target"); + + jTableBuildTargets.getModel().addTableModelListener(new TableModelListener() { + public void tableChanged(TableModelEvent arg0) { + // TODO Auto-generated method stub + selectedRow = jTableBuildTargets.getSelectedRow(); + if (selectedRow < 0) { + return; + } + TableModel m = (TableModel) arg0.getSource(); + if (arg0.getType() == TableModelEvent.UPDATE) { + //ToDo Data Validition check. + Vector v = new Vector(); + for (int i = 0; i < jTableBuildTargets.getRowCount(); ++i) { + v.add(m.getValueAt(i, 0)); + } + docConsole.setSaved(false); + ffc.setPlatformDefsBuildTargets(v); + } + } + }); + + } + return jTableBuildTargets; } /** - * This method initializes jTextField1 - * - * @return javax.swing.JTextField + * This method initializes jTextField2 + * + * @return javax.swing.JTextField */ - private JTextField getJTextField1() { - if (jTextField1 == null) { - jTextField1 = new JTextField(); - jTextField1.setPreferredSize(new Dimension(150, 20)); + private JTextField getJTextFieldSkuId() { + if (jTextFieldSkuId == null) { + jTextFieldSkuId = new JTextField(); + jTextFieldSkuId.setPreferredSize(new Dimension(40, oneRowHeight)); + jTextFieldSkuId.setBounds(new java.awt.Rectangle(valueColumn, rowSix, 40, oneRowHeight)); + jTextFieldSkuId.setLocation(new java.awt.Point(valueColumn, rowSix)); + jTextFieldSkuId.setToolTipText("Enter a unique integer value."); } - return jTextField1; + return jTextFieldSkuId; } /** - * This method initializes jButton2 - * - * @return javax.swing.JButton + * This method initializes jTextField3 + * + * @return javax.swing.JTextField */ - private JButton getJButton2() { - if (jButton2 == null) { - jButton2 = new JButton(); - jButton2.setPreferredSize(new Dimension(70, 20)); - jButton2.setText("Add"); + private JTextField getJTextFieldSkuName() { + if (jTextFieldSkuName == null) { + jTextFieldSkuName = new JTextField(); + jTextFieldSkuName.setPreferredSize(new Dimension(valueWidth, oneRowHeight)); + jTextFieldSkuName.setBounds(new java.awt.Rectangle(valueColumn, rowSeven, valueWidth, oneRowHeight)); + jTextFieldSkuName.setLocation(new java.awt.Point(valueColumn, rowSeven)); + jTextFieldSkuName.setToolTipText("Enter a name to help identify this SKU.
" + + "This entry is not used by the build system, it is
" + + "used only by this user interface."); } - return jButton2; + return jTextFieldSkuName; } /** - * This method initializes jButton3 - * - * @return javax.swing.JButton + * This method initializes jButton + * + * @return javax.swing.JButton */ - private JButton getJButton3() { - if (jButton3 == null) { - jButton3 = new JButton(); - jButton3.setPreferredSize(new Dimension(70, 20)); - jButton3.setText("Delete"); + private JButton getJButtonSkuAdd() { + if (jButtonSkuAdd == null) { + jButtonSkuAdd = new JButton(); + + jButtonSkuAdd.setPreferredSize(new Dimension(buttonWidth, oneRowHeight)); + jButtonSkuAdd.setBounds(new java.awt.Rectangle(valueCenter - buttonWidth - 5, rowEight, buttonWidth, + oneRowHeight)); + jButtonSkuAdd.setLocation(new java.awt.Point(valueCenter - buttonWidth - 5, rowEight)); + jButtonSkuAdd.setText("Add"); + jButtonSkuAdd.setVisible(true); + + jButtonSkuAdd.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent e) { + if (jTextFieldSkuId.getText().length() > 0) { + String[] row = { jTextFieldSkuId.getText(), jTextFieldSkuName.getText() }; + skuInfoTableModel.addRow(row); + docConsole.setSaved(false); + ffc.genPlatformDefsSkuInfo(row[0], row[1]); + } + } + }); } - return jButton3; + return jButtonSkuAdd; } /** - * This method initializes jScrollPane2 - * - * @return javax.swing.JScrollPane + * This method initializes jButton1 + * + * @return javax.swing.JButton */ - private JScrollPane getJScrollPane2() { - if (jScrollPane2 == null) { - jScrollPane2 = new JScrollPane(); - jScrollPane2.setPreferredSize(new Dimension(453, 100)); - jScrollPane2.setViewportView(getJTable()); + private JButton getJButtonSkuDel() { + if (jButtonSkuDel == null) { + jButtonSkuDel = new JButton(); + jButtonSkuDel.setPreferredSize(new Dimension(buttonWidth, oneRowHeight)); + jButtonSkuDel.setBounds(new java.awt.Rectangle(valueCenter + 5, rowEight, buttonWidth, oneRowHeight)); + jButtonSkuDel.setLocation(new java.awt.Point(valueCenter + 5, rowEight)); + jButtonSkuDel.setText("Delete"); + jButtonSkuDel.setVisible(true); + jButtonSkuDel.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent e) { + if (jTableSkuInfo.isEditing()) { + jTableSkuInfo.getCellEditor().stopCellEditing(); + } + if (jTableSkuInfo.getSelectedRow() < 1) { + return; + } + docConsole.setSaved(false); + ffc.removePlatformDefsSkuInfo(jTableSkuInfo.getSelectedRow()); + skuInfoTableModel.removeRow(jTableSkuInfo.getSelectedRow()); + } + }); } - return jScrollPane2; + return jButtonSkuDel; } /** @@ -568,13 +904,20 @@ public class FpdPlatformDefs extends IInternalFrame { * * @return javax.swing.JScrollPane */ - private JScrollPane getJScrollPane3() { - if (jScrollPane3 == null) { - jScrollPane3 = new JScrollPane(); - jScrollPane3.setPreferredSize(new java.awt.Dimension(453,100)); - jScrollPane3.setViewportView(getJTable2()); + private JScrollPane getJScrollPaneSkuInfo() { + if (jScrollPaneSkuInfo == null) { + jScrollPaneSkuInfo = new JScrollPane(); + jScrollPaneSkuInfo.setPreferredSize(new Dimension(tableWidth - 20, tableHeight - 20)); + jScrollPaneSkuInfo.setBounds(new java.awt.Rectangle(valueColumn, rowNine, tableWidth - 5, tableHeight - 5)); + jScrollPaneSkuInfo.setLocation(new java.awt.Point(valueColumn, rowNine)); + + jScrollPaneSkuInfo + .setBorder(javax.swing.BorderFactory + .createEtchedBorder(javax.swing.border.EtchedBorder.RAISED)); + + jScrollPaneSkuInfo.setViewportView(getJTableSkuInfo()); } - return jScrollPane3; + return jScrollPaneSkuInfo; } /** @@ -582,71 +925,110 @@ public class FpdPlatformDefs extends IInternalFrame { * * @return javax.swing.JTable */ - private JTable getJTable2() { - if (jTable2 == null) { - skuInfoTableModel = new DefaultTableModel(); + private JTable getJTableSkuInfo() { + if (jTableSkuInfo == null) { + skuInfoTableModel = new SkuInfoTableModel(); skuInfoTableModel.addColumn("SKU ID"); skuInfoTableModel.addColumn("Name"); - jTable2 = new JTable(skuInfoTableModel); - } - return jTable2; - } + jTableSkuInfo = new JTable(skuInfoTableModel); + jTableSkuInfo.setToolTipText("SKU ID 0 must always be defined as the default.
" + + "0 can mean either SKU disabled, or it can be the
" + + "default value if more than one SKU is defined, and the
" + + "platform is not jumpered to use one of the other SKU values."); - /** - * This method initializes jTextField2 - * - * @return javax.swing.JTextField - */ - private JTextField getJTextField2() { - if (jTextField2 == null) { - jTextField2 = new JTextField(); - jTextField2.setPreferredSize(new java.awt.Dimension(50,20)); - } - return jTextField2; - } + jTableSkuInfo.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); - /** - * This method initializes jTextField3 - * - * @return javax.swing.JTextField - */ - private JTextField getJTextField3() { - if (jTextField3 == null) { - jTextField3 = new JTextField(); - jTextField3.setPreferredSize(new Dimension(150, 20)); + jTableSkuInfo.getModel().addTableModelListener(new TableModelListener() { + public void tableChanged(TableModelEvent arg0) { + // TODO Auto-generated method stub + int row = arg0.getFirstRow(); + TableModel m = (TableModel) arg0.getSource(); + if (arg0.getType() == TableModelEvent.UPDATE) { + //ToDo Data Validition check. + String id = m.getValueAt(row, 0) + ""; + String name = m.getValueAt(row, 1) + ""; + docConsole.setSaved(false); + ffc.updatePlatformDefsSkuInfo(row, id, name); + } + } + }); } - return jTextField3; + return jTableSkuInfo; } /** - * This method initializes jButton4 - * - * @return javax.swing.JButton + * This method initializes jComboBox + * + * @return javax.swing.JComboBox */ - private JButton getJButton4() { - if (jButton4 == null) { - jButton4 = new JButton(); - jButton4.setPreferredSize(new Dimension(70, 20)); - jButton4.setText("Add"); + private JComboBox getJComboBoxInterDir() { + if (jComboBoxInterDir == null) { + jComboBoxInterDir = new JComboBox(); + jComboBoxInterDir.setPreferredSize(new Dimension(75, oneRowHeight)); + jComboBoxInterDir.setBounds(new java.awt.Rectangle(valueColumn + offsetWidth, rowEleven, 95, oneRowHeight)); + jComboBoxInterDir.setLocation(new java.awt.Point(valueColumn + offsetWidth, rowEleven)); + jComboBoxInterDir.addItem("UNIFIED"); + jComboBoxInterDir.addItem("MODULE"); + jComboBoxInterDir.setSelectedIndex(0); + jComboBoxInterDir.setToolTipText("Select UNIFIED to generate intermediate directories under
" + + "under platform directory tree.
" + + "Select MODULE to generate intermediate directories under the
" + + "individual module directories."); + jComboBoxInterDir.addItemListener(new java.awt.event.ItemListener() { + public void itemStateChanged(java.awt.event.ItemEvent e) { + if (docConsole != null) { + docConsole.setSaved(false); + } + ffc.setPlatformDefsInterDir(jComboBoxInterDir.getSelectedItem() + ""); + } + }); } - return jButton4; + return jComboBoxInterDir; } /** - * This method initializes jButton5 + * This method initializes jTextField * - * @return javax.swing.JButton + * @return javax.swing.JTextField Row Twelve */ - private JButton getJButton5() { - if (jButton5 == null) { - jButton5 = new JButton(); - jButton5.setPreferredSize(new Dimension(70, 20)); - jButton5.setText("Delete"); + private JTextField getJTextFieldOutputDir() { + if (jTextFieldOutputDir == null) { + jTextFieldOutputDir = new JTextField(); + jTextFieldOutputDir.setPreferredSize(new java.awt.Dimension(290, 20)); + jTextFieldOutputDir.setBounds(new java.awt.Rectangle(valueColumn + offsetWidth, rowTwelve, valueWidth - 30, + oneRowHeight)); + jTextFieldOutputDir.setLocation(new java.awt.Point(valueColumn + offsetWidth, rowTwelve)); + jTextFieldOutputDir.setToolTipText("Select the name or URL for the output directory tree."); + jTextFieldOutputDir.addFocusListener(new java.awt.event.FocusAdapter() { + public void focusLost(java.awt.event.FocusEvent e) { + docConsole.setSaved(false); + ffc.setPlatformDefsOutputDir(jTextFieldOutputDir.getText()); + } + }); } - return jButton5; + return jTextFieldOutputDir; } +} // @jve:decl-index=0:visual-constraint="10,10" + +class SkuInfoTableModel extends DefaultTableModel { + private static final long serialVersionUID = 1L; -} // @jve:decl-index=0:visual-constraint="10,10" + public boolean isCellEditable(int row, int column) { + if (row == 0) { + return false; + } + return true; + } +} +class TargetTableModel extends DefaultTableModel { + private static final long serialVersionUID = 1L; + public boolean isCellEditable(int row, int column) { + if (row < 2) { + return false; + } + return true; + } +}