a13899c5 |
1 | /** @file\r |
2 | Java class FpdPlatformDefs is GUI for Flash element operation in SPD file.\r |
3 | \r |
4 | Copyright (c) 2006, Intel Corporation\r |
5 | All rights reserved. This program and the accompanying materials\r |
6 | are licensed and made available under the terms and conditions of the BSD License\r |
7 | which accompanies this distribution. The full text of the license may be found at\r |
8 | http://opensource.org/licenses/bsd-license.php\r |
9 | \r |
10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r |
11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r |
12 | **/\r |
13 | package org.tianocore.frameworkwizard.platform.ui;\r |
14 | \r |
15 | import java.awt.BorderLayout;\r |
16 | import javax.swing.JPanel;\r |
17 | \r |
a13899c5 |
18 | import javax.swing.JFrame;\r |
a13899c5 |
19 | import javax.swing.JTabbedPane;\r |
20 | import javax.swing.JButton;\r |
6a09eb19 |
21 | import javax.swing.ListSelectionModel;\r |
a13899c5 |
22 | \r |
23 | import org.tianocore.PlatformSurfaceAreaDocument;\r |
a13899c5 |
24 | import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r |
a13899c5 |
25 | \r |
26 | \r |
27 | import java.awt.FlowLayout;\r |
44053733 |
28 | \r |
a13899c5 |
29 | \r |
30 | import javax.swing.JCheckBox;\r |
31 | import javax.swing.JTextField;\r |
a13899c5 |
32 | import javax.swing.JLabel;\r |
33 | import javax.swing.JScrollPane;\r |
34 | import javax.swing.JTable;\r |
44053733 |
35 | import javax.swing.event.InternalFrameAdapter;\r |
36 | import javax.swing.event.InternalFrameEvent;\r |
a13899c5 |
37 | import javax.swing.event.TableModelEvent;\r |
38 | import javax.swing.event.TableModelListener;\r |
39 | import javax.swing.table.DefaultTableModel;\r |
a13899c5 |
40 | import javax.swing.table.TableModel;\r |
41 | import javax.swing.JComboBox;\r |
42 | import java.awt.Dimension;\r |
6a09eb19 |
43 | import java.util.Vector;\r |
a13899c5 |
44 | \r |
45 | public 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 |
892 | class 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 |
906 | class 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 |