3 The file is used to create, update BuildOptions of Fpd file
5 Copyright (c) 2006, Intel Corporation
6 All rights reserved. This program and the accompanying materials
7 are licensed and made available under the terms and conditions of the BSD License
8 which accompanies this distribution. The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
15 package org
.tianocore
.frameworkwizard
.platform
.ui
;
17 import java
.awt
.BorderLayout
;
19 import javax
.swing
.JPanel
;
20 import javax
.swing
.JTabbedPane
;
21 import javax
.swing
.JCheckBox
;
22 import javax
.swing
.JLabel
;
23 import java
.awt
.FlowLayout
;
24 import javax
.swing
.AbstractAction
;
25 import java
.awt
.event
.ActionEvent
;
26 import java
.awt
.event
.ActionListener
;
28 import javax
.swing
.DefaultCellEditor
;
29 import javax
.swing
.JTextField
;
30 import javax
.swing
.JButton
;
31 import javax
.swing
.JScrollPane
;
32 import javax
.swing
.JTable
;
33 import javax
.swing
.JComboBox
;
34 import javax
.swing
.ListSelectionModel
;
35 import javax
.swing
.event
.InternalFrameAdapter
;
36 import javax
.swing
.event
.InternalFrameEvent
;
37 import javax
.swing
.event
.ListSelectionEvent
;
38 import javax
.swing
.event
.ListSelectionListener
;
39 import javax
.swing
.event
.TableModelEvent
;
40 import javax
.swing
.event
.TableModelListener
;
41 import javax
.swing
.table
.DefaultTableModel
;
42 import javax
.swing
.table
.TableColumn
;
43 import javax
.swing
.table
.TableModel
;
45 import org
.tianocore
.PlatformSurfaceAreaDocument
;
46 import org
.tianocore
.frameworkwizard
.common
.ui
.IInternalFrame
;
47 import java
.util
.ArrayList
;
48 import java
.util
.Iterator
;
49 import java
.util
.LinkedHashMap
;
51 import java
.util
.Vector
;
53 public class FpdBuildOptions
extends IInternalFrame
{
55 private static final long serialVersionUID
= 1L;
56 private JPanel jContentPane
= null;
57 private JPanel jPanel
= null;
58 private JPanel jPanel1
= null;
59 private JPanel jPanel2
= null;
60 private JPanel jPanel3
= null;
61 private JTabbedPane jTabbedPane
= null;
62 private JPanel jPanel8
= null;
63 private JPanel jPanel9
= null;
64 private JPanel jPanel10
= null;
65 private JPanel jPanel11
= null;
66 private JTextField jTextField2
= null;
67 private JLabel jLabel3
= null;
68 private JTextField jTextField3
= null;
69 private JButton jButton4
= null;
70 private JButton jButton5
= null;
71 private JTextField jTextField4
= null;
72 private JScrollPane jScrollPane2
= null;
73 private JTable jTable2
= null;
74 private DefaultTableModel ffsTableModel
= null;
75 private DefaultTableModel sectionsTableModel
= null;
76 private DefaultTableModel sectionTableModel
= null;
77 private DefaultTableModel subsectionsTableModel
= null;
78 private DefaultTableModel antTaskTableModel
= null;
79 private DefaultTableModel ffsAttributesTableModel
= null;
80 private DefaultTableModel optionsTableModel
= null;
81 private JPanel jPanel13
= null;
82 private JPanel jPanel18
= null;
83 private JPanel jPanel15
= null;
84 private JPanel jPanel16
= null;
85 private JPanel jPanel17
= null;
86 private JLabel jLabel7
= null;
87 private JTextField jTextField6
= null;
88 private JButton jButton8
= null;
89 private JButton jButton9
= null;
90 private JScrollPane jScrollPane5
= null;
91 private JTable jTable4
= null;
92 private JPanel jPanel19
= null;
93 private JPanel jPanel20
= null;
94 private JLabel jLabel9
= null;
95 private JTextField jTextField7
= null;
96 private JLabel jLabel10
= null;
97 private JComboBox jComboBox2
= null;
98 private JLabel jLabel11
= null;
99 private JLabel jLabel12
= null;
100 private JTextField jTextField8
= null;
101 private JScrollPane jScrollPane6
= null;
102 private JTable jTable5
= null;
103 private JButton jButton10
= null;
104 private JButton jButton11
= null;
105 private JButton jButton17
= null;
106 private JButton jButton18
= null;
107 private FpdFileContents ffc
= null;
108 private JButton jButton19
= null;
109 private JCheckBox jCheckBox9
= null;
110 private JCheckBox jCheckBox10
= null;
111 private JCheckBox jCheckBox11
= null;
112 private JCheckBox jCheckBox12
= null;
113 private JCheckBox jCheckBox13
= null;
114 private JCheckBox jCheckBox14
= null;
115 private JLabel jLabel14
= null;
116 private JTextField jTextField12
= null;
117 private JTextField jTextField13
= null;
118 private JLabel jLabel15
= null;
119 private int selectedRow
= -1;
120 private JLabel jLabel
= null;
121 private JLabel jLabel1
= null;
122 private JScrollPane jScrollPane
= null;
123 private JTable jTable
= null;
124 private JLabel jLabel2
= null;
125 private JScrollPane jScrollPane1
= null;
126 private JTable jTable1
= null;
127 private JLabel jLabel4
= null;
128 private JScrollPane jScrollPane3
= null;
129 private JTable jTable3
= null;
130 private JLabel jLabel5
= null;
131 private JTextField jTextField
= null;
132 private JPanel jPanel4
= null;
133 private JLabel jLabel6
= null;
134 private JButton jButton
= null;
135 private JButton jButton1
= null;
136 private JButton jButton2
= null;
137 private JButton jButton3
= null;
138 private JLabel jLabel8
= null;
139 private JButton jButton6
= null;
140 private JButton jButton7
= null;
141 private JScrollPane jScrollPane4
= null;
142 private JTable jTable6
= null;
144 * This method initializes jPanel
146 * @return javax.swing.JPanel
148 private JPanel
getJPanel() {
149 if (jPanel
== null) {
150 jPanel
= new JPanel();
156 * This method initializes jPanel1
158 * @return javax.swing.JPanel
160 private JPanel
getJPanel1() {
161 if (jPanel1
== null) {
162 jPanel1
= new JPanel();
168 * This method initializes jPanel2
170 * @return javax.swing.JPanel
172 private JPanel
getJPanel2() {
173 if (jPanel2
== null) {
174 jPanel2
= new JPanel();
180 * This method initializes jPanel3
182 * @return javax.swing.JPanel
184 private JPanel
getJPanel3() {
185 if (jPanel3
== null) {
186 jPanel3
= new JPanel();
192 * This method initializes jTabbedPane
194 * @return javax.swing.JTabbedPane
196 private JTabbedPane
getJTabbedPane() {
197 if (jTabbedPane
== null) {
198 jTabbedPane
= new JTabbedPane();
199 jTabbedPane
.addTab("FFS", null, getJPanel13(), null);
200 jTabbedPane
.addTab("Options", null, getJPanel20(), null);
201 jTabbedPane
.addTab("User Defined ANT Tasks", null, getJPanel8(), null);
208 * This method initializes jPanel8
210 * @return javax.swing.JPanel
212 private JPanel
getJPanel8() {
213 if (jPanel8
== null) {
214 jPanel8
= new JPanel();
215 jPanel8
.setLayout(new BorderLayout());
216 jPanel8
.add(getJPanel9(), java
.awt
.BorderLayout
.NORTH
);
217 jPanel8
.add(getJPanel10(), java
.awt
.BorderLayout
.SOUTH
);
218 jPanel8
.add(getJPanel11(), java
.awt
.BorderLayout
.CENTER
);
225 * This method initializes jPanel9
227 * @return javax.swing.JPanel
229 private JPanel
getJPanel9() {
230 if (jPanel9
== null) {
231 jLabel
= new JLabel();
232 jLabel
.setText("ANT Task File");
233 jLabel
.setPreferredSize(new java
.awt
.Dimension(80,20));
234 FlowLayout flowLayout8
= new FlowLayout();
235 flowLayout8
.setAlignment(java
.awt
.FlowLayout
.LEFT
);
236 jLabel3
= new JLabel();
237 jLabel3
.setText("ID");
238 jPanel9
= new JPanel();
239 jPanel9
.setLayout(flowLayout8
);
240 jPanel9
.add(jLabel
, null);
241 jPanel9
.add(getJTextField2(), null);
242 jPanel9
.add(jLabel3
, null);
243 jPanel9
.add(getJTextField3(), null);
249 * This method initializes jPanel10
251 * @return javax.swing.JPanel
253 private JPanel
getJPanel10() {
254 if (jPanel10
== null) {
255 jPanel10
= new JPanel();
261 * This method initializes jPanel11
263 * @return javax.swing.JPanel
265 private JPanel
getJPanel11() {
266 if (jPanel11
== null) {
267 jLabel1
= new JLabel();
268 jLabel1
.setText("ANT Command Options");
269 jLabel1
.setPreferredSize(new java
.awt
.Dimension(131,20));
270 FlowLayout flowLayout3
= new FlowLayout();
271 flowLayout3
.setHgap(5);
272 flowLayout3
.setAlignment(java
.awt
.FlowLayout
.LEFT
);
273 jPanel11
= new JPanel();
274 jPanel11
.setLayout(flowLayout3
);
275 jPanel11
.add(jLabel1
, null);
276 jPanel11
.add(getJTextField4(), null);
277 jPanel11
.add(getJButton4(), null);
278 jPanel11
.add(getJButton5(), null);
279 jPanel11
.add(getJScrollPane2(), null);
285 * This method initializes jTextField2
287 * @return javax.swing.JTextField
289 private JTextField
getJTextField2() {
290 if (jTextField2
== null) {
291 jTextField2
= new JTextField();
292 jTextField2
.setPreferredSize(new java
.awt
.Dimension(200,20));
298 * This method initializes jTextField3
300 * @return javax.swing.JTextField
302 private JTextField
getJTextField3() {
303 if (jTextField3
== null) {
304 jTextField3
= new JTextField();
305 jTextField3
.setPreferredSize(new java
.awt
.Dimension(100,20));
311 * This method initializes jButton4
313 * @return javax.swing.JButton
315 private JButton
getJButton4() {
316 if (jButton4
== null) {
317 jButton4
= new JButton();
318 jButton4
.setPreferredSize(new java
.awt
.Dimension(90,20));
319 jButton4
.setText("Add");
320 jButton4
.addActionListener(new ActionListener() {
321 public void actionPerformed(ActionEvent e
) {
322 Object
[] o
= {jTextField3
.getText(), null, null};
323 o
[1] = jTextField2
.getText();
324 o
[2] = jTextField4
.getText();
325 ffc
.genBuildOptionsUserDefAntTask(o
[0]+"", null, o
[2]+"");
326 antTaskTableModel
.addRow(o
);
335 * This method initializes jButton5
337 * @return javax.swing.JButton
339 private JButton
getJButton5() {
340 if (jButton5
== null) {
341 jButton5
= new JButton();
342 jButton5
.setPreferredSize(new java
.awt
.Dimension(90,20));
343 jButton5
.setText("Delete");
344 jButton5
.addActionListener(new ActionListener() {
345 public void actionPerformed(ActionEvent e
) {
346 if (selectedRow
>= 0) {
347 antTaskTableModel
.removeRow(selectedRow
);
348 ffc
.removeBuildOptionsUserDefAntTask(selectedRow
);
357 * This method initializes jTextField4
359 * @return javax.swing.JTextField
361 private JTextField
getJTextField4() {
362 if (jTextField4
== null) {
363 jTextField4
= new JTextField();
364 jTextField4
.setPreferredSize(new java
.awt
.Dimension(270,20));
365 jTextField4
.setEnabled(true);
371 * This method initializes jScrollPane2
373 * @return javax.swing.JScrollPane
375 private JScrollPane
getJScrollPane2() {
376 if (jScrollPane2
== null) {
377 jScrollPane2
= new JScrollPane();
378 jScrollPane2
.setPreferredSize(new java
.awt
.Dimension(600,100));
379 jScrollPane2
.setViewportView(getJTable2());
385 * This method initializes jTable2
387 * @return javax.swing.JTable
389 private JTable
getJTable2() {
390 if (jTable2
== null) {
391 antTaskTableModel
= new DefaultTableModel();
392 jTable2
= new JTable(antTaskTableModel
);
393 jTable2
.setRowHeight(20);
394 antTaskTableModel
.addColumn("ID");
395 antTaskTableModel
.addColumn("Filename");
396 antTaskTableModel
.addColumn("ANT Command Options");
398 jTable2
.setSelectionMode(ListSelectionModel
.SINGLE_SELECTION
);
399 jTable2
.getSelectionModel().addListSelectionListener(new ListSelectionListener(){
400 public void valueChanged(ListSelectionEvent e
) {
402 if (e
.getValueIsAdjusting()){
405 ListSelectionModel lsm
= (ListSelectionModel
)e
.getSource();
406 if (lsm
.isSelectionEmpty()) {
410 selectedRow
= lsm
.getMinSelectionIndex();
415 jTable2
.getModel().addTableModelListener(new TableModelListener() {
416 public void tableChanged(TableModelEvent arg0
) {
417 // TODO Auto-generated method stub
418 int row
= arg0
.getFirstRow();
419 TableModel m
= (TableModel
)arg0
.getSource();
420 if (arg0
.getType() == TableModelEvent
.UPDATE
){
421 //ToDo Data Validition check.
422 String id
= m
.getValueAt(row
, 0) + "";
423 String file
= m
.getValueAt(row
, 1) + "";
424 String execOrder
= m
.getValueAt(row
, 2) + "";
425 if (id
.length() == 0) {
428 if (file
.length() == 0 && execOrder
.length() == 0){
431 if (file
.length() == 0) {
434 if (execOrder
.length() == 0) {
437 ffc
.updateBuildOptionsUserDefAntTask(row
, id
, file
, execOrder
);
447 * This method initializes jPanel13
449 * @return javax.swing.JPanel
451 private JPanel
getJPanel13() {
452 if (jPanel13
== null) {
453 jPanel13
= new JPanel();
454 jPanel13
.setLayout(new BorderLayout());
455 jPanel13
.add(getJPanel18(), java
.awt
.BorderLayout
.CENTER
);
456 jPanel13
.add(getJScrollPane(), java
.awt
.BorderLayout
.WEST
);
462 * This method initializes jPanel18
464 * @return javax.swing.JPanel
466 private JPanel
getJPanel18() {
467 if (jPanel18
== null) {
468 jPanel18
= new JPanel();
469 jPanel18
.setLayout(new BorderLayout());
470 jPanel18
.add(getJPanel15(), java
.awt
.BorderLayout
.NORTH
);
471 jPanel18
.add(getJPanel16(), java
.awt
.BorderLayout
.SOUTH
);
472 jPanel18
.add(getJPanel17(), java
.awt
.BorderLayout
.EAST
);
473 jPanel18
.add(getJPanel19(), java
.awt
.BorderLayout
.CENTER
);
479 * This method initializes jPanel15
481 * @return javax.swing.JPanel
483 private JPanel
getJPanel15() {
484 if (jPanel15
== null) {
485 jLabel5
= new JLabel();
486 jLabel5
.setText("Encapsulation Type");
487 FlowLayout flowLayout5
= new FlowLayout();
488 flowLayout5
.setAlignment(java
.awt
.FlowLayout
.RIGHT
);
489 jLabel7
= new JLabel();
490 jLabel7
.setText("FFS Key");
491 jPanel15
= new JPanel();
492 jPanel15
.setLayout(flowLayout5
);
493 jPanel15
.add(jLabel7
, null);
494 jPanel15
.add(getJTextField6(), null);
495 jPanel15
.add(jLabel5
, null);
496 jPanel15
.add(getJTextField(), null);
497 jPanel15
.add(getJButton8(), null);
498 jPanel15
.add(getJButton9(), null);
504 * This method initializes jPanel16
506 * @return javax.swing.JPanel
508 private JPanel
getJPanel16() {
509 if (jPanel16
== null) {
510 jLabel6
= new JLabel();
511 jLabel6
.setText("Attributes");
512 FlowLayout flowLayout6
= new FlowLayout();
513 flowLayout6
.setHgap(5);
514 flowLayout6
.setVgap(20);
515 flowLayout6
.setAlignment(java
.awt
.FlowLayout
.CENTER
);
516 jPanel16
= new JPanel();
517 jPanel16
.setPreferredSize(new java
.awt
.Dimension(491,130));
518 jPanel16
.setLayout(flowLayout6
);
519 jPanel16
.add(jLabel6
, null);
520 jPanel16
.add(getJScrollPane5(), null);
521 jPanel16
.add(getJPanel4(), null);
527 * This method initializes jPanel17
529 * @return javax.swing.JPanel
531 private JPanel
getJPanel17() {
532 if (jPanel17
== null) {
533 jPanel17
= new JPanel();
539 * This method initializes jTextField6
541 * @return javax.swing.JTextField
543 private JTextField
getJTextField6() {
544 if (jTextField6
== null) {
545 jTextField6
= new JTextField();
546 jTextField6
.setPreferredSize(new java
.awt
.Dimension(100,20));
547 jTextField6
.setEditable(false);
548 jTextField6
.addFocusListener(new java
.awt
.event
.FocusAdapter() {
549 public void focusLost(java
.awt
.event
.FocusEvent e
) {
550 if (jTable
.getSelectedRow() < 0) {
553 // ffc.updateBuildOptionsFfsKey(jTable.getSelectedRow(), jTextField6.getText());
561 * This method initializes jButton8
563 * @return javax.swing.JButton
565 private JButton
getJButton8() {
566 if (jButton8
== null) {
567 jButton8
= new JButton();
568 jButton8
.setPreferredSize(new java
.awt
.Dimension(70,20));
569 jButton8
.setText("Add");
570 jButton8
.addActionListener(new AbstractAction() {
574 private static final long serialVersionUID
= -2923720717273384221L;
576 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
577 if (jTextField6
.getText().length() > 0) {
578 String
[] row
= {jTextField6
.getText()};
579 ffsTableModel
.addRow(row
);
580 ffc
.genBuildOptionsFfs(jTextField6
.getText(), jTextField
.getText());
589 * This method initializes jButton9
591 * @return javax.swing.JButton
593 private JButton
getJButton9() {
594 if (jButton9
== null) {
595 jButton9
= new JButton();
596 jButton9
.setPreferredSize(new java
.awt
.Dimension(70,20));
597 jButton9
.setText("Delete");
598 jButton9
.addActionListener(new AbstractAction() {
602 private static final long serialVersionUID
= -4002678939178194476L;
604 public void actionPerformed(ActionEvent arg0
){
605 if (jTable
.getSelectedRow() < 0) {
608 ffc
.removeBuildOptionsFfs(jTable
.getSelectedRow());
616 * This method initializes jScrollPane5
618 * @return javax.swing.JScrollPane
620 private JScrollPane
getJScrollPane5() {
621 if (jScrollPane5
== null) {
622 jScrollPane5
= new JScrollPane();
623 jScrollPane5
.setPreferredSize(new java
.awt
.Dimension(350,100));
624 jScrollPane5
.setViewportView(getJTable4());
630 * This method initializes jTable4
632 * @return javax.swing.JTable
634 private JTable
getJTable4() {
635 if (jTable4
== null) {
636 ffsAttributesTableModel
= new DefaultTableModel();
637 jTable4
= new JTable(ffsAttributesTableModel
);
638 jTable4
.setPreferredSize(new java
.awt
.Dimension(400,80));
639 jTable4
.setRowHeight(20);
640 ffsAttributesTableModel
.addColumn("Name");
641 ffsAttributesTableModel
.addColumn("Value");
643 jTable4
.setSelectionMode(ListSelectionModel
.SINGLE_SELECTION
);
644 jTable4
.getModel().addTableModelListener(new TableModelListener() {
645 public void tableChanged(TableModelEvent arg0
) {
646 // TODO Auto-generated method stub
647 int row
= arg0
.getFirstRow();
648 TableModel m
= (TableModel
)arg0
.getSource();
649 if (arg0
.getType() == TableModelEvent
.UPDATE
){
650 //ToDo Data Validition check.
651 String name
= m
.getValueAt(row
, 0) + "";
652 String value
= m
.getValueAt(row
, 1) + "";
654 if (name
.length() == 0) {
657 if (value
.length() == 0){
660 ffc
.updateBuildOptionsFfsAttribute(jTable
.getSelectedRow(), row
, name
, value
);
669 * This method initializes jPanel19
671 * @return javax.swing.JPanel
673 private JPanel
getJPanel19() {
674 if (jPanel19
== null) {
675 jLabel8
= new JLabel();
676 jLabel8
.setText("Sections");
677 jLabel4
= new JLabel();
678 jLabel4
.setText("Sub-Sections");
679 jLabel2
= new JLabel();
680 jLabel2
.setText("Section");
681 jPanel19
= new JPanel();
682 jPanel19
.setLayout(new FlowLayout());
683 jPanel19
.add(jLabel2
, null);
684 jPanel19
.add(getJButton(), null);
685 jPanel19
.add(getJButton1(), null);
686 jPanel19
.add(getJScrollPane1(), null);
687 jPanel19
.add(jLabel8
, null);
688 jPanel19
.add(getJButton6(), null);
689 jPanel19
.add(getJButton7(), null);
690 jPanel19
.add(getJScrollPane4(), null);
691 jPanel19
.add(jLabel4
, null);
692 jPanel19
.add(getJButton2(), null);
693 jPanel19
.add(getJButton3(), null);
694 jPanel19
.add(getJScrollPane3(), null);
700 * This method initializes jPanel20
702 * @return javax.swing.JPanel
704 private JPanel
getJPanel20() {
705 if (jPanel20
== null) {
706 jLabel15
= new JLabel();
707 jLabel15
.setText("Tag Name");
708 FlowLayout flowLayout9
= new FlowLayout();
709 flowLayout9
.setAlignment(java
.awt
.FlowLayout
.LEFT
);
710 jLabel14
= new JLabel();
711 jLabel14
.setText("Build Targets");
712 jLabel12
= new JLabel();
713 jLabel12
.setText("Tool Command");
714 jLabel11
= new JLabel();
715 jLabel11
.setText("Supported Arch");
716 jLabel10
= new JLabel();
717 jLabel10
.setText("Tool Chain Family");
718 jLabel9
= new JLabel();
719 jLabel9
.setText("Option Contents");
720 jPanel20
= new JPanel();
721 jPanel20
.setLayout(flowLayout9
);
722 jPanel20
.add(jLabel14
, null);
723 jPanel20
.add(getJTextField12(), null);
724 jPanel20
.add(jLabel10
, null);
725 jPanel20
.add(getJComboBox2(), null);
726 jPanel20
.add(jLabel12
, null);
727 jPanel20
.add(getJTextField8(), null);
728 jPanel20
.add(jLabel11
, null);
729 jPanel20
.add(getJCheckBox9(), null);
730 jPanel20
.add(getJCheckBox10(), null);
731 jPanel20
.add(getJCheckBox11(), null);
732 jPanel20
.add(getJCheckBox12(), null);
733 jPanel20
.add(getJCheckBox13(), null);
734 jPanel20
.add(getJCheckBox14(), null);
735 jPanel20
.add(jLabel15
, null);
736 jPanel20
.add(getJTextField13(), null);
737 jPanel20
.add(jLabel9
, null);
738 jPanel20
.add(getJTextField7(), null);
739 jPanel20
.add(getJButton10(), null);
740 jPanel20
.add(getJButton11(), null);
741 jPanel20
.add(getJButton19(), null);
742 jPanel20
.add(getJScrollPane6(), null);
748 * This method initializes jTextField7
750 * @return javax.swing.JTextField
752 private JTextField
getJTextField7() {
753 if (jTextField7
== null) {
754 jTextField7
= new JTextField();
755 jTextField7
.setPreferredSize(new java
.awt
.Dimension(300,20));
761 * This method initializes jComboBox2
763 * @return javax.swing.JComboBox
765 private JComboBox
getJComboBox2() {
766 if (jComboBox2
== null) {
767 jComboBox2
= new JComboBox();
768 jComboBox2
.setPreferredSize(new java
.awt
.Dimension(80,20));
769 jComboBox2
.addItem("MSFT");
770 jComboBox2
.addItem("GCC");
771 jComboBox2
.addItem("CYGWIN");
772 jComboBox2
.addItem("INTEL");
773 jComboBox2
.setSelectedIndex(0);
779 * This method initializes jTextField8
781 * @return javax.swing.JTextField
783 private JTextField
getJTextField8() {
784 if (jTextField8
== null) {
785 jTextField8
= new JTextField();
786 jTextField8
.setPreferredSize(new java
.awt
.Dimension(110,20));
792 * This method initializes jScrollPane6
794 * @return javax.swing.JScrollPane
796 private JScrollPane
getJScrollPane6() {
797 if (jScrollPane6
== null) {
798 jScrollPane6
= new JScrollPane();
799 jScrollPane6
.setPreferredSize(new java
.awt
.Dimension(630,200));
800 jScrollPane6
.setViewportView(getJTable5());
806 * This method initializes jTable5
808 * @return javax.swing.JTable
810 private JTable
getJTable5() {
811 if (jTable5
== null) {
812 optionsTableModel
= new DefaultTableModel();
813 jTable5
= new JTable(optionsTableModel
);
814 jTable5
.setRowHeight(20);
815 optionsTableModel
.addColumn("BuildTargets");
816 optionsTableModel
.addColumn("ToolChainFamily");
817 optionsTableModel
.addColumn("SupportedArch");
818 optionsTableModel
.addColumn("ToolCommand");
819 optionsTableModel
.addColumn("TagName");
820 optionsTableModel
.addColumn("Contents");
822 TableColumn toolFamilyCol
= jTable5
.getColumnModel().getColumn(1);
823 JComboBox cb
= new JComboBox();
826 cb
.addItem("CYGWIN");
828 toolFamilyCol
.setCellEditor(new DefaultCellEditor(cb
));
830 jTable5
.setSelectionMode(ListSelectionModel
.SINGLE_SELECTION
);
831 jTable5
.getSelectionModel().addListSelectionListener(new ListSelectionListener(){
832 public void valueChanged(ListSelectionEvent e
) {
834 if (e
.getValueIsAdjusting()){
837 ListSelectionModel lsm
= (ListSelectionModel
)e
.getSource();
838 if (lsm
.isSelectionEmpty()) {
842 selectedRow
= lsm
.getMinSelectionIndex();
847 jTable5
.getModel().addTableModelListener(new TableModelListener() {
848 public void tableChanged(TableModelEvent arg0
) {
849 // TODO Auto-generated method stub
850 int row
= arg0
.getFirstRow();
851 TableModel m
= (TableModel
)arg0
.getSource();
852 if (arg0
.getType() == TableModelEvent
.UPDATE
){
853 //ToDo Data Validition check.
854 String targets
= m
.getValueAt(row
, 0) + "";
855 Vector
<Object
> targetName
= new Vector
<Object
>();
856 String
[] sArray
= targets
.split("( )+");
857 for (int i
= 0; i
< sArray
.length
; ++i
) {
858 targetName
.add(sArray
[i
]);
860 String toolChain
= m
.getValueAt(row
, 1) + "";
861 String archs
= m
.getValueAt(row
, 2) + "";
862 Vector
<Object
> supArch
= new Vector
<Object
>();
863 String
[] sArray1
= archs
.split("( )+");
864 for (int i
= 0; i
< sArray1
.length
; ++i
) {
865 supArch
.add(sArray1
[i
]);
867 if (supArch
.size() == 0) {
870 String toolCmd
= m
.getValueAt(row
, 3) + "";
871 String tagName
= m
.getValueAt(row
, 4) + "";
872 String contents
= m
.getValueAt(row
, 5) + "";
873 ffc
.updateBuildOptionsOpt(row
, targetName
, toolChain
, tagName
, toolCmd
, supArch
, contents
);
882 * This method initializes jButton10
884 * @return javax.swing.JButton
886 private JButton
getJButton10() {
887 if (jButton10
== null) {
888 jButton10
= new JButton();
889 jButton10
.setText("Add");
890 jButton10
.setPreferredSize(new java
.awt
.Dimension(70,20));
891 jButton10
.addActionListener(new AbstractAction() {
895 private static final long serialVersionUID
= 1L;
897 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
898 boolean[] boolArray
= {jCheckBox9
.isSelected(),jCheckBox10
.isSelected(),jCheckBox11
.isSelected(),
899 jCheckBox12
.isSelected(),jCheckBox13
.isSelected(),jCheckBox14
.isSelected()};
900 String s
= boolToList(boolArray
);
901 Object
[] o
= {jTextField12
.getText(), jComboBox2
.getSelectedItem(), s
,
902 jTextField8
.getText(), jTextField13
.getText(), jTextField7
.getText()};
903 optionsTableModel
.addRow(o
);
905 ffc
.genBuildOptionsOpt(stringToVector(jTextField12
.getText()), jComboBox2
.getSelectedItem()+"", jTextField13
.getText(), jTextField8
.getText(), stringToVector(s
), jTextField7
.getText());
912 private Vector
<Object
> stringToVector(String s
) {
913 String
[] sArray
= s
.split(" ");
914 Vector
<Object
> v
= new Vector
<Object
>();
915 for (int i
= 0; i
< sArray
.length
; ++i
) {
921 private String
boolToList (boolean[] bool
) {
948 * This method initializes jButton11
950 * @return javax.swing.JButton
952 private JButton
getJButton11() {
953 if (jButton11
== null) {
954 jButton11
= new JButton();
955 jButton11
.setText("Delete");
956 jButton11
.setPreferredSize(new java
.awt
.Dimension(70,20));
957 jButton11
.addActionListener(new AbstractAction() {
961 private static final long serialVersionUID
= 1L;
963 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
964 if (selectedRow
>= 0) {
965 optionsTableModel
.removeRow(selectedRow
);
966 ffc
.removeBuildOptionsOpt(selectedRow
);
975 * This method initializes jButton17
977 * @return javax.swing.JButton
979 private JButton
getJButton17() {
980 if (jButton17
== null) {
981 jButton17
= new JButton();
982 jButton17
.setPreferredSize(new java
.awt
.Dimension(80,20));
983 jButton17
.setText("New");
984 jButton17
.addActionListener(new AbstractAction() {
988 private static final long serialVersionUID
= 1L;
990 public void actionPerformed(ActionEvent arg0
){
991 if (jTable
.getSelectedRow() < 0) {
994 Object
[] o
= {"", ""};
995 ffsAttributesTableModel
.addRow(o
);
996 ffc
.genBuildOptionsFfsAttribute(jTable
.getSelectedRow(), "", "");
1004 * This method initializes jButton18
1006 * @return javax.swing.JButton
1008 private JButton
getJButton18() {
1009 if (jButton18
== null) {
1010 jButton18
= new JButton();
1011 jButton18
.setPreferredSize(new java
.awt
.Dimension(80,20));
1012 jButton18
.setText("Remove");
1013 jButton18
.addActionListener(new AbstractAction(){
1017 private static final long serialVersionUID
= 1L;
1019 public void actionPerformed(ActionEvent arg0
){
1020 if (jTable
.getSelectedRow() < 0) {
1023 if (jTable4
.getSelectedRow() >= 0){
1024 ffsAttributesTableModel
.removeRow(jTable4
.getSelectedRow());
1025 ffc
.removeBuildOptionsFfsAttribute(jTable
.getSelectedRow(), jTable4
.getSelectedRow());
1034 * This method initializes jButton19
1036 * @return javax.swing.JButton
1038 private JButton
getJButton19() {
1039 if (jButton19
== null) {
1040 jButton19
= new JButton();
1041 jButton19
.setPreferredSize(new java
.awt
.Dimension(75,20));
1042 jButton19
.setEnabled(false);
1043 jButton19
.setText("Update");
1049 * This method initializes jCheckBox9
1051 * @return javax.swing.JCheckBox
1053 private JCheckBox
getJCheckBox9() {
1054 if (jCheckBox9
== null) {
1055 jCheckBox9
= new JCheckBox();
1056 jCheckBox9
.setPreferredSize(new java
.awt
.Dimension(50,20));
1057 jCheckBox9
.setText("IA32");
1063 * This method initializes jCheckBox10
1065 * @return javax.swing.JCheckBox
1067 private JCheckBox
getJCheckBox10() {
1068 if (jCheckBox10
== null) {
1069 jCheckBox10
= new JCheckBox();
1070 jCheckBox10
.setPreferredSize(new java
.awt
.Dimension(50,20));
1071 jCheckBox10
.setText("IPF");
1077 * This method initializes jCheckBox11
1079 * @return javax.swing.JCheckBox
1081 private JCheckBox
getJCheckBox11() {
1082 if (jCheckBox11
== null) {
1083 jCheckBox11
= new JCheckBox();
1084 jCheckBox11
.setText("X64");
1085 jCheckBox11
.setPreferredSize(new java
.awt
.Dimension(47,20));
1091 * This method initializes jCheckBox12
1093 * @return javax.swing.JCheckBox
1095 private JCheckBox
getJCheckBox12() {
1096 if (jCheckBox12
== null) {
1097 jCheckBox12
= new JCheckBox();
1098 jCheckBox12
.setPreferredSize(new java
.awt
.Dimension(50,20));
1099 jCheckBox12
.setText("EBC");
1105 * This method initializes jCheckBox13
1107 * @return javax.swing.JCheckBox
1109 private JCheckBox
getJCheckBox13() {
1110 if (jCheckBox13
== null) {
1111 jCheckBox13
= new JCheckBox();
1112 jCheckBox13
.setPreferredSize(new java
.awt
.Dimension(55,20));
1113 jCheckBox13
.setText("ARM");
1119 * This method initializes jCheckBox14
1121 * @return javax.swing.JCheckBox
1123 private JCheckBox
getJCheckBox14() {
1124 if (jCheckBox14
== null) {
1125 jCheckBox14
= new JCheckBox();
1126 jCheckBox14
.setPreferredSize(new java
.awt
.Dimension(50,20));
1127 jCheckBox14
.setText("PPC");
1133 * This method initializes jTextField12
1135 * @return javax.swing.JTextField
1137 private JTextField
getJTextField12() {
1138 if (jTextField12
== null) {
1139 jTextField12
= new JTextField();
1140 jTextField12
.setPreferredSize(new java
.awt
.Dimension(150,20));
1142 return jTextField12
;
1146 * This method initializes jTextField13
1148 * @return javax.swing.JTextField
1150 private JTextField
getJTextField13() {
1151 if (jTextField13
== null) {
1152 jTextField13
= new JTextField();
1153 jTextField13
.setPreferredSize(new java
.awt
.Dimension(140,20));
1155 return jTextField13
;
1159 * This method initializes jScrollPane
1161 * @return javax.swing.JScrollPane
1163 private JScrollPane
getJScrollPane() {
1164 if (jScrollPane
== null) {
1165 jScrollPane
= new JScrollPane();
1166 jScrollPane
.setPreferredSize(new java
.awt
.Dimension(150,419));
1167 jScrollPane
.setViewportView(getJTable());
1173 * This method initializes jTable
1175 * @return javax.swing.JTable
1177 private JTable
getJTable() {
1178 if (jTable
== null) {
1179 ffsTableModel
= new DefaultTableModel();
1180 ffsTableModel
.addColumn("FFS Type");
1181 jTable
= new JTable(ffsTableModel
);
1182 jTable
.setShowGrid(false);
1183 jTable
.setRowHeight(20);
1185 jTable
.setSelectionMode(ListSelectionModel
.SINGLE_SELECTION
);
1186 jTable
.getSelectionModel().addListSelectionListener(new ListSelectionListener(){
1187 public void valueChanged(ListSelectionEvent e
) {
1189 if (e
.getValueIsAdjusting()){
1192 ListSelectionModel lsm
= (ListSelectionModel
)e
.getSource();
1193 if (lsm
.isSelectionEmpty()) {
1197 int row
= lsm
.getMinSelectionIndex();
1198 sectionTableModel
.setRowCount(0);
1199 sectionsTableModel
.setRowCount(0);
1200 subsectionsTableModel
.setRowCount(0);
1201 ffsAttributesTableModel
.setRowCount(0);
1202 String
[] sArray
= {"", ""};
1203 LinkedHashMap
<String
, String
> lhm
= new LinkedHashMap
<String
, String
>();
1204 ArrayList
<String
> alSections
= new ArrayList
<String
>();
1205 ArrayList
<String
> alSection
= new ArrayList
<String
>();
1206 ffc
.getBuildOptionsFfs(row
, sArray
, lhm
, alSections
, alSection
);
1207 jTextField6
.setText(sArray
[0]);
1208 jTextField
.setText(sArray
[1]);
1209 for (int i
= 0; i
< alSection
.size(); ++i
) {
1210 String
[] sectionRow
= {alSection
.get(i
)};
1211 sectionTableModel
.addRow(sectionRow
);
1213 for (int j
= 0; j
< alSections
.size(); ++j
) {
1214 String
[] sectionsRow
= {alSections
.get(j
)};
1215 sectionsTableModel
.addRow(sectionsRow
);
1217 if (lhm
.size() <= 0 ) {
1220 Set
<String
> keySet
= lhm
.keySet();
1221 Iterator
<String
> is
= keySet
.iterator();
1222 while(is
.hasNext()) {
1223 String key
= is
.next();
1224 String
[] attribRow
= {key
, lhm
.get(key
)};
1225 ffsAttributesTableModel
.addRow(attribRow
);
1231 jTable
.getModel().addTableModelListener(new TableModelListener() {
1232 public void tableChanged(TableModelEvent arg0
) {
1233 // TODO Auto-generated method stub
1234 int row
= arg0
.getFirstRow();
1235 TableModel m
= (TableModel
)arg0
.getSource();
1236 if (arg0
.getType() == TableModelEvent
.UPDATE
){
1237 //ToDo Data Validition check.
1238 String id
= m
.getValueAt(row
, 0) + "";
1240 if (id
.length() == 0) {
1244 ffc
.updateBuildOptionsFfsKey(row
, id
);
1253 * This method initializes jScrollPane1
1255 * @return javax.swing.JScrollPane
1257 private JScrollPane
getJScrollPane1() {
1258 if (jScrollPane1
== null) {
1259 jScrollPane1
= new JScrollPane();
1260 jScrollPane1
.setPreferredSize(new java
.awt
.Dimension(500,80));
1261 jScrollPane1
.setViewportView(getJTable1());
1263 return jScrollPane1
;
1267 * This method initializes jTable1
1269 * @return javax.swing.JTable
1271 private JTable
getJTable1() {
1272 if (jTable1
== null) {
1273 sectionTableModel
= new DefaultTableModel();
1274 sectionTableModel
.addColumn("SectionType");
1276 jTable1
= new JTable(sectionTableModel
);
1277 jTable1
.setRowHeight(20);
1278 JComboBox cb
= new JComboBox();
1279 cb
.addItem("EFI_SECTION_FREEFORM_SUBTYPE_GUID");
1280 cb
.addItem("EFI_SECTION_VERSION");
1281 cb
.addItem("EFI_SECTION_USER_INTERFACE");
1282 cb
.addItem("EFI_SECTION_DXE_DEPEX");
1283 cb
.addItem("EFI_SECTION_PEI_DEPEX");
1284 cb
.addItem("EFI_SECTION_PE32");
1285 cb
.addItem("EFI_SECTION_PIC");
1286 cb
.addItem("EFI_SECTION_TE");
1287 cb
.addItem("EFI_SECTION_RAW");
1288 cb
.addItem("EFI_SECTION_COMPRESSION");
1289 cb
.addItem("EFI_SECTION_GUID_DEFINED");
1290 cb
.addItem("EFI_SECTION_COMPATIBILITY16");
1291 cb
.addItem("EFI_SECTION_FIRMWARE_VOLUME_IMAGE");
1292 jTable1
.getColumnModel().getColumn(0).setCellEditor(new DefaultCellEditor(cb
));
1294 jTable1
.setSelectionMode(ListSelectionModel
.SINGLE_SELECTION
);
1296 jTable1
.getModel().addTableModelListener(new TableModelListener() {
1297 public void tableChanged(TableModelEvent arg0
) {
1298 // TODO Auto-generated method stub
1299 if (jTable
.getSelectedRow() < 0) {
1302 int row
= arg0
.getFirstRow();
1303 TableModel m
= (TableModel
)arg0
.getSource();
1304 if (arg0
.getType() == TableModelEvent
.UPDATE
){
1305 //ToDo Data Validition check.
1306 String type
= m
.getValueAt(row
, 0) + "";
1308 ffc
.updateBuildOptionsFfsSectionsSection(jTable
.getSelectedRow(), row
, type
);
1317 * This method initializes jScrollPane3
1319 * @return javax.swing.JScrollPane
1321 private JScrollPane
getJScrollPane3() {
1322 if (jScrollPane3
== null) {
1323 jScrollPane3
= new JScrollPane();
1324 jScrollPane3
.setPreferredSize(new java
.awt
.Dimension(500,90));
1325 jScrollPane3
.setViewportView(getJTable3());
1327 return jScrollPane3
;
1331 * This method initializes jTable3
1333 * @return javax.swing.JTable
1335 private JTable
getJTable3() {
1336 if (jTable3
== null) {
1337 subsectionsTableModel
= new DefaultTableModel();
1338 subsectionsTableModel
.addColumn("SectionType");
1339 jTable3
= new JTable(subsectionsTableModel
);
1340 jTable3
.setRowHeight(20);
1341 JComboBox cb
= new JComboBox();
1342 cb
.addItem("EFI_SECTION_FREEFORM_SUBTYPE_GUID");
1343 cb
.addItem("EFI_SECTION_VERSION");
1344 cb
.addItem("EFI_SECTION_USER_INTERFACE");
1345 cb
.addItem("EFI_SECTION_DXE_DEPEX");
1346 cb
.addItem("EFI_SECTION_PEI_DEPEX");
1347 cb
.addItem("EFI_SECTION_PE32");
1348 cb
.addItem("EFI_SECTION_PIC");
1349 cb
.addItem("EFI_SECTION_TE");
1350 cb
.addItem("EFI_SECTION_RAW");
1351 cb
.addItem("EFI_SECTION_COMPRESSION");
1352 cb
.addItem("EFI_SECTION_GUID_DEFINED");
1353 cb
.addItem("EFI_SECTION_COMPATIBILITY16");
1354 cb
.addItem("EFI_SECTION_FIRMWARE_VOLUME_IMAGE");
1355 jTable3
.getColumnModel().getColumn(0).setCellEditor(new DefaultCellEditor(cb
));
1356 jTable3
.setSelectionMode(ListSelectionModel
.SINGLE_SELECTION
);
1358 jTable3
.getModel().addTableModelListener(new TableModelListener() {
1359 public void tableChanged(TableModelEvent arg0
) {
1360 // TODO Auto-generated method stub
1361 if (jTable
.getSelectedRow() < 0 || jTable6
.getSelectedRow() < 0) {
1364 int row
= arg0
.getFirstRow();
1365 TableModel m
= (TableModel
)arg0
.getSource();
1366 if (arg0
.getType() == TableModelEvent
.UPDATE
){
1367 //ToDo Data Validition check.
1368 String type
= m
.getValueAt(row
, 0) + "";
1369 ffc
.updateBuildOptionsFfsSectionsSectionsSection(jTable
.getSelectedRow(), jTable6
.getSelectedRow(), row
, type
);
1378 * This method initializes jTextField
1380 * @return javax.swing.JTextField
1382 private JTextField
getJTextField() {
1383 if (jTextField
== null) {
1384 jTextField
= new JTextField();
1385 jTextField
.setPreferredSize(new java
.awt
.Dimension(100,20));
1386 jTextField
.addFocusListener(new java
.awt
.event
.FocusAdapter() {
1387 public void focusLost(java
.awt
.event
.FocusEvent e
) {
1388 if (jTable
.getSelectedRow() < 0) {
1391 ffc
.updateBuildOptionsFfsSectionsType(jTable
.getSelectedRow(), jTextField
.getText());
1399 * This method initializes jPanel4
1401 * @return javax.swing.JPanel
1403 private JPanel
getJPanel4() {
1404 if (jPanel4
== null) {
1405 jPanel4
= new JPanel();
1406 jPanel4
.setPreferredSize(new java
.awt
.Dimension(100,100));
1407 jPanel4
.add(getJButton17(), null);
1408 jPanel4
.add(getJButton18(), null);
1414 * This method initializes jButton
1416 * @return javax.swing.JButton
1418 private JButton
getJButton() {
1419 if (jButton
== null) {
1420 jButton
= new JButton();
1421 jButton
.setPreferredSize(new java
.awt
.Dimension(80,20));
1422 jButton
.setText("New");
1423 jButton
.addActionListener(new java
.awt
.event
.ActionListener() {
1424 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
1425 if (jTable
.getSelectedRow() < 0) {
1428 String
[] row
= {"EFI_SECTION_RAW"};
1429 sectionTableModel
.addRow(row
);
1430 ffc
.genBuildOptionsFfsSectionsSection(jTable
.getSelectedRow(), row
[0]);
1438 * This method initializes jButton1
1440 * @return javax.swing.JButton
1442 private JButton
getJButton1() {
1443 if (jButton1
== null) {
1444 jButton1
= new JButton();
1445 jButton1
.setPreferredSize(new java
.awt
.Dimension(80,20));
1446 jButton1
.setText("Remove");
1448 jButton1
.addActionListener(new java
.awt
.event
.ActionListener() {
1449 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
1450 if (jTable
.getSelectedRow() < 0 || jTable1
.getSelectedRow() < 0) {
1453 sectionTableModel
.removeRow(jTable1
.getSelectedRow());
1454 ffc
.removeBuildOptionsFfsSectionsSection(jTable
.getSelectedRow(), jTable1
.getSelectedRow());
1462 * This method initializes jButton2
1464 * @return javax.swing.JButton
1466 private JButton
getJButton2() {
1467 if (jButton2
== null) {
1468 jButton2
= new JButton();
1469 jButton2
.setPreferredSize(new java
.awt
.Dimension(80,20));
1470 jButton2
.setText("New");
1471 jButton2
.addActionListener(new java
.awt
.event
.ActionListener() {
1472 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
1473 if (jTable
.getSelectedRow() < 0 || jTable6
.getSelectedRow() < 0) {
1476 String
[] row
= {"EFI_SECTION_RAW"};
1477 subsectionsTableModel
.addRow(row
);
1478 ffc
.genBuildOptionsFfsSectionsSectionsSection(jTable
.getSelectedRow(), jTable6
.getSelectedRow(), row
[0]);
1487 * This method initializes jButton3
1489 * @return javax.swing.JButton
1491 private JButton
getJButton3() {
1492 if (jButton3
== null) {
1493 jButton3
= new JButton();
1494 jButton3
.setPreferredSize(new java
.awt
.Dimension(80,20));
1495 jButton3
.setText("Remove");
1496 jButton3
.addActionListener(new java
.awt
.event
.ActionListener() {
1497 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
1498 if (jTable
.getSelectedRow() < 0 || jTable6
.getSelectedRow() < 0 || jTable3
.getSelectedRow() < 0) {
1501 subsectionsTableModel
.removeRow(jTable3
.getSelectedRow());
1502 ffc
.removeBuildOptionsFfsSectionsSectionsSection(jTable
.getSelectedRow(), jTable6
.getSelectedRow(), jTable3
.getSelectedRow());
1510 * This method initializes jButton6
1512 * @return javax.swing.JButton
1514 private JButton
getJButton6() {
1515 if (jButton6
== null) {
1516 jButton6
= new JButton();
1517 jButton6
.setPreferredSize(new java
.awt
.Dimension(80,20));
1518 jButton6
.setText("New");
1519 jButton6
.addActionListener(new java
.awt
.event
.ActionListener() {
1520 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
1521 if (jTable
.getSelectedRow() < 0) {
1524 String
[] row
= {""};
1525 sectionsTableModel
.addRow(row
);
1526 ffc
.genBuildOptionsFfsSectionsSections(jTable
.getSelectedRow(), "");
1534 * This method initializes jButton7
1536 * @return javax.swing.JButton
1538 private JButton
getJButton7() {
1539 if (jButton7
== null) {
1540 jButton7
= new JButton();
1541 jButton7
.setPreferredSize(new java
.awt
.Dimension(80,20));
1542 jButton7
.setText("Remove");
1543 jButton7
.addActionListener(new java
.awt
.event
.ActionListener() {
1544 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
1545 if (jTable
.getSelectedRow() < 0 || jTable6
.getSelectedRow() < 0) {
1548 sectionsTableModel
.removeRow(jTable6
.getSelectedRow());
1549 ffc
.removeBuildOptionsFfsSectionsSections(jTable
.getSelectedRow(), jTable6
.getSelectedRow());
1557 * This method initializes jScrollPane4
1559 * @return javax.swing.JScrollPane
1561 private JScrollPane
getJScrollPane4() {
1562 if (jScrollPane4
== null) {
1563 jScrollPane4
= new JScrollPane();
1564 jScrollPane4
.setPreferredSize(new java
.awt
.Dimension(500,80));
1565 jScrollPane4
.setViewportView(getJTable6());
1567 return jScrollPane4
;
1571 * This method initializes jTable6
1573 * @return javax.swing.JTable
1575 private JTable
getJTable6() {
1576 if (jTable6
== null) {
1577 sectionsTableModel
= new DefaultTableModel();
1578 sectionsTableModel
.addColumn("EncapsulationType");
1579 jTable6
= new JTable(sectionsTableModel
);
1580 jTable6
.setRowHeight(20);
1581 jTable6
.setSelectionMode(ListSelectionModel
.SINGLE_SELECTION
);
1582 jTable6
.getSelectionModel().addListSelectionListener(new ListSelectionListener(){
1583 public void valueChanged(ListSelectionEvent e
) {
1584 if (e
.getValueIsAdjusting()){
1587 ListSelectionModel lsm
= (ListSelectionModel
)e
.getSource();
1588 if (lsm
.isSelectionEmpty()) {
1592 int sectionsRow
= lsm
.getMinSelectionIndex();
1593 if (jTable
.getSelectedRow() < 0) {
1596 subsectionsTableModel
.setRowCount(0);
1597 ArrayList
<String
> al
= new ArrayList
<String
>();
1598 ffc
.getBuildOptionsFfsSectionsSectionsSection(jTable
.getSelectedRow(), sectionsRow
, al
);
1599 for (int i
= 0; i
< al
.size(); ++i
) {
1600 String
[] subsectionRow
= {al
.get(i
)};
1601 subsectionsTableModel
.addRow(subsectionRow
);
1607 jTable6
.getModel().addTableModelListener(new TableModelListener() {
1608 public void tableChanged(TableModelEvent arg0
) {
1609 // TODO Auto-generated method stub
1610 int row
= arg0
.getFirstRow();
1611 TableModel m
= (TableModel
)arg0
.getSource();
1612 if (arg0
.getType() == TableModelEvent
.UPDATE
){
1613 //ToDo Data Validition check.
1614 String encapType
= m
.getValueAt(row
, 0) + "";
1615 ffc
.updateBuildOptionsFfsSectionsSections(jTable
.getSelectedRow(), row
, encapType
);
1626 public static void main(String
[] args
) {
1627 // TODO Auto-generated method stub
1628 new FpdBuildOptions().setVisible(true);
1632 * This is the default constructor
1634 public FpdBuildOptions() {
1637 this.setVisible(true);
1640 public FpdBuildOptions(PlatformSurfaceAreaDocument
.PlatformSurfaceArea fpd
) {
1642 ffc
= new FpdFileContents(fpd
);
1646 private void init(FpdFileContents ffc
) {
1650 this.addInternalFrameListener(new InternalFrameAdapter(){
1651 public void internalFrameDeactivated(InternalFrameEvent e
){
1652 if (jTable
.isEditing()) {
1653 jTable
.getCellEditor().stopCellEditing();
1655 if (jTable1
.isEditing()) {
1656 jTable1
.getCellEditor().stopCellEditing();
1658 if (jTable2
.isEditing()) {
1659 jTable2
.getCellEditor().stopCellEditing();
1661 if (jTable3
.isEditing()) {
1662 jTable3
.getCellEditor().stopCellEditing();
1664 if (jTable4
.isEditing()) {
1665 jTable4
.getCellEditor().stopCellEditing();
1667 if (jTable5
.isEditing()) {
1668 jTable5
.getCellEditor().stopCellEditing();
1674 private void initOptionTable() {
1675 if (ffc
.getBuildOptionsOptCount() == 0) {
1676 //ToDo get default options from *.txt file
1679 String
[][] saa
= new String
[ffc
.getBuildOptionsOptCount()][6];
1680 ffc
.getBuildOptionsOpts(saa
);
1681 for (int i
= 0; i
< saa
.length
; ++i
) {
1682 optionsTableModel
.addRow(saa
[i
]);
1686 private void initAntTaskTable() {
1687 if (ffc
.getBuildOptionsUserDefAntTaskCount() == 0) {
1690 String
[][] saa
= new String
[ffc
.getBuildOptionsUserDefAntTaskCount()][3];
1691 ffc
.getBuildOptionsUserDefAntTasks(saa
);
1692 for (int i
= 0; i
< saa
.length
; ++i
) {
1693 antTaskTableModel
.addRow(saa
[i
]);
1697 private void initFfsTable(){
1698 int ffsCount
= ffc
.getBuildOptionsFfsCount();
1702 String
[][] saa
= new String
[ffsCount
][1];
1703 ffc
.getBuildOptionsFfsKey(saa
);
1704 for (int i
= 0; i
< saa
.length
; ++i
) {
1705 ffsTableModel
.addRow(saa
[i
]);
1709 * This method initializes this
1713 private void initialize() {
1714 this.setSize(722, 577);
1715 this.setTitle("FPD Build Options");
1716 this.setContentPane(getJContentPane());
1720 * This method initializes jContentPane
1722 * @return javax.swing.JPanel
1724 private JPanel
getJContentPane() {
1725 if (jContentPane
== null) {
1726 jContentPane
= new JPanel();
1727 jContentPane
.setLayout(new BorderLayout());
1728 jContentPane
.add(getJPanel(), java
.awt
.BorderLayout
.SOUTH
);
1729 jContentPane
.add(getJPanel1(), java
.awt
.BorderLayout
.NORTH
);
1730 jContentPane
.add(getJPanel2(), java
.awt
.BorderLayout
.WEST
);
1731 jContentPane
.add(getJPanel3(), java
.awt
.BorderLayout
.EAST
);
1732 jContentPane
.add(getJTabbedPane(), java
.awt
.BorderLayout
.CENTER
);
1734 return jContentPane
;
1737 } // @jve:decl-index=0:visual-constraint="10,10"