]> git.proxmox.com Git - mirror_edk2.git/blob - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdPlatformDefs.java
Coding style changes
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / platform / ui / FpdPlatformDefs.java
1 /** @file
2 Java class FpdPlatformDefs is GUI for Flash element operation in SPD file.
3
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
9
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.
12 **/
13 package org.tianocore.frameworkwizard.platform.ui;
14
15 import java.awt.BorderLayout;
16 import javax.swing.JPanel;
17
18 import javax.swing.JFrame;
19 import javax.swing.JTabbedPane;
20 import javax.swing.JButton;
21 import javax.swing.ListSelectionModel;
22
23 import org.tianocore.PlatformSurfaceAreaDocument;
24 import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformType;
25 import org.tianocore.frameworkwizard.common.ui.IInternalFrame;
26
27
28 import java.awt.FlowLayout;
29
30
31 import javax.swing.JCheckBox;
32 import javax.swing.JOptionPane;
33 import javax.swing.JTextField;
34 import javax.swing.JLabel;
35 import javax.swing.JScrollPane;
36 import javax.swing.JTable;
37 import javax.swing.event.InternalFrameAdapter;
38 import javax.swing.event.InternalFrameEvent;
39 import javax.swing.event.TableModelEvent;
40 import javax.swing.event.TableModelListener;
41 import javax.swing.table.DefaultTableModel;
42 import javax.swing.table.TableModel;
43 import javax.swing.JComboBox;
44 import java.awt.Dimension;
45 import java.util.Vector;
46
47 public class FpdPlatformDefs extends IInternalFrame {
48
49 /**
50 *
51 */
52 private static final long serialVersionUID = 1L;
53 static JFrame frame;
54 private JPanel jContentPane = null;
55 private JPanel jPanelContentEast = null;
56 private JPanel jPanelContentWest = null;
57 private JPanel jPanelContentNorth = null;
58 private JTabbedPane jTabbedPane = null;
59 private TargetTableModel buildTargetTableModel = null;
60
61 private SkuInfoTableModel skuInfoTableModel = null;
62 private OpeningPlatformType docConsole = null;
63 private FpdFileContents ffc = null;
64 private JPanel jPanelGeneralTab = null;
65 private JPanel jPanelGeneralTabNorth = null;
66 private JLabel jLabel = null;
67 private JCheckBox jCheckBoxIa32 = null;
68 private JCheckBox jCheckBoxX64 = null;
69 private JCheckBox jCheckBoxIpf = null;
70 private JPanel jPanelGeneralTabSouth = null;
71 private JCheckBox jCheckBoxInterDir = null;
72 private JComboBox jComboBoxInterDir = null;
73 private JTable jTableBuildTargets = null;
74 private JPanel jPanelGeneralTabCenter = null;
75 private JLabel jLabelBuildTargets = null;
76 private JTextField jTextFieldBuildTarget = null;
77 private JButton jButtonAddBuildTarget = null;
78 private JButton jButtonDelBuildTarget = null;
79 private JScrollPane jScrollPaneBuildTargets = null;
80 private JScrollPane jScrollPaneSkuInfo = null;
81 private JTable jTableSkuInfo = null;
82 private JCheckBox jCheckBoxEbc = null;
83 private JCheckBox jCheckBoxArm = null;
84 private JCheckBox jCheckBoxPpc = null;
85 private JPanel jPanelDir = null;
86 private JLabel jLabelPad = null;
87 private JLabel jLabelOutputDir = null;
88 private JTextField jTextFieldOutputDir = null;
89 private JPanel jPanelSkuInfo = null;
90 private JLabel jLabelSkuInfo = null;
91 private JLabel jLabelSkuId = null;
92 private JTextField jTextFieldSkuId = null;
93 private JLabel jLabelSkuName = null;
94 private JTextField jTextFieldSkuName = null;
95 private JButton jButtonSkuAdd = null;
96 private JButton jButtonSkuDel = null;
97 private JLabel jLabelPadd = null;
98 public FpdPlatformDefs() {
99 super();
100 // TODO Auto-generated constructor stub
101
102 initialize();
103 this.setBounds(new java.awt.Rectangle(0, 0, 500, 370));
104 this.setVisible(true);
105 }
106
107 public FpdPlatformDefs(PlatformSurfaceAreaDocument.PlatformSurfaceArea fpd){
108 this();
109 ffc = new FpdFileContents(fpd);
110 init(ffc);
111 }
112
113 public FpdPlatformDefs(OpeningPlatformType opt) {
114 this(opt.getXmlFpd());
115 docConsole = opt;
116 }
117
118 /**
119 * This method initializes jPanel
120 *
121 * @return javax.swing.JPanel
122 */
123 private JPanel getJPanelContentEast() {
124 if (jPanelContentEast == null) {
125 jPanelContentEast = new JPanel();
126 }
127 return jPanelContentEast;
128 }
129
130 /**
131 * This method initializes jPanel2
132 *
133 * @return javax.swing.JPanel
134 */
135 private JPanel getJPanelContentWest() {
136 if (jPanelContentWest == null) {
137 jPanelContentWest = new JPanel();
138 }
139 return jPanelContentWest;
140 }
141
142 /**
143 * This method initializes jPanel3
144 *
145 * @return javax.swing.JPanel
146 */
147 private JPanel getJPanelContentNorth() {
148 if (jPanelContentNorth == null) {
149 jPanelContentNorth = new JPanel();
150 }
151 return jPanelContentNorth;
152 }
153
154 /**
155 * This method initializes jTabbedPane
156 *
157 * @return javax.swing.JTabbedPane
158 */
159 private JTabbedPane getJTabbedPane() {
160 if (jTabbedPane == null) {
161 jTabbedPane = new JTabbedPane();
162
163 jTabbedPane.addTab("General", null, getJPanelGeneralTab(), null);
164
165 }
166 return jTabbedPane;
167 }
168
169 /**
170 * This method initializes this
171 *
172 * @return void
173 */
174 private void initialize() {
175 this.setSize(518, 650);
176 this.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
177 this.setContentPane(getJContentPane());
178 this.setTitle("FPD Platform Definitions");
179 this.addInternalFrameListener(new InternalFrameAdapter(){
180 public void internalFrameDeactivated(InternalFrameEvent e){
181 if (jTableBuildTargets.isEditing()) {
182 jTableBuildTargets.getCellEditor().stopCellEditing();
183 }
184 if (jTableSkuInfo.isEditing()) {
185 jTableSkuInfo.getCellEditor().stopCellEditing();
186 }
187
188 }
189 });
190 }
191
192 private void init(FpdFileContents ffc) {
193 Vector<Object> v = new Vector<Object>();
194 ffc.getPlatformDefsSupportedArchs(v);
195 showToolChain(v);
196
197 buildTargetTableModel.setRowCount(0);
198 v.removeAllElements();
199 ffc.getPlatformDefsBuildTargets(v);
200 for (int i = 0; i < v.size(); ++i){
201 Object[] row = {v.get(i)};
202 buildTargetTableModel.addRow(row);
203 }
204
205 String[][] saa = new String[ffc.getPlatformDefsSkuInfoCount()][2];
206 ffc.getPlatformDefsSkuInfos(saa);
207 for (int i = 0; i < saa.length; ++i) {
208 skuInfoTableModel.addRow(saa[i]);
209 }
210
211 String interDir = ffc.getPlatformDefsInterDir();
212 if (interDir != null) {
213 jComboBoxInterDir.setSelectedItem(interDir);
214 }
215
216 String outputDir = ffc.getPlatformDefsOutputDir();
217 if (outputDir != null) {
218 jTextFieldOutputDir.setText(outputDir);
219 }
220 }
221
222 private void showToolChain(Vector<Object> v) {
223 if (v.contains("IA32")) {
224 jCheckBoxIa32.setSelected(true);
225 }
226 else{
227 jCheckBoxIa32.setSelected(false);
228 }
229 if (v.contains("X64")) {
230 jCheckBoxX64.setSelected(true);
231 }
232 else{
233 jCheckBoxX64.setSelected(false);
234 }
235 if (v.contains("IPF")) {
236 jCheckBoxIpf.setSelected(true);
237 }
238 else{
239 jCheckBoxIpf.setSelected(false);
240 }
241 if (v.contains("EBC")) {
242 jCheckBoxEbc.setSelected(true);
243 }
244 else{
245 jCheckBoxEbc.setSelected(false);
246 }
247 if (v.contains("ARM")) {
248 jCheckBoxArm.setSelected(true);
249 }
250 else{
251 jCheckBoxArm.setSelected(false);
252 }
253 if (v.contains("PPC")) {
254 jCheckBoxPpc.setSelected(true);
255 }
256 else{
257 jCheckBoxPpc.setSelected(false);
258 }
259 }
260
261 private void getToolChain(Vector<Object> v) {
262 if (docConsole != null){
263 docConsole.setSaved(false);
264 }
265 v.removeAllElements();
266 if (jCheckBoxIa32.isSelected()) {
267 v.add("IA32");
268 }
269 if (jCheckBoxX64.isSelected()) {
270 v.add("X64");
271 }
272 if (jCheckBoxIpf.isSelected()) {
273 v.add("IPF");
274 }
275 if (jCheckBoxEbc.isSelected()) {
276 v.add("EBC");
277 }
278 if (jCheckBoxArm.isSelected()) {
279 v.add("ARM");
280 }
281 if (jCheckBoxPpc.isSelected()) {
282 v.add("PPC");
283 }
284
285 }
286
287 /**
288 * This method initializes jContentPane
289 *
290 * @return javax.swing.JPanel
291 */
292 private JPanel getJContentPane() {
293 if (jContentPane == null) {
294 jContentPane = new JPanel();
295 jContentPane.setLayout(new BorderLayout());
296 jContentPane.add(getJPanelContentEast(), java.awt.BorderLayout.EAST);
297 jContentPane.add(getJPanelContentWest(), java.awt.BorderLayout.WEST);
298 jContentPane.add(getJPanelContentNorth(), java.awt.BorderLayout.NORTH);
299 jContentPane.add(getJTabbedPane(), java.awt.BorderLayout.CENTER);
300 }
301 return jContentPane;
302 }
303
304 /**
305 * This method initializes jPanel4
306 *
307 * @return javax.swing.JPanel
308 */
309 private JPanel getJPanelGeneralTab() {
310 if (jPanelGeneralTab == null) {
311 jPanelGeneralTab = new JPanel();
312 jPanelGeneralTab.setLayout(new BorderLayout());
313 jPanelGeneralTab.add(getJPanelGeneralTabNorth(), java.awt.BorderLayout.NORTH);
314 jPanelGeneralTab.add(getJPanelGeneralTabSouth(), java.awt.BorderLayout.SOUTH);
315 jPanelGeneralTab.add(getJPanelGeneralTabCenter(), java.awt.BorderLayout.CENTER);
316 }
317 return jPanelGeneralTab;
318 }
319
320 /**
321 * This method initializes jPanel5
322 *
323 * @return javax.swing.JPanel
324 */
325 private JPanel getJPanelGeneralTabNorth() {
326 if (jPanelGeneralTabNorth == null) {
327 jLabel = new JLabel();
328 jLabel.setText("Supported Archs");
329 FlowLayout flowLayout2 = new FlowLayout();
330 flowLayout2.setAlignment(FlowLayout.LEFT);
331 flowLayout2.setHgap(12);
332 jPanelGeneralTabNorth = new JPanel();
333 jPanelGeneralTabNorth.setLayout(flowLayout2);
334 jPanelGeneralTabNorth.add(jLabel, null);
335 jPanelGeneralTabNorth.add(getJCheckBoxIa32(), null);
336 jPanelGeneralTabNorth.add(getJCheckBoxX64(), null);
337 jPanelGeneralTabNorth.add(getJCheckBoxIpf(), null);
338 jPanelGeneralTabNorth.add(getJCheckBoxEbc(), null);
339 jPanelGeneralTabNorth.add(getJCheckBoxArm(), null);
340 jPanelGeneralTabNorth.add(getJCheckBoxPpc(), null);
341 }
342 return jPanelGeneralTabNorth;
343 }
344
345 /**
346 * This method initializes jCheckBox1
347 *
348 * @return javax.swing.JCheckBox
349 */
350 private JCheckBox getJCheckBoxIa32() {
351 if (jCheckBoxIa32 == null) {
352 jCheckBoxIa32 = new JCheckBox();
353 jCheckBoxIa32.setText("IA32");
354 jCheckBoxIa32.addItemListener(new java.awt.event.ItemListener() {
355 public void itemStateChanged(java.awt.event.ItemEvent e) {
356 Vector<Object> v = new Vector<Object>();
357 getToolChain(v);
358 if (v.size() == 0) {
359 JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");
360 return;
361 }
362 ffc.setPlatformDefsSupportedArchs(v);
363 }
364 });
365 }
366 return jCheckBoxIa32;
367 }
368
369 /**
370 * This method initializes jCheckBox2
371 *
372 * @return javax.swing.JCheckBox
373 */
374 private JCheckBox getJCheckBoxX64() {
375 if (jCheckBoxX64 == null) {
376 jCheckBoxX64 = new JCheckBox();
377 jCheckBoxX64.setText("X64");
378 jCheckBoxX64.addItemListener(new java.awt.event.ItemListener() {
379 public void itemStateChanged(java.awt.event.ItemEvent e) {
380 Vector<Object> v = new Vector<Object>();
381 getToolChain(v);
382 if (v.size() == 0) {
383 JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");
384 return;
385 }
386 ffc.setPlatformDefsSupportedArchs(v);
387 }
388 });
389 }
390 return jCheckBoxX64;
391 }
392
393 /**
394 * This method initializes jCheckBox3
395 *
396 * @return javax.swing.JCheckBox
397 */
398 private JCheckBox getJCheckBoxIpf() {
399 if (jCheckBoxIpf == null) {
400 jCheckBoxIpf = new JCheckBox();
401 jCheckBoxIpf.setText("IPF");
402 jCheckBoxIpf.addItemListener(new java.awt.event.ItemListener() {
403 public void itemStateChanged(java.awt.event.ItemEvent e) {
404 Vector<Object> v = new Vector<Object>();
405 getToolChain(v);
406 if (v.size() == 0) {
407 JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");
408 return;
409 }
410 ffc.setPlatformDefsSupportedArchs(v);
411 }
412 });
413 }
414 return jCheckBoxIpf;
415 }
416
417 /**
418 * This method initializes jTable
419 *
420 * @return javax.swing.JTable
421 */
422 private JTable getJTableBuildTargets() {
423 if (jTableBuildTargets == null) {
424 buildTargetTableModel = new TargetTableModel();
425 buildTargetTableModel.addColumn("Build Target");
426 jTableBuildTargets = new JTable(buildTargetTableModel);
427 jTableBuildTargets.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
428
429 jTableBuildTargets.getModel().addTableModelListener(new TableModelListener() {
430 public void tableChanged(TableModelEvent arg0) {
431 // TODO Auto-generated method stub
432 if (jTableBuildTargets.getSelectedRow() < 0) {
433 return;
434 }
435 TableModel m = (TableModel)arg0.getSource();
436 if (arg0.getType() == TableModelEvent.UPDATE){
437 //ToDo Data Validition check.
438 Vector<Object> v = new Vector<Object>();
439 for (int i = 0; i < jTableBuildTargets.getRowCount(); ++i) {
440 v.add(m.getValueAt(i, 0));
441 }
442 docConsole.setSaved(false);
443 ffc.setPlatformDefsBuildTargets(v);
444 }
445 }
446 });
447 }
448 return jTableBuildTargets;
449 }
450
451 /**
452 * This method initializes jPanel6
453 *
454 * @return javax.swing.JPanel
455 */
456 private JPanel getJPanelGeneralTabSouth() {
457 if (jPanelGeneralTabSouth == null) {
458 FlowLayout flowLayout3 = new FlowLayout();
459 flowLayout3.setAlignment(FlowLayout.LEFT);
460 flowLayout3.setHgap(20);
461 jPanelGeneralTabSouth = new JPanel();
462 jPanelGeneralTabSouth.setPreferredSize(new java.awt.Dimension(10,200));
463 jPanelGeneralTabSouth.setLayout(flowLayout3);
464 jPanelGeneralTabSouth.add(getJPanelDir(), null);
465 }
466 return jPanelGeneralTabSouth;
467 }
468
469 /**
470 * This method initializes jCheckBox4
471 *
472 * @return javax.swing.JCheckBox
473 */
474 private JCheckBox getJCheckBoxInterDir() {
475 if (jCheckBoxInterDir == null) {
476 jCheckBoxInterDir = new JCheckBox();
477 jCheckBoxInterDir.setText("Intermediate Directories");
478 }
479 return jCheckBoxInterDir;
480 }
481
482 /**
483 * This method initializes jComboBox
484 *
485 * @return javax.swing.JComboBox
486 */
487 private JComboBox getJComboBoxInterDir() {
488 if (jComboBoxInterDir == null) {
489 jComboBoxInterDir = new JComboBox();
490 jComboBoxInterDir.setPreferredSize(new Dimension(100, 20));
491 jComboBoxInterDir.addItem("UNIFIED");
492 jComboBoxInterDir.addItem("MODULE");
493
494 jComboBoxInterDir.setSelectedIndex(0);
495 jComboBoxInterDir.addItemListener(new java.awt.event.ItemListener() {
496 public void itemStateChanged(java.awt.event.ItemEvent e) {
497 if (docConsole != null){
498 docConsole.setSaved(false);
499 }
500 ffc.setPlatformDefsInterDir(jComboBoxInterDir.getSelectedItem()+"");
501 }
502 });
503 }
504 return jComboBoxInterDir;
505 }
506
507 /**
508 * This method initializes jPanel7
509 *
510 * @return javax.swing.JPanel
511 */
512 private JPanel getJPanelGeneralTabCenter() {
513 if (jPanelGeneralTabCenter == null) {
514 jLabelBuildTargets = new JLabel();
515 jLabelBuildTargets.setPreferredSize(new Dimension(109, 16));
516 jLabelBuildTargets.setText("Build Targets");
517 FlowLayout flowLayout4 = new FlowLayout();
518 flowLayout4.setAlignment(FlowLayout.LEFT);
519 flowLayout4.setHgap(20);
520 jPanelGeneralTabCenter = new JPanel();
521 jPanelGeneralTabCenter.setPreferredSize(new Dimension(972, 100));
522 jPanelGeneralTabCenter.setLayout(flowLayout4);
523 jPanelGeneralTabCenter.add(jLabelBuildTargets, null);
524 jPanelGeneralTabCenter.add(getJTextFieldBuildTarget(), null);
525 jPanelGeneralTabCenter.add(getJButtonAddBuildTarget(), null);
526 jPanelGeneralTabCenter.add(getJButtonDelBuildTarget(), null);
527 jPanelGeneralTabCenter.add(getJScrollPaneBuildTargets(), null);
528 jPanelGeneralTabCenter.add(getJPanelSkuInfo(), null);
529 jPanelGeneralTabCenter.add(getJScrollPaneSkuInfo(), null);
530 }
531 return jPanelGeneralTabCenter;
532 }
533
534 /**
535 * This method initializes jTextField1
536 *
537 * @return javax.swing.JTextField
538 */
539 private JTextField getJTextFieldBuildTarget() {
540 if (jTextFieldBuildTarget == null) {
541 jTextFieldBuildTarget = new JTextField();
542 jTextFieldBuildTarget.setPreferredSize(new Dimension(150, 20));
543 }
544 return jTextFieldBuildTarget;
545 }
546
547 /**
548 * This method initializes jButton2
549 *
550 * @return javax.swing.JButton
551 */
552 private JButton getJButtonAddBuildTarget() {
553 if (jButtonAddBuildTarget == null) {
554 jButtonAddBuildTarget = new JButton();
555 jButtonAddBuildTarget.setPreferredSize(new Dimension(70, 20));
556 jButtonAddBuildTarget.setText("Add");
557 jButtonAddBuildTarget.addActionListener(new java.awt.event.ActionListener() {
558 public void actionPerformed(java.awt.event.ActionEvent e) {
559 if (jTextFieldBuildTarget.getText().length() > 0) {
560 String[] row = {jTextFieldBuildTarget.getText()};
561 buildTargetTableModel.addRow(row);
562 Vector<Object> v = new Vector<Object>();
563 for (int i = 0; i < jTableBuildTargets.getRowCount(); ++i) {
564 v.add(buildTargetTableModel.getValueAt(i, 0));
565 }
566 docConsole.setSaved(false);
567 ffc.setPlatformDefsBuildTargets(v);
568 }
569 }
570 });
571 }
572 return jButtonAddBuildTarget;
573 }
574
575 /**
576 * This method initializes jButton3
577 *
578 * @return javax.swing.JButton
579 */
580 private JButton getJButtonDelBuildTarget() {
581 if (jButtonDelBuildTarget == null) {
582 jButtonDelBuildTarget = new JButton();
583 jButtonDelBuildTarget.setPreferredSize(new Dimension(70, 20));
584 jButtonDelBuildTarget.setText("Delete");
585 jButtonDelBuildTarget.setVisible(false);
586 }
587 return jButtonDelBuildTarget;
588 }
589
590 /**
591 * This method initializes jScrollPane2
592 *
593 * @return javax.swing.JScrollPane
594 */
595 private JScrollPane getJScrollPaneBuildTargets() {
596 if (jScrollPaneBuildTargets == null) {
597 jScrollPaneBuildTargets = new JScrollPane();
598 jScrollPaneBuildTargets.setPreferredSize(new Dimension(453, 100));
599 jScrollPaneBuildTargets.setViewportView(getJTableBuildTargets());
600 }
601 return jScrollPaneBuildTargets;
602 }
603
604 /**
605 * This method initializes jScrollPane3
606 *
607 * @return javax.swing.JScrollPane
608 */
609 private JScrollPane getJScrollPaneSkuInfo() {
610 if (jScrollPaneSkuInfo == null) {
611 jScrollPaneSkuInfo = new JScrollPane();
612 jScrollPaneSkuInfo.setPreferredSize(new java.awt.Dimension(453,100));
613 jScrollPaneSkuInfo.setViewportView(getJTableSkuInfo());
614 }
615 return jScrollPaneSkuInfo;
616 }
617
618 /**
619 * This method initializes jTable2
620 *
621 * @return javax.swing.JTable
622 */
623 private JTable getJTableSkuInfo() {
624 if (jTableSkuInfo == null) {
625 skuInfoTableModel = new SkuInfoTableModel();
626 skuInfoTableModel.addColumn("SKU ID");
627 skuInfoTableModel.addColumn("Name");
628 jTableSkuInfo = new JTable(skuInfoTableModel);
629
630 jTableSkuInfo.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
631
632 jTableSkuInfo.getModel().addTableModelListener(new TableModelListener() {
633 public void tableChanged(TableModelEvent arg0) {
634 // TODO Auto-generated method stub
635 int row = arg0.getFirstRow();
636 TableModel m = (TableModel)arg0.getSource();
637 if (arg0.getType() == TableModelEvent.UPDATE){
638 //ToDo Data Validition check.
639 String id = m.getValueAt(row, 0)+"";
640 String name = m.getValueAt(row, 1)+"";
641 docConsole.setSaved(false);
642 ffc.updatePlatformDefsSkuInfo(row, id, name);
643 }
644 }
645 });
646 }
647 return jTableSkuInfo;
648 }
649
650 /**
651 * This method initializes jCheckBox
652 *
653 * @return javax.swing.JCheckBox
654 */
655 private JCheckBox getJCheckBoxEbc() {
656 if (jCheckBoxEbc == null) {
657 jCheckBoxEbc = new JCheckBox();
658 jCheckBoxEbc.setPreferredSize(new java.awt.Dimension(50,20));
659 jCheckBoxEbc.setText("EBC");
660 jCheckBoxEbc.addItemListener(new java.awt.event.ItemListener() {
661 public void itemStateChanged(java.awt.event.ItemEvent e) {
662 Vector<Object> v = new Vector<Object>();
663 getToolChain(v);
664 if (v.size() == 0) {
665 JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");
666 return;
667 }
668 ffc.setPlatformDefsSupportedArchs(v);
669 }
670 });
671 }
672 return jCheckBoxEbc;
673 }
674
675 /**
676 * This method initializes jCheckBox5
677 *
678 * @return javax.swing.JCheckBox
679 */
680 private JCheckBox getJCheckBoxArm() {
681 if (jCheckBoxArm == null) {
682 jCheckBoxArm = new JCheckBox();
683 jCheckBoxArm.setPreferredSize(new java.awt.Dimension(52,20));
684 jCheckBoxArm.setText("ARM");
685 jCheckBoxArm.setVisible(false);
686 jCheckBoxArm.addItemListener(new java.awt.event.ItemListener() {
687 public void itemStateChanged(java.awt.event.ItemEvent e) {
688 Vector<Object> v = new Vector<Object>();
689 getToolChain(v);
690 if (v.size() == 0) {
691 JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");
692 return;
693 }
694 ffc.setPlatformDefsSupportedArchs(v);
695 }
696 });
697 }
698 return jCheckBoxArm;
699 }
700
701 /**
702 * This method initializes jCheckBox6
703 *
704 * @return javax.swing.JCheckBox
705 */
706 private JCheckBox getJCheckBoxPpc() {
707 if (jCheckBoxPpc == null) {
708 jCheckBoxPpc = new JCheckBox();
709 jCheckBoxPpc.setPreferredSize(new Dimension(50, 20));
710 jCheckBoxPpc.setText("PPC");
711 jCheckBoxPpc.setVisible(false);
712 jCheckBoxPpc.addItemListener(new java.awt.event.ItemListener() {
713 public void itemStateChanged(java.awt.event.ItemEvent e) {
714 Vector<Object> v = new Vector<Object>();
715 getToolChain(v);
716 if (v.size() == 0) {
717 JOptionPane.showMessageDialog(frame, "Platform must contain at least ONE supported Arch.");
718 return;
719 }
720 ffc.setPlatformDefsSupportedArchs(v);
721 }
722 });
723 }
724 return jCheckBoxPpc;
725 }
726
727 /**
728 * This method initializes jPanel8
729 *
730 * @return javax.swing.JPanel
731 */
732 private JPanel getJPanelDir() {
733 if (jPanelDir == null) {
734 FlowLayout flowLayout1 = new FlowLayout();
735 flowLayout1.setAlignment(java.awt.FlowLayout.LEFT);
736 jLabelOutputDir = new JLabel();
737 jLabelOutputDir.setText("Output Directory");
738 jLabelPad = new JLabel();
739 jLabelPad.setPreferredSize(new java.awt.Dimension(150,20));
740 jLabelPad.setText("");
741 jPanelDir = new JPanel();
742 jPanelDir.setLayout(flowLayout1);
743 jPanelDir.setPreferredSize(new java.awt.Dimension(450,100));
744 jPanelDir.setBorder(javax.swing.BorderFactory.createEtchedBorder(javax.swing.border.EtchedBorder.RAISED));
745 jPanelDir.add(getJCheckBoxInterDir(), null);
746 jPanelDir.add(getJComboBoxInterDir(), null);
747 jPanelDir.add(jLabelPad, null);
748 jPanelDir.add(jLabelOutputDir, null);
749 jPanelDir.add(getJTextFieldOutputDir(), null);
750 }
751 return jPanelDir;
752 }
753
754 /**
755 * This method initializes jTextField
756 *
757 * @return javax.swing.JTextField
758 */
759 private JTextField getJTextFieldOutputDir() {
760 if (jTextFieldOutputDir == null) {
761 jTextFieldOutputDir = new JTextField();
762 jTextFieldOutputDir.setPreferredSize(new java.awt.Dimension(300,20));
763 jTextFieldOutputDir.addFocusListener(new java.awt.event.FocusAdapter() {
764 public void focusLost(java.awt.event.FocusEvent e) {
765 docConsole.setSaved(false);
766 ffc.setPlatformDefsOutputDir(jTextFieldOutputDir.getText());
767 }
768 });
769 }
770 return jTextFieldOutputDir;
771 }
772
773 /**
774 * This method initializes jPanel9
775 *
776 * @return javax.swing.JPanel
777 */
778 private JPanel getJPanelSkuInfo() {
779 if (jPanelSkuInfo == null) {
780 jLabelPadd = new JLabel();
781 jLabelPadd.setPreferredSize(new Dimension(280, 20));
782 jLabelPadd.setText(" ");
783 jLabelSkuName = new JLabel();
784 jLabelSkuName.setPreferredSize(new Dimension(40, 20));
785 jLabelSkuName.setText("Name");
786 jLabelSkuId = new JLabel();
787 jLabelSkuId.setPreferredSize(new Dimension(20, 20));
788 jLabelSkuId.setText("ID");
789 jLabelSkuInfo = new JLabel();
790 jLabelSkuInfo.setPreferredSize(new java.awt.Dimension(150,20));
791 jLabelSkuInfo.setText("SKU Information");
792 jPanelSkuInfo = new JPanel();
793 jPanelSkuInfo.setPreferredSize(new java.awt.Dimension(450,70));
794 jPanelSkuInfo.add(jLabelSkuInfo, null);
795 jPanelSkuInfo.add(jLabelPadd, null);
796 jPanelSkuInfo.add(jLabelSkuId, null);
797 jPanelSkuInfo.add(getJTextFieldSkuId(), null);
798 jPanelSkuInfo.add(jLabelSkuName, null);
799 jPanelSkuInfo.add(getJTextFieldSkuName(), null);
800 jPanelSkuInfo.add(getJButtonSkuAdd(), null);
801 jPanelSkuInfo.add(getJButtonSkuDel(), null);
802 }
803 return jPanelSkuInfo;
804 }
805
806 /**
807 * This method initializes jTextField2
808 *
809 * @return javax.swing.JTextField
810 */
811 private JTextField getJTextFieldSkuId() {
812 if (jTextFieldSkuId == null) {
813 jTextFieldSkuId = new JTextField();
814 jTextFieldSkuId.setPreferredSize(new Dimension(50, 20));
815 }
816 return jTextFieldSkuId;
817 }
818
819 /**
820 * This method initializes jTextField3
821 *
822 * @return javax.swing.JTextField
823 */
824 private JTextField getJTextFieldSkuName() {
825 if (jTextFieldSkuName == null) {
826 jTextFieldSkuName = new JTextField();
827 jTextFieldSkuName.setPreferredSize(new Dimension(150, 20));
828 }
829 return jTextFieldSkuName;
830 }
831
832 /**
833 * This method initializes jButton
834 *
835 * @return javax.swing.JButton
836 */
837 private JButton getJButtonSkuAdd() {
838 if (jButtonSkuAdd == null) {
839 jButtonSkuAdd = new JButton();
840 jButtonSkuAdd.setPreferredSize(new Dimension(70, 20));
841 jButtonSkuAdd.setText("Add");
842 jButtonSkuAdd.addActionListener(new java.awt.event.ActionListener() {
843 public void actionPerformed(java.awt.event.ActionEvent e) {
844 if (jTextFieldSkuId.getText().length() > 0) {
845 String[] row = {jTextFieldSkuId.getText(), jTextFieldSkuName.getText()};
846 skuInfoTableModel.addRow(row);
847 docConsole.setSaved(false);
848 ffc.genPlatformDefsSkuInfo(row[0], row[1]);
849 }
850 }
851 });
852 }
853 return jButtonSkuAdd;
854 }
855
856 /**
857 * This method initializes jButton1
858 *
859 * @return javax.swing.JButton
860 */
861 private JButton getJButtonSkuDel() {
862 if (jButtonSkuDel == null) {
863 jButtonSkuDel = new JButton();
864 jButtonSkuDel.setPreferredSize(new Dimension(70, 20));
865 jButtonSkuDel.setText("Delete");
866 jButtonSkuDel.addActionListener(new java.awt.event.ActionListener() {
867 public void actionPerformed(java.awt.event.ActionEvent e) {
868 if (jTableSkuInfo.isEditing()) {
869 jTableSkuInfo.getCellEditor().stopCellEditing();
870 }
871 if (jTableSkuInfo.getSelectedRow() < 1) {
872 return;
873 }
874 docConsole.setSaved(false);
875 ffc.removePlatformDefsSkuInfo(jTableSkuInfo.getSelectedRow());
876 skuInfoTableModel.removeRow(jTableSkuInfo.getSelectedRow());
877 }
878 });
879 }
880 return jButtonSkuDel;
881 }
882
883
884 } // @jve:decl-index=0:visual-constraint="10,10"
885
886 class SkuInfoTableModel extends DefaultTableModel{
887 /**
888 *
889 */
890 private static final long serialVersionUID = 1L;
891
892 public boolean isCellEditable(int row, int column) {
893 if (row == 0) {
894 return false;
895 }
896 return true;
897 }
898 }
899
900 class TargetTableModel extends DefaultTableModel{
901 private static final long serialVersionUID = 1L;
902
903 public boolean isCellEditable(int row, int column) {
904 if (row < 2) {
905 return false;
906 }
907 return true;
908 }
909 }
910
911