]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdPlatformDefs.java
Adjust Platform Definition and Module SA operations in FPD editor.
[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
a13899c5 24import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
a13899c5 25\r
26\r
27import java.awt.FlowLayout;\r
44053733 28\r
a13899c5 29\r
30import javax.swing.JCheckBox;\r
31import javax.swing.JTextField;\r
a13899c5 32import javax.swing.JLabel;\r
33import javax.swing.JScrollPane;\r
34import javax.swing.JTable;\r
44053733 35import javax.swing.event.InternalFrameAdapter;\r
36import javax.swing.event.InternalFrameEvent;\r
a13899c5 37import javax.swing.event.TableModelEvent;\r
38import javax.swing.event.TableModelListener;\r
39import javax.swing.table.DefaultTableModel;\r
a13899c5 40import javax.swing.table.TableModel;\r
41import javax.swing.JComboBox;\r
42import java.awt.Dimension;\r
6a09eb19 43import java.util.Vector;\r
a13899c5 44\r
45public class FpdPlatformDefs extends IInternalFrame {\r
46\r
44053733 47 /**\r
48 * \r
49 */\r
50 private static final long serialVersionUID = 1L;\r
a13899c5 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
6a09eb19 60 private TargetTableModel imageEntryPointTableModel = null;\r
a13899c5 61 \r
6a09eb19 62 private SkuInfoTableModel skuInfoTableModel = null;\r
a13899c5 63 \r
a13899c5 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
a13899c5 72 private JCheckBox jCheckBox4 = null;\r
73 private JComboBox jComboBox = null;\r
a13899c5 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
a13899c5 81 private JScrollPane jScrollPane3 = null;\r
82 private JTable jTable2 = null;\r
6a09eb19 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
a13899c5 92 private JLabel jLabel4 = null;\r
93 private JTextField jTextField2 = null;\r
94 private JLabel jLabel5 = null;\r
95 private JTextField jTextField3 = null;\r
6a09eb19 96 private JButton jButton = null;\r
97 private JButton jButton1 = null;\r
a13899c5 98 private JLabel jLabel6 = null;\r
a13899c5 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
6a09eb19 214 /**\r
a13899c5 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
44053733 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
a13899c5 235 }\r
236\r
237 private void init(FpdFileContents ffc) {\r
6a09eb19 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
a13899c5 249 \r
6a09eb19 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
a13899c5 265 }\r
266 \r
6a09eb19 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
a13899c5 305 \r
6a09eb19 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
a13899c5 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
6a09eb19 370 jLabel.setText("Supported Archs");\r
a13899c5 371 FlowLayout flowLayout2 = new FlowLayout();\r
372 flowLayout2.setAlignment(FlowLayout.LEFT);\r
6a09eb19 373 flowLayout2.setHgap(12);\r
a13899c5 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
6a09eb19 380 jPanel5.add(getJCheckBox(), null);\r
381 jPanel5.add(getJCheckBox5(), null);\r
382 jPanel5.add(getJCheckBox6(), null);\r
a13899c5 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
6a09eb19 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
a13899c5 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
6a09eb19 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
a13899c5 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
6a09eb19 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
a13899c5 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
6a09eb19 454 imageEntryPointTableModel = new TargetTableModel();\r
a13899c5 455 imageEntryPointTableModel.addColumn("Build Target");\r
6a09eb19 456 jTable = new JTable(imageEntryPointTableModel);\r
457 jTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
a13899c5 458 \r
6a09eb19 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
a13899c5 476 }\r
6a09eb19 477 return jTable;\r
a13899c5 478 }\r
479\r
a13899c5 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
a13899c5 487 FlowLayout flowLayout3 = new FlowLayout();\r
488 flowLayout3.setAlignment(FlowLayout.LEFT);\r
489 flowLayout3.setHgap(20);\r
490 jPanel6 = new JPanel();\r
6a09eb19 491 jPanel6.setPreferredSize(new java.awt.Dimension(10,200));\r
a13899c5 492 jPanel6.setLayout(flowLayout3);\r
6a09eb19 493 jPanel6.add(getJPanel8(), null);\r
a13899c5 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
6a09eb19 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
a13899c5 528 }\r
529 return jComboBox;\r
530 }\r
531\r
a13899c5 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
a13899c5 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
6a09eb19 553 jPanel7.add(getJPanel9(), null);\r
a13899c5 554 jPanel7.add(getJScrollPane3(), null);\r
a13899c5 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
6a09eb19 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
a13899c5 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
6a09eb19 609 jButton3.setVisible(false);\r
a13899c5 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
6a09eb19 649 skuInfoTableModel = new SkuInfoTableModel();\r
a13899c5 650 skuInfoTableModel.addColumn("SKU ID");\r
651 skuInfoTableModel.addColumn("Name");\r
652 jTable2 = new JTable(skuInfoTableModel);\r
6a09eb19 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
a13899c5 669 }\r
670 return jTable2;\r
671 }\r
672\r
6a09eb19 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
a13899c5 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
6a09eb19 822 jTextField2.setPreferredSize(new Dimension(50, 20));\r
a13899c5 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
6a09eb19 841 * This method initializes jButton \r
a13899c5 842 * \r
843 * @return javax.swing.JButton \r
844 */\r
6a09eb19 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
a13899c5 859 }\r
6a09eb19 860 return jButton;\r
a13899c5 861 }\r
862\r
863 /**\r
6a09eb19 864 * This method initializes jButton1 \r
a13899c5 865 * \r
866 * @return javax.swing.JButton \r
867 */\r
6a09eb19 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
a13899c5 885 }\r
6a09eb19 886 return jButton1;\r
a13899c5 887 }\r
888\r
889\r
890} // @jve:decl-index=0:visual-constraint="10,10"\r
891\r
6a09eb19 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
a13899c5 917\r