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