package org.tianocore.frameworkwizard.platform.ui;\r
\r
import java.awt.BorderLayout;\r
-import java.awt.Dimension;\r
\r
import javax.swing.JPanel;\r
-import javax.swing.JDialog;\r
import javax.swing.JTabbedPane;\r
import javax.swing.JCheckBox;\r
import javax.swing.JLabel;\r
import javax.swing.AbstractAction;\r
import java.awt.event.ActionEvent;\r
import java.awt.event.ActionListener;\r
-import java.awt.event.ItemEvent;\r
-import java.awt.event.ItemListener;\r
\r
-import javax.swing.ButtonGroup;\r
import javax.swing.DefaultCellEditor;\r
-import javax.swing.DefaultListModel;\r
+import javax.swing.JFileChooser;\r
+import javax.swing.JFrame;\r
+import javax.swing.JOptionPane;\r
import javax.swing.JTextField;\r
import javax.swing.JButton;\r
import javax.swing.JScrollPane;\r
import javax.swing.JTable;\r
import javax.swing.JComboBox;\r
-import javax.swing.JRadioButton;\r
import javax.swing.ListSelectionModel;\r
import javax.swing.event.InternalFrameAdapter;\r
import javax.swing.event.InternalFrameEvent;\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
\r
import org.tianocore.PlatformSurfaceAreaDocument;\r
+import org.tianocore.frameworkwizard.common.DataValidation;\r
+import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformType;\r
import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
-import java.awt.CardLayout;\r
+\r
+import java.io.File;\r
+import java.util.ArrayList;\r
+import java.util.Iterator;\r
+import java.util.LinkedHashMap;\r
+import java.util.Set;\r
+import java.util.Vector;\r
+import java.awt.Dimension;\r
\r
public class FpdBuildOptions 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 JScrollPane jScrollPane2 = null;\r
private JTable jTable2 = null;\r
private DefaultTableModel ffsTableModel = null;\r
- private DefaultTableModel imageEntryPointTableModel = null;\r
- private DefaultTableModel outputDirectoryTableModel = null;\r
+ private DefaultTableModel sectionsTableModel = null;\r
+ private DefaultTableModel sectionTableModel = null;\r
+ private DefaultTableModel subsectionsTableModel = null;\r
private DefaultTableModel antTaskTableModel = null;\r
private DefaultTableModel ffsAttributesTableModel = null;\r
private DefaultTableModel optionsTableModel = null;\r
private JTextField jTextField6 = null;\r
private JButton jButton8 = null;\r
private JButton jButton9 = null;\r
- private JCheckBox jCheckBox5 = null;\r
private JScrollPane jScrollPane5 = null;\r
private JTable jTable4 = null;\r
private JPanel jPanel19 = null;\r
private JTable jTable5 = null;\r
private JButton jButton10 = null;\r
private JButton jButton11 = null;\r
- private JPanel jPanel21 = null;\r
- private JButton jButton12 = null;\r
- private JButton jButton13 = null;\r
- private JLabel jLabel8 = null;\r
- private JTextField jTextField9 = null;\r
- private JLabel jLabel13 = null;\r
- private JTextField jTextField10 = null;\r
- private JPanel jPanel22 = null;\r
- private JCheckBox jCheckBox6 = null;\r
- private JComboBox jComboBox4 = null;\r
- private JCheckBox jCheckBox7 = null;\r
- private JComboBox jComboBox5 = null;\r
- private JCheckBox jCheckBox8 = null;\r
- private JTextField jTextField11 = null;\r
- private JButton jButton14 = null;\r
- private JButton jButton15 = null;\r
- private JButton jButton16 = null;\r
- private DefaultListModel listModel = new DefaultListModel();\r
private JButton jButton17 = null;\r
private JButton jButton18 = null;\r
private FpdFileContents ffc = null;\r
- private JButton jButton19 = null;\r
+ private OpeningPlatformType docConsole = null;\r
private JCheckBox jCheckBox9 = null;\r
private JCheckBox jCheckBox10 = null;\r
private JCheckBox jCheckBox11 = null;\r
private JLabel jLabel1 = null;\r
private JScrollPane jScrollPane = null;\r
private JTable jTable = null;\r
+ private JLabel jLabel2 = null;\r
+ private JScrollPane jScrollPane1 = null;\r
+ private JTable jTable1 = null;\r
+ private JLabel jLabel4 = null;\r
+ private JScrollPane jScrollPane3 = null;\r
+ private JTable jTable3 = null;\r
+ private JLabel jLabel5 = null;\r
+ private JTextField jTextField = null;\r
+ private JPanel jPanel4 = null;\r
+ private JLabel jLabel6 = null;\r
+ private JButton jButton = null;\r
+ private JButton jButton1 = null;\r
+ private JButton jButton2 = null;\r
+ private JButton jButton3 = null;\r
+ private JLabel jLabel8 = null;\r
+ private JButton jButton6 = null;\r
+ private JButton jButton7 = null;\r
+ private JScrollPane jScrollPane4 = null;\r
+ private JTable jTable6 = null;\r
+ private JButton jButton12 = null;\r
+ private JTextField jTextField1 = null;\r
/**\r
* This method initializes jPanel \r
* \r
jPanel9.setLayout(flowLayout8);\r
jPanel9.add(jLabel, null);\r
jPanel9.add(getJTextField2(), null);\r
+ jPanel9.add(getJButton12(), null);\r
jPanel9.add(jLabel3, null);\r
jPanel9.add(getJTextField3(), null);\r
}\r
jButton4.setText("Add");\r
jButton4.addActionListener(new ActionListener() {\r
public void actionPerformed(ActionEvent e) {\r
+ if (!DataValidation.isInt(jTextField3.getText()) || jTextField3.getText().length() != 8) {\r
+ JOptionPane.showMessageDialog(frame, "ID must be an 8-digit integer.");\r
+ return;\r
+ }\r
Object[] o = {jTextField3.getText(), null, null};\r
o[1] = jTextField2.getText();\r
o[2] = jTextField4.getText();\r
- ffc.genBuildOptionsUserDefAntTask(o[0]+"", null, o[2]+"");\r
+ ffc.genBuildOptionsUserDefAntTask(o[0]+"", o[1]+"", o[2]+"");\r
antTaskTableModel.addRow(o);\r
- \r
+ docConsole.setSaved(false);\r
}\r
});\r
}\r
jButton5.addActionListener(new ActionListener() {\r
public void actionPerformed(ActionEvent e) {\r
if (selectedRow >= 0) {\r
+ docConsole.setSaved(false);\r
antTaskTableModel.removeRow(selectedRow);\r
ffc.removeBuildOptionsUserDefAntTask(selectedRow);\r
}\r
if (jTable2 == null) {\r
antTaskTableModel = new DefaultTableModel();\r
jTable2 = new JTable(antTaskTableModel);\r
+ jTable2.setRowHeight(20);\r
antTaskTableModel.addColumn("ID");\r
antTaskTableModel.addColumn("Filename");\r
antTaskTableModel.addColumn("ANT Command Options");\r
*/\r
private JPanel getJPanel15() {\r
if (jPanel15 == null) {\r
+ jLabel5 = new JLabel();\r
+ jLabel5.setText("Encapsulation Type");\r
FlowLayout flowLayout5 = new FlowLayout();\r
flowLayout5.setAlignment(java.awt.FlowLayout.RIGHT);\r
jLabel7 = new JLabel();\r
- jLabel7.setText("Type");\r
+ jLabel7.setText("FFS Key");\r
jPanel15 = new JPanel();\r
jPanel15.setLayout(flowLayout5);\r
jPanel15.add(jLabel7, null);\r
jPanel15.add(getJTextField6(), null);\r
+ jPanel15.add(jLabel5, null);\r
+ jPanel15.add(getJTextField(), null);\r
jPanel15.add(getJButton8(), null);\r
jPanel15.add(getJButton9(), null);\r
}\r
*/\r
private JPanel getJPanel16() {\r
if (jPanel16 == null) {\r
+ jLabel6 = new JLabel();\r
+ jLabel6.setText("Attributes");\r
FlowLayout flowLayout6 = new FlowLayout();\r
flowLayout6.setHgap(5);\r
- flowLayout6.setAlignment(java.awt.FlowLayout.LEFT);\r
+ flowLayout6.setVgap(20);\r
+ flowLayout6.setAlignment(java.awt.FlowLayout.CENTER);\r
jPanel16 = new JPanel();\r
jPanel16.setPreferredSize(new java.awt.Dimension(491,130));\r
jPanel16.setLayout(flowLayout6);\r
- jPanel16.add(getJCheckBox5(), null);\r
- jPanel16.add(getJButton17(), null);\r
- jPanel16.add(getJButton18(), null);\r
+ jPanel16.add(jLabel6, null);\r
jPanel16.add(getJScrollPane5(), null);\r
+ jPanel16.add(getJPanel4(), null);\r
}\r
return jPanel16;\r
}\r
private JTextField getJTextField6() {\r
if (jTextField6 == null) {\r
jTextField6 = new JTextField();\r
- jTextField6.setPreferredSize(new java.awt.Dimension(150,20));\r
+ jTextField6.setPreferredSize(new java.awt.Dimension(100,20));\r
+ jTextField6.setEditable(true);\r
+ jTextField6.addFocusListener(new java.awt.event.FocusAdapter() {\r
+ public void focusLost(java.awt.event.FocusEvent e) {\r
+ if (jTable.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+// ffc.updateBuildOptionsFfsKey(jTable.getSelectedRow(), jTextField6.getText());\r
+ }\r
+ });\r
}\r
return jTextField6;\r
}\r
\r
public void actionPerformed(java.awt.event.ActionEvent e) {\r
if (jTextField6.getText().length() > 0) {\r
- listModel.addElement(jTextField6.getText());\r
+ String[] row = {jTextField6.getText()};\r
+ ffsTableModel.addRow(row);\r
+ docConsole.setSaved(false);\r
+ ffc.genBuildOptionsFfs(jTextField6.getText(), jTextField.getText());\r
}\r
}\r
});\r
private static final long serialVersionUID = -4002678939178194476L;\r
\r
public void actionPerformed(ActionEvent arg0){\r
+ if (jTable.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ docConsole.setSaved(false);\r
+ ffc.removeBuildOptionsFfs(jTable.getSelectedRow());\r
}\r
});\r
}\r
return jButton9;\r
}\r
\r
- /**\r
- * This method initializes jCheckBox5 \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBox5() {\r
- if (jCheckBox5 == null) {\r
- jCheckBox5 = new JCheckBox();\r
- jCheckBox5.setText("Attributes");\r
- jCheckBox5.setPreferredSize(new java.awt.Dimension(81,20));\r
- }\r
- return jCheckBox5;\r
- }\r
-\r
/**\r
* This method initializes jScrollPane5 \r
* \r
ffsAttributesTableModel = new DefaultTableModel();\r
jTable4 = new JTable(ffsAttributesTableModel);\r
jTable4.setPreferredSize(new java.awt.Dimension(400,80));\r
+ jTable4.setRowHeight(20);\r
ffsAttributesTableModel.addColumn("Name");\r
ffsAttributesTableModel.addColumn("Value");\r
+ \r
+ jTable4.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
+ jTable4.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 name = m.getValueAt(row, 0) + "";\r
+ String value = m.getValueAt(row, 1) + "";\r
+ \r
+ if (name.length() == 0) {\r
+ return;\r
+ }\r
+ if (value.length() == 0){\r
+ return;\r
+ }\r
+ docConsole.setSaved(false);\r
+ ffc.updateBuildOptionsFfsAttribute(jTable.getSelectedRow(), row, name, value);\r
+ }\r
+ }\r
+ });\r
}\r
return jTable4;\r
}\r
*/\r
private JPanel getJPanel19() {\r
if (jPanel19 == null) {\r
+ jLabel8 = new JLabel();\r
+ jLabel8.setText("Sections");\r
+ jLabel4 = new JLabel();\r
+ jLabel4.setText("Sub-Sections");\r
+ jLabel2 = new JLabel();\r
+ jLabel2.setText("Section");\r
jPanel19 = new JPanel();\r
- jPanel19.setLayout(new CardLayout());\r
- jPanel19.add(getJPanel21(), getJPanel21().getName());\r
- jPanel19.add(getJPanel22(), getJPanel22().getName());\r
+ jPanel19.setLayout(new FlowLayout());\r
+ jPanel19.add(jLabel2, null);\r
+ jPanel19.add(getJButton(), null);\r
+ jPanel19.add(getJButton1(), null);\r
+ jPanel19.add(getJScrollPane1(), null);\r
+ jPanel19.add(jLabel8, null);\r
+ jPanel19.add(getJButton6(), null);\r
+ jPanel19.add(getJButton7(), null);\r
+ jPanel19.add(getJScrollPane4(), null);\r
+ jPanel19.add(jLabel4, null);\r
+ jPanel19.add(getJButton2(), null);\r
+ jPanel19.add(getJButton3(), null);\r
+ jPanel19.add(getJScrollPane3(), null);\r
}\r
return jPanel19;\r
}\r
jPanel20.add(jLabel14, null);\r
jPanel20.add(getJTextField12(), null);\r
jPanel20.add(jLabel10, null);\r
+ jPanel20.add(getJTextField1(), null);\r
jPanel20.add(getJComboBox2(), null);\r
jPanel20.add(jLabel12, null);\r
jPanel20.add(getJTextField8(), null);\r
jPanel20.add(getJTextField7(), null);\r
jPanel20.add(getJButton10(), null);\r
jPanel20.add(getJButton11(), null);\r
- jPanel20.add(getJButton19(), null);\r
jPanel20.add(getJScrollPane6(), null);\r
}\r
return jPanel20;\r
jComboBox2.addItem("CYGWIN");\r
jComboBox2.addItem("INTEL");\r
jComboBox2.setSelectedIndex(0);\r
+ jComboBox2.setVisible(false);\r
}\r
return jComboBox2;\r
}\r
if (jTable5 == null) {\r
optionsTableModel = new DefaultTableModel();\r
jTable5 = new JTable(optionsTableModel);\r
+ jTable5.setRowHeight(20);\r
optionsTableModel.addColumn("BuildTargets");\r
optionsTableModel.addColumn("ToolChainFamily");\r
optionsTableModel.addColumn("SupportedArch");\r
optionsTableModel.addColumn("TagName");\r
optionsTableModel.addColumn("Contents");\r
\r
- TableColumn toolFamilyCol = jTable5.getColumnModel().getColumn(1);\r
- JComboBox cb = new JComboBox();\r
- cb.addItem("MSFT");\r
- cb.addItem("GCC");\r
- cb.addItem("CYGWIN");\r
- cb.addItem("INTEL");\r
- toolFamilyCol.setCellEditor(new DefaultCellEditor(cb));\r
- \r
+// TableColumn toolFamilyCol = jTable5.getColumnModel().getColumn(1);\r
+// JComboBox cb = new JComboBox();\r
+// cb.addItem("MSFT");\r
+// cb.addItem("GCC");\r
+// cb.addItem("CYGWIN");\r
+// cb.addItem("INTEL");\r
+// toolFamilyCol.setCellEditor(new DefaultCellEditor(cb));\r
+ Vector<String> vArch = new Vector<String>();\r
+ vArch.add("IA32");\r
+ vArch.add("X64");\r
+ vArch.add("IPF");\r
+ vArch.add("EBC");\r
+ vArch.add("ARM");\r
+ vArch.add("PPC");\r
+ jTable5.getColumnModel().getColumn(2).setCellEditor(new ListEditor(vArch));\r
jTable5.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
jTable5.getSelectionModel().addListSelectionListener(new ListSelectionListener(){\r
public void valueChanged(ListSelectionEvent e) {\r
TableModel m = (TableModel)arg0.getSource();\r
if (arg0.getType() == TableModelEvent.UPDATE){\r
//ToDo Data Validition check.\r
- String targetName = m.getValueAt(row, 0) + "";\r
+ String targets = m.getValueAt(row, 0) + "";\r
+ Vector<Object> targetName = new Vector<Object>();\r
+ String[] sArray = targets.split("( )+");\r
+ for (int i = 0; i < sArray.length; ++i) {\r
+ targetName.add(sArray[i]);\r
+ }\r
String toolChain = m.getValueAt(row, 1) + "";\r
- String supArch = m.getValueAt(row, 2) + "";\r
+ String archs = m.getValueAt(row, 2) + "";\r
+ Vector<Object> supArch = null;\r
+ if (archs.length() > 0) {\r
+ supArch = new Vector<Object>();\r
+ String[] sArray1 = archs.split("( )+");\r
+ for (int i = 0; i < sArray1.length; ++i) {\r
+ supArch.add(sArray1[i]);\r
+ }\r
+ }\r
+ \r
String toolCmd = m.getValueAt(row, 3) + "";\r
String tagName = m.getValueAt(row, 4) + "";\r
String contents = m.getValueAt(row, 5) + "";\r
+ docConsole.setSaved(false);\r
ffc.updateBuildOptionsOpt(row, targetName, toolChain, tagName, toolCmd, supArch, contents);\r
}\r
}\r
if (jButton10 == null) {\r
jButton10 = new JButton();\r
jButton10.setText("Add");\r
- jButton10.setPreferredSize(new java.awt.Dimension(70,20));\r
+ jButton10.setPreferredSize(new java.awt.Dimension(90,20));\r
jButton10.addActionListener(new AbstractAction() {\r
/**\r
* \r
boolean[] boolArray = {jCheckBox9.isSelected(),jCheckBox10.isSelected(),jCheckBox11.isSelected(),\r
jCheckBox12.isSelected(),jCheckBox13.isSelected(),jCheckBox14.isSelected()};\r
String s = boolToList(boolArray);\r
- Object[] o = {jTextField12.getText(), jComboBox2.getSelectedItem(), s,\r
+ Object[] o = {jTextField12.getText(), jTextField1.getText(), s,\r
jTextField8.getText(), jTextField13.getText(), jTextField7.getText()};\r
optionsTableModel.addRow(o);\r
- ffc.genBuildOptionsOpt(jTextField12.getText(), jComboBox2.getSelectedItem()+"", jTextField13.getText(), jTextField8.getText(), s, jTextField7.getText());\r
+ docConsole.setSaved(false);\r
+ ffc.genBuildOptionsOpt(stringToVector(jTextField12.getText()), jTextField1.getText(), jTextField13.getText(), jTextField8.getText(), stringToVector(s), jTextField7.getText());\r
}\r
});\r
}\r
return jButton10;\r
}\r
\r
+ private Vector<Object> stringToVector(String s) {\r
+ String[] sArray = s.split(" ");\r
+ Vector<Object> v = null;\r
+ if (s.length() > 0) {\r
+ v = new Vector<Object>();\r
+ for (int i = 0; i < sArray.length; ++i) {\r
+ v.add(sArray[i]);\r
+ } \r
+ }\r
+ return v;\r
+ }\r
+ \r
private String boolToList (boolean[] bool) {\r
String s = " ";\r
if (bool[0]) {\r
if (bool[5]) {\r
s += "PPC ";\r
}\r
- \r
+ if (s == " ") {\r
+ s += "IA32";\r
+ }\r
return s.trim();\r
}\r
\r
if (jButton11 == null) {\r
jButton11 = new JButton();\r
jButton11.setText("Delete");\r
- jButton11.setPreferredSize(new java.awt.Dimension(70,20));\r
+ jButton11.setPreferredSize(new java.awt.Dimension(90,20));\r
jButton11.addActionListener(new AbstractAction() {\r
/**\r
* \r
public void actionPerformed(java.awt.event.ActionEvent e) {\r
if (selectedRow >= 0) {\r
optionsTableModel.removeRow(selectedRow);\r
+ docConsole.setSaved(false);\r
ffc.removeBuildOptionsOpt(selectedRow);\r
}\r
}\r
return jButton11;\r
}\r
\r
- /**\r
- * This method initializes jPanel21 \r
- * \r
- * @return javax.swing.JPanel \r
- */\r
- private JPanel getJPanel21() {\r
- if (jPanel21 == null) {\r
- jLabel13 = new JLabel();\r
- jLabel13.setText("EncapsulationTag");\r
- jLabel8 = new JLabel();\r
- jLabel8.setText("EncapsulationType");\r
- jPanel21 = new JPanel();\r
- jPanel21.setName("jPanel21");\r
- jPanel21.add(jLabel8, null);\r
- jPanel21.add(getJTextField9(), null);\r
- jPanel21.add(jLabel13, null);\r
- jPanel21.add(getJTextField10(), null);\r
- jPanel21.add(getJButton12(), null);\r
- jPanel21.add(getJButton13(), null);\r
- jPanel21.add(getJButton16(), null);\r
- }\r
- return jPanel21;\r
- }\r
-\r
- /**\r
- * This method initializes jButton12 \r
- * \r
- * @return javax.swing.JButton \r
- */\r
- private JButton getJButton12() {\r
- if (jButton12 == null) {\r
- jButton12 = new JButton();\r
- jButton12.setText("Add Sections");\r
- jButton12.setPreferredSize(new java.awt.Dimension(109,20));\r
- jButton12.addActionListener(new AbstractAction(){\r
- /**\r
- * \r
- */\r
- private static final long serialVersionUID = 1L;\r
-\r
- public void actionPerformed(ActionEvent arg0){\r
- }\r
- });\r
- }\r
- return jButton12;\r
- }\r
-\r
- /**\r
- * This method initializes jButton13 \r
- * \r
- * @return javax.swing.JButton \r
- */\r
- private JButton getJButton13() {\r
- if (jButton13 == null) {\r
- jButton13 = new JButton();\r
- jButton13.setText("Add Section");\r
- jButton13.setPreferredSize(new java.awt.Dimension(102,20));\r
- jButton13.addActionListener(new AbstractAction(){\r
- /**\r
- * \r
- */\r
- private static final long serialVersionUID = 1L;\r
-\r
- public void actionPerformed(ActionEvent arg0){\r
- CardLayout cl = (CardLayout)jPanel19.getLayout();\r
- cl.last(jPanel19);\r
- }\r
- });\r
- }\r
- return jButton13;\r
- }\r
-\r
- /**\r
- * This method initializes jTextField9 \r
- * \r
- * @return javax.swing.JTextField \r
- */\r
- private JTextField getJTextField9() {\r
- if (jTextField9 == null) {\r
- jTextField9 = new JTextField();\r
- jTextField9.setPreferredSize(new java.awt.Dimension(250,20));\r
- }\r
- return jTextField9;\r
- }\r
-\r
- /**\r
- * This method initializes jTextField10 \r
- * \r
- * @return javax.swing.JTextField \r
- */\r
- private JTextField getJTextField10() {\r
- if (jTextField10 == null) {\r
- jTextField10 = new JTextField();\r
- jTextField10.setPreferredSize(new java.awt.Dimension(250,20));\r
- }\r
- return jTextField10;\r
- }\r
-\r
- /**\r
- * This method initializes jPanel22 \r
- * \r
- * @return javax.swing.JPanel \r
- */\r
- private JPanel getJPanel22() {\r
- if (jPanel22 == null) {\r
- FlowLayout flowLayout7 = new FlowLayout();\r
- flowLayout7.setAlignment(java.awt.FlowLayout.LEFT);\r
- jPanel22 = new JPanel();\r
- jPanel22.setLayout(flowLayout7);\r
- jPanel22.setName("jPanel22");\r
- jPanel22.add(getJCheckBox6(), null);\r
- jPanel22.add(getJComboBox4(), null);\r
- jPanel22.add(getJCheckBox7(), null);\r
- jPanel22.add(getJComboBox5(), null);\r
- jPanel22.add(getJCheckBox8(), null);\r
- jPanel22.add(getJTextField11(), null);\r
- jPanel22.add(getJButton14(), null);\r
- jPanel22.add(getJButton15(), null);\r
- }\r
- return jPanel22;\r
- }\r
-\r
- /**\r
- * This method initializes jCheckBox6 \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBox6() {\r
- if (jCheckBox6 == null) {\r
- jCheckBox6 = new JCheckBox();\r
- jCheckBox6.setText("Section Type");\r
- jCheckBox6.setPreferredSize(new java.awt.Dimension(98,20));\r
- }\r
- return jCheckBox6;\r
- }\r
-\r
- /**\r
- * This method initializes jComboBox4 \r
- * \r
- * @return javax.swing.JComboBox \r
- */\r
- private JComboBox getJComboBox4() {\r
- if (jComboBox4 == null) {\r
- jComboBox4 = new JComboBox();\r
- jComboBox4.setPreferredSize(new java.awt.Dimension(260,20));\r
- \r
- jComboBox4.addItem("EFI_SECTION_FREEFORM_SUBTYPE_GUID");\r
- jComboBox4.addItem("EFI_SECTION_VERSION");\r
- jComboBox4.addItem("EFI_SECTION_USER_INTERFACE");\r
- jComboBox4.addItem("EFI_SECTION_DXE_DEPEX");\r
- jComboBox4.addItem("EFI_SECTION_PEI_DEPEX");\r
- jComboBox4.addItem("EFI_SECTION_PE32");\r
- jComboBox4.addItem("EFI_SECTION_PIC");\r
- jComboBox4.addItem("EFI_SECTION_TE");\r
- jComboBox4.addItem("EFI_SECTION_RAW");\r
- jComboBox4.addItem("EFI_SECTION_COMPRESSION");\r
- jComboBox4.addItem("EFI_SECTION_GUID_DEFINED");\r
- jComboBox4.addItem("EFI_SECTION_COMPATIBILITY16");\r
- jComboBox4.addItem("EFI_SECTION_FIRMWARE_VOLUME_IMAGE");\r
- jComboBox4.setSelectedIndex(0);\r
- }\r
- return jComboBox4;\r
- }\r
-\r
- /**\r
- * This method initializes jCheckBox7 \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBox7() {\r
- if (jCheckBox7 == null) {\r
- jCheckBox7 = new JCheckBox();\r
- jCheckBox7.setPreferredSize(new java.awt.Dimension(120,20));\r
- jCheckBox7.setText("Compressible");\r
- }\r
- return jCheckBox7;\r
- }\r
-\r
- /**\r
- * This method initializes jComboBox5 \r
- * \r
- * @return javax.swing.JComboBox \r
- */\r
- private JComboBox getJComboBox5() {\r
- if (jComboBox5 == null) {\r
- jComboBox5 = new JComboBox();\r
- jComboBox5.setPreferredSize(new java.awt.Dimension(80,20));\r
- \r
- jComboBox5.addItem("false");\r
- jComboBox5.addItem("true");\r
- jComboBox5.setSelectedIndex(0);\r
- }\r
- return jComboBox5;\r
- }\r
-\r
- /**\r
- * This method initializes jCheckBox8 \r
- * \r
- * @return javax.swing.JCheckBox \r
- */\r
- private JCheckBox getJCheckBox8() {\r
- if (jCheckBox8 == null) {\r
- jCheckBox8 = new JCheckBox();\r
- jCheckBox8.setText("Binding Order");\r
- jCheckBox8.setPreferredSize(new java.awt.Dimension(103,20));\r
- }\r
- return jCheckBox8;\r
- }\r
-\r
- /**\r
- * This method initializes jTextField11 \r
- * \r
- * @return javax.swing.JTextField \r
- */\r
- private JTextField getJTextField11() {\r
- if (jTextField11 == null) {\r
- jTextField11 = new JTextField();\r
- jTextField11.setPreferredSize(new java.awt.Dimension(150,20));\r
- }\r
- return jTextField11;\r
- }\r
-\r
- /**\r
- * This method initializes jButton14 \r
- * \r
- * @return javax.swing.JButton \r
- */\r
- private JButton getJButton14() {\r
- if (jButton14 == null) {\r
- jButton14 = new JButton();\r
- jButton14.setText("Add");\r
- jButton14.setPreferredSize(new java.awt.Dimension(70,20));\r
- jButton14.addActionListener(new AbstractAction(){\r
- /**\r
- * \r
- */\r
- private static final long serialVersionUID = 1L;\r
-\r
- public void actionPerformed(ActionEvent arg0){\r
- }\r
- });\r
- }\r
- return jButton14;\r
- }\r
-\r
- /**\r
- * This method initializes jButton15 \r
- * \r
- * @return javax.swing.JButton \r
- */\r
- private JButton getJButton15() {\r
- if (jButton15 == null) {\r
- jButton15 = new JButton();\r
- jButton15.setPreferredSize(new java.awt.Dimension(70,20));\r
- jButton15.setText("Delete");\r
- }\r
- return jButton15;\r
- }\r
-\r
- /**\r
- * This method initializes jButton16 \r
- * \r
- * @return javax.swing.JButton \r
- */\r
- private JButton getJButton16() {\r
- if (jButton16 == null) {\r
- jButton16 = new JButton();\r
- jButton16.setText("Delete");\r
- jButton16.setPreferredSize(new java.awt.Dimension(70,20));\r
- }\r
- return jButton16;\r
- }\r
-\r
/**\r
* This method initializes jButton17 \r
* \r
private JButton getJButton17() {\r
if (jButton17 == null) {\r
jButton17 = new JButton();\r
- jButton17.setPreferredSize(new java.awt.Dimension(70,20));\r
- jButton17.setText("Add");\r
+ jButton17.setPreferredSize(new java.awt.Dimension(80,20));\r
+ jButton17.setText("New");\r
jButton17.addActionListener(new AbstractAction() {\r
/**\r
* \r
private static final long serialVersionUID = 1L;\r
\r
public void actionPerformed(ActionEvent arg0){\r
+ if (jTable.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
Object[] o = {"", ""};\r
ffsAttributesTableModel.addRow(o);\r
+ docConsole.setSaved(false);\r
+ ffc.genBuildOptionsFfsAttribute(jTable.getSelectedRow(), "", "");\r
}\r
});\r
}\r
private JButton getJButton18() {\r
if (jButton18 == null) {\r
jButton18 = new JButton();\r
- jButton18.setPreferredSize(new java.awt.Dimension(70,20));\r
- jButton18.setText("Delete");\r
+ jButton18.setPreferredSize(new java.awt.Dimension(80,20));\r
+ jButton18.setText("Remove");\r
jButton18.addActionListener(new AbstractAction(){\r
/**\r
* \r
private static final long serialVersionUID = 1L;\r
\r
public void actionPerformed(ActionEvent arg0){\r
+ if (jTable.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
if (jTable4.getSelectedRow() >= 0){\r
+ docConsole.setSaved(false);\r
ffsAttributesTableModel.removeRow(jTable4.getSelectedRow());\r
+ ffc.removeBuildOptionsFfsAttribute(jTable.getSelectedRow(), jTable4.getSelectedRow());\r
}\r
}\r
});\r
return jButton18;\r
}\r
\r
- /**\r
- * This method initializes jButton19 \r
- * \r
- * @return javax.swing.JButton \r
- */\r
- private JButton getJButton19() {\r
- if (jButton19 == null) {\r
- jButton19 = new JButton();\r
- jButton19.setPreferredSize(new java.awt.Dimension(75,20));\r
- jButton19.setEnabled(false);\r
- jButton19.setText("Update");\r
- }\r
- return jButton19;\r
- }\r
-\r
/**\r
* This method initializes jCheckBox9 \r
* \r
jTable = new JTable(ffsTableModel);\r
jTable.setShowGrid(false);\r
jTable.setRowHeight(20);\r
+ \r
+ jTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
+ jTable.getSelectionModel().addListSelectionListener(new ListSelectionListener(){\r
+ public void valueChanged(ListSelectionEvent e) {\r
+ \r
+ if (e.getValueIsAdjusting()){\r
+ return;\r
+ }\r
+ ListSelectionModel lsm = (ListSelectionModel)e.getSource();\r
+ if (lsm.isSelectionEmpty()) {\r
+ return;\r
+ }\r
+ else{\r
+ int row = lsm.getMinSelectionIndex();\r
+ sectionTableModel.setRowCount(0);\r
+ sectionsTableModel.setRowCount(0);\r
+ subsectionsTableModel.setRowCount(0);\r
+ ffsAttributesTableModel.setRowCount(0);\r
+ String[] sArray = {"", ""};\r
+ LinkedHashMap<String, String> lhm = new LinkedHashMap<String, String>();\r
+ ArrayList<String> alSections = new ArrayList<String>();\r
+ ArrayList<String> alSection = new ArrayList<String>();\r
+ ffc.getBuildOptionsFfs(row, sArray, lhm, alSections, alSection);\r
+ jTextField6.setText(sArray[0]);\r
+ jTextField.setText(sArray[1]);\r
+ for (int i = 0; i < alSection.size(); ++i) {\r
+ String[] sectionRow = {alSection.get(i)};\r
+ sectionTableModel.addRow(sectionRow);\r
+ }\r
+ for (int j = 0; j < alSections.size(); ++j) {\r
+ String[] sectionsRow = {alSections.get(j)};\r
+ sectionsTableModel.addRow(sectionsRow);\r
+ }\r
+ if (lhm.size() <= 0 ) {\r
+ return;\r
+ }\r
+ Set<String> keySet = lhm.keySet();\r
+ Iterator<String> is = keySet.iterator();\r
+ while(is.hasNext()) {\r
+ String key = is.next();\r
+ String[] attribRow = {key, lhm.get(key)};\r
+ ffsAttributesTableModel.addRow(attribRow);\r
+ }\r
+ }\r
+ }\r
+ });\r
+ \r
+ jTable.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
+ \r
+ if (id.length() == 0) {\r
+ return;\r
+ }\r
+ docConsole.setSaved(false);\r
+ ffc.updateBuildOptionsFfsKey(row, id);\r
+ }\r
+ }\r
+ });\r
}\r
return jTable;\r
}\r
\r
+ /**\r
+ * This method initializes jScrollPane1 \r
+ * \r
+ * @return javax.swing.JScrollPane \r
+ */\r
+ private JScrollPane getJScrollPane1() {\r
+ if (jScrollPane1 == null) {\r
+ jScrollPane1 = new JScrollPane();\r
+ jScrollPane1.setPreferredSize(new java.awt.Dimension(500,80));\r
+ jScrollPane1.setViewportView(getJTable1());\r
+ }\r
+ return jScrollPane1;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jTable1 \r
+ * \r
+ * @return javax.swing.JTable \r
+ */\r
+ private JTable getJTable1() {\r
+ if (jTable1 == null) {\r
+ sectionTableModel = new DefaultTableModel();\r
+ sectionTableModel.addColumn("SectionType");\r
+ \r
+ jTable1 = new JTable(sectionTableModel);\r
+ jTable1.setRowHeight(20);\r
+ JComboBox cb = new JComboBox();\r
+ cb.addItem("EFI_SECTION_FREEFORM_SUBTYPE_GUID");\r
+ cb.addItem("EFI_SECTION_VERSION");\r
+ cb.addItem("EFI_SECTION_USER_INTERFACE");\r
+ cb.addItem("EFI_SECTION_DXE_DEPEX");\r
+ cb.addItem("EFI_SECTION_PEI_DEPEX");\r
+ cb.addItem("EFI_SECTION_PE32");\r
+ cb.addItem("EFI_SECTION_PIC");\r
+ cb.addItem("EFI_SECTION_TE");\r
+ cb.addItem("EFI_SECTION_RAW");\r
+ cb.addItem("EFI_SECTION_COMPRESSION");\r
+ cb.addItem("EFI_SECTION_GUID_DEFINED");\r
+ cb.addItem("EFI_SECTION_COMPATIBILITY16");\r
+ cb.addItem("EFI_SECTION_FIRMWARE_VOLUME_IMAGE");\r
+ jTable1.getColumnModel().getColumn(0).setCellEditor(new DefaultCellEditor(cb));\r
+ \r
+ jTable1.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
+ \r
+ jTable1.getModel().addTableModelListener(new TableModelListener() {\r
+ public void tableChanged(TableModelEvent arg0) {\r
+ // TODO Auto-generated method stub\r
+ if (jTable.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ int row = arg0.getFirstRow();\r
+ TableModel m = (TableModel)arg0.getSource();\r
+ if (arg0.getType() == TableModelEvent.UPDATE){\r
+ //ToDo Data Validition check.\r
+ String type = m.getValueAt(row, 0) + "";\r
+ docConsole.setSaved(false);\r
+ ffc.updateBuildOptionsFfsSectionsSection(jTable.getSelectedRow(), row, type);\r
+ }\r
+ }\r
+ });\r
+ }\r
+ return jTable1;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jScrollPane3 \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(500,90));\r
+ jScrollPane3.setViewportView(getJTable3());\r
+ }\r
+ return jScrollPane3;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jTable3 \r
+ * \r
+ * @return javax.swing.JTable \r
+ */\r
+ private JTable getJTable3() {\r
+ if (jTable3 == null) {\r
+ subsectionsTableModel = new DefaultTableModel();\r
+ subsectionsTableModel.addColumn("SectionType");\r
+ jTable3 = new JTable(subsectionsTableModel);\r
+ jTable3.setRowHeight(20);\r
+ JComboBox cb = new JComboBox();\r
+ cb.addItem("EFI_SECTION_FREEFORM_SUBTYPE_GUID");\r
+ cb.addItem("EFI_SECTION_VERSION");\r
+ cb.addItem("EFI_SECTION_USER_INTERFACE");\r
+ cb.addItem("EFI_SECTION_DXE_DEPEX");\r
+ cb.addItem("EFI_SECTION_PEI_DEPEX");\r
+ cb.addItem("EFI_SECTION_PE32");\r
+ cb.addItem("EFI_SECTION_PIC");\r
+ cb.addItem("EFI_SECTION_TE");\r
+ cb.addItem("EFI_SECTION_RAW");\r
+ cb.addItem("EFI_SECTION_COMPRESSION");\r
+ cb.addItem("EFI_SECTION_GUID_DEFINED");\r
+ cb.addItem("EFI_SECTION_COMPATIBILITY16");\r
+ cb.addItem("EFI_SECTION_FIRMWARE_VOLUME_IMAGE");\r
+ jTable3.getColumnModel().getColumn(0).setCellEditor(new DefaultCellEditor(cb));\r
+ jTable3.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
+ \r
+ jTable3.getModel().addTableModelListener(new TableModelListener() {\r
+ public void tableChanged(TableModelEvent arg0) {\r
+ // TODO Auto-generated method stub\r
+ if (jTable.getSelectedRow() < 0 || jTable6.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ int row = arg0.getFirstRow();\r
+ TableModel m = (TableModel)arg0.getSource();\r
+ if (arg0.getType() == TableModelEvent.UPDATE){\r
+ //ToDo Data Validition check.\r
+ String type = m.getValueAt(row, 0) + "";\r
+ docConsole.setSaved(false);\r
+ ffc.updateBuildOptionsFfsSectionsSectionsSection(jTable.getSelectedRow(), jTable6.getSelectedRow(), row, type);\r
+ }\r
+ }\r
+ });\r
+ }\r
+ return jTable3;\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(100,20));\r
+ jTextField.addFocusListener(new java.awt.event.FocusAdapter() {\r
+ public void focusLost(java.awt.event.FocusEvent e) {\r
+ if (jTable.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ ffc.updateBuildOptionsFfsSectionsType(jTable.getSelectedRow(), jTextField.getText());\r
+ }\r
+ });\r
+ }\r
+ return jTextField;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jPanel4 \r
+ * \r
+ * @return javax.swing.JPanel \r
+ */\r
+ private JPanel getJPanel4() {\r
+ if (jPanel4 == null) {\r
+ jPanel4 = new JPanel();\r
+ jPanel4.setPreferredSize(new java.awt.Dimension(100,100));\r
+ jPanel4.add(getJButton17(), null);\r
+ jPanel4.add(getJButton18(), null);\r
+ }\r
+ return jPanel4;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jButton \r
+ * \r
+ * @return javax.swing.JButton \r
+ */\r
+ private JButton getJButton() {\r
+ if (jButton == null) {\r
+ jButton = new JButton();\r
+ jButton.setPreferredSize(new java.awt.Dimension(80,20));\r
+ jButton.setText("New");\r
+ jButton.addActionListener(new java.awt.event.ActionListener() {\r
+ public void actionPerformed(java.awt.event.ActionEvent e) {\r
+ if (jTable.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ docConsole.setSaved(false);\r
+ String[] row = {"EFI_SECTION_RAW"};\r
+ sectionTableModel.addRow(row);\r
+ ffc.genBuildOptionsFfsSectionsSection(jTable.getSelectedRow(), row[0]);\r
+ }\r
+ });\r
+ }\r
+ return jButton;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jButton1 \r
+ * \r
+ * @return javax.swing.JButton \r
+ */\r
+ private JButton getJButton1() {\r
+ if (jButton1 == null) {\r
+ jButton1 = new JButton();\r
+ jButton1.setPreferredSize(new java.awt.Dimension(80,20));\r
+ jButton1.setText("Remove");\r
+ \r
+ jButton1.addActionListener(new java.awt.event.ActionListener() {\r
+ public void actionPerformed(java.awt.event.ActionEvent e) {\r
+ if (jTable.getSelectedRow() < 0 || jTable1.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ docConsole.setSaved(false);\r
+ sectionTableModel.removeRow(jTable1.getSelectedRow());\r
+ ffc.removeBuildOptionsFfsSectionsSection(jTable.getSelectedRow(), jTable1.getSelectedRow());\r
+ }\r
+ });\r
+ }\r
+ return jButton1;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jButton2 \r
+ * \r
+ * @return javax.swing.JButton \r
+ */\r
+ private JButton getJButton2() {\r
+ if (jButton2 == null) {\r
+ jButton2 = new JButton();\r
+ jButton2.setPreferredSize(new java.awt.Dimension(80,20));\r
+ jButton2.setText("New");\r
+ jButton2.addActionListener(new java.awt.event.ActionListener() {\r
+ public void actionPerformed(java.awt.event.ActionEvent e) {\r
+ if (jTable.getSelectedRow() < 0 || jTable6.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ docConsole.setSaved(false);\r
+ String[] row = {"EFI_SECTION_RAW"};\r
+ subsectionsTableModel.addRow(row);\r
+ ffc.genBuildOptionsFfsSectionsSectionsSection(jTable.getSelectedRow(), jTable6.getSelectedRow(), row[0]);\r
+ \r
+ }\r
+ });\r
+ }\r
+ return jButton2;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jButton3 \r
+ * \r
+ * @return javax.swing.JButton \r
+ */\r
+ private JButton getJButton3() {\r
+ if (jButton3 == null) {\r
+ jButton3 = new JButton();\r
+ jButton3.setPreferredSize(new java.awt.Dimension(80,20));\r
+ jButton3.setText("Remove");\r
+ jButton3.addActionListener(new java.awt.event.ActionListener() {\r
+ public void actionPerformed(java.awt.event.ActionEvent e) {\r
+ if (jTable.getSelectedRow() < 0 || jTable6.getSelectedRow() < 0 || jTable3.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ docConsole.setSaved(false);\r
+ subsectionsTableModel.removeRow(jTable3.getSelectedRow());\r
+ ffc.removeBuildOptionsFfsSectionsSectionsSection(jTable.getSelectedRow(), jTable6.getSelectedRow(), jTable3.getSelectedRow());\r
+ }\r
+ });\r
+ }\r
+ return jButton3;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jButton6 \r
+ * \r
+ * @return javax.swing.JButton \r
+ */\r
+ private JButton getJButton6() {\r
+ if (jButton6 == null) {\r
+ jButton6 = new JButton();\r
+ jButton6.setPreferredSize(new java.awt.Dimension(80,20));\r
+ jButton6.setText("New");\r
+ jButton6.addActionListener(new java.awt.event.ActionListener() {\r
+ public void actionPerformed(java.awt.event.ActionEvent e) {\r
+ if (jTable.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ docConsole.setSaved(false);\r
+ String[] row = {""};\r
+ sectionsTableModel.addRow(row);\r
+ ffc.genBuildOptionsFfsSectionsSections(jTable.getSelectedRow(), "");\r
+ }\r
+ });\r
+ }\r
+ return jButton6;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jButton7 \r
+ * \r
+ * @return javax.swing.JButton \r
+ */\r
+ private JButton getJButton7() {\r
+ if (jButton7 == null) {\r
+ jButton7 = new JButton();\r
+ jButton7.setPreferredSize(new java.awt.Dimension(80,20));\r
+ jButton7.setText("Remove");\r
+ jButton7.addActionListener(new java.awt.event.ActionListener() {\r
+ public void actionPerformed(java.awt.event.ActionEvent e) {\r
+ if (jTable.getSelectedRow() < 0 || jTable6.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ docConsole.setSaved(false);\r
+ sectionsTableModel.removeRow(jTable6.getSelectedRow());\r
+ ffc.removeBuildOptionsFfsSectionsSections(jTable.getSelectedRow(), jTable6.getSelectedRow());\r
+ }\r
+ });\r
+ }\r
+ return jButton7;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jScrollPane4 \r
+ * \r
+ * @return javax.swing.JScrollPane \r
+ */\r
+ private JScrollPane getJScrollPane4() {\r
+ if (jScrollPane4 == null) {\r
+ jScrollPane4 = new JScrollPane();\r
+ jScrollPane4.setPreferredSize(new java.awt.Dimension(500,80));\r
+ jScrollPane4.setViewportView(getJTable6());\r
+ }\r
+ return jScrollPane4;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jTable6 \r
+ * \r
+ * @return javax.swing.JTable \r
+ */\r
+ private JTable getJTable6() {\r
+ if (jTable6 == null) {\r
+ sectionsTableModel = new DefaultTableModel();\r
+ sectionsTableModel.addColumn("EncapsulationType");\r
+ jTable6 = new JTable(sectionsTableModel);\r
+ jTable6.setRowHeight(20);\r
+ jTable6.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
+ jTable6.getSelectionModel().addListSelectionListener(new ListSelectionListener(){\r
+ public void valueChanged(ListSelectionEvent e) {\r
+ if (e.getValueIsAdjusting()){\r
+ return;\r
+ }\r
+ ListSelectionModel lsm = (ListSelectionModel)e.getSource();\r
+ if (lsm.isSelectionEmpty()) {\r
+ return;\r
+ }\r
+ else{\r
+ int sectionsRow = lsm.getMinSelectionIndex();\r
+ if (jTable.getSelectedRow() < 0) {\r
+ return;\r
+ }\r
+ subsectionsTableModel.setRowCount(0);\r
+ ArrayList<String> al = new ArrayList<String>();\r
+ ffc.getBuildOptionsFfsSectionsSectionsSection(jTable.getSelectedRow(), sectionsRow, al);\r
+ for (int i = 0; i < al.size(); ++i) {\r
+ String[] subsectionRow = {al.get(i)};\r
+ subsectionsTableModel.addRow(subsectionRow);\r
+ }\r
+ }\r
+ }\r
+ });\r
+ \r
+ jTable6.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 encapType = m.getValueAt(row, 0) + "";\r
+ docConsole.setSaved(false);\r
+ ffc.updateBuildOptionsFfsSectionsSections(jTable.getSelectedRow(), row, encapType);\r
+ }\r
+ }\r
+ });\r
+ }\r
+ return jTable6;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jButton12 \r
+ * \r
+ * @return javax.swing.JButton \r
+ */\r
+ private JButton getJButton12() {\r
+ if (jButton12 == null) {\r
+ jButton12 = new JButton();\r
+ jButton12.setPreferredSize(new Dimension(90, 20));\r
+ jButton12.setText("Browse");\r
+ jButton12.addActionListener(new AbstractAction() {\r
+ private static final long serialVersionUID = 1L;\r
+\r
+ public void actionPerformed(ActionEvent arg0) {\r
+ //\r
+ // Select files from current workspace\r
+ //\r
+ String dirPrefix = System.getenv("WORKSPACE");\r
+ JFileChooser chooser = new JFileChooser(dirPrefix);\r
+ File theFile = null;\r
+ String headerDest = null;\r
+ \r
+ chooser.setMultiSelectionEnabled(false);\r
+ chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);\r
+ int retval = chooser.showOpenDialog(frame);\r
+ if (retval == JFileChooser.APPROVE_OPTION) {\r
+\r
+ theFile = chooser.getSelectedFile();\r
+ String file = theFile.getPath();\r
+ if (!file.startsWith(dirPrefix)) {\r
+ JOptionPane.showMessageDialog(frame, "You can only select files in current package!");\r
+ return;\r
+ }\r
+ }\r
+ else {\r
+ return;\r
+ }\r
+ \r
+ headerDest = theFile.getPath();\r
+ jTextField2.setText(headerDest.substring(dirPrefix.length()).replace('\\', '/'));\r
+ \r
+ }\r
+\r
+ });\r
+ }\r
+ return jButton12;\r
+ }\r
+\r
+ /**\r
+ * This method initializes jTextField1 \r
+ * \r
+ * @return javax.swing.JTextField \r
+ */\r
+ private JTextField getJTextField1() {\r
+ if (jTextField1 == null) {\r
+ jTextField1 = new JTextField();\r
+ jTextField1.setPreferredSize(new java.awt.Dimension(85,20));\r
+ }\r
+ return jTextField1;\r
+ }\r
+\r
/**\r
* @param args\r
*/\r
ffc = new FpdFileContents(fpd);\r
init(ffc);\r
}\r
+ \r
+ public FpdBuildOptions(OpeningPlatformType opt) {\r
+ this(opt.getXmlFpd());\r
+ docConsole = opt;\r
+ }\r
\r
private void init(FpdFileContents ffc) {\r
initOptionTable();\r
initAntTaskTable();\r
+ initFfsTable();\r
this.addInternalFrameListener(new InternalFrameAdapter(){\r
public void internalFrameDeactivated(InternalFrameEvent e){\r
if (jTable.isEditing()) {\r
jTable.getCellEditor().stopCellEditing();\r
}\r
-// if (jTable1.isEditing()) {\r
-// jTable1.getCellEditor().stopCellEditing();\r
-// }\r
+ if (jTable1.isEditing()) {\r
+ jTable1.getCellEditor().stopCellEditing();\r
+ }\r
if (jTable2.isEditing()) {\r
jTable2.getCellEditor().stopCellEditing();\r
}\r
-// if (jTable3.isEditing()) {\r
-// jTable3.getCellEditor().stopCellEditing();\r
-// }\r
+ if (jTable3.isEditing()) {\r
+ jTable3.getCellEditor().stopCellEditing();\r
+ }\r
if (jTable4.isEditing()) {\r
jTable4.getCellEditor().stopCellEditing();\r
}\r
antTaskTableModel.addRow(saa[i]);\r
}\r
}\r
+ \r
+ private void initFfsTable(){\r
+ int ffsCount = ffc.getBuildOptionsFfsCount();\r
+ if (ffsCount < 0) {\r
+ return;\r
+ }\r
+ String[][] saa = new String[ffsCount][1];\r
+ ffc.getBuildOptionsFfsKey(saa);\r
+ for (int i = 0; i < saa.length; ++i) {\r
+ ffsTableModel.addRow(saa[i]);\r
+ }\r
+ }\r
/**\r
* This method initializes this\r
* \r
* @return void\r
*/\r
private void initialize() {\r
- this.setSize(722, 439);\r
+ this.setSize(722, 577);\r
this.setTitle("FPD Build Options");\r
this.setContentPane(getJContentPane());\r
}\r