2 Java class FpdPlatformDefs is GUI for Flash element operation in SPD file.
4 Copyright (c) 2006, Intel Corporation
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 package org
.tianocore
.frameworkwizard
.platform
.ui
;
15 import java
.awt
.BorderLayout
;
16 import javax
.swing
.JPanel
;
18 import javax
.swing
.JFrame
;
19 import javax
.swing
.JTabbedPane
;
20 import javax
.swing
.JButton
;
21 import javax
.swing
.ListSelectionModel
;
23 import org
.tianocore
.PlatformSurfaceAreaDocument
;
24 import org
.tianocore
.frameworkwizard
.common
.Identifications
.OpeningPlatformType
;
25 import org
.tianocore
.frameworkwizard
.common
.ui
.IInternalFrame
;
27 import javax
.swing
.JCheckBox
;
28 import javax
.swing
.JOptionPane
;
29 import javax
.swing
.JTextField
;
30 import javax
.swing
.JLabel
;
31 import javax
.swing
.JScrollPane
;
32 import javax
.swing
.JTable
;
33 import javax
.swing
.event
.InternalFrameAdapter
;
34 import javax
.swing
.event
.InternalFrameEvent
;
35 //import javax.swing.event.ListSelectionEvent;
36 //import javax.swing.event.ListSelectionListener;
37 import javax
.swing
.event
.TableModelEvent
;
38 import javax
.swing
.event
.TableModelListener
;
39 import javax
.swing
.table
.DefaultTableModel
;
40 import javax
.swing
.table
.TableModel
;
41 import javax
.swing
.JComboBox
;
42 import java
.awt
.Dimension
;
43 import java
.util
.Vector
;
45 public class FpdPlatformDefs
extends IInternalFrame
{
47 private final int dialogWidth
= 600;
49 private final int oneRowHeight
= 20;
51 private final int twoRowHeight
= 40;
53 // private final int threeRowHeight = 60;
55 private final int fourRowHeight
= 80;
57 private final int sepHeight
= 6;
59 // private final int sepWidth = 10;
61 private final int buttonWidth
= 90;
63 private final int rowOne
= 12;
65 private final int rowTwo
= rowOne
+ oneRowHeight
+ sepHeight
;
67 private final int rowThree
= rowTwo
+ oneRowHeight
+ sepHeight
;
69 private final int rowFour
= rowThree
+ oneRowHeight
+ sepHeight
;
71 private final int rowFive
= rowFour
+ fourRowHeight
+ sepHeight
;
73 private final int rowSix
= rowFive
+ oneRowHeight
+ sepHeight
;
75 private final int rowSeven
= rowSix
+ oneRowHeight
+ sepHeight
;
77 private final int rowEight
= rowSeven
+ oneRowHeight
+ sepHeight
;
79 private final int rowNine
= rowEight
+ oneRowHeight
+ sepHeight
;
81 private final int rowTen
= rowNine
+ fourRowHeight
+ sepHeight
+ sepHeight
;
83 private final int rowEleven
= rowTen
+ oneRowHeight
+ sepHeight
;
85 private final int rowTwelve
= rowEleven
+ oneRowHeight
+ sepHeight
;
87 private final int dialogHeight
= rowTwelve
+ twoRowHeight
;
89 private final int labelColumn
= 12;
91 private final int valueColumn
= 168;
93 private final int labelWidth
= 155;
95 private final int valueWidth
= 320;
97 private final int valueCenter
= valueColumn
+ (valueWidth
/ 2);
99 private final int tableHeight
= fourRowHeight
;
101 private final int tableWidth
= valueWidth
;
106 private static final long serialVersionUID
= 1L;
110 private JPanel jContentPane
= null;
112 private JTabbedPane jTabbedPane
= null;
114 private TargetTableModel buildTargetTableModel
= null;
116 private SkuInfoTableModel skuInfoTableModel
= null;
118 private OpeningPlatformType docConsole
= null;
120 private FpdFileContents ffc
= null;
122 private JPanel jPanelGeneralTab
= null;
124 private JPanel jPanelGeneralContainer
= null;
126 private JLabel jLabelSupArch
= null;
128 private JCheckBox jCheckBoxIa32
= null;
130 private JCheckBox jCheckBoxX64
= null;
132 private JCheckBox jCheckBoxIpf
= null;
134 private JComboBox jComboBoxInterDir
= null;
136 private JTable jTableBuildTargets
= null;
138 private JPanel jArchitectureSelections
= null;
140 private JLabel jLabelBuildTargets
= null;
142 private JTextField jTextFieldBuildTarget
= null;
144 private JButton jButtonAddBuildTarget
= null;
146 private JButton jButtonDelBuildTarget
= null;
148 private JScrollPane jScrollPaneBuildTargets
= null;
150 private JScrollPane jScrollPaneSkuInfo
= null;
152 private JTable jTableSkuInfo
= null;
154 private JCheckBox jCheckBoxEbc
= null;
156 private JCheckBox jCheckBoxArm
= null;
158 private JCheckBox jCheckBoxPpc
= null;
160 private JLabel jLabelSkuInfo
= null;
162 private JLabel jLabelSkuId
= null;
164 private JTextField jTextFieldSkuId
= null;
166 private JLabel jLabelSkuName
= null;
168 private JTextField jTextFieldSkuName
= null;
170 private JButton jButtonSkuAdd
= null;
172 private JButton jButtonSkuDel
= null;
174 private JLabel jLabelIntermediateDirs
= null;
176 private JLabel jLabelOutputDir
= null;
178 private JTextField jTextFieldOutputDir
= null;
180 private JLabel jLabelOutputInfo
= null;
182 private int selectedRow
= -1;
184 public FpdPlatformDefs() {
187 this.setBounds(new java
.awt
.Rectangle(0, 0, 500, 370));
188 this.setVisible(true);
191 public FpdPlatformDefs(PlatformSurfaceAreaDocument
.PlatformSurfaceArea fpd
) {
193 ffc
= new FpdFileContents(fpd
);
197 public FpdPlatformDefs(OpeningPlatformType opt
) {
198 this(opt
.getXmlFpd());
203 * This method initializes jTabbedPane
205 * @return javax.swing.JTabbedPane
207 private JTabbedPane
getJTabbedPane() {
208 if (jTabbedPane
== null) {
209 jTabbedPane
= new JTabbedPane();
210 jTabbedPane
.addTab("General", null, getJPanelGeneralTab(), null);
216 * This method initializes this
220 private void initialize() {
221 this.setSize(dialogWidth
, dialogHeight
);
222 this.setDefaultCloseOperation(javax
.swing
.WindowConstants
.DISPOSE_ON_CLOSE
);
223 this.setTitle("FPD Platform Definitions");
224 this.setContentPane(getJContentPane());
225 this.addInternalFrameListener(new InternalFrameAdapter() {
226 public void internalFrameDeactivated(InternalFrameEvent e
) {
227 if (jTableBuildTargets
.isEditing()) {
228 jTableBuildTargets
.getCellEditor().stopCellEditing();
230 if (jTableSkuInfo
.isEditing()) {
231 jTableSkuInfo
.getCellEditor().stopCellEditing();
238 private void init(FpdFileContents ffc
) {
239 Vector
<Object
> v
= new Vector
<Object
>();
240 ffc
.getPlatformDefsSupportedArchs(v
);
241 showSupportedArchitectures(v
);
242 v
.removeAllElements();
244 ffc
.getPlatformDefsBuildTargets(v
);
245 buildTargetTableModel
.setRowCount(0);
246 for (int i
= 0; i
< v
.size(); ++i
) {
247 Object
[] row
= { v
.get(i
) };
248 buildTargetTableModel
.addRow(row
);
251 String
[][] saa
= new String
[ffc
.getPlatformDefsSkuInfoCount()][2];
252 ffc
.getPlatformDefsSkuInfos(saa
);
253 for (int i
= 0; i
< saa
.length
; ++i
) {
254 skuInfoTableModel
.addRow(saa
[i
]);
257 String interDir
= ffc
.getPlatformDefsInterDir();
258 if (interDir
!= null) {
259 jComboBoxInterDir
.setSelectedItem(interDir
);
262 String outputDir
= ffc
.getPlatformDefsOutputDir();
263 if (outputDir
!= null) {
264 jTextFieldOutputDir
.setText(outputDir
);
268 private void showSupportedArchitectures(Vector
<Object
> v
) {
269 if (v
.contains("IA32")) {
270 jCheckBoxIa32
.setSelected(true);
272 jCheckBoxIa32
.setSelected(false);
274 if (v
.contains("X64")) {
275 jCheckBoxX64
.setSelected(true);
277 jCheckBoxX64
.setSelected(false);
279 if (v
.contains("IPF")) {
280 jCheckBoxIpf
.setSelected(true);
282 jCheckBoxIpf
.setSelected(false);
284 if (v
.contains("EBC")) {
285 jCheckBoxEbc
.setSelected(true);
287 jCheckBoxEbc
.setSelected(false);
289 if (v
.contains("ARM")) {
290 jCheckBoxArm
.setSelected(true);
292 jCheckBoxArm
.setSelected(false);
294 if (v
.contains("PPC")) {
295 jCheckBoxPpc
.setSelected(true);
297 jCheckBoxPpc
.setSelected(false);
301 private void getSupportedArchitectures(Vector
<Object
> v
) {
302 if (docConsole
!= null) {
303 docConsole
.setSaved(false);
305 v
.removeAllElements();
306 if (jCheckBoxIa32
.isSelected()) {
309 if (jCheckBoxX64
.isSelected()) {
312 if (jCheckBoxIpf
.isSelected()) {
315 if (jCheckBoxEbc
.isSelected()) {
318 if (jCheckBoxArm
.isSelected()) {
321 if (jCheckBoxPpc
.isSelected()) {
328 * This method initializes jContentPane
330 * @return javax.swing.JPanel
332 private JPanel
getJContentPane() {
333 if (jContentPane
== null) {
334 jContentPane
= new JPanel();
335 jContentPane
.setLayout(new BorderLayout());
336 jContentPane
.add(getJTabbedPane(), java
.awt
.BorderLayout
.CENTER
);
342 * This method initializes jPanel4
344 * @return javax.swing.JPanel
346 private JPanel
getJPanelGeneralTab() {
347 if (jPanelGeneralTab
== null) {
348 jPanelGeneralTab
= new JPanel();
349 jPanelGeneralTab
.setBounds(new java
.awt
.Rectangle(0, 0, dialogWidth
* 2, dialogHeight
* 3));
350 jPanelGeneralTab
.setPreferredSize(new java
.awt
.Dimension(dialogWidth
+ 10, (dialogHeight
* 3) + 10));
351 jPanelGeneralTab
.setAutoscrolls(true);
352 jPanelGeneralTab
.setLocation(0, 0);
353 jPanelGeneralTab
.setLayout(null);
354 jPanelGeneralTab
.add(getJPanelGeneralContainer(), null);
356 return jPanelGeneralTab
;
360 * This method initializes jPanel5
362 * @return javax.swing.JPanel
364 private JPanel
getJPanelGeneralContainer() {
365 if (jPanelGeneralContainer
== null) {
366 jLabelSupArch
= new JLabel();
367 jLabelSupArch
.setText("Supported Architectures");
368 jLabelSupArch
.setBounds(new java
.awt
.Rectangle(labelColumn
, rowOne
, labelWidth
, oneRowHeight
));
369 jLabelBuildTargets
= new JLabel();
370 jLabelBuildTargets
.setText("Build Targets");
371 jLabelBuildTargets
.setBounds(new java
.awt
.Rectangle(labelColumn
, rowTwo
, labelWidth
, oneRowHeight
));
372 jLabelSkuInfo
= new JLabel();
373 jLabelSkuInfo
.setText("SKU Information");
374 jLabelSkuInfo
.setBounds(new java
.awt
.Rectangle(labelColumn
, rowFive
, labelWidth
, oneRowHeight
));
375 jLabelSkuId
= new JLabel();
376 jLabelSkuId
.setText("SKU ID Number");
377 jLabelSkuId
.setBounds(new java
.awt
.Rectangle(labelColumn
+ 10, rowSix
, labelWidth
, oneRowHeight
));
378 jLabelSkuName
= new JLabel();
379 jLabelSkuName
.setText("SKU Name");
380 jLabelSkuName
.setBounds(new java
.awt
.Rectangle(labelColumn
+ 10, rowSeven
, labelWidth
, oneRowHeight
));
381 jLabelOutputInfo
= new JLabel();
382 jLabelOutputInfo
.setText("Output Directory Configuration");
383 jLabelOutputInfo
.setBounds(new java
.awt
.Rectangle(labelColumn
, rowTen
, valueWidth
, oneRowHeight
));
384 jLabelIntermediateDirs
= new JLabel();
385 jLabelIntermediateDirs
.setText("Intermediate Build Directories");
386 jLabelIntermediateDirs
.setBounds(new java
.awt
.Rectangle(labelColumn
+ 10, rowEleven
, valueWidth
,
388 jLabelOutputDir
= new JLabel();
389 jLabelOutputDir
.setText("Name of the Output Directory");
390 jLabelOutputDir
.setBounds(new java
.awt
.Rectangle(labelColumn
+ 10, rowTwelve
, valueWidth
, oneRowHeight
));
392 jPanelGeneralContainer
= new JPanel();
393 jPanelGeneralContainer
.setLayout(null);
394 jPanelGeneralContainer
.setLocation(new java
.awt
.Point(2, 2));
395 jPanelGeneralContainer
.setBounds(new java
.awt
.Rectangle(2, 2, dialogWidth
* 2, dialogHeight
));
396 jPanelGeneralContainer
.setPreferredSize(new java
.awt
.Dimension(dialogWidth
, dialogHeight
));
398 jPanelGeneralContainer
.add(jLabelSupArch
, null);
399 jPanelGeneralContainer
.add(getArchitectureSelections(), null);
401 jPanelGeneralContainer
.add(jLabelBuildTargets
, null);
402 jPanelGeneralContainer
.add(getJTextFieldBuildTarget(), null);
403 jPanelGeneralContainer
.add(getJButtonAddBuildTarget(), null);
404 jPanelGeneralContainer
.add(getJButtonDelBuildTarget(), null);
405 jPanelGeneralContainer
.add(getJScrollPaneBuildTargets(), null);
407 jPanelGeneralContainer
.add(jLabelSkuInfo
, null);
408 jPanelGeneralContainer
.add(jLabelSkuId
, null);
409 jPanelGeneralContainer
.add(getJTextFieldSkuId(), null);
410 jPanelGeneralContainer
.add(jLabelSkuName
, null);
411 jPanelGeneralContainer
.add(getJTextFieldSkuName(), null);
412 jPanelGeneralContainer
.add(getJButtonSkuAdd(), null);
413 jPanelGeneralContainer
.add(getJButtonSkuDel(), null);
414 jPanelGeneralContainer
.add(getJScrollPaneSkuInfo(), null);
416 jPanelGeneralContainer
.add(jLabelOutputInfo
, null);
417 jPanelGeneralContainer
.add(jLabelIntermediateDirs
, null);
418 jPanelGeneralContainer
.add(getJComboBoxInterDir(), null);
419 jPanelGeneralContainer
.add(jLabelOutputDir
, null);
420 jPanelGeneralContainer
.add(getJTextFieldOutputDir(), null);
423 return jPanelGeneralContainer
;
427 * This method initializes jArchitectureSelections Row 4
429 * @return jArchitectureSelections
431 private JPanel
getArchitectureSelections() {
432 if (jArchitectureSelections
== null) {
433 jArchitectureSelections
= new JPanel();
434 jArchitectureSelections
.setLayout(null);
435 jArchitectureSelections
.add(getJCheckBoxIa32(), null);
436 jArchitectureSelections
.add(getJCheckBoxX64(), null);
437 jArchitectureSelections
.add(getJCheckBoxIpf(), null);
438 jArchitectureSelections
.add(getJCheckBoxEbc(), null);
439 jArchitectureSelections
.add(getJCheckBoxArm(), null);
440 jArchitectureSelections
.add(getJCheckBoxPpc(), null);
441 jArchitectureSelections
.setBounds(new java
.awt
.Rectangle(valueColumn
, rowOne
, valueWidth
, oneRowHeight
));
442 jArchitectureSelections
.setPreferredSize(new java
.awt
.Dimension(valueWidth
, oneRowHeight
));
443 jArchitectureSelections
.setLocation(new java
.awt
.Point(valueColumn
, rowOne
));
445 return jArchitectureSelections
;
449 * This method initializes jCheckBox1
451 * @return javax.swing.JCheckBox
453 private JCheckBox
getJCheckBoxIa32() {
454 if (jCheckBoxIa32
== null) {
455 jCheckBoxIa32
= new JCheckBox();
456 jCheckBoxIa32
.setText("IA32");
457 jCheckBoxIa32
.setBounds(new java
.awt
.Rectangle(0, 0, 55, 20));
458 jCheckBoxIa32
.addItemListener(new java
.awt
.event
.ItemListener() {
459 public void itemStateChanged(java
.awt
.event
.ItemEvent e
) {
460 Vector
<Object
> v
= new Vector
<Object
>();
461 getSupportedArchitectures(v
);
463 JOptionPane
.showMessageDialog(frame
, "Platform must support at least ONE Architecture.");
466 ffc
.setPlatformDefsSupportedArchs(v
);
470 return jCheckBoxIa32
;
474 * This method initializes jCheckBox2
476 * @return javax.swing.JCheckBox
478 private JCheckBox
getJCheckBoxX64() {
479 if (jCheckBoxX64
== null) {
480 jCheckBoxX64
= new JCheckBox();
481 jCheckBoxX64
.setText("X64");
482 jCheckBoxX64
.setBounds(new java
.awt
.Rectangle(55, 0, 53, 20));
483 jCheckBoxX64
.addItemListener(new java
.awt
.event
.ItemListener() {
484 public void itemStateChanged(java
.awt
.event
.ItemEvent e
) {
485 Vector
<Object
> v
= new Vector
<Object
>();
486 getSupportedArchitectures(v
);
488 JOptionPane
.showMessageDialog(frame
, "Platform must support at least ONE Architecture.");
491 ffc
.setPlatformDefsSupportedArchs(v
);
499 * This method initializes jCheckBox3
501 * @return javax.swing.JCheckBox
503 private JCheckBox
getJCheckBoxIpf() {
504 if (jCheckBoxIpf
== null) {
505 jCheckBoxIpf
= new JCheckBox();
506 jCheckBoxIpf
.setText("IPF");
507 jCheckBoxIpf
.setBounds(new java
.awt
.Rectangle(108, 0, 52, 20));
508 jCheckBoxIpf
.addItemListener(new java
.awt
.event
.ItemListener() {
509 public void itemStateChanged(java
.awt
.event
.ItemEvent e
) {
510 Vector
<Object
> v
= new Vector
<Object
>();
511 getSupportedArchitectures(v
);
513 JOptionPane
.showMessageDialog(frame
, "Platform must support at least ONE Architecture.");
516 ffc
.setPlatformDefsSupportedArchs(v
);
524 * This method initializes jCheckBox
526 * @return javax.swing.JCheckBox
528 private JCheckBox
getJCheckBoxEbc() {
529 if (jCheckBoxEbc
== null) {
530 jCheckBoxEbc
= new JCheckBox();
531 // jCheckBoxEbc.setPreferredSize(new java.awt.Dimension(50, 20));
532 jCheckBoxEbc
.setBounds(new java
.awt
.Rectangle(160, 0, 53, 20));
533 jCheckBoxEbc
.setText("EBC");
534 jCheckBoxEbc
.setVisible(true);
535 jCheckBoxEbc
.addItemListener(new java
.awt
.event
.ItemListener() {
536 public void itemStateChanged(java
.awt
.event
.ItemEvent e
) {
537 Vector
<Object
> v
= new Vector
<Object
>();
538 getSupportedArchitectures(v
);
540 JOptionPane
.showMessageDialog(frame
, "Platform must support at least ONE Architecture.");
543 ffc
.setPlatformDefsSupportedArchs(v
);
551 * This method initializes jCheckBox5
553 * @return javax.swing.JCheckBox
555 private JCheckBox
getJCheckBoxArm() {
556 if (jCheckBoxArm
== null) {
557 jCheckBoxArm
= new JCheckBox();
558 // jCheckBoxArm.setPreferredSize(new java.awt.Dimension(52, 20));
559 jCheckBoxArm
.setBounds(new java
.awt
.Rectangle(213, 0, 54, 20));
560 jCheckBoxArm
.setText("ARM");
561 jCheckBoxArm
.setVisible(true);
562 jCheckBoxArm
.addItemListener(new java
.awt
.event
.ItemListener() {
563 public void itemStateChanged(java
.awt
.event
.ItemEvent e
) {
564 Vector
<Object
> v
= new Vector
<Object
>();
565 getSupportedArchitectures(v
);
567 JOptionPane
.showMessageDialog(frame
, "Platform must support at least ONE Architecture.");
570 ffc
.setPlatformDefsSupportedArchs(v
);
578 * This method initializes jCheckBox6
580 * @return javax.swing.JCheckBox
582 private JCheckBox
getJCheckBoxPpc() {
583 if (jCheckBoxPpc
== null) {
584 jCheckBoxPpc
= new JCheckBox();
585 // jCheckBoxPpc.setPreferredSize(new Dimension(50, 20));
586 jCheckBoxPpc
.setBounds(new java
.awt
.Rectangle(267, 0, 53, 20));
587 jCheckBoxPpc
.setText("PPC");
588 jCheckBoxPpc
.setVisible(true);
589 jCheckBoxPpc
.addItemListener(new java
.awt
.event
.ItemListener() {
590 public void itemStateChanged(java
.awt
.event
.ItemEvent e
) {
591 Vector
<Object
> v
= new Vector
<Object
>();
592 getSupportedArchitectures(v
);
594 JOptionPane
.showMessageDialog(frame
, "Platform must support at least ONE Architecture.");
597 ffc
.setPlatformDefsSupportedArchs(v
);
605 * This method initializes jTextField1
607 * @return javax.swing.JTextField
609 private JTextField
getJTextFieldBuildTarget() {
610 if (jTextFieldBuildTarget
== null) {
611 jTextFieldBuildTarget
= new JTextField();
612 jTextFieldBuildTarget
.setPreferredSize(new Dimension(valueWidth
, oneRowHeight
));
613 jTextFieldBuildTarget
.setBounds(new java
.awt
.Rectangle(valueColumn
, rowTwo
, valueWidth
, oneRowHeight
));
614 jTextFieldBuildTarget
.setLocation(new java
.awt
.Point(valueColumn
, rowTwo
));
616 return jTextFieldBuildTarget
;
620 * This method initializes jButton2
622 * @return javax.swing.JButton
624 private JButton
getJButtonAddBuildTarget() {
625 if (jButtonAddBuildTarget
== null) {
626 jButtonAddBuildTarget
= new JButton();
627 jButtonAddBuildTarget
.setPreferredSize(new Dimension(buttonWidth
, oneRowHeight
));
628 jButtonAddBuildTarget
.setBounds(new java
.awt
.Rectangle(valueCenter
- buttonWidth
- 5, rowThree
,
629 buttonWidth
, oneRowHeight
));
630 jButtonAddBuildTarget
.setLocation(new java
.awt
.Point(valueCenter
- buttonWidth
- 5, rowThree
));
631 jButtonAddBuildTarget
.setText("Add");
632 jButtonAddBuildTarget
.setVisible(true);
634 jButtonAddBuildTarget
.addActionListener(new java
.awt
.event
.ActionListener() {
635 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
636 if (jTextFieldBuildTarget
.getText().length() > 0) {
637 String
[] row
= { jTextFieldBuildTarget
.getText() };
638 jTextFieldBuildTarget
.setText("");
639 buildTargetTableModel
.addRow(row
);
640 Vector
<Object
> v
= new Vector
<Object
>();
641 for (int i
= 0; i
< jTableBuildTargets
.getRowCount(); ++i
) {
642 v
.add(buildTargetTableModel
.getValueAt(i
, 0));
644 docConsole
.setSaved(false);
645 ffc
.setPlatformDefsBuildTargets(v
);
650 return jButtonAddBuildTarget
;
654 * This method initializes jButton3
656 * @return javax.swing.JButton
658 private JButton
getJButtonDelBuildTarget() {
659 if (jButtonDelBuildTarget
== null) {
660 jButtonDelBuildTarget
= new JButton();
661 jButtonDelBuildTarget
.setPreferredSize(new Dimension(buttonWidth
, oneRowHeight
));
662 jButtonDelBuildTarget
663 .setBounds(new java
.awt
.Rectangle(valueCenter
+ 5, rowThree
, buttonWidth
, oneRowHeight
));
664 jButtonDelBuildTarget
.setLocation(new java
.awt
.Point(valueCenter
+ 5, rowThree
));
665 jButtonDelBuildTarget
.setText("Delete");
666 jButtonDelBuildTarget
.setVisible(true);
668 jButtonDelBuildTarget
.addActionListener(new java
.awt
.event
.ActionListener() {
669 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
670 if (jTableBuildTargets
.getSelectedRow() < 0 || jTableBuildTargets
.getSelectedRow() < 0) {
673 buildTargetTableModel
.removeRow(jTableBuildTargets
.getSelectedRow());
674 Vector
<Object
> v
= new Vector
<Object
>();
675 for (int i
= 0; i
< jTableBuildTargets
.getRowCount(); ++i
) {
676 v
.remove(buildTargetTableModel
.getValueAt(i
, 0));
678 docConsole
.setSaved(false);
679 ffc
.setPlatformDefsBuildTargets(v
);
683 return jButtonDelBuildTarget
;
687 * This method initializes jScrollPane2
689 * @return javax.swing.JScrollPane
691 private JScrollPane
getJScrollPaneBuildTargets() {
692 if (jScrollPaneBuildTargets
== null) {
693 jScrollPaneBuildTargets
= new JScrollPane();
694 jScrollPaneBuildTargets
.setPreferredSize(new Dimension(tableWidth
- 20, tableHeight
- 20));
695 jScrollPaneBuildTargets
.setBounds(new java
.awt
.Rectangle(valueColumn
, rowFour
, tableWidth
- 5,
697 jScrollPaneBuildTargets
.setLocation(new java
.awt
.Point(valueColumn
, rowFour
));
698 jScrollPaneBuildTargets
699 .setBorder(javax
.swing
.BorderFactory
700 .createEtchedBorder(javax
.swing
.border
.EtchedBorder
.RAISED
));
702 jScrollPaneBuildTargets
.setViewportView(getJTableBuildTargets());
704 return jScrollPaneBuildTargets
;
708 * This method initializes jTable
710 * @return javax.swing.JTable
712 private JTable
getJTableBuildTargets() {
713 if (jTableBuildTargets
== null) {
714 buildTargetTableModel
= new TargetTableModel();
716 jTableBuildTargets
= new JTable(buildTargetTableModel
);
717 jTableBuildTargets
.setSelectionMode(ListSelectionModel
.SINGLE_SELECTION
);
718 jTableBuildTargets
.setRowHeight(oneRowHeight
);
719 buildTargetTableModel
.addColumn("Build Target");
721 jTableBuildTargets
.getModel().addTableModelListener(new TableModelListener() {
722 public void tableChanged(TableModelEvent arg0
) {
723 // TODO Auto-generated method stub
724 selectedRow
= jTableBuildTargets
.getSelectedRow();
725 if (selectedRow
< 0) {
728 TableModel m
= (TableModel
) arg0
.getSource();
729 if (arg0
.getType() == TableModelEvent
.UPDATE
) {
730 //ToDo Data Validition check.
731 Vector
<Object
> v
= new Vector
<Object
>();
732 for (int i
= 0; i
< jTableBuildTargets
.getRowCount(); ++i
) {
733 v
.add(m
.getValueAt(i
, 0));
735 docConsole
.setSaved(false);
736 ffc
.setPlatformDefsBuildTargets(v
);
742 return jTableBuildTargets
;
746 * This method initializes jTextField2
748 * @return javax.swing.JTextField
750 private JTextField
getJTextFieldSkuId() {
751 if (jTextFieldSkuId
== null) {
752 jTextFieldSkuId
= new JTextField();
753 jTextFieldSkuId
.setPreferredSize(new Dimension(40, oneRowHeight
));
754 jTextFieldSkuId
.setBounds(new java
.awt
.Rectangle(valueColumn
, rowSix
, 40, oneRowHeight
));
755 jTextFieldSkuId
.setLocation(new java
.awt
.Point(valueColumn
, rowSix
));
757 return jTextFieldSkuId
;
761 * This method initializes jTextField3
763 * @return javax.swing.JTextField
765 private JTextField
getJTextFieldSkuName() {
766 if (jTextFieldSkuName
== null) {
767 jTextFieldSkuName
= new JTextField();
768 jTextFieldSkuName
.setPreferredSize(new Dimension(valueWidth
, oneRowHeight
));
769 jTextFieldSkuName
.setBounds(new java
.awt
.Rectangle(valueColumn
, rowSeven
, valueWidth
, oneRowHeight
));
770 jTextFieldSkuName
.setLocation(new java
.awt
.Point(valueColumn
, rowSeven
));
772 return jTextFieldSkuName
;
776 * This method initializes jButton
778 * @return javax.swing.JButton
780 private JButton
getJButtonSkuAdd() {
781 if (jButtonSkuAdd
== null) {
782 jButtonSkuAdd
= new JButton();
784 jButtonSkuAdd
.setPreferredSize(new Dimension(buttonWidth
, oneRowHeight
));
785 jButtonSkuAdd
.setBounds(new java
.awt
.Rectangle(valueCenter
- buttonWidth
- 5, rowEight
, buttonWidth
,
787 jButtonSkuAdd
.setLocation(new java
.awt
.Point(valueCenter
- buttonWidth
- 5, rowEight
));
788 jButtonSkuAdd
.setText("Add");
789 jButtonSkuAdd
.setVisible(true);
791 jButtonSkuAdd
.addActionListener(new java
.awt
.event
.ActionListener() {
792 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
793 if (jTextFieldSkuId
.getText().length() > 0) {
794 String
[] row
= { jTextFieldSkuId
.getText(), jTextFieldSkuName
.getText() };
795 skuInfoTableModel
.addRow(row
);
796 docConsole
.setSaved(false);
797 ffc
.genPlatformDefsSkuInfo(row
[0], row
[1]);
802 return jButtonSkuAdd
;
806 * This method initializes jButton1
808 * @return javax.swing.JButton
810 private JButton
getJButtonSkuDel() {
811 if (jButtonSkuDel
== null) {
812 jButtonSkuDel
= new JButton();
813 jButtonSkuDel
.setPreferredSize(new Dimension(buttonWidth
, oneRowHeight
));
814 jButtonSkuDel
.setBounds(new java
.awt
.Rectangle(valueCenter
+ 5, rowEight
, buttonWidth
, oneRowHeight
));
815 jButtonSkuDel
.setLocation(new java
.awt
.Point(valueCenter
+ 5, rowEight
));
816 jButtonSkuDel
.setText("Delete");
817 jButtonSkuDel
.setVisible(true);
818 jButtonSkuDel
.addActionListener(new java
.awt
.event
.ActionListener() {
819 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
820 if (jTableSkuInfo
.isEditing()) {
821 jTableSkuInfo
.getCellEditor().stopCellEditing();
823 if (jTableSkuInfo
.getSelectedRow() < 1) {
826 docConsole
.setSaved(false);
827 ffc
.removePlatformDefsSkuInfo(jTableSkuInfo
.getSelectedRow());
828 skuInfoTableModel
.removeRow(jTableSkuInfo
.getSelectedRow());
832 return jButtonSkuDel
;
836 * This method initializes jScrollPane3
838 * @return javax.swing.JScrollPane
840 private JScrollPane
getJScrollPaneSkuInfo() {
841 if (jScrollPaneSkuInfo
== null) {
842 jScrollPaneSkuInfo
= new JScrollPane();
843 jScrollPaneSkuInfo
.setPreferredSize(new Dimension(tableWidth
- 20, tableHeight
- 20));
844 jScrollPaneSkuInfo
.setBounds(new java
.awt
.Rectangle(valueColumn
, rowNine
, tableWidth
- 5, tableHeight
- 5));
845 jScrollPaneSkuInfo
.setLocation(new java
.awt
.Point(valueColumn
, rowNine
));
846 jScrollPaneSkuInfo
.setBorder(null);
848 jScrollPaneSkuInfo
.setViewportView(getJTableSkuInfo());
850 return jScrollPaneSkuInfo
;
854 * This method initializes jTable2
856 * @return javax.swing.JTable
858 private JTable
getJTableSkuInfo() {
859 if (jTableSkuInfo
== null) {
860 skuInfoTableModel
= new SkuInfoTableModel();
861 skuInfoTableModel
.addColumn("SKU ID");
862 skuInfoTableModel
.addColumn("Name");
863 jTableSkuInfo
= new JTable(skuInfoTableModel
);
865 jTableSkuInfo
.setSelectionMode(ListSelectionModel
.SINGLE_SELECTION
);
867 jTableSkuInfo
.getModel().addTableModelListener(new TableModelListener() {
868 public void tableChanged(TableModelEvent arg0
) {
869 // TODO Auto-generated method stub
870 int row
= arg0
.getFirstRow();
871 TableModel m
= (TableModel
) arg0
.getSource();
872 if (arg0
.getType() == TableModelEvent
.UPDATE
) {
873 //ToDo Data Validition check.
874 String id
= m
.getValueAt(row
, 0) + "";
875 String name
= m
.getValueAt(row
, 1) + "";
876 docConsole
.setSaved(false);
877 ffc
.updatePlatformDefsSkuInfo(row
, id
, name
);
882 return jTableSkuInfo
;
886 * This method initializes jComboBox
888 * @return javax.swing.JComboBox
890 private JComboBox
getJComboBoxInterDir() {
891 if (jComboBoxInterDir
== null) {
892 jComboBoxInterDir
= new JComboBox();
893 jComboBoxInterDir
.setPreferredSize(new Dimension(75, oneRowHeight
));
894 jComboBoxInterDir
.setBounds(new java
.awt
.Rectangle(valueColumn
+ 30, rowEleven
, 75, oneRowHeight
));
895 jComboBoxInterDir
.setLocation(new java
.awt
.Point(valueColumn
+ 30, rowEleven
));
896 jComboBoxInterDir
.addItem("UNIFIED");
897 jComboBoxInterDir
.addItem("MODULE");
898 jComboBoxInterDir
.setSelectedIndex(0);
899 jComboBoxInterDir
.addItemListener(new java
.awt
.event
.ItemListener() {
900 public void itemStateChanged(java
.awt
.event
.ItemEvent e
) {
901 if (docConsole
!= null) {
902 docConsole
.setSaved(false);
904 ffc
.setPlatformDefsInterDir(jComboBoxInterDir
.getSelectedItem() + "");
908 return jComboBoxInterDir
;
912 * This method initializes jTextField
914 * @return javax.swing.JTextField Row Twelve
916 private JTextField
getJTextFieldOutputDir() {
917 if (jTextFieldOutputDir
== null) {
918 jTextFieldOutputDir
= new JTextField();
919 jTextFieldOutputDir
.setPreferredSize(new java
.awt
.Dimension(290, 20));
920 jTextFieldOutputDir
.setBounds(new java
.awt
.Rectangle(valueColumn
+ 30, rowTwelve
, valueWidth
- 30,
922 jTextFieldOutputDir
.setLocation(new java
.awt
.Point(valueColumn
+ 30, rowTwelve
));
923 jTextFieldOutputDir
.addFocusListener(new java
.awt
.event
.FocusAdapter() {
924 public void focusLost(java
.awt
.event
.FocusEvent e
) {
925 docConsole
.setSaved(false);
926 ffc
.setPlatformDefsOutputDir(jTextFieldOutputDir
.getText());
930 return jTextFieldOutputDir
;
933 } // @jve:decl-index=0:visual-constraint="10,10"
935 class SkuInfoTableModel
extends DefaultTableModel
{
936 private static final long serialVersionUID
= 1L;
938 public boolean isCellEditable(int row
, int column
) {
946 class TargetTableModel
extends DefaultTableModel
{
947 private static final long serialVersionUID
= 1L;
949 public boolean isCellEditable(int row
, int column
) {