]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdFlash.java
changed variable names from textfieldsomething to somethingtextfield
[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
908b1c05 22import javax.swing.JOptionPane;\r
a13899c5 23import javax.swing.JTabbedPane;\r
24import javax.swing.JButton;\r
25import javax.swing.ListSelectionModel;\r
26\r
27import org.tianocore.PlatformSurfaceAreaDocument;\r
61919f8c 28import org.tianocore.frameworkwizard.common.GlobalData;\r
d6d24759 29import org.tianocore.frameworkwizard.common.Identifications.OpeningPlatformType;\r
a13899c5 30import org.tianocore.frameworkwizard.common.ui.IInternalFrame;\r
31import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
61919f8c 32import org.tianocore.frameworkwizard.module.Identifications.ModuleIdentification;\r
33import org.tianocore.frameworkwizard.platform.ui.FpdFrameworkModules;\r
34import org.tianocore.frameworkwizard.platform.ui.global.WorkspaceProfile;\r
a13899c5 35\r
36import java.awt.FlowLayout;\r
37import java.awt.event.ActionEvent;\r
a13899c5 38import java.awt.event.ItemEvent;\r
39import java.awt.event.ItemListener;\r
3658f95e 40import java.io.BufferedReader;\r
a13899c5 41import java.io.File;\r
3658f95e 42import java.io.FileReader;\r
a13899c5 43import java.util.Iterator;\r
44import java.util.LinkedHashMap;\r
45import java.util.Map;\r
46import java.util.Set;\r
3658f95e 47import java.util.Vector;\r
a13899c5 48\r
49import javax.swing.JCheckBox;\r
50import javax.swing.JTextField;\r
51import java.awt.GridLayout;\r
52import javax.swing.JLabel;\r
53import javax.swing.JScrollPane;\r
54import javax.swing.JTable;\r
44053733 55import javax.swing.event.InternalFrameAdapter;\r
56import javax.swing.event.InternalFrameEvent;\r
a13899c5 57import javax.swing.event.ListSelectionEvent;\r
58import javax.swing.event.ListSelectionListener;\r
59import javax.swing.event.TableModelEvent;\r
60import javax.swing.event.TableModelListener;\r
61import javax.swing.table.DefaultTableModel;\r
62import javax.swing.table.TableColumn;\r
63import javax.swing.table.TableModel;\r
64import javax.swing.JComboBox;\r
65import java.awt.Dimension;\r
3658f95e 66import javax.swing.JSplitPane;\r
a13899c5 67\r
68public class FpdFlash extends IInternalFrame {\r
69\r
44053733 70 /**\r
71 * \r
72 */\r
73 private static final long serialVersionUID = 1L;\r
a13899c5 74 static JFrame frame;\r
75 private JPanel jContentPane = null;\r
4da2e625 76 private JPanel jPanelContentEast = null;\r
77 private JPanel jPanelContentSouth = null;\r
78 private JPanel jPanelContentWest = null;\r
79 private JPanel jPanelContentNorth = null;\r
a13899c5 80 private JTabbedPane jTabbedPane = null;\r
81 private JPanel jPanelFvImages = null;\r
a13899c5 82 private JPanel jPanelFvImageN = null;\r
a13899c5 83 private JPanel jPanelFvImageS = null;\r
4da2e625 84 private JCheckBox jCheckBoxFvProperty = null;\r
85 private JLabel jLabelFvPropName = null;\r
86 private JTextField jTextFieldFvPropName = null;\r
87 private JLabel jLabelFvPropValue = null;\r
88 private JTextField jTextFieldFvPropValue = null;\r
89 private JButton jButtonFvPropAdd = null;\r
90 private JScrollPane jScrollPaneFvProp = null;\r
91 private JTable jTableFvProp = null;\r
92 private JPanel jPanelFvPropButtonGroup = null;\r
93 private JButton jButtonFvPropDel = null;\r
a13899c5 94 private DefaultTableModel fvPropertyTableModel = null;\r
95 private DefaultTableModel fvImageNameTableModel = null;\r
96 private ImageParaTableModel fvImageParaTableModel = null;\r
ae0d4fd2 97 private DefaultTableModel fvOptionTableModel = null;\r
a13899c5 98 private JPanel jPanelFvImageC = null;\r
4da2e625 99 private JCheckBox jCheckBoxFvImagePara = null;\r
100 private JLabel jLabelFvParaType = null;\r
101 private JComboBox jComboBoxFvParaType = null;\r
102 private JLabel jLabelFvImageNames = null;\r
103 private JLabel jLabelFvParaName = null;\r
104 private JTextField jTextFieldFvParaName = null;\r
105 private JButton jButtonFvParaAdd = null;\r
106 private JScrollPane jScrollPaneFvImageNames = null;\r
107 private JTable jTableFvImageNames = null;\r
108 private JButton jButtonFvParaDel = null;\r
109 private JPanel jPanelFvImageOpts = null;\r
110 private JButton jButtonAddFvImage = null;\r
111 private JScrollPane jScrollPaneFvInfo = null;\r
112 private JTable jTableFvInfo = null;\r
113 private JButton jButtonDelFvImage = null;\r
114 private JCheckBox jCheckBoxFvImageOpts = null;\r
115 private JPanel jPanelFvImagePara = null;\r
d6d24759 116 private OpeningPlatformType docConsole = null;\r
a13899c5 117 private FpdFileContents ffc = null;\r
4da2e625 118 private JPanel jPanelFdf = null;\r
119 private JCheckBox jCheckBoxFdf = null;\r
120 private JTextField jTextFieldFdf = null;\r
121 private JButton jButtonFdfBrowse = null;\r
122 private JLabel jLabelFvImageOptName = null;\r
123 private JTextField jTextFieldFvImageOptName = null;\r
124 private JLabel jLabelFvImageOptValue = null;\r
125 private JTextField jTextFieldFvImageOptValue = null;\r
126 private JPanel jPanelFvImageOptsButtonGroup = null;\r
127 private JButton jButtonFvImageOptAdd = null;\r
128 private JButton jButtonFvImageOptDel = null;\r
ae0d4fd2 129 private JScrollPane jScrollPane = null;\r
4da2e625 130 private JTable jTableFvImageOpts = null;\r
131 private JButton jButtonUpdateFvImage = null;\r
3658f95e 132 private JPanel jPanelFdfN = null;\r
133 private JPanel jPanelFdfS = null;\r
134 private JSplitPane jSplitPaneFdfC = null;\r
135 private JPanel jPanelFdfCTop = null;\r
136 private JPanel jPanelFdfCBottom = null;\r
137 private JPanel jPanelFdfCTopN = null;\r
138 private JPanel jPanelFdfCTopS = null;\r
139 private JPanel jPanelFdfCTopC = null;\r
140 private JPanel jPanelFdfCBottomN = null;\r
141 private JPanel jPanelFdfCBottomC = null;\r
142 private JLabel jLabelFvInFdf = null;\r
143 private JLabel jLabelFvAdditional = null;\r
144 private JScrollPane jScrollPaneFvInFdf = null;\r
145 private JTable jTableFvInFdf = null;\r
146 private NonEditableTableModel fvInFdfTableModel = null; // @jve:decl-index=0:visual-constraint=""\r
147 private JButton jButtonFvInFdfOptions = null;\r
148 private JScrollPane jScrollPaneFvAdditional = null;\r
149 private JTable jTableFvAdditional = null;\r
150 private DefaultTableModel fvAddtionalTableModel = null; // @jve:decl-index=0:visual-constraint=""\r
151 private JButton jButtonAddFv = null;\r
152 private JButton jButtonDelFv = null;\r
153 private JButton jButtonAddFvOptions = null;\r
154 \r
3658f95e 155 \r
a13899c5 156 public FpdFlash() {\r
157 super();\r
158 // TODO Auto-generated constructor stub\r
159\r
160 initialize();\r
161 this.setBounds(new java.awt.Rectangle(0, 0, 500, 370));\r
162 this.setVisible(true);\r
163 }\r
164\r
165 public FpdFlash(PlatformSurfaceAreaDocument.PlatformSurfaceArea fpd){\r
166 this();\r
167 ffc = new FpdFileContents(fpd);\r
168 init(ffc);\r
169 }\r
170 \r
d6d24759 171 public FpdFlash(OpeningPlatformType opt) {\r
172 this(opt.getXmlFpd());\r
173 docConsole = opt;\r
174 }\r
175 \r
a13899c5 176 /**\r
177 * This method initializes jPanel \r
178 * \r
179 * @return javax.swing.JPanel \r
180 */\r
4da2e625 181 private JPanel getJPanelContentEast() {\r
182 if (jPanelContentEast == null) {\r
183 jPanelContentEast = new JPanel();\r
a13899c5 184 }\r
4da2e625 185 return jPanelContentEast;\r
a13899c5 186 }\r
187\r
188 /**\r
189 * This method initializes jPanel1 \r
190 * \r
191 * @return javax.swing.JPanel \r
192 */\r
4da2e625 193 private JPanel getJPanelContentSouth() {\r
194 if (jPanelContentSouth == null) {\r
a13899c5 195 FlowLayout flowLayout = new FlowLayout();\r
196 flowLayout.setAlignment(java.awt.FlowLayout.RIGHT);\r
197 flowLayout.setHgap(15);\r
4da2e625 198 jPanelContentSouth = new JPanel();\r
199 jPanelContentSouth.setLayout(flowLayout);\r
200 jPanelContentSouth.setComponentOrientation(java.awt.ComponentOrientation.LEFT_TO_RIGHT);\r
a13899c5 201 }\r
4da2e625 202 return jPanelContentSouth;\r
a13899c5 203 }\r
204\r
205 /**\r
206 * This method initializes jPanel2 \r
207 * \r
208 * @return javax.swing.JPanel \r
209 */\r
4da2e625 210 private JPanel getJPanelContentWest() {\r
211 if (jPanelContentWest == null) {\r
212 jPanelContentWest = new JPanel();\r
a13899c5 213 }\r
4da2e625 214 return jPanelContentWest;\r
a13899c5 215 }\r
216\r
217 /**\r
218 * This method initializes jPanel3 \r
219 * \r
220 * @return javax.swing.JPanel \r
221 */\r
4da2e625 222 private JPanel getJPanelContentNorth() {\r
223 if (jPanelContentNorth == null) {\r
224 jPanelContentNorth = new JPanel();\r
a13899c5 225 }\r
4da2e625 226 return jPanelContentNorth;\r
a13899c5 227 }\r
228\r
229 /**\r
230 * This method initializes jTabbedPane \r
231 * \r
232 * @return javax.swing.JTabbedPane \r
233 */\r
234 private JTabbedPane getJTabbedPane() {\r
235 if (jTabbedPane == null) {\r
236 jTabbedPane = new JTabbedPane();\r
3658f95e 237 jTabbedPane.addTab("General", null, getJPanelFdf(), null);\r
61919f8c 238 jTabbedPane.addTab("Advanced", null, getJPanelFvImages(), null);\r
a13899c5 239 \r
240 }\r
241 return jTabbedPane;\r
242 }\r
243\r
244 /**\r
245 * This method initializes jPanelFvImages \r
246 * \r
247 * @return javax.swing.JPanel \r
248 */\r
249 private JPanel getJPanelFvImages() {\r
250 if (jPanelFvImages == null) {\r
251 jPanelFvImages = new JPanel();\r
252 jPanelFvImages.setLayout(new BorderLayout());\r
253 jPanelFvImages.add(getJPanelFvImageN(), java.awt.BorderLayout.NORTH);\r
254// jPanelFvImages.add(getJPanelFvImageW(), java.awt.BorderLayout.WEST);\r
255 jPanelFvImages.add(getJPanelFvImageS(), java.awt.BorderLayout.SOUTH);\r
256 jPanelFvImages.add(getJPanelFvImageC(), java.awt.BorderLayout.CENTER);\r
257 \r
258 }\r
259 return jPanelFvImages;\r
260 }\r
261\r
a13899c5 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
4da2e625 269 jLabelFvPropValue = new JLabel();\r
270 jLabelFvPropValue.setText("Value");\r
271 jLabelFvPropValue.setEnabled(false);\r
272 jLabelFvPropValue.setPreferredSize(new java.awt.Dimension(38,20));\r
273 jLabelFvPropName = new JLabel();\r
274 jLabelFvPropName.setText("Name");\r
275 jLabelFvPropName.setEnabled(false);\r
276 jLabelFvPropName.setPreferredSize(new java.awt.Dimension(38,20));\r
a13899c5 277 FlowLayout flowLayout2 = new FlowLayout();\r
3658f95e 278 flowLayout2.setAlignment(java.awt.FlowLayout.LEFT);\r
a13899c5 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
4da2e625 284 jPanelFvImageN.add(getJCheckBoxFvProperty(), null);\r
285 jPanelFvImageN.add(jLabelFvPropName, null);\r
286 jPanelFvImageN.add(getJTextFieldFvPropName(), null);\r
287 jPanelFvImageN.add(jLabelFvPropValue, null);\r
288 jPanelFvImageN.add(getJTextFieldFvPropValue(), null);\r
289 jPanelFvImageN.add(getJScrollPaneFvProp(), null);\r
290 jPanelFvImageN.add(getJPanelFvPropButtonGroup(), null);\r
a13899c5 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
4da2e625 307 jPanelFvImageS.add(getJScrollPaneFvInfo(), null);\r
a13899c5 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
4da2e625 318 private JCheckBox getJCheckBoxFvProperty() {\r
319 if (jCheckBoxFvProperty == null) {\r
320 jCheckBoxFvProperty = new JCheckBox();\r
3658f95e 321 jCheckBoxFvProperty.setText("Global FV Variables");\r
4da2e625 322 jCheckBoxFvProperty.addItemListener(new ItemListener(){\r
a13899c5 323\r
324 public void itemStateChanged(ItemEvent arg0) {\r
325 // TODO Auto-generated method stub\r
4da2e625 326 boolean seleted = jCheckBoxFvProperty.isSelected();\r
a13899c5 327 \r
4da2e625 328 jLabelFvPropName.setEnabled(seleted);\r
329 jTextFieldFvPropName.setEnabled(seleted);\r
330 jLabelFvPropValue.setEnabled(seleted);\r
331 jTextFieldFvPropValue.setEnabled(seleted);\r
332 jTableFvProp.setEnabled(seleted);\r
333 jButtonFvPropAdd.setEnabled(seleted);\r
334 jButtonFvPropDel.setEnabled(seleted);\r
a13899c5 335 \r
336 \r
337 }\r
338 \r
339 });\r
340 }\r
4da2e625 341 return jCheckBoxFvProperty;\r
a13899c5 342 }\r
343\r
344\r
345 /**\r
346 * This method initializes jTextField \r
347 * \r
348 * @return javax.swing.JTextField \r
349 */\r
4da2e625 350 private JTextField getJTextFieldFvPropName() {\r
351 if (jTextFieldFvPropName == null) {\r
352 jTextFieldFvPropName = new JTextField();\r
353 jTextFieldFvPropName.setPreferredSize(new java.awt.Dimension(100,20));\r
354 jTextFieldFvPropName.setEnabled(false);\r
a13899c5 355 }\r
4da2e625 356 return jTextFieldFvPropName;\r
a13899c5 357 }\r
358\r
359\r
360 /**\r
361 * This method initializes jTextField1 \r
362 * \r
363 * @return javax.swing.JTextField \r
364 */\r
4da2e625 365 private JTextField getJTextFieldFvPropValue() {\r
366 if (jTextFieldFvPropValue == null) {\r
367 jTextFieldFvPropValue = new JTextField();\r
368 jTextFieldFvPropValue.setPreferredSize(new java.awt.Dimension(100,20));\r
369 jTextFieldFvPropValue.setEnabled(false);\r
a13899c5 370 }\r
4da2e625 371 return jTextFieldFvPropValue;\r
a13899c5 372 }\r
373\r
374\r
375 /**\r
376 * This method initializes jButton \r
377 * \r
378 * @return javax.swing.JButton \r
379 */\r
4da2e625 380 private JButton getJButtonFvPropAdd() {\r
381 if (jButtonFvPropAdd == null) {\r
382 jButtonFvPropAdd = new JButton();\r
383 jButtonFvPropAdd.setPreferredSize(new java.awt.Dimension(80,20));\r
384 jButtonFvPropAdd.setEnabled(false);\r
385 jButtonFvPropAdd.setText("Add");\r
386 jButtonFvPropAdd.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
4da2e625 393 if (jTextFieldFvPropName.getText().length() > 0 && jTextFieldFvPropValue.getText().length() > 0){\r
394 String[] row = {jTextFieldFvPropName.getText(), jTextFieldFvPropValue.getText()}; \r
a13899c5 395 fvPropertyTableModel.addRow(row);\r
d6d24759 396 docConsole.setSaved(false);\r
a13899c5 397 ffc.genFvImagesNameValue(row[0], row[1]);\r
398 }\r
399 }\r
400 });\r
401 }\r
4da2e625 402 return jButtonFvPropAdd;\r
a13899c5 403 }\r
404\r
405\r
406 /**\r
407 * This method initializes jScrollPane1 \r
408 * \r
409 * @return javax.swing.JScrollPane \r
410 */\r
4da2e625 411 private JScrollPane getJScrollPaneFvProp() {\r
412 if (jScrollPaneFvProp == null) {\r
413 jScrollPaneFvProp = new JScrollPane();\r
414 jScrollPaneFvProp.setPreferredSize(new java.awt.Dimension(350,55));\r
415 jScrollPaneFvProp.setViewportView(getJTableFvProp());\r
a13899c5 416 }\r
4da2e625 417 return jScrollPaneFvProp;\r
a13899c5 418 }\r
419\r
420\r
421 /**\r
422 * This method initializes jTable \r
423 * \r
424 * @return javax.swing.JTable \r
425 */\r
4da2e625 426 private JTable getJTableFvProp() {\r
427 if (jTableFvProp == null) {\r
a13899c5 428 fvPropertyTableModel = new DefaultTableModel();\r
4da2e625 429 jTableFvProp = new JTable(fvPropertyTableModel);\r
a13899c5 430 fvPropertyTableModel.addColumn("Name");\r
431 fvPropertyTableModel.addColumn("Value");\r
4da2e625 432 jTableFvProp.setRowHeight(20);\r
433 jTableFvProp.setEnabled(false);\r
a13899c5 434 \r
4da2e625 435 jTableFvProp.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
436 jTableFvProp.getSelectionModel().addListSelectionListener(new ListSelectionListener(){\r
a13899c5 437 public void valueChanged(ListSelectionEvent e) {\r
438 if (e.getValueIsAdjusting()){\r
439 return;\r
440 }\r
441 ListSelectionModel lsm = (ListSelectionModel)e.getSource();\r
442 if (lsm.isSelectionEmpty()) {\r
443 return;\r
444 }\r
445 else{\r
446// selectedRow = lsm.getMinSelectionIndex();\r
447 }\r
448 }\r
449 });\r
450 \r
4da2e625 451 jTableFvProp.getModel().addTableModelListener(new TableModelListener(){\r
a13899c5 452 public void tableChanged(TableModelEvent arg0) {\r
453 // TODO Auto-generated method stub\r
454 int row = arg0.getFirstRow();\r
455 TableModel m = (TableModel)arg0.getSource();\r
456 if (arg0.getType() == TableModelEvent.UPDATE){\r
457 \r
458 String name = m.getValueAt(row, 0) + "";\r
459 String value = m.getValueAt(row, 1) + "";\r
d6d24759 460 docConsole.setSaved(false);\r
a13899c5 461 ffc.updateFvImagesNameValue(row, name, value);\r
462 }\r
463 }\r
464 });\r
465 }\r
4da2e625 466 return jTableFvProp;\r
a13899c5 467 }\r
468\r
469\r
470 /**\r
471 * This method initializes jPanel4 \r
472 * \r
473 * @return javax.swing.JPanel \r
474 */\r
4da2e625 475 private JPanel getJPanelFvPropButtonGroup() {\r
476 if (jPanelFvPropButtonGroup == null) {\r
477 jPanelFvPropButtonGroup = new JPanel();\r
478 jPanelFvPropButtonGroup.setPreferredSize(new java.awt.Dimension(80,55));\r
a13899c5 479 \r
4da2e625 480 jPanelFvPropButtonGroup.add(getJButtonFvPropAdd(), null);\r
481 jPanelFvPropButtonGroup.add(getJButtonFvPropDel(), null);\r
a13899c5 482 }\r
4da2e625 483 return jPanelFvPropButtonGroup;\r
a13899c5 484 }\r
485\r
486\r
487 /**\r
488 * This method initializes jButton1 \r
489 * \r
490 * @return javax.swing.JButton \r
491 */\r
4da2e625 492 private JButton getJButtonFvPropDel() {\r
493 if (jButtonFvPropDel == null) {\r
494 jButtonFvPropDel = new JButton();\r
495 jButtonFvPropDel.setPreferredSize(new java.awt.Dimension(80,20));\r
496 jButtonFvPropDel.setEnabled(false);\r
497 jButtonFvPropDel.setText("Delete");\r
498 jButtonFvPropDel.addActionListener(new AbstractAction() {\r
44053733 499 /**\r
500 * \r
501 */\r
502 private static final long serialVersionUID = 1L;\r
503\r
a13899c5 504 public void actionPerformed(ActionEvent e) {\r
4da2e625 505 if (jTableFvProp.getSelectedRow() >= 0){\r
506 fvPropertyTableModel.removeRow(jTableFvProp.getSelectedRow());\r
d6d24759 507 docConsole.setSaved(false);\r
4da2e625 508 ffc.removeFvImagesNameValue(jTableFvProp.getSelectedRow());\r
a13899c5 509 }\r
510 }\r
511 });\r
512 }\r
4da2e625 513 return jButtonFvPropDel;\r
a13899c5 514 }\r
515\r
516\r
517 /**\r
518 * This method initializes jPanelFvImageC \r
519 * \r
520 * @return javax.swing.JPanel \r
521 */\r
522 private JPanel getJPanelFvImageC() {\r
523 if (jPanelFvImageC == null) {\r
4da2e625 524 jLabelFvParaName = new JLabel();\r
525 jLabelFvParaName.setPreferredSize(new Dimension(38, 20));\r
526 jLabelFvParaName.setEnabled(false);\r
527 jLabelFvParaName.setText("Name");\r
528 jLabelFvImageNames = new JLabel();\r
529 jLabelFvImageNames.setText("FV Image Names");\r
530 jLabelFvImageNames.setEnabled(false);\r
531 jLabelFvImageNames.setPreferredSize(new java.awt.Dimension(150,20));\r
532 jLabelFvParaType = new JLabel();\r
533 jLabelFvParaType.setText("Type");\r
534 jLabelFvParaType.setEnabled(false);\r
535 jLabelFvParaType.setPreferredSize(new java.awt.Dimension(70,20));\r
a13899c5 536 FlowLayout flowLayout3 = new FlowLayout();\r
537 flowLayout3.setAlignment(java.awt.FlowLayout.LEFT);\r
538 flowLayout3.setHgap(5);\r
539 jPanelFvImageC = new JPanel();\r
540 jPanelFvImageC.setLayout(flowLayout3);\r
4da2e625 541 jPanelFvImageC.add(getJPanelFvImagePara(), null);\r
a13899c5 542 \r
4da2e625 543 jPanelFvImageC.add(getJPanelFvImageOpts(), null);\r
a13899c5 544 \r
545 }\r
546 return jPanelFvImageC;\r
547 }\r
548\r
549\r
550 /**\r
551 * This method initializes jCheckBox2 \r
552 * \r
553 * @return javax.swing.JCheckBox \r
554 */\r
4da2e625 555 private JCheckBox getJCheckBoxFvImagePara() {\r
556 if (jCheckBoxFvImagePara == null) {\r
557 jCheckBoxFvImagePara = new JCheckBox();\r
558 jCheckBoxFvImagePara.setText("FV Image Parameters");\r
559 jCheckBoxFvImagePara.setPreferredSize(new java.awt.Dimension(200,20));\r
560 jCheckBoxFvImagePara.addItemListener(new ItemListener(){\r
a13899c5 561\r
562 public void itemStateChanged(ItemEvent arg0) {\r
563 // TODO Auto-generated method stub\r
4da2e625 564 boolean seleted = jCheckBoxFvImagePara.isSelected();\r
a13899c5 565 \r
4da2e625 566 jLabelFvParaType.setEnabled(seleted);\r
567 jLabelFvImageNames.setEnabled(seleted);\r
568 jLabelFvParaName.setEnabled(seleted);\r
569 jComboBoxFvParaType.setEnabled(seleted);\r
570 jTextFieldFvParaName.setEnabled(seleted);\r
a13899c5 571 \r
4da2e625 572 jTableFvImageNames.setEnabled(seleted);\r
573 jButtonFvParaAdd.setEnabled(seleted);\r
574 jButtonFvParaDel.setEnabled(seleted);\r
a13899c5 575 \r
576 \r
577 }\r
578 \r
579 });\r
580 }\r
4da2e625 581 return jCheckBoxFvImagePara;\r
a13899c5 582 }\r
583\r
584\r
585 /**\r
586 * This method initializes jComboBox \r
587 * \r
588 * @return javax.swing.JComboBox \r
589 */\r
4da2e625 590 private JComboBox getJComboBoxFvParaType() {\r
591 if (jComboBoxFvParaType == null) {\r
592 jComboBoxFvParaType = new JComboBox();\r
593 jComboBoxFvParaType.addItem("ImageName");\r
594 jComboBoxFvParaType.addItem("Attributes");\r
595 jComboBoxFvParaType.addItem("Options");\r
596 jComboBoxFvParaType.addItem("Components");\r
597 jComboBoxFvParaType.setPreferredSize(new java.awt.Dimension(180,20));\r
598 jComboBoxFvParaType.setEnabled(false);\r
599 jComboBoxFvParaType.addItemListener(new ItemListener() {\r
a13899c5 600\r
601 public void itemStateChanged(ItemEvent arg0) {\r
602 // TODO disable attribute settings when ValidImageNames selected.\r
603 \r
604 }\r
605 \r
606 });\r
607 }\r
4da2e625 608 return jComboBoxFvParaType;\r
a13899c5 609 }\r
610\r
611\r
612 /**\r
613 * This method initializes jTextField2 \r
614 * \r
615 * @return javax.swing.JTextField \r
616 */\r
4da2e625 617 private JTextField getJTextFieldFvParaName() {\r
618 if (jTextFieldFvParaName == null) {\r
619 jTextFieldFvParaName = new JTextField();\r
620 jTextFieldFvParaName.setPreferredSize(new java.awt.Dimension(140,20));\r
621 jTextFieldFvParaName.setEnabled(false);\r
a13899c5 622 }\r
4da2e625 623 return jTextFieldFvParaName;\r
a13899c5 624 }\r
625\r
626\r
627 /**\r
628 * This method initializes jButton2 \r
629 * \r
630 * @return javax.swing.JButton \r
631 */\r
4da2e625 632 private JButton getJButtonFvParaAdd() {\r
633 if (jButtonFvParaAdd == null) {\r
634 jButtonFvParaAdd = new JButton();\r
635 jButtonFvParaAdd.setPreferredSize(new Dimension(80, 20));\r
636 jButtonFvParaAdd.setEnabled(false);\r
637 jButtonFvParaAdd.setText("Add");\r
638 jButtonFvParaAdd.addActionListener(new AbstractAction() {\r
44053733 639 /**\r
640 * \r
641 */\r
642 private static final long serialVersionUID = 1L;\r
643\r
a13899c5 644 public void actionPerformed(java.awt.event.ActionEvent e) {\r
4da2e625 645 if (jTextFieldFvParaName.getText().length() > 0){\r
646 String[] row = {jTextFieldFvParaName.getText()}; \r
a13899c5 647 fvImageNameTableModel.addRow(row);\r
648 }\r
649 }\r
650 });\r
651 }\r
4da2e625 652 return jButtonFvParaAdd;\r
a13899c5 653 }\r
654\r
655\r
656 /**\r
657 * This method initializes jScrollPane2 \r
658 * \r
659 * @return javax.swing.JScrollPane \r
660 */\r
4da2e625 661 private JScrollPane getJScrollPaneFvImageNames() {\r
662 if (jScrollPaneFvImageNames == null) {\r
663 jScrollPaneFvImageNames = new JScrollPane();\r
664 jScrollPaneFvImageNames.setPreferredSize(new java.awt.Dimension(350,50));\r
665 jScrollPaneFvImageNames.setViewportView(getJTableFvImageNames());\r
a13899c5 666 }\r
4da2e625 667 return jScrollPaneFvImageNames;\r
a13899c5 668 }\r
669\r
670\r
671 /**\r
672 * This method initializes jTable1 \r
673 * \r
674 * @return javax.swing.JTable \r
675 */\r
4da2e625 676 private JTable getJTableFvImageNames() {\r
677 if (jTableFvImageNames == null) {\r
a13899c5 678 fvImageNameTableModel = new DefaultTableModel();\r
4da2e625 679 jTableFvImageNames = new JTable(fvImageNameTableModel);\r
680 jTableFvImageNames.setEnabled(false);\r
a13899c5 681 fvImageNameTableModel.addColumn("FV Image Name");\r
682 }\r
4da2e625 683 return jTableFvImageNames;\r
a13899c5 684 }\r
685\r
686\r
687 /**\r
688 * This method initializes jButton3 \r
689 * \r
690 * @return javax.swing.JButton \r
691 */\r
4da2e625 692 private JButton getJButtonFvParaDel() {\r
693 if (jButtonFvParaDel == null) {\r
694 jButtonFvParaDel = new JButton();\r
695 jButtonFvParaDel.setPreferredSize(new Dimension(80, 20));\r
696 jButtonFvParaDel.setEnabled(false);\r
697 jButtonFvParaDel.setText("Delete");\r
698 jButtonFvParaDel.addActionListener(new AbstractAction() {\r
44053733 699 /**\r
700 * \r
701 */\r
702 private static final long serialVersionUID = 1L;\r
703\r
a13899c5 704 public void actionPerformed(java.awt.event.ActionEvent e) {\r
4da2e625 705 if (jTableFvImageNames.getSelectedRow() >= 0){\r
a13899c5 706 \r
4da2e625 707 fvImageNameTableModel.removeRow(jTableFvImageNames.getSelectedRow());\r
a13899c5 708 }\r
709 }\r
710 });\r
711 }\r
4da2e625 712 return jButtonFvParaDel;\r
a13899c5 713 }\r
714\r
715\r
716\r
717 \r
4da2e625 718 private JPanel getJPanelFvImageOpts() {\r
a13899c5 719 \r
720\r
4da2e625 721 if (jPanelFvImageOpts == null) {\r
a13899c5 722 //ToDo add ButtonGroup for RadioButtons\r
4da2e625 723 jLabelFvImageOptValue = new JLabel();\r
724 jLabelFvImageOptValue.setEnabled(true);\r
725 jLabelFvImageOptValue.setText("Value");\r
726 jLabelFvImageOptValue.setPreferredSize(new Dimension(38, 20));\r
727 jLabelFvImageOptName = new JLabel();\r
728 jLabelFvImageOptName.setEnabled(true);\r
729 jLabelFvImageOptName.setText("Name");\r
730 jLabelFvImageOptName.setPreferredSize(new Dimension(38, 20));\r
731 jPanelFvImageOpts = new JPanel();\r
732 jPanelFvImageOpts.setPreferredSize(new java.awt.Dimension(480,150));\r
a13899c5 733 \r
4da2e625 734 jPanelFvImageOpts.setLayout(new FlowLayout());\r
a13899c5 735 \r
4da2e625 736 jPanelFvImageOpts.setBorder(javax.swing.BorderFactory.createEtchedBorder(javax.swing.border.EtchedBorder.LOWERED));\r
737 jPanelFvImageOpts.add(getJCheckBoxFvImageOpts(), null);\r
738 jPanelFvImageOpts.add(jLabelFvImageOptName, null);\r
739 jPanelFvImageOpts.add(getJTextFieldFvImageOptName(), null);\r
740 jPanelFvImageOpts.add(jLabelFvImageOptValue, null);\r
741 jPanelFvImageOpts.add(getJTextFieldFvImageOptValue(), null);\r
742 jPanelFvImageOpts.add(getJScrollPane(), null);\r
743 jPanelFvImageOpts.add(getJPanelFvImageOptsButtonGroup(), null);\r
744 jPanelFvImageOpts.add(getJButtonAddFvImage(), null);\r
745 jPanelFvImageOpts.add(getJButtonDelFvImage(), null);\r
746 jPanelFvImageOpts.add(getJButtonUpdateFvImage(), null);\r
a13899c5 747 \r
748 \r
749 \r
750\r
751 \r
752 }\r
4da2e625 753 return jPanelFvImageOpts;\r
a13899c5 754 }\r
755\r
756\r
757 /**\r
758 * This method initializes jButton4 \r
759 * \r
760 * @return javax.swing.JButton \r
761 */\r
4da2e625 762 private JButton getJButtonAddFvImage() {\r
763 if (jButtonAddFvImage == null) {\r
764 jButtonAddFvImage = new JButton();\r
765 jButtonAddFvImage.setPreferredSize(new java.awt.Dimension(120,20));\r
a13899c5 766// jButton4.setEnabled(false);\r
4da2e625 767 jButtonAddFvImage.setText("Add FV Image");\r
768 jButtonAddFvImage.addActionListener(new AbstractAction() {\r
44053733 769 /**\r
770 * \r
771 */\r
772 private static final long serialVersionUID = 1L;\r
773\r
a13899c5 774 public void actionPerformed(java.awt.event.ActionEvent e) {\r
4da2e625 775 if (jTableFvInfo.isEditing()) {\r
776 jTableFvInfo.getCellEditor().stopCellEditing();\r
ae0d4fd2 777 }\r
4da2e625 778 if (jTableFvImageOpts.isEditing()) {\r
779 jTableFvImageOpts.getCellEditor().stopCellEditing();\r
ae0d4fd2 780 }\r
4da2e625 781 if (jTableFvImageNames.getRowCount()== 0){\r
a13899c5 782 return;\r
783 }\r
784 String imageName = " ";\r
4da2e625 785 for (int i = 0; i < jTableFvImageNames.getRowCount(); ++i){\r
786 imageName += (String)jTableFvImageNames.getValueAt(i, 0);\r
a13899c5 787 imageName += " ";\r
788 }\r
789 imageName = imageName.trim();\r
790 \r
4da2e625 791 if (!jCheckBoxFvImageOpts.isSelected() && jComboBoxFvParaType.getSelectedIndex() != 0){\r
a13899c5 792 return;\r
793 \r
794 }\r
795 \r
44053733 796 LinkedHashMap<String, String> m = null;\r
4da2e625 797 if (jCheckBoxFvImageOpts.isSelected()) {\r
44053733 798 m = new LinkedHashMap<String, String>();\r
ae0d4fd2 799 getOptionNameValue(m);\r
44053733 800 }\r
4da2e625 801 ffc.genFvImagesFvImage(imageName.split(" "), jComboBoxFvParaType.getSelectedItem()+"", m);\r
d6d24759 802 docConsole.setSaved(false);\r
4da2e625 803 Object[] row = {imageName, jComboBoxFvParaType.getSelectedItem()};\r
ae0d4fd2 804 fvImageParaTableModel.addRow(row); \r
a13899c5 805 }\r
806 });\r
807 }\r
4da2e625 808 return jButtonAddFvImage;\r
a13899c5 809 }\r
810\r
811\r
812 /**\r
813 * This method initializes jScrollPane3 \r
814 * \r
815 * @return javax.swing.JScrollPane \r
816 */\r
4da2e625 817 private JScrollPane getJScrollPaneFvInfo() {\r
818 if (jScrollPaneFvInfo == null) {\r
819 jScrollPaneFvInfo = new JScrollPane();\r
820 jScrollPaneFvInfo.setPreferredSize(new java.awt.Dimension(480,150));\r
821 jScrollPaneFvInfo.setViewportView(getJTableFvInfo());\r
a13899c5 822 }\r
4da2e625 823 return jScrollPaneFvInfo;\r
a13899c5 824 }\r
825\r
826\r
827 /**\r
828 * This method initializes jTable2 \r
829 * \r
830 * @return javax.swing.JTable \r
831 */\r
4da2e625 832 private JTable getJTableFvInfo() {\r
833 if (jTableFvInfo == null) {\r
a13899c5 834 fvImageParaTableModel = new ImageParaTableModel();\r
4da2e625 835 jTableFvInfo = new JTable(fvImageParaTableModel);\r
a13899c5 836 fvImageParaTableModel.addColumn("FvImageNames");\r
837 fvImageParaTableModel.addColumn("Type");\r
ae0d4fd2 838 \r
a13899c5 839 \r
4da2e625 840 TableColumn typeCol = jTableFvInfo.getColumnModel().getColumn(1);\r
a13899c5 841 JComboBox cb = new JComboBox();\r
61919f8c 842 cb.addItem("ImageName");\r
a13899c5 843 cb.addItem("Attributes");\r
844 cb.addItem("Options");\r
845 cb.addItem("Components");\r
846 typeCol.setCellEditor(new DefaultCellEditor(cb));\r
847 \r
4da2e625 848 jTableFvInfo.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
849 jTableFvInfo.getSelectionModel().addListSelectionListener(new ListSelectionListener(){\r
a13899c5 850 public void valueChanged(ListSelectionEvent e) {\r
851 if (e.getValueIsAdjusting()){\r
852 return;\r
853 }\r
854 ListSelectionModel lsm = (ListSelectionModel)e.getSource();\r
855 if (lsm.isSelectionEmpty()) {\r
856 return;\r
857 }\r
858 else{\r
ae0d4fd2 859 int selectedRow = lsm.getMinSelectionIndex();\r
61919f8c 860 if (fvImageParaTableModel.getValueAt(selectedRow, 1).equals("ImageName")) {\r
861 String[] fvNames = fvImageParaTableModel.getValueAt(selectedRow, 0).toString().split(" ");\r
862 for (int i = 0; i < fvNames.length; ++i) {\r
863 String[] row = {fvNames[i]};\r
864 fvImageNameTableModel.addRow(row);\r
865 }\r
866 return;\r
867 }\r
ae0d4fd2 868 LinkedHashMap<String, String> optionMap = new LinkedHashMap<String, String>();\r
869 ffc.getFvImagesFvImageOptions(selectedRow, optionMap);\r
870 if (optionMap.size() > 0){\r
871 fvOptionTableModel.setRowCount(0);\r
872 Set<String> key = optionMap.keySet();\r
873 Iterator<String> i = key.iterator();\r
874 while (i.hasNext()) {\r
875 \r
876 String k = (String)i.next();\r
877 String[] row = {k, optionMap.get(k)};\r
878 \r
879 fvOptionTableModel.addRow(row);\r
880 }\r
a13899c5 881 }\r
ae0d4fd2 882 \r
a13899c5 883 }\r
884 }\r
885 });\r
ae0d4fd2 886 \r
887 \r
a13899c5 888 }\r
4da2e625 889 return jTableFvInfo;\r
a13899c5 890 }\r
891\r
892\r
893 /**\r
894 * This method initializes jButton6 \r
895 * \r
896 * @return javax.swing.JButton \r
897 */\r
4da2e625 898 private JButton getJButtonDelFvImage() {\r
899 if (jButtonDelFvImage == null) {\r
900 jButtonDelFvImage = new JButton();\r
901 jButtonDelFvImage.setPreferredSize(new java.awt.Dimension(120,20));\r
a13899c5 902// jButton6.setEnabled(false);\r
4da2e625 903 jButtonDelFvImage.setText("Delete Row");\r
904 jButtonDelFvImage.addActionListener(new AbstractAction() {\r
44053733 905 /**\r
906 * \r
907 */\r
908 private static final long serialVersionUID = 1L;\r
a13899c5 909\r
910 public void actionPerformed(ActionEvent arg0) {\r
911 // TODO Auto-generated method stub\r
4da2e625 912 if (jTableFvInfo.getSelectedRow() >= 0 ) {\r
913 ffc.removeFvImagesFvImage(jTableFvInfo.getSelectedRow());\r
914 fvImageParaTableModel.removeRow(jTableFvInfo.getSelectedRow());\r
d6d24759 915 docConsole.setSaved(false);\r
a13899c5 916 }\r
917 }\r
918 \r
919 });\r
920 }\r
4da2e625 921 return jButtonDelFvImage;\r
a13899c5 922 }\r
923\r
924\r
925 /**\r
926 * This method initializes jCheckBox3 \r
927 * \r
928 * @return javax.swing.JCheckBox \r
929 */\r
4da2e625 930 private JCheckBox getJCheckBoxFvImageOpts() {\r
931 if (jCheckBoxFvImageOpts == null) {\r
932 jCheckBoxFvImageOpts = new JCheckBox();\r
933 jCheckBoxFvImageOpts.setText("FV Image Options");\r
934 jCheckBoxFvImageOpts.addItemListener(new ItemListener(){\r
a13899c5 935\r
936 public void itemStateChanged(ItemEvent arg0) {\r
937 // TODO Auto-generated method stub\r
1800d80f 938// boolean selected = jCheckBox3.isSelected();\r
a13899c5 939 \r
4da2e625 940 if (!jCheckBoxFvImagePara.isSelected() || jComboBoxFvParaType.getSelectedIndex() == 0) {\r
a13899c5 941 return;\r
942 }\r
943 \r
a13899c5 944 }\r
945 \r
946 });\r
947 }\r
4da2e625 948 return jCheckBoxFvImageOpts;\r
a13899c5 949 }\r
950\r
951\r
a13899c5 952 /**\r
953 * This method initializes jPanel6 \r
954 * \r
955 * @return javax.swing.JPanel \r
956 */\r
4da2e625 957 private JPanel getJPanelFvImagePara() {\r
958 if (jPanelFvImagePara == null) {\r
a13899c5 959 StarLabel starLabel = new StarLabel();\r
960 starLabel.setVisible(false);\r
4da2e625 961 jPanelFvImagePara = new JPanel();\r
962 jPanelFvImagePara.setPreferredSize(new java.awt.Dimension(480,120));\r
963 jPanelFvImagePara.setBorder(javax.swing.BorderFactory.createEtchedBorder(javax.swing.border.EtchedBorder.RAISED));\r
964 jPanelFvImagePara.add(getJCheckBoxFvImagePara(), null);\r
965 jPanelFvImagePara.add(jLabelFvParaType, null);\r
966 jPanelFvImagePara.add(getJComboBoxFvParaType(), null);\r
967 jPanelFvImagePara.add(new StarLabel(), null);\r
968 jPanelFvImagePara.add(jLabelFvImageNames, null);\r
969 jPanelFvImagePara.add(jLabelFvParaName, null);\r
970 jPanelFvImagePara.add(getJTextFieldFvParaName(), null);\r
971 jPanelFvImagePara.add(getJButtonFvParaAdd(), null);\r
972 jPanelFvImagePara.add(getJScrollPaneFvImageNames(), null);\r
973 jPanelFvImagePara.add(getJButtonFvParaDel(), null);\r
a13899c5 974 }\r
4da2e625 975 return jPanelFvImagePara;\r
a13899c5 976 }\r
977\r
978 /**\r
979 * This method initializes jPanel7 \r
980 * \r
981 * @return javax.swing.JPanel \r
982 */\r
4da2e625 983 private JPanel getJPanelFdf() {\r
984 if (jPanelFdf == null) {\r
4da2e625 985 jPanelFdf = new JPanel();\r
3658f95e 986 jPanelFdf.setLayout(new BorderLayout());\r
987\r
988 jPanelFdf.add(getJPanelFdfN(), java.awt.BorderLayout.NORTH);\r
989 jPanelFdf.add(getJPanelFdfS(), java.awt.BorderLayout.SOUTH);\r
990 jPanelFdf.add(getJSplitPaneFdfC(), java.awt.BorderLayout.CENTER);\r
991// jPanelFdf.addComponentListener(new ComponentAdapter(){\r
992// public void componentShown(ComponentEvent e) {\r
993// if (ffc.getFlashDefinitionFile() != null) {\r
994// jTextFieldFdf.setText(ffc.getFlashDefinitionFile());\r
995// }\r
996// }\r
997// public void componentHidden(ComponentEvent e) {\r
998// if (jCheckBoxFdf.isSelected()) {\r
999// ffc.genFlashDefinitionFile(jTextFieldFdf.getText());\r
1000// }\r
1001// }\r
1002// });\r
a13899c5 1003 }\r
4da2e625 1004 return jPanelFdf;\r
a13899c5 1005 }\r
1006\r
1007 /**\r
1008 * This method initializes jCheckBox \r
1009 * \r
1010 * @return javax.swing.JCheckBox \r
1011 */\r
4da2e625 1012 private JCheckBox getJCheckBoxFdf() {\r
1013 if (jCheckBoxFdf == null) {\r
1014 jCheckBoxFdf = new JCheckBox();\r
1015 jCheckBoxFdf.setText("Flash Definition File");\r
1016 jCheckBoxFdf.addItemListener(new ItemListener() {\r
a13899c5 1017\r
1018 public void itemStateChanged(ItemEvent arg0) {\r
1019 // TODO Auto-generated method stub\r
4da2e625 1020 if (jCheckBoxFdf.isSelected()){\r
1021 jTextFieldFdf.setEnabled(true);\r
1022 jButtonFdfBrowse.setEnabled(true);\r
a13899c5 1023 }\r
1024 else {\r
1025 \r
4da2e625 1026 jTextFieldFdf.setEnabled(false);\r
1027 jButtonFdfBrowse.setEnabled(false);\r
a13899c5 1028 }\r
1029 }\r
1030 });\r
1031 }\r
4da2e625 1032 return jCheckBoxFdf;\r
a13899c5 1033 }\r
1034\r
1035 /**\r
1036 * This method initializes jTextField3 \r
1037 * \r
1038 * @return javax.swing.JTextField \r
1039 */\r
4da2e625 1040 private JTextField getJTextFieldFdf() {\r
1041 if (jTextFieldFdf == null) {\r
1042 jTextFieldFdf = new JTextField();\r
1043 jTextFieldFdf.setEnabled(false);\r
1044 jTextFieldFdf.setPreferredSize(new Dimension(300, 20));\r
1045 jTextFieldFdf.addFocusListener(new java.awt.event.FocusAdapter() {\r
908b1c05 1046 public void focusLost(java.awt.event.FocusEvent e) {\r
4da2e625 1047 ffc.genFlashDefinitionFile(jTextFieldFdf.getText());\r
908b1c05 1048 }\r
1049 });\r
a13899c5 1050 }\r
4da2e625 1051 return jTextFieldFdf;\r
a13899c5 1052 }\r
1053\r
1054 /**\r
1055 * This method initializes jButton5 \r
1056 * \r
1057 * @return javax.swing.JButton \r
1058 */\r
4da2e625 1059 private JButton getJButtonFdfBrowse() {\r
1060 if (jButtonFdfBrowse == null) {\r
1061 jButtonFdfBrowse = new JButton();\r
1062 jButtonFdfBrowse.setEnabled(false);\r
1063 jButtonFdfBrowse.setText("Browse");\r
1064 jButtonFdfBrowse.setPreferredSize(new Dimension(78, 20));\r
1065 jButtonFdfBrowse.addActionListener(new AbstractAction(){\r
44053733 1066 /**\r
1067 * \r
1068 */\r
1069 private static final long serialVersionUID = 1L;\r
1070\r
a13899c5 1071 public void actionPerformed(ActionEvent e) {\r
1072 // TODO Auto-generated method stub\r
908b1c05 1073 String wsDir = System.getenv("WORKSPACE");\r
1074 JFileChooser chooser = new JFileChooser(wsDir);\r
a13899c5 1075 chooser.setMultiSelectionEnabled(false);\r
1076 chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);\r
1077 int retval = chooser.showOpenDialog(frame);\r
1078 if (retval == JFileChooser.APPROVE_OPTION) {\r
1079\r
1080 File theFile = chooser.getSelectedFile();\r
908b1c05 1081 String filePath = theFile.getPath();\r
1082 if (!filePath.startsWith(wsDir)) {\r
1083 JOptionPane.showMessageDialog(frame, "You can only select files in current WORKSPACE.");\r
1084 return;\r
1085 }\r
4da2e625 1086 jTextFieldFdf.setText(filePath.substring(wsDir.length() + 1).replace('\\', '/'));\r
3658f95e 1087 ffc.genFlashDefinitionFile(jTextFieldFdf.getText());\r
1088 docConsole.setSaved(false);\r
1089 Vector<FvInfoFromFdf> vFvInfo = new Vector<FvInfoFromFdf>();\r
1090 getFvInfoFromFdf(filePath, vFvInfo);\r
1091 getFvInFdfTableModel().setRowCount(0);\r
1092 for (int j = 0; j < vFvInfo.size(); ++j) {\r
1093 FvInfoFromFdf fvInfo = vFvInfo.get(j);\r
1094 String[] row = {fvInfo.getFvName(), fvInfo.getSize(), fvInfo.getEfiFileName()};\r
1095 getFvInFdfTableModel().addRow(row);\r
1096 }\r
a13899c5 1097 }\r
1098 }\r
1099 \r
1100 });\r
1101 }\r
4da2e625 1102 return jButtonFdfBrowse;\r
a13899c5 1103 }\r
1104\r
44053733 1105 /**\r
ae0d4fd2 1106 * This method initializes jTextField4 \r
44053733 1107 * \r
ae0d4fd2 1108 * @return javax.swing.JTextField \r
44053733 1109 */\r
4da2e625 1110 private JTextField getJTextFieldFvImageOptName() {\r
1111 if (jTextFieldFvImageOptName == null) {\r
1112 jTextFieldFvImageOptName = new JTextField();\r
1113 jTextFieldFvImageOptName.setEnabled(true);\r
1114 jTextFieldFvImageOptName.setPreferredSize(new Dimension(100, 20));\r
44053733 1115 }\r
4da2e625 1116 return jTextFieldFvImageOptName;\r
ae0d4fd2 1117 }\r
1118\r
1119 /**\r
1120 * This method initializes jTextField5 \r
1121 * \r
1122 * @return javax.swing.JTextField \r
1123 */\r
4da2e625 1124 private JTextField getJTextFieldFvImageOptValue() {\r
1125 if (jTextFieldFvImageOptValue == null) {\r
1126 jTextFieldFvImageOptValue = new JTextField();\r
1127 jTextFieldFvImageOptValue.setEnabled(true);\r
1128 jTextFieldFvImageOptValue.setPreferredSize(new Dimension(100, 20));\r
ae0d4fd2 1129 }\r
4da2e625 1130 return jTextFieldFvImageOptValue;\r
ae0d4fd2 1131 }\r
1132\r
1133 /**\r
1134 * This method initializes jPanel8 \r
1135 * \r
1136 * @return javax.swing.JPanel \r
1137 */\r
4da2e625 1138 private JPanel getJPanelFvImageOptsButtonGroup() {\r
1139 if (jPanelFvImageOptsButtonGroup == null) {\r
1140 jPanelFvImageOptsButtonGroup = new JPanel();\r
1141 jPanelFvImageOptsButtonGroup.setPreferredSize(new Dimension(80, 55));\r
1142 jPanelFvImageOptsButtonGroup.add(getJButtonFvImageOptAdd(), null);\r
1143 jPanelFvImageOptsButtonGroup.add(getJButtonFvImageOptDel(), null);\r
ae0d4fd2 1144 }\r
4da2e625 1145 return jPanelFvImageOptsButtonGroup;\r
ae0d4fd2 1146 }\r
1147\r
1148 /**\r
1149 * This method initializes jButton7 \r
1150 * \r
1151 * @return javax.swing.JButton \r
1152 */\r
4da2e625 1153 private JButton getJButtonFvImageOptAdd() {\r
1154 if (jButtonFvImageOptAdd == null) {\r
1155 jButtonFvImageOptAdd = new JButton();\r
1156 jButtonFvImageOptAdd.setEnabled(true);\r
1157 jButtonFvImageOptAdd.setText("Add");\r
1158 jButtonFvImageOptAdd.setPreferredSize(new Dimension(80, 20));\r
1159 jButtonFvImageOptAdd.addActionListener(new AbstractAction() {\r
ae0d4fd2 1160 /**\r
1161 * \r
1162 */\r
1163 private static final long serialVersionUID = 1L;\r
1164\r
1165 public void actionPerformed(ActionEvent e) {\r
4da2e625 1166 if (jTextFieldFvImageOptName.getText().length() > 0 && jTextFieldFvImageOptValue.getText().length() > 0){\r
1167 String[] row = {jTextFieldFvImageOptName.getText(), jTextFieldFvImageOptValue.getText()}; \r
ae0d4fd2 1168 fvOptionTableModel.addRow(row);\r
1169 }\r
1170 }\r
1171 });\r
1172 }\r
4da2e625 1173 return jButtonFvImageOptAdd;\r
ae0d4fd2 1174 }\r
1175\r
1176 /**\r
1177 * This method initializes jButton8 \r
1178 * \r
1179 * @return javax.swing.JButton \r
1180 */\r
4da2e625 1181 private JButton getJButtonFvImageOptDel() {\r
1182 if (jButtonFvImageOptDel == null) {\r
1183 jButtonFvImageOptDel = new JButton();\r
1184 jButtonFvImageOptDel.setEnabled(true);\r
1185 jButtonFvImageOptDel.setText("Delete");\r
1186 jButtonFvImageOptDel.setPreferredSize(new Dimension(80, 20));\r
1187 jButtonFvImageOptDel.addActionListener(new AbstractAction() {\r
ae0d4fd2 1188 /**\r
1189 * \r
1190 */\r
1191 private static final long serialVersionUID = 1L;\r
1192\r
1193 public void actionPerformed(ActionEvent e) {\r
4da2e625 1194 if (jTableFvImageOpts.getSelectedRow() >= 0){\r
1195 fvOptionTableModel.removeRow(jTableFvProp.getSelectedRow());\r
ae0d4fd2 1196 }\r
1197 }\r
1198 });\r
1199 }\r
4da2e625 1200 return jButtonFvImageOptDel;\r
ae0d4fd2 1201 }\r
1202\r
1203 /**\r
1204 * This method initializes jScrollPane \r
1205 * \r
1206 * @return javax.swing.JScrollPane \r
1207 */\r
1208 private JScrollPane getJScrollPane() {\r
1209 if (jScrollPane == null) {\r
1210 jScrollPane = new JScrollPane();\r
1211 jScrollPane.setPreferredSize(new java.awt.Dimension(350,80));\r
4da2e625 1212 jScrollPane.setViewportView(getJTableFvImageOpts());\r
ae0d4fd2 1213 }\r
1214 return jScrollPane;\r
1215 }\r
1216\r
1217 /**\r
1218 * This method initializes jTable3 \r
1219 * \r
1220 * @return javax.swing.JTable \r
1221 */\r
4da2e625 1222 private JTable getJTableFvImageOpts() {\r
1223 if (jTableFvImageOpts == null) {\r
ae0d4fd2 1224 fvOptionTableModel = new DefaultTableModel();\r
1225 fvOptionTableModel.addColumn("Name");\r
1226 fvOptionTableModel.addColumn("Value");\r
4da2e625 1227 jTableFvImageOpts = new JTable(fvOptionTableModel);\r
ae0d4fd2 1228\r
4da2e625 1229 jTableFvImageOpts.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
1230 jTableFvImageOpts.setRowHeight(20);\r
ae0d4fd2 1231 \r
1232 }\r
4da2e625 1233 return jTableFvImageOpts;\r
ae0d4fd2 1234 }\r
1235\r
1236 /**\r
1237 * This method initializes jButton9 \r
1238 * \r
1239 * @return javax.swing.JButton \r
1240 */\r
4da2e625 1241 private JButton getJButtonUpdateFvImage() {\r
1242 if (jButtonUpdateFvImage == null) {\r
1243 jButtonUpdateFvImage = new JButton();\r
1244 jButtonUpdateFvImage.setPreferredSize(new Dimension(120, 20));\r
1245 jButtonUpdateFvImage.setActionCommand("Update");\r
1246 jButtonUpdateFvImage.setText("Update FV");\r
1247 jButtonUpdateFvImage.addActionListener(new java.awt.event.ActionListener() {\r
ae0d4fd2 1248 public void actionPerformed(java.awt.event.ActionEvent e) {\r
4da2e625 1249 int row = jTableFvInfo.getSelectedRow();\r
1250 if (jTableFvInfo.isEditing()) {\r
1251 jTableFvInfo.getCellEditor().stopCellEditing();\r
ae0d4fd2 1252 }\r
4da2e625 1253 if (jTableFvImageOpts.isEditing()) {\r
1254 jTableFvImageOpts.getCellEditor().stopCellEditing();\r
ae0d4fd2 1255 }\r
1256 \r
1257 //ToDo Check data validity before update\r
1258 String name = fvImageParaTableModel.getValueAt(row, 0) + "";\r
1259 String type = fvImageParaTableModel.getValueAt(row, 1) + "";\r
1260 \r
1261 LinkedHashMap<String, String> lhm = new LinkedHashMap<String, String>();\r
1262 getOptionNameValue(lhm);\r
1263 \r
d6d24759 1264 docConsole.setSaved(false);\r
ae0d4fd2 1265 ffc.updateFvImagesFvImage(row, name.split(" "), type, lhm);\r
1266 \r
1267 }\r
1268 });\r
1269 }\r
4da2e625 1270 return jButtonUpdateFvImage;\r
44053733 1271 }\r
1272\r
3658f95e 1273// private JButton getJButtonTest() {\r
1274// if (jButtonTest == null) {\r
1275// jButtonTest = new JButton();\r
1276// jButtonTest.addActionListener(new java.awt.event.ActionListener() {\r
1277// public void actionPerformed(java.awt.event.ActionEvent e) {\r
1278// docConsole.setSaved(false);\r
1279// String[][] includeModules = {{"1", "a"}, {"2", "b"}};\r
1280// ffc.genBuildOptionsUserExtensions("FV_RECOVERY", "FvRecovery.inf", null, includeModules);\r
1281// int i = ffc.getUserExtsIncModCount("FV_RECOVERY");\r
1282// String[][] saa = new String[i][2];\r
1283// ffc.getUserExtsIncMods("FV_RECOVERY", saa);\r
1284// jTextFieldFdf.setText(saa[0][0] + saa[0][1] + saa[1][0] + saa[1][1]);\r
1285// \r
1286// }\r
1287// });\r
1288// }\r
1289// return jButtonTest;\r
1290// }\r
1291\r
1292 /**\r
1293 * This method initializes jPanelFdfN \r
1294 * \r
1295 * @return javax.swing.JPanel \r
1296 */\r
1297 private JPanel getJPanelFdfN() {\r
1298 if (jPanelFdfN == null) {\r
1299 jPanelFdfN = new JPanel();\r
1300 jPanelFdfN.add(getJCheckBoxFdf(), null);\r
1301 jPanelFdfN.add(getJTextFieldFdf(), null);\r
1302 jPanelFdfN.add(getJButtonFdfBrowse(), null);\r
1303 }\r
1304 return jPanelFdfN;\r
1305 }\r
1306\r
1307 /**\r
1308 * This method initializes jPanelFdfS \r
1309 * \r
1310 * @return javax.swing.JPanel \r
1311 */\r
1312 private JPanel getJPanelFdfS() {\r
1313 if (jPanelFdfS == null) {\r
1314 FlowLayout flowLayout4 = new FlowLayout();\r
1315 flowLayout4.setAlignment(java.awt.FlowLayout.RIGHT);\r
1316 jPanelFdfS = new JPanel();\r
1317 jPanelFdfS.setLayout(flowLayout4);\r
1318 jPanelFdfS.add(getJButtonAddFv(), null);\r
1319 jPanelFdfS.add(getJButtonDelFv(), null);\r
1320 jPanelFdfS.add(getJButtonAddFvOptions(), null);\r
1321 }\r
1322 return jPanelFdfS;\r
1323 }\r
1324\r
1325 /**\r
1326 * This method initializes jSplitPaneFdfC \r
1327 * \r
1328 * @return javax.swing.JSplitPane \r
1329 */\r
1330 private JSplitPane getJSplitPaneFdfC() {\r
1331 if (jSplitPaneFdfC == null) {\r
1332 jSplitPaneFdfC = new JSplitPane();\r
1333 jSplitPaneFdfC.setOrientation(javax.swing.JSplitPane.VERTICAL_SPLIT);\r
1334 jSplitPaneFdfC.setDividerSize(5);\r
1335 jSplitPaneFdfC.setTopComponent(getJPanelFdfCTop());\r
1336 jSplitPaneFdfC.setBottomComponent(getJPanelFdfCBottom());\r
1337 jSplitPaneFdfC.setDividerLocation(280);\r
1338 }\r
1339 return jSplitPaneFdfC;\r
1340 }\r
1341\r
1342 /**\r
1343 * This method initializes jPanelFdfCTop \r
1344 * \r
1345 * @return javax.swing.JPanel \r
1346 */\r
1347 private JPanel getJPanelFdfCTop() {\r
1348 if (jPanelFdfCTop == null) {\r
1349 jPanelFdfCTop = new JPanel();\r
1350 jPanelFdfCTop.setLayout(new BorderLayout());\r
1351 jPanelFdfCTop.add(getJPanelFdfCTopN(), java.awt.BorderLayout.NORTH);\r
1352 jPanelFdfCTop.add(getJPanelFdfCTopS(), java.awt.BorderLayout.SOUTH);\r
1353 jPanelFdfCTop.add(getJPanelFdfCTopC(), java.awt.BorderLayout.CENTER);\r
1354 }\r
1355 return jPanelFdfCTop;\r
1356 }\r
1357\r
1358 /**\r
1359 * This method initializes jPanelFdfCBottom \r
1360 * \r
1361 * @return javax.swing.JPanel \r
1362 */\r
1363 private JPanel getJPanelFdfCBottom() {\r
1364 if (jPanelFdfCBottom == null) {\r
1365 jPanelFdfCBottom = new JPanel();\r
1366 jPanelFdfCBottom.setLayout(new BorderLayout());\r
1367 jPanelFdfCBottom.add(getJPanelFdfCBottomN(), java.awt.BorderLayout.NORTH);\r
1368 jPanelFdfCBottom.add(getJPanelFdfCBottomC(), java.awt.BorderLayout.CENTER);\r
1369 }\r
1370 return jPanelFdfCBottom;\r
1371 }\r
1372\r
1373 /**\r
1374 * This method initializes jPanelFdfCTopN \r
1375 * \r
1376 * @return javax.swing.JPanel \r
1377 */\r
1378 private JPanel getJPanelFdfCTopN() {\r
1379 if (jPanelFdfCTopN == null) {\r
1380 jLabelFvInFdf = new JLabel();\r
1381 jLabelFvInFdf.setText("FVs in Flash Definition File");\r
1382 jPanelFdfCTopN = new JPanel();\r
1383 jPanelFdfCTopN.add(jLabelFvInFdf, null);\r
1384 }\r
1385 return jPanelFdfCTopN;\r
1386 }\r
1387\r
1388 /**\r
1389 * This method initializes jPanelFdfCTopS \r
1390 * \r
1391 * @return javax.swing.JPanel \r
1392 */\r
1393 private JPanel getJPanelFdfCTopS() {\r
1394 if (jPanelFdfCTopS == null) {\r
1395 FlowLayout flowLayout1 = new FlowLayout();\r
1396 flowLayout1.setAlignment(java.awt.FlowLayout.RIGHT);\r
1397 jPanelFdfCTopS = new JPanel();\r
1398 jPanelFdfCTopS.setLayout(flowLayout1);\r
1399 jPanelFdfCTopS.add(getJButtonFvInFdfOptions(), null);\r
1400 }\r
1401 return jPanelFdfCTopS;\r
1402 }\r
1403\r
1404 /**\r
1405 * This method initializes jPanelFdfCTopC \r
1406 * \r
1407 * @return javax.swing.JPanel \r
1408 */\r
1409 private JPanel getJPanelFdfCTopC() {\r
1410 if (jPanelFdfCTopC == null) {\r
1411 jPanelFdfCTopC = new JPanel();\r
1412 jPanelFdfCTopC.add(getJScrollPaneFvInFdf(), null);\r
1413 }\r
1414 return jPanelFdfCTopC;\r
1415 }\r
1416\r
1417 /**\r
1418 * This method initializes jPanelFdfCBottomN \r
1419 * \r
1420 * @return javax.swing.JPanel \r
1421 */\r
1422 private JPanel getJPanelFdfCBottomN() {\r
1423 if (jPanelFdfCBottomN == null) {\r
1424 jLabelFvAdditional = new JLabel();\r
1425 jLabelFvAdditional.setText("Additional FVs");\r
1426 jPanelFdfCBottomN = new JPanel();\r
1427 jPanelFdfCBottomN.add(jLabelFvAdditional, null);\r
1428 }\r
1429 return jPanelFdfCBottomN;\r
1430 }\r
1431\r
1432 /**\r
1433 * This method initializes jPanelFdfCBottomC \r
1434 * \r
1435 * @return javax.swing.JPanel \r
1436 */\r
1437 private JPanel getJPanelFdfCBottomC() {\r
1438 if (jPanelFdfCBottomC == null) {\r
1439 jPanelFdfCBottomC = new JPanel();\r
1440 jPanelFdfCBottomC.add(getJScrollPaneFvAdditional(), null);\r
1441 }\r
1442 return jPanelFdfCBottomC;\r
1443 }\r
1444\r
1445 /**\r
1446 * This method initializes jScrollPaneFvInFdf \r
1447 * \r
1448 * @return javax.swing.JScrollPane \r
1449 */\r
1450 private JScrollPane getJScrollPaneFvInFdf() {\r
1451 if (jScrollPaneFvInFdf == null) {\r
1452 jScrollPaneFvInFdf = new JScrollPane();\r
1453 jScrollPaneFvInFdf.setPreferredSize(new java.awt.Dimension(653,200));\r
1454 jScrollPaneFvInFdf.setViewportView(getJTableFvInFdf());\r
1455 }\r
1456 return jScrollPaneFvInFdf;\r
1457 }\r
1458\r
1459 /**\r
1460 * This method initializes jTableFvInFdf \r
1461 * \r
1462 * @return javax.swing.JTable \r
1463 */\r
1464 private JTable getJTableFvInFdf() {\r
1465 if (jTableFvInFdf == null) {\r
1466 jTableFvInFdf = new JTable();\r
1467 jTableFvInFdf.setRowHeight(20);\r
1468 jTableFvInFdf.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);\r
1469 jTableFvInFdf.setModel(getFvInFdfTableModel());\r
1470 }\r
1471 return jTableFvInFdf;\r
1472 }\r
1473\r
1474 /**\r
1475 * This method initializes fvInFdfTableModel \r
1476 * \r
1477 * @return org.tianocore.frameworkwizard.platform.ui.NonEditableTableModel \r
1478 */\r
1479 private NonEditableTableModel getFvInFdfTableModel() {\r
1480 if (fvInFdfTableModel == null) {\r
1481 fvInFdfTableModel = new NonEditableTableModel();\r
1482 fvInFdfTableModel.addColumn("FV Name");\r
1483 fvInFdfTableModel.addColumn("Size");\r
1484 fvInFdfTableModel.addColumn("Corresponding File Name");\r
1485 }\r
1486 return fvInFdfTableModel;\r
1487 }\r
1488\r
1489 /**\r
1490 * This method initializes jButtonFvInFdfOptions \r
1491 * \r
1492 * @return javax.swing.JButton \r
1493 */\r
1494 private JButton getJButtonFvInFdfOptions() {\r
1495 if (jButtonFvInFdfOptions == null) {\r
1496 jButtonFvInFdfOptions = new JButton();\r
1497 jButtonFvInFdfOptions.setPreferredSize(new java.awt.Dimension(80,20));\r
1498 jButtonFvInFdfOptions.setText("Options");\r
1499 jButtonFvInFdfOptions.addActionListener(new java.awt.event.ActionListener() {\r
1500 public void actionPerformed(java.awt.event.ActionEvent e) {\r
1501 int selectedRow = jTableFvInFdf.getSelectedRow();\r
61919f8c 1502 if (selectedRow < 0) {\r
3658f95e 1503 return;\r
1504 }\r
3658f95e 1505 }\r
1506 });\r
1507 }\r
1508 return jButtonFvInFdfOptions;\r
1509 }\r
1510\r
1511 /**\r
1512 * This method initializes jScrollPaneFvAdditional \r
1513 * \r
1514 * @return javax.swing.JScrollPane \r
1515 */\r
1516 private JScrollPane getJScrollPaneFvAdditional() {\r
1517 if (jScrollPaneFvAdditional == null) {\r
1518 jScrollPaneFvAdditional = new JScrollPane();\r
1519 jScrollPaneFvAdditional.setPreferredSize(new java.awt.Dimension(653,200));\r
1520 jScrollPaneFvAdditional.setViewportView(getJTableFvAdditional());\r
1521 }\r
1522 return jScrollPaneFvAdditional;\r
1523 }\r
1524\r
1525 /**\r
1526 * This method initializes jTableFvAdditional \r
1527 * \r
1528 * @return javax.swing.JTable \r
1529 */\r
1530 private JTable getJTableFvAdditional() {\r
1531 if (jTableFvAdditional == null) {\r
1532 jTableFvAdditional = new JTable();\r
1533 jTableFvAdditional.setRowHeight(20);\r
1534 jTableFvAdditional.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);\r
1535 jTableFvAdditional.setModel(getFvAddtionalTableModel());\r
1536 }\r
1537 return jTableFvAdditional;\r
1538 }\r
1539\r
1540 /**\r
1541 * This method initializes fvAddtionalTableModel \r
1542 * \r
1543 * @return javax.swing.table.DefaultTableModel \r
1544 */\r
1545 private DefaultTableModel getFvAddtionalTableModel() {\r
1546 if (fvAddtionalTableModel == null) {\r
1547 fvAddtionalTableModel = new DefaultTableModel();\r
1548 fvAddtionalTableModel.addColumn("FV Name");\r
1549 fvAddtionalTableModel.addColumn("Size");\r
1550 fvAddtionalTableModel.addColumn("Corresponding File Name");\r
1551 }\r
1552 return fvAddtionalTableModel;\r
1553 }\r
1554\r
1555 /**\r
1556 * This method initializes jButtonAddFv \r
1557 * \r
1558 * @return javax.swing.JButton \r
1559 */\r
1560 private JButton getJButtonAddFv() {\r
1561 if (jButtonAddFv == null) {\r
1562 jButtonAddFv = new JButton();\r
1563 jButtonAddFv.setPreferredSize(new java.awt.Dimension(80,20));\r
1564 jButtonAddFv.setText("New");\r
1565 }\r
1566 return jButtonAddFv;\r
1567 }\r
1568\r
1569 /**\r
1570 * This method initializes jButtonDelFv \r
1571 * \r
1572 * @return javax.swing.JButton \r
1573 */\r
1574 private JButton getJButtonDelFv() {\r
1575 if (jButtonDelFv == null) {\r
1576 jButtonDelFv = new JButton();\r
1577 jButtonDelFv.setPreferredSize(new java.awt.Dimension(80,20));\r
1578 jButtonDelFv.setText("Delete");\r
1579 }\r
1580 return jButtonDelFv;\r
1581 }\r
1582\r
1583 /**\r
1584 * This method initializes jButtonAddFvOptions \r
1585 * \r
1586 * @return javax.swing.JButton \r
1587 */\r
1588 private JButton getJButtonAddFvOptions() {\r
1589 if (jButtonAddFvOptions == null) {\r
1590 jButtonAddFvOptions = new JButton();\r
1591 jButtonAddFvOptions.setPreferredSize(new java.awt.Dimension(80,20));\r
1592 jButtonAddFvOptions.setText("Options");\r
1593 }\r
1594 return jButtonAddFvOptions;\r
1595 }\r
3658f95e 1596 \r
a13899c5 1597 /**\r
1598 * @param args\r
1599 */\r
1600 public static void main(String[] args) {\r
1601 // TODO Auto-generated method stub\r
1602 new FpdFlash().setVisible(true);\r
1603 }\r
1604\r
1605 /**\r
1606 * This method initializes this\r
1607 * \r
1608 * @return void\r
1609 */\r
1610 private void initialize() {\r
1611 this.setSize(518, 650);\r
1612 this.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);\r
1613 this.setContentPane(getJContentPane());\r
1614 this.setTitle("FPD Flash Definitions");\r
44053733 1615 this.addInternalFrameListener(new InternalFrameAdapter(){\r
1616 public void internalFrameDeactivated(InternalFrameEvent e){\r
4da2e625 1617 if (jTableFvProp.isEditing()) {\r
1618 jTableFvProp.getCellEditor().stopCellEditing();\r
44053733 1619 }\r
4da2e625 1620 if (jTableFvImageNames.isEditing()) {\r
1621 jTableFvImageNames.getCellEditor().stopCellEditing();\r
44053733 1622 }\r
4da2e625 1623 if (jTableFvInfo.isEditing()) {\r
1624 jTableFvInfo.getCellEditor().stopCellEditing();\r
44053733 1625 }\r
1626 }\r
1627 });\r
a13899c5 1628 }\r
1629\r
1630 private void init(FpdFileContents ffc) {\r
1631 if (ffc.getFvImagesFvImageCount() == 0) {\r
1632 return;\r
1633 }\r
1634 String[][] saa = new String[ffc.getFvImagesFvImageCount()][2];\r
ae0d4fd2 1635 ffc.getFvImagesFvImages(saa);\r
ae0d4fd2 1636 \r
a13899c5 1637 int i = 0;\r
a13899c5 1638 while (i < saa.length) {\r
a13899c5 1639 \r
ae0d4fd2 1640 fvImageParaTableModel.addRow(saa[i]);\r
a13899c5 1641 ++i;\r
1642 }\r
908b1c05 1643 \r
3658f95e 1644 saa = new String[ffc.getFvImagesNameValueCount()][2];\r
1645 ffc.getFvImagesNameValues(saa);\r
1646 for (int m = 0; m < saa.length; ++m) {\r
1647 fvPropertyTableModel.addRow(saa[m]);\r
1648 }\r
1649 \r
1650 jTextFieldFdf.setText("");\r
1651 String fdfFile = ffc.getFlashDefinitionFile();\r
1652 if (fdfFile != null) {\r
1653 jTextFieldFdf.setText(fdfFile);\r
1654 }\r
1655 \r
1656 String fdfPath = System.getenv("WORKSPACE") + File.separator + fdfFile;\r
1657 Vector<FvInfoFromFdf> vFvInfo = new Vector<FvInfoFromFdf>();\r
1658 getFvInfoFromFdf(fdfPath, vFvInfo);\r
1659 getFvInFdfTableModel().setRowCount(0);\r
1660 for (int j = 0; j < vFvInfo.size(); ++j) {\r
1661 FvInfoFromFdf fvInfo = vFvInfo.get(j);\r
1662 String[] row = {fvInfo.getFvName(), fvInfo.getSize(), fvInfo.getEfiFileName()};\r
1663 getFvInFdfTableModel().addRow(row);\r
1664 }\r
1665 \r
1666\r
1667 for (int k = 0; k < vFvInfo.size(); ++k) {\r
1668 FvInfoFromFdf fvInfo = vFvInfo.get(k);\r
61919f8c 1669 getJTabbedPane().addTab(fvInfo.getFvName(), null, new ModuleOrderPane(), null);\r
3658f95e 1670\r
1671 }\r
a13899c5 1672 }\r
1673 \r
ae0d4fd2 1674 private void getOptionNameValue(Map<String, String> m){\r
4da2e625 1675 for (int i = 0; i < jTableFvImageOpts.getRowCount(); ++i) {\r
ae0d4fd2 1676 m.put(fvOptionTableModel.getValueAt(i, 0)+"", fvOptionTableModel.getValueAt(i, 1)+"");\r
a13899c5 1677 }\r
1678 }\r
1679 /**\r
1680 * This method initializes jContentPane\r
1681 * \r
1682 * @return javax.swing.JPanel\r
1683 */\r
1684 private JPanel getJContentPane() {\r
1685 if (jContentPane == null) {\r
1686 jContentPane = new JPanel();\r
1687 jContentPane.setLayout(new BorderLayout());\r
4da2e625 1688 jContentPane.add(getJPanelContentEast(), java.awt.BorderLayout.EAST);\r
1689 jContentPane.add(getJPanelContentSouth(), java.awt.BorderLayout.SOUTH);\r
1690 jContentPane.add(getJPanelContentWest(), java.awt.BorderLayout.WEST);\r
1691 jContentPane.add(getJPanelContentNorth(), java.awt.BorderLayout.NORTH);\r
a13899c5 1692 jContentPane.add(getJTabbedPane(), java.awt.BorderLayout.CENTER);\r
1693 }\r
1694 return jContentPane;\r
1695 }\r
3658f95e 1696 \r
1697 private void getFvInfoFromFdf(String fdfPath, Vector<FvInfoFromFdf> vFvInfo) {\r
1698 File fdf = new File(fdfPath);\r
1699 if (!fdf.exists()) {\r
1700 return;\r
1701 }\r
1702 int lines = 0;\r
1703\r
1704 try {\r
1705 FileReader reader = new FileReader(fdf);\r
1706 BufferedReader in = new BufferedReader(reader);\r
1707 String str;\r
1708\r
1709 while ((str = in.readLine()) != null) {\r
1710 ++lines;\r
1711 str = str.trim();\r
1712 //\r
1713 // skip empty line, comment (start with //) \r
1714 //\r
1715 if (str.length() == 0 || str.startsWith("//")) {\r
1716 continue;\r
1717 }\r
1718 //\r
1719 // dig into Region {} section, create FvInfoFromFdf object for it.\r
1720 //\r
1721 if (str.startsWith("Region") && str.endsWith("{")) {\r
1722 FvInfoFromFdf fvInfo = new FvInfoFromFdf();\r
1723 boolean nameFound = false;\r
1724 boolean sizeFound = false;\r
1725 while ((str = in.readLine()) != null) {\r
1726 ++lines;\r
1727 str = str.trim();\r
1728 //\r
1729 // skip empty line, comment (start with //) \r
1730 //\r
1731 if (str.length() == 0 || str.startsWith("//")) {\r
1732 continue;\r
1733 }\r
1734 \r
1735 if (str.startsWith("Name")) {\r
1736 int firstQuote = str.indexOf("\"");\r
1737 int lastQuote = str.lastIndexOf("\"");\r
1738 fvInfo.setFvName(str.substring(firstQuote + 1, lastQuote));\r
1739 nameFound = true;\r
1740 }\r
1741 \r
1742 if (str.startsWith("Size")) {\r
1743 int equalIndex = str.indexOf("=");\r
1744 int commaIndex = str.indexOf(",");\r
1745 fvInfo.setSize(str.substring(equalIndex + 1, commaIndex).trim());\r
1746 sizeFound = true;\r
1747 }\r
1748 \r
1749 if (nameFound && sizeFound) {\r
1750 break;\r
1751 }\r
1752 }\r
1753 \r
1754 vFvInfo.add(fvInfo);\r
1755 }\r
1756 //\r
1757 // dig into File {} section, supply file name information to existing FvInfoFromFdf object.\r
1758 //\r
1759 if (str.startsWith("File")) {\r
1760 boolean fileNameFound = false;\r
1761 boolean fvFound = false;\r
1762 String fileName = "";\r
1763 String fvName = "";\r
1764 while ((str = in.readLine()) != null) {\r
1765 ++lines;\r
1766 str = str.trim();\r
1767 //\r
1768 // skip empty line, comment (start with //) \r
1769 //\r
1770 if (str.length() == 0 || str.startsWith("//")) {\r
1771 continue;\r
1772 }\r
1773 \r
1774 if (str.startsWith("Name")) {\r
1775 int firstQuote = str.indexOf("\"");\r
1776 int lastQuote = str.lastIndexOf("\"");\r
1777 fileName = str.substring(firstQuote + 1, lastQuote);\r
1778 fileNameFound = true;\r
1779 }\r
1780 \r
1781 if (str.startsWith("Region")) {\r
1782 int firstQuote = str.indexOf("\"");\r
1783 int lastQuote = str.lastIndexOf("\"");\r
1784 fvName = str.substring(firstQuote + 1, lastQuote);\r
1785 fvFound = true;\r
1786 }\r
1787 \r
1788 if (fileNameFound && fvFound) {\r
1789 break;\r
1790 }\r
1791 }\r
1792 \r
1793 for (int i = 0; i <vFvInfo.size(); ++i) {\r
1794 if (vFvInfo.get(i).getFvName().equals(fvName)) {\r
1795 vFvInfo.get(i).setEfiFileName(fileName);\r
1796 }\r
1797 }\r
1798 }\r
1799 \r
1800 }\r
1801 } catch (Exception e) {\r
1802 \r
1803 }\r
1804\r
1805 }\r
1806 \r
61919f8c 1807 private class ModuleOrderPane extends JPanel {\r
1808\r
1809 /**\r
1810 * \r
1811 */\r
1812 private static final long serialVersionUID = 1L;\r
1813 private JPanel jPanelModOrderN = null;\r
1814 private JPanel jPanelModOrderS = null;\r
1815 private JPanel jPanelModOrderC = null;\r
1816 private JScrollPane jScrollPaneModInFv = null;\r
1817 private JTable jTableModInFv = null;\r
1818 private JPanel jPanelController = null;\r
1819 private JScrollPane jScrollPaneFpdModules = null;\r
1820 private JTable jTableFpdModules = null;\r
1821 private JButton jButtonUp = null;\r
1822 private JButton jButtonInsert = null;\r
1823 private JButton jButtonRemove = null;\r
1824 private JButton jButtonDown = null;\r
1825 private JButton jButtonOk = null;\r
1826 private JButton jButtonCancel = null;\r
1827 private NonEditableTableModel modInFvTableModel = null;\r
1828 private NonEditableTableModel fpdModTableModel = null;\r
1829 \r
1830 public ModuleOrderPane() {\r
1831 super(new BorderLayout());\r
1832 add(getJPanelModOrderN(), java.awt.BorderLayout.NORTH);\r
1833 add(getJPanelModOrderS(), java.awt.BorderLayout.SOUTH);\r
1834 add(getJPanelModOrderC(), java.awt.BorderLayout.CENTER);\r
1835 addComponentListener(new java.awt.event.ComponentAdapter() {\r
1836 public void componentShown(java.awt.event.ComponentEvent e) {\r
1837 String title = jTabbedPane.getTitleAt(jTabbedPane.getSelectedIndex()); // TODO Auto-generated Event stub componentShown()\r
1838 showModulesInFv(title);\r
1839 showAllModulesInPlatform();\r
1840 }\r
1841 });\r
1842 }\r
1843 \r
1844 private void showModulesInFv(String fvName) {\r
1845 int size = ffc.getUserExtsIncModCount(fvName);\r
1846 \r
1847 if (size != -1) {\r
1848 String[][] saa = new String[size][2];\r
1849 ffc.getUserExtsIncMods(fvName, saa);\r
1850\r
1851 for (int i = 0; i < size; ++i) {\r
1852 String name = getModuleName(saa[i][0]);\r
1853 String[] row = { name };\r
1854 modInFvTableModel.addRow(row);\r
1855 }\r
1856 }\r
1857 //\r
1858 // From ModuleSAs, get module guids with FvBinding = fvName.\r
1859 //\r
1860 Vector<String> vGuid = new Vector<String>();\r
1861 ffc.getFrameworkModuleGuid(fvName, vGuid);\r
1862 //\r
1863 // If BuildOptions->UserExtensions already contain these module info,\r
1864 // no need to add them into table again.\r
1865 //\r
1866 Iterator<String> iter = vGuid.iterator();\r
1867 while (iter.hasNext()){\r
1868 String guid = iter.next();\r
1869 String moduleName = getModuleName(guid);\r
1870 if (existedInTable(moduleName, modInFvTableModel)) {\r
1871 vGuid.remove(guid);\r
1872 }\r
1873 }\r
1874 \r
1875 for (int j = 0; j < vGuid.size(); ++j) {\r
1876 String[] row = {getModuleName(vGuid.get(j))};\r
1877 modInFvTableModel.addRow(row);\r
1878 }\r
1879 }\r
1880 \r
1881 private void showAllModulesInPlatform() {\r
1882 int size = ffc.getFrameworkModulesCount();\r
1883 String[][] saa = new String[size][5];\r
1884 ffc.getFrameworkModulesInfo(saa);\r
1885 \r
1886 for (int i = 0; i < size; ++i) {\r
1887 String name = getModuleName(saa[i][0]);\r
1888 if (existedInTable(name, modInFvTableModel) || existedInTable(name, fpdModTableModel)) {\r
1889 continue;\r
1890 }\r
1891 String[] row = {name};\r
1892 fpdModTableModel.addRow(row);\r
1893 }\r
1894 \r
1895 TableSorter sorter = (TableSorter)jTableFpdModules.getModel();\r
1896 sorter.setSortState(0, TableSorter.ASCENDING);\r
1897 }\r
1898 \r
1899 private String getModuleName (String guid) {\r
1900 \r
1901 for (int i = 0; i < GlobalData.vModuleList.size(); ++i) {\r
1902 String mg = GlobalData.vModuleList.get(i).getGuid();\r
1903 if (mg == null) {\r
1904 continue;\r
1905 }\r
1906 if (mg.equalsIgnoreCase(guid)) {\r
1907 return GlobalData.vModuleList.get(i).getName();\r
1908 }\r
1909 }\r
1910 \r
1911 return "";\r
1912 }\r
1913 \r
1914 private boolean existedInTable (String name, DefaultTableModel model) {\r
1915 int size = model.getDataVector().size();\r
1916 for (int i = 0; i < size; ++i) {\r
1917 if (((Vector)model.getDataVector().elementAt(i)).contains(name)) {\r
1918 return true;\r
1919 }\r
1920 }\r
1921 return false;\r
1922 }\r
1923 \r
1924 /**\r
1925 * This method initializes jPanelModOrderN \r
1926 * \r
1927 * @return javax.swing.JPanel \r
1928 */\r
1929 private JPanel getJPanelModOrderN() {\r
1930 if (jPanelModOrderN == null) {\r
1931 jPanelModOrderN = new JPanel();\r
1932 }\r
1933 return jPanelModOrderN;\r
1934 }\r
1935\r
1936 /**\r
1937 * This method initializes jPanelModOrderS \r
1938 * \r
1939 * @return javax.swing.JPanel \r
1940 */\r
1941 private JPanel getJPanelModOrderS() {\r
1942 if (jPanelModOrderS == null) {\r
1943 FlowLayout flowLayout6 = new FlowLayout();\r
1944 flowLayout6.setAlignment(java.awt.FlowLayout.RIGHT);\r
1945 jPanelModOrderS = new JPanel();\r
1946 jPanelModOrderS.setLayout(flowLayout6);\r
1947 jPanelModOrderS.add(getJButtonOk(), null);\r
1948 jPanelModOrderS.add(getJButtonCancel(), null);\r
1949 }\r
1950 return jPanelModOrderS;\r
1951 }\r
1952\r
1953 /**\r
1954 * This method initializes jPanelModOrderC \r
1955 * \r
1956 * @return javax.swing.JPanel \r
1957 */\r
1958 private JPanel getJPanelModOrderC() {\r
1959 if (jPanelModOrderC == null) {\r
1960 jPanelModOrderC = new JPanel();\r
1961 jPanelModOrderC.add(getJScrollPaneModInFv(), null);\r
1962 jPanelModOrderC.add(getJPanelController(), null);\r
1963 jPanelModOrderC.add(getJScrollPaneFpdModules(), null);\r
1964 }\r
1965 return jPanelModOrderC;\r
1966 }\r
1967\r
1968 /**\r
1969 * This method initializes jScrollPaneModInFv \r
1970 * \r
1971 * @return javax.swing.JScrollPane \r
1972 */\r
1973 private JScrollPane getJScrollPaneModInFv() {\r
1974 if (jScrollPaneModInFv == null) {\r
1975 jScrollPaneModInFv = new JScrollPane();\r
1976 jScrollPaneModInFv.setPreferredSize(new java.awt.Dimension(200,500));\r
1977 jScrollPaneModInFv.setViewportView(getJTableModInFv());\r
1978 }\r
1979 return jScrollPaneModInFv;\r
1980 }\r
1981\r
1982 /**\r
1983 * This method initializes jTableModInFv \r
1984 * \r
1985 * @return javax.swing.JTable \r
1986 */\r
1987 private JTable getJTableModInFv() {\r
1988 if (jTableModInFv == null) {\r
1989 modInFvTableModel = new NonEditableTableModel();\r
1990 modInFvTableModel.addColumn("Module Orders in FV");\r
1991 jTableModInFv = new JTable(modInFvTableModel);\r
1992 jTableModInFv.setRowHeight(20);\r
1993 jTableModInFv.setShowGrid(false);\r
1994 }\r
1995 return jTableModInFv;\r
1996 }\r
1997\r
1998 /**\r
1999 * This method initializes jPanelController \r
2000 * \r
2001 * @return javax.swing.JPanel \r
2002 */\r
2003 private JPanel getJPanelController() {\r
2004 if (jPanelController == null) {\r
2005 FlowLayout flowLayout5 = new FlowLayout();\r
2006 flowLayout5.setVgap(50);\r
2007 flowLayout5.setHgap(50);\r
2008 jPanelController = new JPanel();\r
2009 jPanelController.setLayout(flowLayout5);\r
2010 jPanelController.setPreferredSize(new java.awt.Dimension(150,500));\r
2011 jPanelController.add(getJButtonUp(), null);\r
2012 jPanelController.add(getJButtonInsert(), null);\r
2013 jPanelController.add(getJButtonRemove(), null);\r
2014 jPanelController.add(getJButtonDown(), null);\r
2015 }\r
2016 return jPanelController;\r
2017 }\r
2018\r
2019 /**\r
2020 * This method initializes jScrollPaneFpdModules \r
2021 * \r
2022 * @return javax.swing.JScrollPane \r
2023 */\r
2024 private JScrollPane getJScrollPaneFpdModules() {\r
2025 if (jScrollPaneFpdModules == null) {\r
2026 jScrollPaneFpdModules = new JScrollPane();\r
2027 jScrollPaneFpdModules.setPreferredSize(new java.awt.Dimension(200,500));\r
2028 jScrollPaneFpdModules.setViewportView(getJTableFpdModules());\r
2029 }\r
2030 return jScrollPaneFpdModules;\r
2031 }\r
2032\r
2033 /**\r
2034 * This method initializes jTableFpdModules \r
2035 * \r
2036 * @return javax.swing.JTable \r
2037 */\r
2038 private JTable getJTableFpdModules() {\r
2039 if (jTableFpdModules == null) {\r
2040 fpdModTableModel = new NonEditableTableModel();\r
2041 TableSorter sorter = new TableSorter(fpdModTableModel);\r
2042 jTableFpdModules = new JTable(sorter);\r
2043 jTableFpdModules.setRowHeight(20);\r
2044 jTableFpdModules.setShowGrid(false);\r
2045 fpdModTableModel.addColumn("Modules in Platform");\r
2046 }\r
2047 return jTableFpdModules;\r
2048 }\r
2049\r
2050 /**\r
2051 * This method initializes jButtonUp \r
2052 * \r
2053 * @return javax.swing.JButton \r
2054 */\r
2055 private JButton getJButtonUp() {\r
2056 if (jButtonUp == null) {\r
2057 jButtonUp = new JButton();\r
2058 jButtonUp.setPreferredSize(new java.awt.Dimension(60,20));\r
2059 jButtonUp.setFont(new java.awt.Font("Dialog", java.awt.Font.BOLD, 14));\r
2060 jButtonUp.setText("^");\r
2061 jButtonUp.addActionListener(new java.awt.event.ActionListener() {\r
2062 public void actionPerformed(java.awt.event.ActionEvent e) {\r
2063 int selectedRow = jTableModInFv.getSelectedRow();\r
2064 if (selectedRow <= 0) {\r
2065 return;\r
2066 }\r
2067 modInFvTableModel.moveRow(selectedRow, selectedRow, selectedRow - 1);\r
2068 jTableModInFv.changeSelection(selectedRow - 1, 0, false, false);\r
2069 }\r
2070 });\r
2071 }\r
2072 return jButtonUp;\r
2073 }\r
2074\r
2075 /**\r
2076 * This method initializes jButtonInsert \r
2077 * \r
2078 * @return javax.swing.JButton \r
2079 */\r
2080 private JButton getJButtonInsert() {\r
2081 if (jButtonInsert == null) {\r
2082 jButtonInsert = new JButton();\r
2083 jButtonInsert.setText("<<");\r
2084 jButtonInsert.setPreferredSize(new java.awt.Dimension(60,20));\r
2085 jButtonInsert.addActionListener(new java.awt.event.ActionListener() {\r
2086 public void actionPerformed(java.awt.event.ActionEvent e) {\r
2087 int selectedRowRight = jTableFpdModules.getSelectedRow();\r
2088 if (selectedRowRight < 0) {\r
2089 return;\r
2090 }\r
2091 \r
2092 int rowInModel = ((TableSorter)jTableFpdModules.getModel()).getModelRowIndex(selectedRowRight);\r
2093 \r
2094 String[] row = {jTableFpdModules.getValueAt(selectedRowRight, 0)+""};\r
2095 int selectedRowLeft = jTableModInFv.getSelectedRow();\r
2096 if (selectedRowLeft < 0) {\r
2097 modInFvTableModel.addRow(row);\r
2098 jTableModInFv.changeSelection(jTableModInFv.getRowCount() - 1, 0, false, false);\r
2099 fpdModTableModel.removeRow(rowInModel);\r
2100 }\r
2101 else {\r
2102 modInFvTableModel.insertRow(selectedRowLeft, row);\r
2103 jTableModInFv.changeSelection(selectedRowLeft, 0, false, false);\r
2104 }\r
2105 }\r
2106 });\r
2107 }\r
2108 return jButtonInsert;\r
2109 }\r
2110\r
2111 /**\r
2112 * This method initializes jButtonRemove \r
2113 * \r
2114 * @return javax.swing.JButton \r
2115 */\r
2116 private JButton getJButtonRemove() {\r
2117 if (jButtonRemove == null) {\r
2118 jButtonRemove = new JButton();\r
2119 jButtonRemove.setPreferredSize(new java.awt.Dimension(60,20));\r
2120 jButtonRemove.setText(">>");\r
2121 jButtonRemove.addActionListener(new java.awt.event.ActionListener() {\r
2122 public void actionPerformed(java.awt.event.ActionEvent e) {\r
2123 int selectedRowLeft = jTableModInFv.getSelectedRow();\r
2124 if (selectedRowLeft < 0) {\r
2125 return;\r
2126 }\r
2127 \r
2128 String[] row = {jTableModInFv.getValueAt(selectedRowLeft, 0)+""};\r
2129 fpdModTableModel.addRow(row);\r
2130 int viewIndex = ((TableSorter) jTableFpdModules.getModel()).getViewIndexArray()[jTableFpdModules\r
2131 .getRowCount() - 1];\r
2132 jTableFpdModules.changeSelection(viewIndex, 0, false, false);\r
2133 modInFvTableModel.removeRow(selectedRowLeft);\r
2134 }\r
2135 });\r
2136 }\r
2137 return jButtonRemove;\r
2138 }\r
2139\r
2140 /**\r
2141 * This method initializes jButtonDown \r
2142 * \r
2143 * @return javax.swing.JButton \r
2144 */\r
2145 private JButton getJButtonDown() {\r
2146 if (jButtonDown == null) {\r
2147 jButtonDown = new JButton();\r
2148 jButtonDown.setPreferredSize(new java.awt.Dimension(60,20));\r
2149 jButtonDown.setFont(new java.awt.Font("Dialog", java.awt.Font.BOLD, 10));\r
2150 jButtonDown.setText("v");\r
2151 jButtonDown.addActionListener(new java.awt.event.ActionListener() {\r
2152 public void actionPerformed(java.awt.event.ActionEvent e) {\r
2153 int selectedRow = jTableModInFv.getSelectedRow();\r
2154 if (selectedRow >= jTableModInFv.getRowCount() - 1) {\r
2155 return;\r
2156 }\r
2157 modInFvTableModel.moveRow(selectedRow, selectedRow, selectedRow + 1);\r
2158 jTableModInFv.changeSelection(selectedRow + 1, 0, false, false);\r
2159 }\r
2160 });\r
2161 }\r
2162 return jButtonDown;\r
2163 }\r
2164 \r
2165 /**\r
2166 * This method initializes jButtonOk \r
2167 * \r
2168 * @return javax.swing.JButton \r
2169 */\r
2170 private JButton getJButtonOk() {\r
2171 if (jButtonOk == null) {\r
2172 jButtonOk = new JButton();\r
2173 jButtonOk.setPreferredSize(new java.awt.Dimension(80,20));\r
2174 jButtonOk.setText("Ok");\r
2175 }\r
2176 return jButtonOk;\r
2177 }\r
2178\r
2179 /**\r
2180 * This method initializes jButtonCancel \r
2181 * \r
2182 * @return javax.swing.JButton \r
2183 */\r
2184 private JButton getJButtonCancel() {\r
2185 if (jButtonCancel == null) {\r
2186 jButtonCancel = new JButton();\r
2187 jButtonCancel.setPreferredSize(new java.awt.Dimension(80,20));\r
2188 jButtonCancel.setText("Cancel");\r
2189 jButtonCancel.addActionListener(new java.awt.event.ActionListener() {\r
2190 public void actionPerformed(java.awt.event.ActionEvent e) {\r
2191 jTabbedPane.setSelectedIndex(0);\r
2192 }\r
2193 });\r
2194 }\r
2195 return jButtonCancel;\r
2196 }\r
2197 }\r
a13899c5 2198\r
2199} // @jve:decl-index=0:visual-constraint="10,10"\r
2200\r
2201class ImageParaTableModel extends DefaultTableModel {\r
2202\r
44053733 2203 private static final long serialVersionUID = 1L;\r
44053733 2204 \r
2205 public boolean isCellEditable(int row, int col) {\r
2206 if (getValueAt(row, 1).equals("ImageName") && col >=1) {\r
2207 return false;\r
2208 }\r
2209 return true;\r
a13899c5 2210 }\r
2211}\r
ae0d4fd2 2212\r
3658f95e 2213class FvInfoFromFdf {\r
2214 private String fvName;\r
2215 private String size;\r
2216 private String efiFileName;\r
2217 \r
2218 public FvInfoFromFdf () {\r
2219 fvName = "";\r
2220 size = "";\r
2221 efiFileName = "";\r
2222 }\r
2223 public FvInfoFromFdf (String f, String s, String e) {\r
2224 this();\r
2225 fvName = f;\r
2226 size = s;\r
2227 efiFileName = e;\r
2228 }\r
2229 public String getEfiFileName() {\r
2230 return efiFileName;\r
2231 }\r
2232 public void setEfiFileName(String efiFileName) {\r
2233 this.efiFileName = efiFileName;\r
2234 }\r
2235 public String getFvName() {\r
2236 return fvName;\r
2237 }\r
2238 public void setFvName(String fvName) {\r
2239 this.fvName = fvName;\r
2240 }\r
2241 public String getSize() {\r
2242 return size;\r
2243 }\r
2244 public void setSize(String size) {\r
2245 this.size = size;\r
2246 }\r
2247 \r
2248}\r