]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdFlash.java
Should not checking exist fd file, otherwise new fd file can not override old fd...
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / platform / ui / FpdFlash.java
CommitLineData
a13899c5 1/** @file\r
2 Java class FpdFlash 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.AbstractAction;\r
a13899c5 19import javax.swing.DefaultCellEditor;\r
a13899c5 20import javax.swing.JFileChooser;\r
21import javax.swing.JFrame;\r
a13899c5 22import javax.swing.JTabbedPane;\r
23import javax.swing.JButton;\r
24import javax.swing.ListSelectionModel;\r
25\r
ae0d4fd2 26import org.tianocore.FvImagesDocument;\r
a13899c5 27import org.tianocore.PlatformSurfaceAreaDocument;\r
a13899c5 28import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
29import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
30\r
31\r
32import java.awt.FlowLayout;\r
33import java.awt.event.ActionEvent;\r
a13899c5 34import java.awt.event.ComponentAdapter;\r
35import java.awt.event.ComponentEvent;\r
a13899c5 36import java.awt.event.ItemEvent;\r
37import java.awt.event.ItemListener;\r
a13899c5 38import java.io.File;\r
39import java.util.ArrayList;\r
40import java.util.Iterator;\r
41import java.util.LinkedHashMap;\r
42import java.util.Map;\r
43import java.util.Set;\r
44\r
45import javax.swing.JCheckBox;\r
46import javax.swing.JTextField;\r
47import java.awt.GridLayout;\r
48import javax.swing.JLabel;\r
49import javax.swing.JScrollPane;\r
50import javax.swing.JTable;\r
44053733 51import javax.swing.event.InternalFrameAdapter;\r
52import javax.swing.event.InternalFrameEvent;\r
a13899c5 53import javax.swing.event.ListSelectionEvent;\r
54import javax.swing.event.ListSelectionListener;\r
55import javax.swing.event.TableModelEvent;\r
56import javax.swing.event.TableModelListener;\r
57import javax.swing.table.DefaultTableModel;\r
58import javax.swing.table.TableColumn;\r
59import javax.swing.table.TableModel;\r
60import javax.swing.JComboBox;\r
61import java.awt.Dimension;\r
a13899c5 62\r
63public class FpdFlash extends IInternalFrame {\r
64\r
44053733 65 /**\r
66 * \r
67 */\r
68 private static final long serialVersionUID = 1L;\r
a13899c5 69 static JFrame frame;\r
70 private JPanel jContentPane = null;\r
71 private JPanel jPanel = null;\r
72 private JPanel jPanel1 = null;\r
73 private JPanel jPanel2 = null;\r
74 private JPanel jPanel3 = null;\r
75 private JTabbedPane jTabbedPane = null;\r
76 private JPanel jPanelFvImages = null;\r
77 private JButton jButtonOk = null;\r
78 private JButton jButtonCancel = null;\r
79 private JPanel jPanelFvImageN = null;\r
a13899c5 80 private JPanel jPanelFvImageS = null;\r
81 private JCheckBox jCheckBox1 = null;\r
82 private JLabel jLabel = null;\r
83 private JTextField jTextField = null;\r
84 private JLabel jLabel1 = null;\r
85 private JTextField jTextField1 = null;\r
86 private JButton jButton = null;\r
a13899c5 87 private JScrollPane jScrollPane1 = null;\r
88 private JTable jTable = null;\r
89 private JPanel jPanel4 = null;\r
90 private JButton jButton1 = null;\r
91 private DefaultTableModel fvPropertyTableModel = null;\r
92 private DefaultTableModel fvImageNameTableModel = null;\r
93 private ImageParaTableModel fvImageParaTableModel = null;\r
ae0d4fd2 94 private DefaultTableModel fvOptionTableModel = null;\r
a13899c5 95 private JPanel jPanelFvImageC = null;\r
96 private JCheckBox jCheckBox2 = null;\r
97 private JLabel jLabel2 = null;\r
98 private JComboBox jComboBox = null;\r
99 private JLabel jLabel3 = null;\r
100 private JLabel jLabel4 = null;\r
101 private JTextField jTextField2 = null;\r
102 private JButton jButton2 = null;\r
103 private JScrollPane jScrollPane2 = null;\r
104 private JTable jTable1 = null;\r
105 private JButton jButton3 = null;\r
106 private JPanel jPanel5 = null;\r
107 private JButton jButton4 = null;\r
108 private JScrollPane jScrollPane3 = null;\r
109 private JTable jTable2 = null;\r
110 private JButton jButton6 = null;\r
111 private JCheckBox jCheckBox3 = null;\r
a13899c5 112 private JPanel jPanel6 = null;\r
a13899c5 113 \r
a13899c5 114 private FpdFileContents ffc = null;\r
115 private JPanel jPanel7 = null;\r
116 private JCheckBox jCheckBox = null;\r
117 private JTextField jTextField3 = null;\r
118 private JButton jButton5 = null;\r
ae0d4fd2 119 private JLabel jLabel5 = null;\r
120 private JTextField jTextField4 = null;\r
44053733 121 private JLabel jLabel6 = null;\r
ae0d4fd2 122 private JTextField jTextField5 = null;\r
123 private JPanel jPanel8 = null;\r
124 private JButton jButton7 = null;\r
125 private JButton jButton8 = null;\r
126 private JScrollPane jScrollPane = null;\r
127 private JTable jTable3 = null;\r
128 private JButton jButton9 = null;\r
a13899c5 129 public FpdFlash() {\r
130 super();\r
131 // TODO Auto-generated constructor stub\r
132\r
133 initialize();\r
134 this.setBounds(new java.awt.Rectangle(0, 0, 500, 370));\r
135 this.setVisible(true);\r
136 }\r
137\r
138 public FpdFlash(PlatformSurfaceAreaDocument.PlatformSurfaceArea fpd){\r
139 this();\r
140 ffc = new FpdFileContents(fpd);\r
141 init(ffc);\r
142 }\r
143 \r
144 /**\r
145 * This method initializes jPanel \r
146 * \r
147 * @return javax.swing.JPanel \r
148 */\r
149 private JPanel getJPanel() {\r
150 if (jPanel == null) {\r
151 jPanel = new JPanel();\r
152 }\r
153 return jPanel;\r
154 }\r
155\r
156 /**\r
157 * This method initializes jPanel1 \r
158 * \r
159 * @return javax.swing.JPanel \r
160 */\r
161 private JPanel getJPanel1() {\r
162 if (jPanel1 == null) {\r
163 FlowLayout flowLayout = new FlowLayout();\r
164 flowLayout.setAlignment(java.awt.FlowLayout.RIGHT);\r
165 flowLayout.setHgap(15);\r
166 jPanel1 = new JPanel();\r
167 jPanel1.setLayout(flowLayout);\r
168 jPanel1.setComponentOrientation(java.awt.ComponentOrientation.LEFT_TO_RIGHT);\r
169 jPanel1.add(getJButtonCancel(), null);\r
170 jPanel1.add(getJButtonOk(), null);\r
171 }\r
172 return jPanel1;\r
173 }\r
174\r
175 /**\r
176 * This method initializes jPanel2 \r
177 * \r
178 * @return javax.swing.JPanel \r
179 */\r
180 private JPanel getJPanel2() {\r
181 if (jPanel2 == null) {\r
182 jPanel2 = new JPanel();\r
183 }\r
184 return jPanel2;\r
185 }\r
186\r
187 /**\r
188 * This method initializes jPanel3 \r
189 * \r
190 * @return javax.swing.JPanel \r
191 */\r
192 private JPanel getJPanel3() {\r
193 if (jPanel3 == null) {\r
194 jPanel3 = new JPanel();\r
195 }\r
196 return jPanel3;\r
197 }\r
198\r
199 /**\r
200 * This method initializes jTabbedPane \r
201 * \r
202 * @return javax.swing.JTabbedPane \r
203 */\r
204 private JTabbedPane getJTabbedPane() {\r
205 if (jTabbedPane == null) {\r
206 jTabbedPane = new JTabbedPane();\r
207 jTabbedPane.addTab("FV Images", null, getJPanelFvImages(), null);\r
208 jTabbedPane.addTab("Flash Definition File", null, getJPanel7(), null);\r
209 \r
210 }\r
211 return jTabbedPane;\r
212 }\r
213\r
214 /**\r
215 * This method initializes jPanelFvImages \r
216 * \r
217 * @return javax.swing.JPanel \r
218 */\r
219 private JPanel getJPanelFvImages() {\r
220 if (jPanelFvImages == null) {\r
221 jPanelFvImages = new JPanel();\r
222 jPanelFvImages.setLayout(new BorderLayout());\r
223 jPanelFvImages.add(getJPanelFvImageN(), java.awt.BorderLayout.NORTH);\r
224// jPanelFvImages.add(getJPanelFvImageW(), java.awt.BorderLayout.WEST);\r
225 jPanelFvImages.add(getJPanelFvImageS(), java.awt.BorderLayout.SOUTH);\r
226 jPanelFvImages.add(getJPanelFvImageC(), java.awt.BorderLayout.CENTER);\r
227 \r
228 }\r
229 return jPanelFvImages;\r
230 }\r
231\r
232 /**\r
233 * This method initializes jButtonOk \r
234 * \r
235 * @return javax.swing.JButton \r
236 */\r
237 private JButton getJButtonOk() {\r
238 if (jButtonOk == null) {\r
239 jButtonOk = new JButton();\r
240 jButtonOk.setPreferredSize(new java.awt.Dimension(80,20));\r
241 jButtonOk.setText("Cancel");\r
242 jButtonOk.setVisible(false);\r
243 }\r
244 return jButtonOk;\r
245 }\r
246\r
247 /**\r
248 * This method initializes jButtonCancel \r
249 * \r
250 * @return javax.swing.JButton \r
251 */\r
252 private JButton getJButtonCancel() {\r
253 if (jButtonCancel == null) {\r
254 jButtonCancel = new JButton();\r
255 jButtonCancel.setPreferredSize(new java.awt.Dimension(80,20));\r
256 jButtonCancel.setText("Ok");\r
257 jButtonCancel.setVisible(false);\r
258 }\r
259 return jButtonCancel;\r
260 }\r
261\r
262 /**\r
263 * This method initializes jPanelFvImageN \r
264 * \r
265 * @return javax.swing.JPanel \r
266 */\r
267 private JPanel getJPanelFvImageN() {\r
268 if (jPanelFvImageN == null) {\r
269 jLabel1 = new JLabel();\r
270 jLabel1.setText("Value");\r
271 jLabel1.setEnabled(false);\r
272 jLabel1.setPreferredSize(new java.awt.Dimension(38,20));\r
273 jLabel = new JLabel();\r
274 jLabel.setText("Name");\r
275 jLabel.setEnabled(false);\r
276 jLabel.setPreferredSize(new java.awt.Dimension(38,20));\r
277 FlowLayout flowLayout2 = new FlowLayout();\r
278 flowLayout2.setAlignment(java.awt.FlowLayout.CENTER);\r
279 flowLayout2.setHgap(15);\r
280 jPanelFvImageN = new JPanel();\r
281 jPanelFvImageN.setPreferredSize(new java.awt.Dimension(576,100));\r
282 jPanelFvImageN.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));\r
283 jPanelFvImageN.setLayout(flowLayout2);\r
284 jPanelFvImageN.add(getJCheckBox1(), null);\r
285 jPanelFvImageN.add(jLabel, null);\r
286 jPanelFvImageN.add(getJTextField(), null);\r
287 jPanelFvImageN.add(jLabel1, null);\r
288 jPanelFvImageN.add(getJTextField1(), null);\r
289 jPanelFvImageN.add(getJScrollPane1(), null);\r
290 jPanelFvImageN.add(getJPanel4(), null);\r
291 }\r
292 return jPanelFvImageN;\r
293 }\r
294\r
a13899c5 295 /**\r
296 * This method initializes jPanelFvImageS \r
297 * \r
298 * @return javax.swing.JPanel \r
299 */\r
300 private JPanel getJPanelFvImageS() {\r
301 if (jPanelFvImageS == null) {\r
302 GridLayout gridLayout2 = new GridLayout();\r
303 gridLayout2.setRows(1);\r
304 jPanelFvImageS = new JPanel();\r
44053733 305 jPanelFvImageS.setPreferredSize(new java.awt.Dimension(480,190));\r
a13899c5 306 jPanelFvImageS.setLayout(gridLayout2);\r
307 jPanelFvImageS.add(getJScrollPane3(), null);\r
308 }\r
309 return jPanelFvImageS;\r
310 }\r
311\r
312\r
313 /**\r
314 * This method initializes jCheckBox1 \r
315 * \r
316 * @return javax.swing.JCheckBox \r
317 */\r
318 private JCheckBox getJCheckBox1() {\r
319 if (jCheckBox1 == null) {\r
320 jCheckBox1 = new JCheckBox();\r
321 jCheckBox1.setText("FV Properties");\r
322 jCheckBox1.addItemListener(new ItemListener(){\r
323\r
324 public void itemStateChanged(ItemEvent arg0) {\r
325 // TODO Auto-generated method stub\r
326 boolean seleted = jCheckBox1.isSelected();\r
327 \r
328 jLabel.setEnabled(seleted);\r
329 jTextField.setEnabled(seleted);\r
330 jLabel1.setEnabled(seleted);\r
331 jTextField1.setEnabled(seleted);\r
332 jTable.setEnabled(seleted);\r
333 jButton.setEnabled(seleted);\r
334 jButton1.setEnabled(seleted);\r
335 \r
336 \r
337 }\r
338 \r
339 });\r
340 }\r
341 return jCheckBox1;\r
342 }\r
343\r
344\r
345 /**\r
346 * This method initializes jTextField \r
347 * \r
348 * @return javax.swing.JTextField \r
349 */\r
350 private JTextField getJTextField() {\r
351 if (jTextField == null) {\r
352 jTextField = new JTextField();\r
353 jTextField.setPreferredSize(new java.awt.Dimension(100,20));\r
354 jTextField.setEnabled(false);\r
355 }\r
356 return jTextField;\r
357 }\r
358\r
359\r
360 /**\r
361 * This method initializes jTextField1 \r
362 * \r
363 * @return javax.swing.JTextField \r
364 */\r
365 private JTextField getJTextField1() {\r
366 if (jTextField1 == null) {\r
367 jTextField1 = new JTextField();\r
368 jTextField1.setPreferredSize(new java.awt.Dimension(100,20));\r
369 jTextField1.setEnabled(false);\r
370 }\r
371 return jTextField1;\r
372 }\r
373\r
374\r
375 /**\r
376 * This method initializes jButton \r
377 * \r
378 * @return javax.swing.JButton \r
379 */\r
380 private JButton getJButton() {\r
381 if (jButton == null) {\r
382 jButton = new JButton();\r
383 jButton.setPreferredSize(new java.awt.Dimension(80,20));\r
384 jButton.setEnabled(false);\r
385 jButton.setText("Add");\r
386 jButton.addActionListener(new AbstractAction() {\r
44053733 387 /**\r
388 * \r
389 */\r
390 private static final long serialVersionUID = 1L;\r
391\r
a13899c5 392 public void actionPerformed(ActionEvent e) {\r
393 if (jTextField.getText().length() > 0 && jTextField1.getText().length() > 0){\r
394 String[] row = {jTextField.getText(), jTextField1.getText()}; \r
395 fvPropertyTableModel.addRow(row);\r
396 ffc.genFvImagesNameValue(row[0], row[1]);\r
397 }\r
398 }\r
399 });\r
400 }\r
401 return jButton;\r
402 }\r
403\r
404\r
405 /**\r
406 * This method initializes jScrollPane1 \r
407 * \r
408 * @return javax.swing.JScrollPane \r
409 */\r
410 private JScrollPane getJScrollPane1() {\r
411 if (jScrollPane1 == null) {\r
412 jScrollPane1 = new JScrollPane();\r
413 jScrollPane1.setPreferredSize(new java.awt.Dimension(350,55));\r
414 jScrollPane1.setViewportView(getJTable());\r
415 }\r
416 return jScrollPane1;\r
417 }\r
418\r
419\r
420 /**\r
421 * This method initializes jTable \r
422 * \r
423 * @return javax.swing.JTable \r
424 */\r
425 private JTable getJTable() {\r
426 if (jTable == null) {\r
427 fvPropertyTableModel = new DefaultTableModel();\r
428 jTable = new JTable(fvPropertyTableModel);\r
429 fvPropertyTableModel.addColumn("Name");\r
430 fvPropertyTableModel.addColumn("Value");\r
431 jTable.setRowHeight(20);\r
432 jTable.setEnabled(false);\r
433 \r
434 jTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
435 jTable.getSelectionModel().addListSelectionListener(new ListSelectionListener(){\r
436 public void valueChanged(ListSelectionEvent e) {\r
437 if (e.getValueIsAdjusting()){\r
438 return;\r
439 }\r
440 ListSelectionModel lsm = (ListSelectionModel)e.getSource();\r
441 if (lsm.isSelectionEmpty()) {\r
442 return;\r
443 }\r
444 else{\r
445// selectedRow = lsm.getMinSelectionIndex();\r
446 }\r
447 }\r
448 });\r
449 \r
450 jTable.getModel().addTableModelListener(new TableModelListener(){\r
451 public void tableChanged(TableModelEvent arg0) {\r
452 // TODO Auto-generated method stub\r
453 int row = arg0.getFirstRow();\r
454 TableModel m = (TableModel)arg0.getSource();\r
455 if (arg0.getType() == TableModelEvent.UPDATE){\r
456 \r
457 String name = m.getValueAt(row, 0) + "";\r
458 String value = m.getValueAt(row, 1) + "";\r
459\r
460 ffc.updateFvImagesNameValue(row, name, value);\r
461 }\r
462 }\r
463 });\r
464 }\r
465 return jTable;\r
466 }\r
467\r
468\r
469 /**\r
470 * This method initializes jPanel4 \r
471 * \r
472 * @return javax.swing.JPanel \r
473 */\r
474 private JPanel getJPanel4() {\r
475 if (jPanel4 == null) {\r
476 jPanel4 = new JPanel();\r
477 jPanel4.setPreferredSize(new java.awt.Dimension(80,55));\r
478 \r
479 jPanel4.add(getJButton(), null);\r
480 jPanel4.add(getJButton1(), null);\r
481 }\r
482 return jPanel4;\r
483 }\r
484\r
485\r
486 /**\r
487 * This method initializes jButton1 \r
488 * \r
489 * @return javax.swing.JButton \r
490 */\r
491 private JButton getJButton1() {\r
492 if (jButton1 == null) {\r
493 jButton1 = new JButton();\r
494 jButton1.setPreferredSize(new java.awt.Dimension(80,20));\r
495 jButton1.setEnabled(false);\r
496 jButton1.setText("Delete");\r
497 jButton1.addActionListener(new AbstractAction() {\r
44053733 498 /**\r
499 * \r
500 */\r
501 private static final long serialVersionUID = 1L;\r
502\r
a13899c5 503 public void actionPerformed(ActionEvent e) {\r
504 if (jTable.getSelectedRow() >= 0){\r
505 fvPropertyTableModel.removeRow(jTable.getSelectedRow());\r
506 ffc.removeFvImagesNameValue(jTable.getSelectedRow());\r
507 }\r
508 }\r
509 });\r
510 }\r
511 return jButton1;\r
512 }\r
513\r
514\r
515 /**\r
516 * This method initializes jPanelFvImageC \r
517 * \r
518 * @return javax.swing.JPanel \r
519 */\r
520 private JPanel getJPanelFvImageC() {\r
521 if (jPanelFvImageC == null) {\r
522 jLabel4 = new JLabel();\r
523 jLabel4.setPreferredSize(new Dimension(38, 20));\r
524 jLabel4.setEnabled(false);\r
525 jLabel4.setText("Name");\r
526 jLabel3 = new JLabel();\r
527 jLabel3.setText("FV Image Names");\r
528 jLabel3.setEnabled(false);\r
529 jLabel3.setPreferredSize(new java.awt.Dimension(150,20));\r
530 jLabel2 = new JLabel();\r
531 jLabel2.setText("Type");\r
532 jLabel2.setEnabled(false);\r
533 jLabel2.setPreferredSize(new java.awt.Dimension(70,20));\r
534 FlowLayout flowLayout3 = new FlowLayout();\r
535 flowLayout3.setAlignment(java.awt.FlowLayout.LEFT);\r
536 flowLayout3.setHgap(5);\r
537 jPanelFvImageC = new JPanel();\r
538 jPanelFvImageC.setLayout(flowLayout3);\r
539 jPanelFvImageC.add(getJPanel6(), null);\r
540 \r
541 jPanelFvImageC.add(getJPanel5(), null);\r
542 \r
543 }\r
544 return jPanelFvImageC;\r
545 }\r
546\r
547\r
548 /**\r
549 * This method initializes jCheckBox2 \r
550 * \r
551 * @return javax.swing.JCheckBox \r
552 */\r
553 private JCheckBox getJCheckBox2() {\r
554 if (jCheckBox2 == null) {\r
555 jCheckBox2 = new JCheckBox();\r
556 jCheckBox2.setText("FV Image Parameters");\r
557 jCheckBox2.setPreferredSize(new java.awt.Dimension(200,20));\r
558 jCheckBox2.addItemListener(new ItemListener(){\r
559\r
560 public void itemStateChanged(ItemEvent arg0) {\r
561 // TODO Auto-generated method stub\r
562 boolean seleted = jCheckBox2.isSelected();\r
563 \r
564 jLabel2.setEnabled(seleted);\r
565 jLabel3.setEnabled(seleted);\r
566 jLabel4.setEnabled(seleted);\r
567 jComboBox.setEnabled(seleted);\r
568 jTextField2.setEnabled(seleted);\r
569 \r
570 jTable1.setEnabled(seleted);\r
571 jButton2.setEnabled(seleted);\r
572 jButton3.setEnabled(seleted);\r
573 \r
574 \r
575 }\r
576 \r
577 });\r
578 }\r
579 return jCheckBox2;\r
580 }\r
581\r
582\r
583 /**\r
584 * This method initializes jComboBox \r
585 * \r
586 * @return javax.swing.JComboBox \r
587 */\r
588 private JComboBox getJComboBox() {\r
589 if (jComboBox == null) {\r
590 jComboBox = new JComboBox();\r
591 jComboBox.addItem("ImageName");\r
592 jComboBox.addItem("Attributes");\r
593 jComboBox.addItem("Options");\r
594 jComboBox.addItem("Components");\r
595 jComboBox.setPreferredSize(new java.awt.Dimension(180,20));\r
596 jComboBox.setEnabled(false);\r
597 jComboBox.addItemListener(new ItemListener() {\r
598\r
599 public void itemStateChanged(ItemEvent arg0) {\r
600 // TODO disable attribute settings when ValidImageNames selected.\r
601 \r
602 }\r
603 \r
604 });\r
605 }\r
606 return jComboBox;\r
607 }\r
608\r
609\r
610 /**\r
611 * This method initializes jTextField2 \r
612 * \r
613 * @return javax.swing.JTextField \r
614 */\r
615 private JTextField getJTextField2() {\r
616 if (jTextField2 == null) {\r
617 jTextField2 = new JTextField();\r
618 jTextField2.setPreferredSize(new java.awt.Dimension(140,20));\r
619 jTextField2.setEnabled(false);\r
620 }\r
621 return jTextField2;\r
622 }\r
623\r
624\r
625 /**\r
626 * This method initializes jButton2 \r
627 * \r
628 * @return javax.swing.JButton \r
629 */\r
630 private JButton getJButton2() {\r
631 if (jButton2 == null) {\r
632 jButton2 = new JButton();\r
633 jButton2.setPreferredSize(new Dimension(80, 20));\r
634 jButton2.setEnabled(false);\r
635 jButton2.setText("Add");\r
636 jButton2.addActionListener(new AbstractAction() {\r
44053733 637 /**\r
638 * \r
639 */\r
640 private static final long serialVersionUID = 1L;\r
641\r
a13899c5 642 public void actionPerformed(java.awt.event.ActionEvent e) {\r
643 if (jTextField2.getText().length() > 0){\r
644 String[] row = {jTextField2.getText()}; \r
645 fvImageNameTableModel.addRow(row);\r
646 }\r
647 }\r
648 });\r
649 }\r
650 return jButton2;\r
651 }\r
652\r
653\r
654 /**\r
655 * This method initializes jScrollPane2 \r
656 * \r
657 * @return javax.swing.JScrollPane \r
658 */\r
659 private JScrollPane getJScrollPane2() {\r
660 if (jScrollPane2 == null) {\r
661 jScrollPane2 = new JScrollPane();\r
662 jScrollPane2.setPreferredSize(new java.awt.Dimension(350,50));\r
663 jScrollPane2.setViewportView(getJTable1());\r
664 }\r
665 return jScrollPane2;\r
666 }\r
667\r
668\r
669 /**\r
670 * This method initializes jTable1 \r
671 * \r
672 * @return javax.swing.JTable \r
673 */\r
674 private JTable getJTable1() {\r
675 if (jTable1 == null) {\r
676 fvImageNameTableModel = new DefaultTableModel();\r
677 jTable1 = new JTable(fvImageNameTableModel);\r
678 jTable1.setEnabled(false);\r
679 fvImageNameTableModel.addColumn("FV Image Name");\r
680 }\r
681 return jTable1;\r
682 }\r
683\r
684\r
685 /**\r
686 * This method initializes jButton3 \r
687 * \r
688 * @return javax.swing.JButton \r
689 */\r
690 private JButton getJButton3() {\r
691 if (jButton3 == null) {\r
692 jButton3 = new JButton();\r
693 jButton3.setPreferredSize(new Dimension(80, 20));\r
694 jButton3.setEnabled(false);\r
695 jButton3.setText("Delete");\r
696 jButton3.addActionListener(new AbstractAction() {\r
44053733 697 /**\r
698 * \r
699 */\r
700 private static final long serialVersionUID = 1L;\r
701\r
a13899c5 702 public void actionPerformed(java.awt.event.ActionEvent e) {\r
703 if (jTable1.getSelectedRow() >= 0){\r
704 \r
705 fvImageNameTableModel.removeRow(jTable1.getSelectedRow());\r
706 }\r
707 }\r
708 });\r
709 }\r
710 return jButton3;\r
711 }\r
712\r
713\r
714\r
715 \r
716 private JPanel getJPanel5() {\r
717 \r
718\r
719 if (jPanel5 == null) {\r
720 //ToDo add ButtonGroup for RadioButtons\r
44053733 721 jLabel6 = new JLabel();\r
44053733 722 jLabel6.setEnabled(false);\r
ae0d4fd2 723 jLabel6.setText("Value");\r
724 jLabel6.setPreferredSize(new Dimension(38, 20));\r
725 jLabel5 = new JLabel();\r
726 jLabel5.setEnabled(false);\r
727 jLabel5.setText("Name");\r
728 jLabel5.setPreferredSize(new Dimension(38, 20));\r
a13899c5 729 jPanel5 = new JPanel();\r
44053733 730 jPanel5.setPreferredSize(new java.awt.Dimension(480,150));\r
a13899c5 731 \r
ae0d4fd2 732 jPanel5.setLayout(new FlowLayout());\r
a13899c5 733 \r
a13899c5 734 jPanel5.setBorder(javax.swing.BorderFactory.createEtchedBorder(javax.swing.border.EtchedBorder.LOWERED));\r
ae0d4fd2 735 jPanel5.add(getJCheckBox3(), null);\r
736 jPanel5.add(jLabel5, null);\r
737 jPanel5.add(getJTextField4(), null);\r
44053733 738 jPanel5.add(jLabel6, null);\r
ae0d4fd2 739 jPanel5.add(getJTextField5(), null);\r
740 jPanel5.add(getJScrollPane(), null);\r
741 jPanel5.add(getJPanel8(), null);\r
44053733 742 jPanel5.add(getJButton4(), null);\r
a13899c5 743 jPanel5.add(getJButton6(), null);\r
ae0d4fd2 744 jPanel5.add(getJButton9(), null);\r
a13899c5 745 \r
746 \r
747 \r
748\r
749 \r
750 }\r
751 return jPanel5;\r
752 }\r
753\r
754\r
755 /**\r
756 * This method initializes jButton4 \r
757 * \r
758 * @return javax.swing.JButton \r
759 */\r
760 private JButton getJButton4() {\r
761 if (jButton4 == null) {\r
762 jButton4 = new JButton();\r
ae0d4fd2 763 jButton4.setPreferredSize(new java.awt.Dimension(120,20));\r
a13899c5 764// jButton4.setEnabled(false);\r
765 jButton4.setText("Add FV Image");\r
766 jButton4.addActionListener(new AbstractAction() {\r
44053733 767 /**\r
768 * \r
769 */\r
770 private static final long serialVersionUID = 1L;\r
771\r
a13899c5 772 public void actionPerformed(java.awt.event.ActionEvent e) {\r
ae0d4fd2 773 if (jTable2.isEditing()) {\r
774 jTable2.getCellEditor().stopCellEditing();\r
775 }\r
776 if (jTable3.isEditing()) {\r
777 jTable3.getCellEditor().stopCellEditing();\r
778 }\r
a13899c5 779 if (jTable1.getRowCount()== 0){\r
780 return;\r
781 }\r
782 String imageName = " ";\r
783 for (int i = 0; i < jTable1.getRowCount(); ++i){\r
784 imageName += (String)jTable1.getValueAt(i, 0);\r
785 imageName += " ";\r
786 }\r
787 imageName = imageName.trim();\r
788 \r
789 if (!jCheckBox3.isSelected() && jComboBox.getSelectedIndex() != 0){\r
790 return;\r
791 \r
792 }\r
793 \r
44053733 794 LinkedHashMap<String, String> m = null;\r
795 if (jCheckBox3.isSelected()) {\r
796 m = new LinkedHashMap<String, String>();\r
ae0d4fd2 797 getOptionNameValue(m);\r
44053733 798 }\r
a13899c5 799 ffc.genFvImagesFvImage(imageName.split(" "), jComboBox.getSelectedItem()+"", m);\r
800 \r
ae0d4fd2 801 Object[] row = {imageName, jComboBox.getSelectedItem()};\r
802 fvImageParaTableModel.addRow(row); \r
a13899c5 803 }\r
804 });\r
805 }\r
806 return jButton4;\r
807 }\r
808\r
809\r
810 /**\r
811 * This method initializes jScrollPane3 \r
812 * \r
813 * @return javax.swing.JScrollPane \r
814 */\r
815 private JScrollPane getJScrollPane3() {\r
816 if (jScrollPane3 == null) {\r
817 jScrollPane3 = new JScrollPane();\r
818 jScrollPane3.setPreferredSize(new java.awt.Dimension(480,150));\r
819 jScrollPane3.setViewportView(getJTable2());\r
820 }\r
821 return jScrollPane3;\r
822 }\r
823\r
824\r
825 /**\r
826 * This method initializes jTable2 \r
827 * \r
828 * @return javax.swing.JTable \r
829 */\r
830 private JTable getJTable2() {\r
831 if (jTable2 == null) {\r
832 fvImageParaTableModel = new ImageParaTableModel();\r
833 jTable2 = new JTable(fvImageParaTableModel);\r
a13899c5 834 fvImageParaTableModel.addColumn("FvImageNames");\r
835 fvImageParaTableModel.addColumn("Type");\r
ae0d4fd2 836 \r
a13899c5 837 \r
838 TableColumn typeCol = jTable2.getColumnModel().getColumn(1);\r
839 JComboBox cb = new JComboBox();\r
840 cb.addItem("ValidImageNames");\r
841 cb.addItem("Attributes");\r
842 cb.addItem("Options");\r
843 cb.addItem("Components");\r
844 typeCol.setCellEditor(new DefaultCellEditor(cb));\r
845 \r
a13899c5 846 jTable2.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
847 jTable2.getSelectionModel().addListSelectionListener(new ListSelectionListener(){\r
848 public void valueChanged(ListSelectionEvent e) {\r
849 if (e.getValueIsAdjusting()){\r
850 return;\r
851 }\r
852 ListSelectionModel lsm = (ListSelectionModel)e.getSource();\r
853 if (lsm.isSelectionEmpty()) {\r
854 return;\r
855 }\r
856 else{\r
ae0d4fd2 857 int selectedRow = lsm.getMinSelectionIndex();\r
858 LinkedHashMap<String, String> optionMap = new LinkedHashMap<String, String>();\r
859 ffc.getFvImagesFvImageOptions(selectedRow, optionMap);\r
860 if (optionMap.size() > 0){\r
861 fvOptionTableModel.setRowCount(0);\r
862 Set<String> key = optionMap.keySet();\r
863 Iterator<String> i = key.iterator();\r
864 while (i.hasNext()) {\r
865 \r
866 String k = (String)i.next();\r
867 String[] row = {k, optionMap.get(k)};\r
868 \r
869 fvOptionTableModel.addRow(row);\r
870 }\r
a13899c5 871 }\r
ae0d4fd2 872 \r
a13899c5 873 }\r
874 }\r
875 });\r
ae0d4fd2 876 \r
877 \r
a13899c5 878 }\r
879 return jTable2;\r
880 }\r
881\r
882\r
883 /**\r
884 * This method initializes jButton6 \r
885 * \r
886 * @return javax.swing.JButton \r
887 */\r
888 private JButton getJButton6() {\r
889 if (jButton6 == null) {\r
890 jButton6 = new JButton();\r
ae0d4fd2 891 jButton6.setPreferredSize(new java.awt.Dimension(120,20));\r
a13899c5 892// jButton6.setEnabled(false);\r
893 jButton6.setText("Delete Row");\r
894 jButton6.addActionListener(new AbstractAction() {\r
44053733 895 /**\r
896 * \r
897 */\r
898 private static final long serialVersionUID = 1L;\r
a13899c5 899\r
900 public void actionPerformed(ActionEvent arg0) {\r
901 // TODO Auto-generated method stub\r
902 if (jTable2.getSelectedRow() >= 0 ) {\r
903 fvImageParaTableModel.removeRow(jTable2.getSelectedRow());\r
904 ffc.removeFvImagesFvImage(jTable2.getSelectedRow());\r
905 }\r
906 }\r
907 \r
908 });\r
909 }\r
910 return jButton6;\r
911 }\r
912\r
913\r
914 /**\r
915 * This method initializes jCheckBox3 \r
916 * \r
917 * @return javax.swing.JCheckBox \r
918 */\r
919 private JCheckBox getJCheckBox3() {\r
920 if (jCheckBox3 == null) {\r
921 jCheckBox3 = new JCheckBox();\r
922 jCheckBox3.setText("FV Image Options");\r
923 jCheckBox3.addItemListener(new ItemListener(){\r
924\r
925 public void itemStateChanged(ItemEvent arg0) {\r
926 // TODO Auto-generated method stub\r
ae0d4fd2 927 boolean selected = jCheckBox3.isSelected();\r
a13899c5 928 \r
929 if (!jCheckBox2.isSelected() || jComboBox.getSelectedIndex() == 0) {\r
930 return;\r
931 }\r
932 \r
ae0d4fd2 933// jLabel5.setEnabled(selected);\r
934// jTextField4.setEnabled(selected);\r
935// jLabel6.setEnabled(selected);\r
936// jTextField5.setEnabled(selected);\r
937// jButton7.setEnabled(selected);\r
938// jButton8.setEnabled(selected);\r
939\r
a13899c5 940 }\r
941 \r
942 });\r
943 }\r
944 return jCheckBox3;\r
945 }\r
946\r
947\r
a13899c5 948 /**\r
949 * This method initializes jPanel6 \r
950 * \r
951 * @return javax.swing.JPanel \r
952 */\r
953 private JPanel getJPanel6() {\r
954 if (jPanel6 == null) {\r
955 StarLabel starLabel = new StarLabel();\r
956 starLabel.setVisible(false);\r
957 jPanel6 = new JPanel();\r
958 jPanel6.setPreferredSize(new java.awt.Dimension(480,120));\r
959 jPanel6.setBorder(javax.swing.BorderFactory.createEtchedBorder(javax.swing.border.EtchedBorder.RAISED));\r
960 jPanel6.add(getJCheckBox2(), null);\r
961 jPanel6.add(jLabel2, null);\r
962 jPanel6.add(getJComboBox(), null);\r
963 jPanel6.add(new StarLabel(), null);\r
964 jPanel6.add(jLabel3, null);\r
965 jPanel6.add(jLabel4, null);\r
966 jPanel6.add(getJTextField2(), null);\r
967 jPanel6.add(getJButton2(), null);\r
968 jPanel6.add(getJScrollPane2(), null);\r
969 jPanel6.add(getJButton3(), null);\r
970 }\r
971 return jPanel6;\r
972 }\r
973\r
974 /**\r
975 * This method initializes jPanel7 \r
976 * \r
977 * @return javax.swing.JPanel \r
978 */\r
979 private JPanel getJPanel7() {\r
980 if (jPanel7 == null) {\r
981 FlowLayout flowLayout1 = new FlowLayout();\r
982 flowLayout1.setAlignment(FlowLayout.LEFT);\r
983 jPanel7 = new JPanel();\r
984 jPanel7.setLayout(flowLayout1);\r
985 jPanel7.add(getJCheckBox(), null);\r
986 jPanel7.add(getJTextField3(), null);\r
987 jPanel7.add(getJButton5(), null);\r
988 jPanel7.addComponentListener(new ComponentAdapter(){\r
989 public void componentShown(ComponentEvent e) {\r
990 if (ffc.getFlashDefinitionFile() != null) {\r
991 jTextField3.setText(ffc.getFlashDefinitionFile());\r
992 }\r
993 }\r
994 public void componentHidden(ComponentEvent e) {\r
995 if (jCheckBox.isSelected()) {\r
996 ffc.genFlashDefinitionFile(jTextField3.getText());\r
997 }\r
998 }\r
999 });\r
1000 }\r
1001 return jPanel7;\r
1002 }\r
1003\r
1004 /**\r
1005 * This method initializes jCheckBox \r
1006 * \r
1007 * @return javax.swing.JCheckBox \r
1008 */\r
1009 private JCheckBox getJCheckBox() {\r
1010 if (jCheckBox == null) {\r
1011 jCheckBox = new JCheckBox();\r
1012 jCheckBox.setText("Flash Definition File");\r
1013 jCheckBox.addItemListener(new ItemListener() {\r
1014\r
1015 public void itemStateChanged(ItemEvent arg0) {\r
1016 // TODO Auto-generated method stub\r
1017 if (jCheckBox.isSelected()){\r
1018 jTextField3.setEnabled(true);\r
1019 jButton5.setEnabled(true);\r
1020 }\r
1021 else {\r
1022 \r
1023 jTextField3.setEnabled(false);\r
1024 jButton5.setEnabled(false);\r
1025 }\r
1026 }\r
1027 });\r
1028 }\r
1029 return jCheckBox;\r
1030 }\r
1031\r
1032 /**\r
1033 * This method initializes jTextField3 \r
1034 * \r
1035 * @return javax.swing.JTextField \r
1036 */\r
1037 private JTextField getJTextField3() {\r
1038 if (jTextField3 == null) {\r
1039 jTextField3 = new JTextField();\r
1040 jTextField3.setEnabled(false);\r
1041 jTextField3.setPreferredSize(new Dimension(300, 20));\r
1042 }\r
1043 return jTextField3;\r
1044 }\r
1045\r
1046 /**\r
1047 * This method initializes jButton5 \r
1048 * \r
1049 * @return javax.swing.JButton \r
1050 */\r
1051 private JButton getJButton5() {\r
1052 if (jButton5 == null) {\r
1053 jButton5 = new JButton();\r
1054 jButton5.setEnabled(false);\r
1055 jButton5.setText("Browse");\r
1056 jButton5.setPreferredSize(new Dimension(78, 20));\r
1057 jButton5.addActionListener(new AbstractAction(){\r
44053733 1058 /**\r
1059 * \r
1060 */\r
1061 private static final long serialVersionUID = 1L;\r
1062\r
a13899c5 1063 public void actionPerformed(ActionEvent e) {\r
1064 // TODO Auto-generated method stub\r
1065 JFileChooser chooser = new JFileChooser();\r
1066 chooser.setMultiSelectionEnabled(false);\r
1067 chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);\r
1068 int retval = chooser.showOpenDialog(frame);\r
1069 if (retval == JFileChooser.APPROVE_OPTION) {\r
1070\r
1071 File theFile = chooser.getSelectedFile();\r
1072 jTextField3.setText(theFile.getPath());\r
1073 }\r
1074 }\r
1075 \r
1076 });\r
1077 }\r
1078 return jButton5;\r
1079 }\r
1080\r
44053733 1081 /**\r
ae0d4fd2 1082 * This method initializes jTextField4 \r
44053733 1083 * \r
ae0d4fd2 1084 * @return javax.swing.JTextField \r
44053733 1085 */\r
ae0d4fd2 1086 private JTextField getJTextField4() {\r
1087 if (jTextField4 == null) {\r
1088 jTextField4 = new JTextField();\r
1089 jTextField4.setEnabled(false);\r
1090 jTextField4.setPreferredSize(new Dimension(100, 20));\r
44053733 1091 }\r
ae0d4fd2 1092 return jTextField4;\r
1093 }\r
1094\r
1095 /**\r
1096 * This method initializes jTextField5 \r
1097 * \r
1098 * @return javax.swing.JTextField \r
1099 */\r
1100 private JTextField getJTextField5() {\r
1101 if (jTextField5 == null) {\r
1102 jTextField5 = new JTextField();\r
1103 jTextField5.setEnabled(false);\r
1104 jTextField5.setPreferredSize(new Dimension(100, 20));\r
1105 }\r
1106 return jTextField5;\r
1107 }\r
1108\r
1109 /**\r
1110 * This method initializes jPanel8 \r
1111 * \r
1112 * @return javax.swing.JPanel \r
1113 */\r
1114 private JPanel getJPanel8() {\r
1115 if (jPanel8 == null) {\r
1116 jPanel8 = new JPanel();\r
1117 jPanel8.setPreferredSize(new Dimension(80, 55));\r
1118 jPanel8.add(getJButton7(), null);\r
1119 jPanel8.add(getJButton8(), null);\r
1120 }\r
1121 return jPanel8;\r
1122 }\r
1123\r
1124 /**\r
1125 * This method initializes jButton7 \r
1126 * \r
1127 * @return javax.swing.JButton \r
1128 */\r
1129 private JButton getJButton7() {\r
1130 if (jButton7 == null) {\r
1131 jButton7 = new JButton();\r
1132 jButton7.setEnabled(true);\r
1133 jButton7.setText("Add");\r
1134 jButton7.setPreferredSize(new Dimension(80, 20));\r
1135 jButton7.addActionListener(new AbstractAction() {\r
1136 /**\r
1137 * \r
1138 */\r
1139 private static final long serialVersionUID = 1L;\r
1140\r
1141 public void actionPerformed(ActionEvent e) {\r
1142 if (jTextField4.getText().length() > 0 && jTextField5.getText().length() > 0){\r
1143 String[] row = {jTextField4.getText(), jTextField5.getText()}; \r
1144 fvOptionTableModel.addRow(row);\r
1145 }\r
1146 }\r
1147 });\r
1148 }\r
1149 return jButton7;\r
1150 }\r
1151\r
1152 /**\r
1153 * This method initializes jButton8 \r
1154 * \r
1155 * @return javax.swing.JButton \r
1156 */\r
1157 private JButton getJButton8() {\r
1158 if (jButton8 == null) {\r
1159 jButton8 = new JButton();\r
1160 jButton8.setEnabled(true);\r
1161 jButton8.setText("Delete");\r
1162 jButton8.setPreferredSize(new Dimension(80, 20));\r
1163 jButton8.addActionListener(new AbstractAction() {\r
1164 /**\r
1165 * \r
1166 */\r
1167 private static final long serialVersionUID = 1L;\r
1168\r
1169 public void actionPerformed(ActionEvent e) {\r
1170 if (jTable3.getSelectedRow() >= 0){\r
1171 fvOptionTableModel.removeRow(jTable.getSelectedRow());\r
1172 }\r
1173 }\r
1174 });\r
1175 }\r
1176 return jButton8;\r
1177 }\r
1178\r
1179 /**\r
1180 * This method initializes jScrollPane \r
1181 * \r
1182 * @return javax.swing.JScrollPane \r
1183 */\r
1184 private JScrollPane getJScrollPane() {\r
1185 if (jScrollPane == null) {\r
1186 jScrollPane = new JScrollPane();\r
1187 jScrollPane.setPreferredSize(new java.awt.Dimension(350,80));\r
1188 jScrollPane.setViewportView(getJTable3());\r
1189 }\r
1190 return jScrollPane;\r
1191 }\r
1192\r
1193 /**\r
1194 * This method initializes jTable3 \r
1195 * \r
1196 * @return javax.swing.JTable \r
1197 */\r
1198 private JTable getJTable3() {\r
1199 if (jTable3 == null) {\r
1200 fvOptionTableModel = new DefaultTableModel();\r
1201 fvOptionTableModel.addColumn("Name");\r
1202 fvOptionTableModel.addColumn("Value");\r
1203 jTable3 = new JTable(fvOptionTableModel);\r
1204\r
1205 jTable3.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
1206 jTable3.setRowHeight(20);\r
1207 \r
1208 }\r
1209 return jTable3;\r
1210 }\r
1211\r
1212 /**\r
1213 * This method initializes jButton9 \r
1214 * \r
1215 * @return javax.swing.JButton \r
1216 */\r
1217 private JButton getJButton9() {\r
1218 if (jButton9 == null) {\r
1219 jButton9 = new JButton();\r
1220 jButton9.setPreferredSize(new Dimension(120, 20));\r
1221 jButton9.setActionCommand("Update");\r
1222 jButton9.setText("Update FV");\r
1223 jButton9.addActionListener(new java.awt.event.ActionListener() {\r
1224 public void actionPerformed(java.awt.event.ActionEvent e) {\r
1225 int row = jTable2.getSelectedRow();\r
1226 if (jTable2.isEditing()) {\r
1227 jTable2.getCellEditor().stopCellEditing();\r
1228 }\r
1229 if (jTable3.isEditing()) {\r
1230 jTable3.getCellEditor().stopCellEditing();\r
1231 }\r
1232 \r
1233 //ToDo Check data validity before update\r
1234 String name = fvImageParaTableModel.getValueAt(row, 0) + "";\r
1235 String type = fvImageParaTableModel.getValueAt(row, 1) + "";\r
1236 \r
1237 LinkedHashMap<String, String> lhm = new LinkedHashMap<String, String>();\r
1238 getOptionNameValue(lhm);\r
1239 \r
1240\r
1241 ffc.updateFvImagesFvImage(row, name.split(" "), type, lhm);\r
1242 \r
1243 }\r
1244 });\r
1245 }\r
1246 return jButton9;\r
44053733 1247 }\r
1248\r
a13899c5 1249 /**\r
1250 * @param args\r
1251 */\r
1252 public static void main(String[] args) {\r
1253 // TODO Auto-generated method stub\r
1254 new FpdFlash().setVisible(true);\r
1255 }\r
1256\r
1257 /**\r
1258 * This method initializes this\r
1259 * \r
1260 * @return void\r
1261 */\r
1262 private void initialize() {\r
1263 this.setSize(518, 650);\r
1264 this.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);\r
1265 this.setContentPane(getJContentPane());\r
1266 this.setTitle("FPD Flash Definitions");\r
44053733 1267 this.addInternalFrameListener(new InternalFrameAdapter(){\r
1268 public void internalFrameDeactivated(InternalFrameEvent e){\r
1269 if (jTable.isEditing()) {\r
1270 jTable.getCellEditor().stopCellEditing();\r
1271 }\r
1272 if (jTable1.isEditing()) {\r
1273 jTable1.getCellEditor().stopCellEditing();\r
1274 }\r
1275 if (jTable2.isEditing()) {\r
1276 jTable2.getCellEditor().stopCellEditing();\r
1277 }\r
1278 }\r
1279 });\r
a13899c5 1280 }\r
1281\r
1282 private void init(FpdFileContents ffc) {\r
1283 if (ffc.getFvImagesFvImageCount() == 0) {\r
1284 return;\r
1285 }\r
1286 String[][] saa = new String[ffc.getFvImagesFvImageCount()][2];\r
ae0d4fd2 1287// ArrayList<LinkedHashMap<String, String>> options = new ArrayList<LinkedHashMap<String, String>>(ffc.getFvImagesFvImageCount());\r
1288//\r
1289// for (int j = 0; j < ffc.getFvImagesFvImageCount(); ++j){\r
1290// options.add(new LinkedHashMap<String, String>());\r
1291// }\r
1292 ffc.getFvImagesFvImages(saa);\r
a13899c5 1293 \r
ae0d4fd2 1294 \r
a13899c5 1295 int i = 0;\r
a13899c5 1296 while (i < saa.length) {\r
a13899c5 1297 \r
ae0d4fd2 1298 fvImageParaTableModel.addRow(saa[i]);\r
a13899c5 1299 ++i;\r
1300 }\r
1301 }\r
1302 \r
ae0d4fd2 1303 private void getOptionNameValue(Map<String, String> m){\r
1304 for (int i = 0; i < jTable3.getRowCount(); ++i) {\r
1305 m.put(fvOptionTableModel.getValueAt(i, 0)+"", fvOptionTableModel.getValueAt(i, 1)+"");\r
a13899c5 1306 }\r
1307 }\r
1308 /**\r
1309 * This method initializes jContentPane\r
1310 * \r
1311 * @return javax.swing.JPanel\r
1312 */\r
1313 private JPanel getJContentPane() {\r
1314 if (jContentPane == null) {\r
1315 jContentPane = new JPanel();\r
1316 jContentPane.setLayout(new BorderLayout());\r
1317 jContentPane.add(getJPanel(), java.awt.BorderLayout.EAST);\r
1318 jContentPane.add(getJPanel1(), java.awt.BorderLayout.SOUTH);\r
1319 jContentPane.add(getJPanel2(), java.awt.BorderLayout.WEST);\r
1320 jContentPane.add(getJPanel3(), java.awt.BorderLayout.NORTH);\r
1321 jContentPane.add(getJTabbedPane(), java.awt.BorderLayout.CENTER);\r
1322 }\r
1323 return jContentPane;\r
1324 }\r
1325\r
1326} // @jve:decl-index=0:visual-constraint="10,10"\r
1327\r
1328class ImageParaTableModel extends DefaultTableModel {\r
1329\r
44053733 1330 private static final long serialVersionUID = 1L;\r
44053733 1331 \r
1332 public boolean isCellEditable(int row, int col) {\r
1333 if (getValueAt(row, 1).equals("ImageName") && col >=1) {\r
1334 return false;\r
1335 }\r
1336 return true;\r
a13899c5 1337 }\r
1338}\r
ae0d4fd2 1339\r