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