1 package org
.tianocore
.frameworkwizard
.platform
.ui
;
3 import java
.awt
.BorderLayout
;
4 import java
.awt
.Dimension
;
5 import java
.awt
.FontMetrics
;
7 import javax
.swing
.ButtonGroup
;
8 import javax
.swing
.JOptionPane
;
9 import javax
.swing
.JPanel
;
10 import javax
.swing
.JScrollPane
;
11 import javax
.swing
.JTable
;
12 import javax
.swing
.ListSelectionModel
;
13 import javax
.swing
.event
.ListSelectionEvent
;
14 import javax
.swing
.event
.ListSelectionListener
;
15 import javax
.swing
.table
.DefaultTableModel
;
16 import javax
.swing
.table
.TableColumn
;
18 import org
.tianocore
.PlatformSurfaceAreaDocument
;
19 import org
.tianocore
.frameworkwizard
.common
.DataValidation
;
20 import org
.tianocore
.frameworkwizard
.common
.Tools
;
21 import org
.tianocore
.frameworkwizard
.common
.Identifications
.OpeningPlatformType
;
22 import org
.tianocore
.frameworkwizard
.common
.ui
.IInternalFrame
;
23 import javax
.swing
.JCheckBox
;
24 import javax
.swing
.JRadioButton
;
25 import javax
.swing
.JButton
;
26 import javax
.swing
.JLabel
;
27 import javax
.swing
.JTextField
;
28 import java
.awt
.GridLayout
;
29 import java
.util
.ArrayList
;
31 public class FpdDynamicPcdBuildDefinitions
extends IInternalFrame
{
36 private static final long serialVersionUID
= 1L;
37 private JPanel jContentPane
= null;
38 private JScrollPane jScrollPaneDynPcd
= null;
39 private JTable jTableDynPcd
= null;
40 private DynPcdTableModel modelPcd
= null;
41 private DynPcdTableModel modelSku
= null;
42 private FpdFileContents ffc
= null;
43 private OpeningPlatformType docConsole
= null;
44 private JPanel jPanelSkuInfo
= null;
45 private JCheckBox jCheckBoxSkuEnable
= null;
46 private JPanel jPanelDynPcdValue
= null;
47 private JRadioButton jRadioButtonHii
= null;
48 private JRadioButton jRadioButtonVpd
= null;
49 private JScrollPane jScrollPaneSkuInfo
= null;
50 private JTable jTableSkuInfo
= null;
51 private JButton jButtonSkuInfoUpdate
= null;
52 private JLabel jLabelVarName
= null;
53 private JTextField jTextFieldVarName
= null;
54 private JLabel jLabelVarGuid
= null;
55 private JTextField jTextFieldVarGuid
= null;
56 private JLabel jLabelPad
= null;
57 private JLabel jLabelVarOffset
= null;
58 private JTextField jTextFieldVarOffset
= null;
59 private JLabel jLabelHiiDefaultValue
= null;
60 private JTextField jTextFieldHiiDefaultValue
= null;
61 private JTextField jTextFieldVpdOffset
= null;
62 private JLabel jLabelVpdOffset
= null;
63 private JTextField jTextFieldDefaultValue
= null;
64 private JRadioButton jRadioButtonDefaultValue
= null;
65 private ButtonGroup bg
= new ButtonGroup();
66 private JLabel jLabelPadd
= null;
67 private JLabel jLabelPad1
= null;
68 private JScrollPane jScrollPane
= null;
70 * This is the default constructor
72 public FpdDynamicPcdBuildDefinitions() {
77 public FpdDynamicPcdBuildDefinitions(PlatformSurfaceAreaDocument
.PlatformSurfaceArea fpd
){
82 public FpdDynamicPcdBuildDefinitions(OpeningPlatformType opt
) {
83 this(opt
.getXmlFpd());
87 public void init(PlatformSurfaceAreaDocument
.PlatformSurfaceArea fpd
) {
89 ffc
= new FpdFileContents(fpd
);
92 String
[][] saa
= new String
[ffc
.getDynamicPcdBuildDataCount()][5];
93 ffc
.getDynamicPcdBuildData(saa
);
94 for (int i
= 0; i
< saa
.length
; ++i
) {
95 modelPcd
.addRow(saa
[i
]);
98 saa
= new String
[ffc
.getPlatformDefsSkuInfoCount()][2];
99 ffc
.getPlatformDefsSkuInfos(saa
);
100 for (int i
= 0; i
< saa
.length
; ++i
) {
101 modelSku
.addRow(saa
[i
]);
106 * This method initializes this
110 private void initialize() {
111 this.setSize(661, 558);
112 this.setTitle("Dynamic PCD Build Definitions");
113 this.setContentPane(getJContentPane());
114 this.setVisible(true);
118 * This method initializes jContentPane
120 * @return javax.swing.JPanel
122 private JPanel
getJContentPane() {
123 if (jContentPane
== null) {
124 jContentPane
= new JPanel();
125 jContentPane
.setLayout(new BorderLayout());
126 jContentPane
.add(getJScrollPaneDynPcd(), java
.awt
.BorderLayout
.NORTH
);
127 jContentPane
.add(getJPanelSkuInfo(), java
.awt
.BorderLayout
.CENTER
);
133 * This method initializes jScrollPane
135 * @return javax.swing.JScrollPane
137 private JScrollPane
getJScrollPaneDynPcd() {
138 if (jScrollPaneDynPcd
== null) {
139 jScrollPaneDynPcd
= new JScrollPane();
140 jScrollPaneDynPcd
.setPreferredSize(new java
.awt
.Dimension(100,250));
141 jScrollPaneDynPcd
.setViewportView(getJTableDynPcd());
143 return jScrollPaneDynPcd
;
147 * This method initializes jTable
149 * @return javax.swing.JTable
151 private JTable
getJTableDynPcd() {
152 if (jTableDynPcd
== null) {
153 modelPcd
= new DynPcdTableModel();
154 modelPcd
.addColumn("CName");
155 modelPcd
.addColumn("Token");
156 modelPcd
.addColumn("TokenSpaceGuid");
157 modelPcd
.addColumn("MaxDatumSize");
158 modelPcd
.addColumn("DatumType");
159 jTableDynPcd
= new JTable(modelPcd
);
160 jTableDynPcd
.setRowHeight(20);
161 TableColumn tokenColumn
= jTableDynPcd
.getColumnModel().getColumn(1);
162 jTableDynPcd
.removeColumn(tokenColumn
);
163 jTableDynPcd
.getColumnModel().getColumn(0).setMinWidth(250);
165 jTableDynPcd
.setSelectionMode(ListSelectionModel
.SINGLE_SELECTION
);
166 jTableDynPcd
.getSelectionModel().addListSelectionListener(new ListSelectionListener(){
167 public void valueChanged(ListSelectionEvent e
) {
168 if (e
.getValueIsAdjusting()){
171 ListSelectionModel lsm
= (ListSelectionModel
)e
.getSource();
172 if (lsm
.isSelectionEmpty()) {
176 int selectedRow
= lsm
.getMinSelectionIndex();
177 jTextFieldDefaultValue
.setText("");
178 jTextFieldVpdOffset
.setText("");
179 jTextFieldVarName
.setText("");
180 jTextFieldVarGuid
.setText("");
181 jTextFieldVarOffset
.setText("");
182 jTextFieldHiiDefaultValue
.setText("");
183 displayDetails(selectedRow
);
191 // should display default sku info here, as no selection event of table1 will be triggered when change selection of rows in table.
193 private void displayDetails(int i
) {
194 jTableSkuInfo
.changeSelection(0, 1, false, false);
195 int skuCount
= ffc
.getDynamicPcdSkuInfoCount(i
);
196 String defaultVal
= ffc
.getDynamicPcdBuildDataValue(i
);
197 if (defaultVal
!= null) {
198 jRadioButtonDefaultValue
.setSelected(true);
199 jTextFieldDefaultValue
.setText(defaultVal
);
200 if ( skuCount
== 1) {
201 jCheckBoxSkuEnable
.setSelected(false);
204 jCheckBoxSkuEnable
.setSelected(true);
208 else if (ffc
.getDynamicPcdBuildDataVpdOffset(i
) != null) {
209 jRadioButtonVpd
.setSelected(true);
210 jTextFieldVpdOffset
.setText(ffc
.getDynamicPcdBuildDataVpdOffset(i
));
212 jCheckBoxSkuEnable
.setSelected(false);
216 jCheckBoxSkuEnable
.setSelected(true);
220 jRadioButtonHii
.setSelected(true);
221 String
[][] saa
= new String
[ffc
.getDynamicPcdSkuInfoCount(i
)][7];
222 ffc
.getDynamicPcdSkuInfos(i
, saa
);
224 String varDisplayName
= Tools
.convertUnicodeHexStringToString(saa
[0][1]);
225 jTextFieldVarName
.setText(varDisplayName
);
227 jTextFieldVarGuid
.setText(saa
[0][2]);
228 jTextFieldVarOffset
.setText(saa
[0][3]);
229 jTextFieldHiiDefaultValue
.setText(saa
[0][4]);
231 jCheckBoxSkuEnable
.setSelected(false);
234 jCheckBoxSkuEnable
.setSelected(true);
240 private void displaySkuInfoDetails(int i
) {
241 int pcdSelected
= jTableDynPcd
.getSelectedRow();
242 if (pcdSelected
< 0) {
246 String
[][] saa
= new String
[ffc
.getDynamicPcdSkuInfoCount(pcdSelected
)][7];
247 ffc
.getDynamicPcdSkuInfos(pcdSelected
, saa
);
249 if (saa
[i
][5] != null){
250 jRadioButtonVpd
.setSelected(true);
251 jTextFieldVpdOffset
.setText(saa
[i
][5]);
254 else if (saa
[i
][1] != null) {
255 jRadioButtonHii
.setSelected(true);
256 String varDisplayName
= Tools
.convertUnicodeHexStringToString(saa
[i
][1]);
257 jTextFieldVarName
.setText(varDisplayName
);
258 jTextFieldVarGuid
.setText(saa
[i
][2]);
259 jTextFieldVarOffset
.setText(saa
[i
][3]);
260 jTextFieldHiiDefaultValue
.setText(saa
[i
][4]);
264 jRadioButtonDefaultValue
.setSelected(true);
265 jTextFieldDefaultValue
.setText(saa
[i
][6]);
271 * This method initializes jPanel3
273 * @return javax.swing.JPanel
275 private JPanel
getJPanelSkuInfo() {
276 if (jPanelSkuInfo
== null) {
277 jPanelSkuInfo
= new JPanel();
278 jPanelSkuInfo
.setLayout(new BorderLayout());
279 jPanelSkuInfo
.setBorder(javax
.swing
.BorderFactory
.createEtchedBorder(javax
.swing
.border
.EtchedBorder
.RAISED
));
280 jPanelSkuInfo
.setPreferredSize(new java
.awt
.Dimension(600,120));
282 // jPanelSkuInfo.add(getJPanelSkuInfoN(), java.awt.BorderLayout.NORTH);
283 jPanelSkuInfo
.add(getJScrollPane(), java
.awt
.BorderLayout
.NORTH
);
284 jPanelSkuInfo
.add(getJScrollPaneSkuInfo(), java
.awt
.BorderLayout
.CENTER
);
287 // jPanelSkuInfo.add(getJPanelDynPcdValue(), java.awt.BorderLayout.SOUTH);
289 return jPanelSkuInfo
;
293 * This method initializes jCheckBox
295 * @return javax.swing.JCheckBox
297 private JCheckBox
getJCheckBoxSkuEnable() {
298 if (jCheckBoxSkuEnable
== null) {
299 jCheckBoxSkuEnable
= new JCheckBox();
300 jCheckBoxSkuEnable
.setText("SKU Enable");
301 jCheckBoxSkuEnable
.addItemListener(new java
.awt
.event
.ItemListener() {
302 public void itemStateChanged(java
.awt
.event
.ItemEvent e
) {
303 jTableSkuInfo
.setEnabled(jCheckBoxSkuEnable
.isSelected());
307 return jCheckBoxSkuEnable
;
312 * This method initializes jPanel4
314 * @return javax.swing.JPanel
316 private JPanel
getJPanelDynPcdValue() {
317 if (jPanelDynPcdValue
== null) {
318 jLabelPad1
= new JLabel();
319 jLabelPad1
.setText(" ");
320 GridLayout gridLayout
= new GridLayout();
321 gridLayout
.setColumns(5);
322 gridLayout
.setRows(4);
323 gridLayout
.setHgap(20);
324 gridLayout
.setVgap(20);
326 jLabelVpdOffset
= new JLabel();
327 jLabelVpdOffset
.setPreferredSize(new java
.awt
.Dimension(80,20));
328 jLabelVpdOffset
.setText("VPD Offset");
329 jLabelHiiDefaultValue
= new JLabel();
330 jLabelHiiDefaultValue
.setPreferredSize(new java
.awt
.Dimension(100,20));
331 jLabelHiiDefaultValue
.setText("HII Default Value");
332 jLabelVarOffset
= new JLabel();
333 jLabelVarOffset
.setText("Variable Offset");
334 jLabelVarOffset
.setPreferredSize(new java
.awt
.Dimension(90,20));
335 jLabelPad
= new JLabel();
336 jLabelPad
.setText(" ");
337 jLabelVarGuid
= new JLabel();
338 jLabelVarGuid
.setText("Variable GUID");
339 jLabelVarGuid
.setPreferredSize(new java
.awt
.Dimension(100,20));
340 jLabelVarName
= new JLabel();
341 jLabelVarName
.setText("Variable Name");
342 jLabelVarName
.setToolTipText("");
343 jLabelVarName
.setPreferredSize(new java
.awt
.Dimension(90,20));
344 jPanelDynPcdValue
= new JPanel();
345 jPanelDynPcdValue
.setBorder(javax
.swing
.BorderFactory
.createEtchedBorder(javax
.swing
.border
.EtchedBorder
.LOWERED
));
346 jPanelDynPcdValue
.setPreferredSize(new java
.awt
.Dimension(1000,150));
347 jPanelDynPcdValue
.setLayout(gridLayout
);
348 jPanelDynPcdValue
.add(getJRadioButtonHii(), null);
349 jPanelDynPcdValue
.add(jLabelVarName
, null);
350 jPanelDynPcdValue
.add(getJTextFieldVarName(), null);
351 jPanelDynPcdValue
.add(jLabelVarGuid
, null);
352 jPanelDynPcdValue
.add(getJTextFieldVarGuid(), null);
353 jPanelDynPcdValue
.add(jLabelPad
, null);
354 jPanelDynPcdValue
.add(jLabelVarOffset
, null);
355 jPanelDynPcdValue
.add(getJTextFieldVarOffset(), null);
356 jPanelDynPcdValue
.add(jLabelHiiDefaultValue
, null);
357 jPanelDynPcdValue
.add(getJTextFieldHiiDefaultValue(), null);
358 jPanelDynPcdValue
.add(getJRadioButtonVpd(), null);
359 jPanelDynPcdValue
.add(jLabelVpdOffset
, null);
360 jLabelPadd
= new JLabel();
361 jLabelPadd
.setText(" ");
362 jPanelDynPcdValue
.add(getJTextFieldVpdOffset(), null);
363 jLabelVarName
.setEnabled(false);
364 jLabelVarGuid
.setEnabled(false);
365 jLabelHiiDefaultValue
.setEnabled(false);
366 jLabelVarOffset
.setEnabled(false);
367 jLabelVpdOffset
.setEnabled(false);
368 jPanelDynPcdValue
.add(jLabelPadd
, null);
369 jPanelDynPcdValue
.add(jLabelPad1
, null);
370 jPanelDynPcdValue
.add(getJRadioButtonDefaultValue(), null);
371 jPanelDynPcdValue
.add(getJTextFieldDefaultValue(), null);
372 jPanelDynPcdValue
.add(getJCheckBoxSkuEnable(), null);
373 jPanelDynPcdValue
.add(getJButtonSkuInfoUpdate(), null);
374 bg
.add(jRadioButtonHii
);
375 bg
.add(jRadioButtonVpd
);
378 return jPanelDynPcdValue
;
382 * This method initializes jRadioButton
384 * @return javax.swing.JRadioButton
386 private JRadioButton
getJRadioButtonHii() {
387 if (jRadioButtonHii
== null) {
388 jRadioButtonHii
= new JRadioButton();
389 jRadioButtonHii
.setText("HII Enable");
390 jRadioButtonHii
.addItemListener(new java
.awt
.event
.ItemListener() {
391 public void itemStateChanged(java
.awt
.event
.ItemEvent e
) {
392 boolean selected
= jRadioButtonHii
.isSelected();
393 jLabelVarName
.setEnabled(selected
);
394 jLabelVarGuid
.setEnabled(selected
);
395 jLabelPad
.setEnabled(selected
);
396 jLabelVarOffset
.setEnabled(selected
);
397 jLabelHiiDefaultValue
.setEnabled(selected
);
398 jTextFieldVarName
.setEnabled(selected
);
399 jTextFieldVarGuid
.setEnabled(selected
);
400 jTextFieldVarOffset
.setEnabled(selected
);
401 jTextFieldHiiDefaultValue
.setEnabled(selected
);
405 return jRadioButtonHii
;
409 * This method initializes jRadioButton1
411 * @return javax.swing.JRadioButton
413 private JRadioButton
getJRadioButtonVpd() {
414 if (jRadioButtonVpd
== null) {
415 jRadioButtonVpd
= new JRadioButton();
416 jRadioButtonVpd
.setText("VPD Enable");
417 jRadioButtonVpd
.addItemListener(new java
.awt
.event
.ItemListener() {
418 public void itemStateChanged(java
.awt
.event
.ItemEvent e
) {
419 boolean selected
= jRadioButtonVpd
.isSelected();
420 jTextFieldVpdOffset
.setEnabled(selected
);
421 jLabelVpdOffset
.setEnabled(selected
);
425 return jRadioButtonVpd
;
429 * This method initializes jScrollPane1
431 * @return javax.swing.JScrollPane
433 private JScrollPane
getJScrollPaneSkuInfo() {
434 if (jScrollPaneSkuInfo
== null) {
435 jScrollPaneSkuInfo
= new JScrollPane();
436 jScrollPaneSkuInfo
.setPreferredSize(new java
.awt
.Dimension(300,50));
437 jScrollPaneSkuInfo
.setViewportView(getJTableSkuInfo());
439 return jScrollPaneSkuInfo
;
443 * This method initializes jTable1
445 * @return javax.swing.JTable
447 private JTable
getJTableSkuInfo() {
448 if (jTableSkuInfo
== null) {
449 modelSku
= new DynPcdTableModel();
450 jTableSkuInfo
= new JTable(modelSku
);
451 modelSku
.addColumn("SKU ID");
452 modelSku
.addColumn("SKU Name");
454 jTableSkuInfo
.setSelectionMode(ListSelectionModel
.SINGLE_SELECTION
);
455 jTableSkuInfo
.getSelectionModel().addListSelectionListener(new ListSelectionListener(){
456 public void valueChanged(ListSelectionEvent e
) {
457 if (jTableDynPcd
.getSelectedRow() < 0) {
460 if (e
.getValueIsAdjusting()){
463 ListSelectionModel lsm
= (ListSelectionModel
)e
.getSource();
464 if (lsm
.isSelectionEmpty()) {
468 jTextFieldDefaultValue
.setText("");
469 jTextFieldVpdOffset
.setText("");
470 jTextFieldVarName
.setText("");
471 jTextFieldVarGuid
.setText("");
472 jTextFieldVarOffset
.setText("");
473 jTextFieldHiiDefaultValue
.setText("");
474 int selected
= lsm
.getMinSelectionIndex();
475 displaySkuInfoDetails(selected
);
480 return jTableSkuInfo
;
484 * This method initializes jButton
486 * @return javax.swing.JButton
488 private JButton
getJButtonSkuInfoUpdate() {
489 if (jButtonSkuInfoUpdate
== null) {
490 jButtonSkuInfoUpdate
= new JButton();
491 jButtonSkuInfoUpdate
.setPreferredSize(new java
.awt
.Dimension(180,20));
492 jButtonSkuInfoUpdate
.setText("Update SKU Value");
493 FontMetrics fm
= jButtonSkuInfoUpdate
.getFontMetrics(jButtonSkuInfoUpdate
.getFont());
494 jButtonSkuInfoUpdate
.setPreferredSize(new Dimension (fm
.stringWidth(jButtonSkuInfoUpdate
.getText()) + 40, 20));
495 jButtonSkuInfoUpdate
.addActionListener(new java
.awt
.event
.ActionListener() {
496 public void actionPerformed(java
.awt
.event
.ActionEvent e
) {
497 int pcdSelected
= jTableDynPcd
.getSelectedRow();
498 if (pcdSelected
< 0) {
501 docConsole
.setSaved(false);
502 updateSkuInfo(pcdSelected
);
507 return jButtonSkuInfoUpdate
;
510 private void updateSkuInfo (int pcdSelected
) {
511 int skuCount
= ffc
.getDynamicPcdSkuInfoCount(pcdSelected
);
512 String cName
= modelPcd
.getValueAt(pcdSelected
, 0)+"";
513 String tsGuid
= modelPcd
.getValueAt(pcdSelected
, 2)+"";
515 String varName
= null;
516 String varGuid
= null;
517 String varOffset
= null;
518 String hiiDefault
= null;
520 String vpdOffset
= null;
521 if (jRadioButtonHii
.isSelected()) {
522 varName
= Tools
.convertStringToUnicodeHexString(jTextFieldVarName
.getText());
523 if (varName
.length() == 0) {
524 JOptionPane
.showMessageDialog(this, "Variable Name is Empty.");
527 varGuid
= jTextFieldVarGuid
.getText();
528 if (varGuid
.length() == 0) {
529 JOptionPane
.showMessageDialog(this, "Variable GUID is Empty.");
532 varOffset
= jTextFieldVarOffset
.getText();
533 if (!DataValidation
.isHex64BitDataType(varOffset
)) {
534 JOptionPane
.showMessageDialog(this, "Variable Offset is NOT Hex64BitDataType.");
537 hiiDefault
= jTextFieldHiiDefaultValue
.getText();
538 if (!DataValidation
.isDefaultValueType(hiiDefault
)) {
539 JOptionPane
.showMessageDialog(this, "Default Value is NOT DefaultValueType.");
543 if (jRadioButtonVpd
.isSelected()) {
544 vpdOffset
= jTextFieldVpdOffset
.getText();
545 if (!DataValidation
.isHex64BitDataType(vpdOffset
)) {
546 JOptionPane
.showMessageDialog(this, "VPD Offset is NOT Hex64BitDataType.");
550 if (jRadioButtonDefaultValue
.isSelected()) {
551 value
= jTextFieldDefaultValue
.getText();
552 if (!DataValidation
.isDefaultValueType(value
)) {
553 JOptionPane
.showMessageDialog(this, "Value is NOT DefaultValueType.");
558 // SKU disabled. only modify data for default SKU.
560 if (!jCheckBoxSkuEnable
.isSelected()) {
562 ffc
.removeDynamicPcdBuildDataSkuInfo(pcdSelected
);
563 if (jRadioButtonHii
.isSelected()) {
564 ffc
.genDynamicPcdBuildDataSkuInfo("0", varName
, varGuid
, varOffset
, hiiDefault
, null, null, pcdSelected
);
565 ArrayList
<String
> al
= ffc
.getDynPcdMapValue(cName
+ " " + tsGuid
);
569 for (int i
= 0; i
< al
.size(); ++i
) {
570 String mKey
= moduleInfo (al
.get(i
));
571 ffc
.updatePcdData(mKey
, cName
, tsGuid
, null, null, hiiDefault
);
574 else if (jRadioButtonVpd
.isSelected()){
575 ffc
.genDynamicPcdBuildDataSkuInfo("0", null, null, null, null, vpdOffset
, null, pcdSelected
);
576 ArrayList
<String
> al
= ffc
.getDynPcdMapValue(cName
+ " " + tsGuid
);
580 for (int i
= 0; i
< al
.size(); ++i
) {
581 String mKey
= moduleInfo (al
.get(i
));
582 ffc
.updatePcdData(mKey
, cName
, tsGuid
, null, null, vpdOffset
);
586 ffc
.genDynamicPcdBuildDataSkuInfo("0", null, null, null, null, null, value
, pcdSelected
);
587 ArrayList
<String
> al
= ffc
.getDynPcdMapValue(cName
+ " " + tsGuid
);
591 for (int i
= 0; i
< al
.size(); ++i
) {
592 String mKey
= moduleInfo (al
.get(i
));
593 ffc
.updatePcdData(mKey
, cName
, tsGuid
, null, null, value
);
599 // SKU Enabled, need add data to all SKUs.
601 if (jCheckBoxSkuEnable
.isSelected()) {
604 for (int i
= 1; i
< jTableSkuInfo
.getRowCount(); ++i
) {
605 ffc
.genDynamicPcdBuildDataSkuInfo(jTableSkuInfo
.getValueAt(i
, 0)+"", varName
, varGuid
, varOffset
, hiiDefault
, vpdOffset
, value
, pcdSelected
);
609 int row
= jTableSkuInfo
.getSelectedRow();
613 ffc
.updateDynamicPcdBuildDataSkuInfo(jTableSkuInfo
.getValueAt(row
, 0)+"", varName
, varGuid
, varOffset
, hiiDefault
, vpdOffset
, value
, pcdSelected
);
618 private String
moduleInfo (String pcdInfo
) {
620 return pcdInfo
.substring(0, pcdInfo
.lastIndexOf(" "));
623 * This method initializes jTextField
625 * @return javax.swing.JTextField
627 private JTextField
getJTextFieldVarName() {
628 if (jTextFieldVarName
== null) {
629 jTextFieldVarName
= new JTextField();
630 jTextFieldVarName
.setPreferredSize(new java
.awt
.Dimension(150,20));
631 jTextFieldVarName
.setEnabled(false);
633 return jTextFieldVarName
;
637 * This method initializes jTextField1
639 * @return javax.swing.JTextField
641 private JTextField
getJTextFieldVarGuid() {
642 if (jTextFieldVarGuid
== null) {
643 jTextFieldVarGuid
= new JTextField();
644 jTextFieldVarGuid
.setPreferredSize(new java
.awt
.Dimension(150,20));
645 jTextFieldVarGuid
.setEnabled(false);
647 return jTextFieldVarGuid
;
651 * This method initializes jTextField2
653 * @return javax.swing.JTextField
655 private JTextField
getJTextFieldVarOffset() {
656 if (jTextFieldVarOffset
== null) {
657 jTextFieldVarOffset
= new JTextField();
658 jTextFieldVarOffset
.setPreferredSize(new java
.awt
.Dimension(150,20));
659 jTextFieldVarOffset
.setEnabled(false);
661 return jTextFieldVarOffset
;
665 * This method initializes jTextField3
667 * @return javax.swing.JTextField
669 private JTextField
getJTextFieldHiiDefaultValue() {
670 if (jTextFieldHiiDefaultValue
== null) {
671 jTextFieldHiiDefaultValue
= new JTextField();
672 jTextFieldHiiDefaultValue
.setPreferredSize(new java
.awt
.Dimension(150,20));
673 jTextFieldHiiDefaultValue
.setEnabled(false);
675 return jTextFieldHiiDefaultValue
;
679 * This method initializes jTextField4
681 * @return javax.swing.JTextField
683 private JTextField
getJTextFieldVpdOffset() {
684 if (jTextFieldVpdOffset
== null) {
685 jTextFieldVpdOffset
= new JTextField();
686 jTextFieldVpdOffset
.setPreferredSize(new java
.awt
.Dimension(150,20));
687 jTextFieldVpdOffset
.setEnabled(false);
689 return jTextFieldVpdOffset
;
693 * This method initializes jTextField5
695 * @return javax.swing.JTextField
697 private JTextField
getJTextFieldDefaultValue() {
698 if (jTextFieldDefaultValue
== null) {
699 jTextFieldDefaultValue
= new JTextField();
700 jTextFieldDefaultValue
.setPreferredSize(new java
.awt
.Dimension(150,20));
702 return jTextFieldDefaultValue
;
706 * This method initializes jRadioButton2
708 * @return javax.swing.JRadioButton
710 private JRadioButton
getJRadioButtonDefaultValue() {
711 if (jRadioButtonDefaultValue
== null) {
712 jRadioButtonDefaultValue
= new JRadioButton();
713 jRadioButtonDefaultValue
.setText("Default PCD Value");
714 jRadioButtonDefaultValue
.setSelected(true);
715 jRadioButtonDefaultValue
.setPreferredSize(new java
.awt
.Dimension(175,20));
716 jRadioButtonDefaultValue
.addItemListener(new java
.awt
.event
.ItemListener() {
717 public void itemStateChanged(java
.awt
.event
.ItemEvent e
) {
718 jTextFieldDefaultValue
.setEnabled(jRadioButtonDefaultValue
.isSelected());
721 bg
.add(jRadioButtonDefaultValue
);
723 return jRadioButtonDefaultValue
;
727 * This method initializes jScrollPane
729 * @return javax.swing.JScrollPane
731 private JScrollPane
getJScrollPane() {
732 if (jScrollPane
== null) {
733 jScrollPane
= new JScrollPane();
734 jScrollPane
.setPreferredSize(new java
.awt
.Dimension(1003,180));
735 jScrollPane
.setViewportView(getJPanelDynPcdValue());
740 } // @jve:decl-index=0:visual-constraint="10,10"
742 class DynPcdTableModel
extends DefaultTableModel
{
746 private static final long serialVersionUID
= 1L;
748 public boolean isCellEditable(int row
, int col
) {