]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/module/ui/dialog/PCDsDlg.java
Adjusted sizes to accommodate Windows, iMac and Linux GUI
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / module / ui / dialog / PCDsDlg.java
CommitLineData
06a19cee 1/** @file\r
2 \r
3 The file is used to create, update PCD of MSA/MBD file\r
4 \r
5 Copyright (c) 2006, Intel Corporation\r
6 All rights reserved. This program and the accompanying materials\r
7 are licensed and made available under the terms and conditions of the BSD License\r
8 which accompanies this distribution. The full text of the license may be found at\r
9 http://opensource.org/licenses/bsd-license.php\r
10 \r
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13 \r
14 **/\r
15package org.tianocore.frameworkwizard.module.ui.dialog;\r
16\r
17import java.awt.event.ActionEvent;\r
9a8d6d9f 18import java.awt.event.ItemEvent;\r
19import java.awt.event.ItemListener;\r
06a19cee 20import java.util.Vector;\r
21\r
22import javax.swing.JButton;\r
23import javax.swing.JComboBox;\r
24import javax.swing.JLabel;\r
25import javax.swing.JPanel;\r
26import javax.swing.JScrollPane;\r
27import javax.swing.JTextField;\r
747e1504 28import javax.swing.JTextArea;\r
06a19cee 29\r
30import org.tianocore.frameworkwizard.common.DataType;\r
31import org.tianocore.frameworkwizard.common.DataValidation;\r
fd16c6d5 32import org.tianocore.frameworkwizard.common.EnumerationData;\r
06a19cee 33import org.tianocore.frameworkwizard.common.Log;\r
34import org.tianocore.frameworkwizard.common.Tools;\r
35import org.tianocore.frameworkwizard.common.ui.ArchCheckBox;\r
36import org.tianocore.frameworkwizard.common.ui.IDialog;\r
37import org.tianocore.frameworkwizard.common.ui.IFrame;\r
38import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
39import org.tianocore.frameworkwizard.module.Identifications.PcdCoded.PcdCodedIdentification;\r
9a8d6d9f 40import org.tianocore.frameworkwizard.module.Identifications.PcdCoded.PcdVector;\r
06a19cee 41import org.tianocore.frameworkwizard.workspace.WorkspaceTools;\r
42\r
43/**\r
5101eff9 44 * The class is used to create, update PCD of MSA/MBD file It extends\r
45 * IInternalFrame\r
46 * \r
47 */\r
9a8d6d9f 48public class PCDsDlg extends IDialog implements ItemListener {\r
06a19cee 49\r
a929458e 50 // /\r
51 // / Define class Serial Version UID\r
52 // /\r
53 private static final long serialVersionUID = 2227717658188438696L;\r
06a19cee 54\r
a929458e 55 //\r
56 // Define class members\r
57 //\r
58 private JPanel jContentPane = null;\r
06a19cee 59\r
a929458e 60 private JLabel jLabelItemType = null;\r
06a19cee 61\r
a929458e 62 private JLabel jLabelC_Name = null;\r
06a19cee 63\r
a929458e 64 private JComboBox jComboBoxItemType = null;\r
06a19cee 65\r
a929458e 66 private JComboBox jComboBoxCName = null;\r
06a19cee 67\r
a929458e 68 private JLabel jLabelDefaultValue = null;\r
06a19cee 69\r
a929458e 70 private JTextField jTextFieldDefaultValue = null;\r
06a19cee 71\r
a929458e 72 private StarLabel jStarLabel1 = null;\r
06a19cee 73\r
a929458e 74 private StarLabel jStarLabel2 = null;\r
06a19cee 75\r
a929458e 76 private StarLabel jStarLabel3 = null;\r
06a19cee 77\r
a929458e 78 private JLabel jLabelHelpText = null;\r
06a19cee 79\r
a929458e 80 private JTextArea jTextAreaHelpText = null;\r
06a19cee 81\r
a929458e 82 private JScrollPane jScrollPane = null;\r
06a19cee 83\r
a929458e 84 private JLabel jLabelTokenSpaceGuid = null;\r
06a19cee 85\r
a929458e 86 private JTextField jTextFieldTokenSpaceGuid = null;\r
06a19cee 87\r
a929458e 88 private JLabel jLabelFeatureFlag = null;\r
06a19cee 89\r
a929458e 90 private JTextField jTextFieldFeatureFlag = null;\r
06a19cee 91\r
a929458e 92 private JLabel jLabelArch = null;\r
06a19cee 93\r
a929458e 94 private ArchCheckBox jArchCheckBox = null;\r
06a19cee 95\r
a929458e 96 private JButton jButtonOk = null;\r
06a19cee 97\r
a929458e 98 private JButton jButtonCancel = null;\r
06a19cee 99\r
a929458e 100 private JScrollPane jScrollPaneHelpText = null;\r
fd16c6d5 101 \r
102 private JLabel jLabelUsage = null;\r
103\r
104 private JComboBox jComboBoxUsage = null;\r
06a19cee 105\r
a929458e 106 //\r
107 // Not used by UI\r
108 //\r
109 private PcdCodedIdentification id = null;\r
fd16c6d5 110 \r
111 private EnumerationData ed = new EnumerationData();\r
a929458e 112\r
113 private WorkspaceTools wt = new WorkspaceTools();\r
114\r
115 private PcdVector pcd = wt.getAllPcdDeclarationsFromWorkspace();\r
116\r
117 /**\r
118 * This method initializes jComboBoxItemType\r
119 * \r
120 * @return javax.swing.JComboBox jComboBoxItemType\r
121 * \r
122 */\r
123 private JComboBox getJComboBoxItemType() {\r
124 if (jComboBoxItemType == null) {\r
125 jComboBoxItemType = new JComboBox();\r
3f62225f 126 jComboBoxItemType.setBounds(new java.awt.Rectangle(168, 37, 320, 20));\r
a929458e 127 jComboBoxItemType.setPreferredSize(new java.awt.Dimension(320, 20));\r
128 }\r
129 return jComboBoxItemType;\r
130 }\r
747e1504 131\r
a929458e 132 /**\r
133 * This method initializes jTextFieldC_Name\r
134 * \r
135 * @return javax.swing.JTextField jTextFieldC_Name\r
136 * \r
137 */\r
138 private JComboBox getJComboBoxCName() {\r
139 if (jComboBoxCName == null) {\r
140 jComboBoxCName = new JComboBox();\r
3f62225f 141 jComboBoxCName.setBounds(new java.awt.Rectangle(168, 12, 320, 20));\r
a929458e 142 jComboBoxCName.setPreferredSize(new java.awt.Dimension(320, 20));\r
143 jComboBoxCName.addItemListener(this);\r
144 }\r
145 return jComboBoxCName;\r
06a19cee 146 }\r
a929458e 147\r
148 /**\r
149 * This method initializes jTextFieldDefaultValue\r
150 * \r
151 * @return javax.swing.JTextField jTextFieldDefaultValue\r
152 * \r
153 */\r
154 private JTextField getJTextFieldDefaultValue() {\r
155 if (jTextFieldDefaultValue == null) {\r
156 jTextFieldDefaultValue = new JTextField();\r
3f62225f 157 jTextFieldDefaultValue.setBounds(new java.awt.Rectangle(168, 62, 320, 20));\r
a929458e 158 jTextFieldDefaultValue.setPreferredSize(new java.awt.Dimension(320, 20));\r
159 }\r
160 return jTextFieldDefaultValue;\r
06a19cee 161 }\r
a929458e 162\r
163 /**\r
164 * This method initializes jTextAreaHelpText\r
165 * \r
166 * @return javax.swing.JTextArea\r
167 */\r
168 private JTextArea getJTextAreaHelpText() {\r
169 if (jTextAreaHelpText == null) {\r
170 jTextAreaHelpText = new JTextArea();\r
171 jTextAreaHelpText.setLineWrap(true);\r
172 jTextAreaHelpText.setWrapStyleWord(true);\r
173 }\r
174 return jTextAreaHelpText;\r
06a19cee 175 }\r
a929458e 176\r
177 /**\r
178 * This method initializes jScrollPaneHelpText\r
179 * \r
180 * @return javax.swing.JScrollPane\r
181 * \r
182 */\r
183 private JScrollPane getJScrollPaneHelpText() {\r
184 if (jScrollPaneHelpText == null) {\r
185 jScrollPaneHelpText = new JScrollPane();\r
186 jScrollPaneHelpText.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);\r
187 jScrollPaneHelpText.setSize(new java.awt.Dimension(320, 40));\r
188 jScrollPaneHelpText.setPreferredSize(new java.awt.Dimension(320, 40));\r
3f62225f 189 jScrollPaneHelpText.setLocation(new java.awt.Point(168, 112));\r
a929458e 190 jScrollPaneHelpText.setViewportView(getJTextAreaHelpText());\r
191 }\r
192 return jScrollPaneHelpText;\r
06a19cee 193 }\r
a929458e 194\r
195 /**\r
196 * This method initializes jScrollPane\r
197 * \r
198 * @return javax.swing.JScrollPane\r
199 */\r
200 private JScrollPane getJScrollPane() {\r
201 if (jScrollPane == null) {\r
202 jScrollPane = new JScrollPane();\r
203 jScrollPane.setViewportView(getJContentPane());\r
204 }\r
205 return jScrollPane;\r
06a19cee 206 }\r
a929458e 207\r
208 /**\r
209 * This method initializes jTextFieldTokenSpaceGuid\r
210 * \r
211 * @return javax.swing.JTextField\r
212 */\r
213 private JTextField getJTextFieldTokenSpaceGuid() {\r
214 if (jTextFieldTokenSpaceGuid == null) {\r
215 jTextFieldTokenSpaceGuid = new JTextField();\r
3f62225f 216 jTextFieldTokenSpaceGuid.setBounds(new java.awt.Rectangle(168, 62, 320, 20));\r
a929458e 217 jTextFieldTokenSpaceGuid.setPreferredSize(new java.awt.Dimension(320, 20));\r
218 jTextFieldTokenSpaceGuid.setVisible(false);\r
219 }\r
220 return jTextFieldTokenSpaceGuid;\r
06a19cee 221 }\r
a929458e 222\r
223 /**\r
224 * This method initializes jTextFieldFeatureFlag\r
225 * \r
226 * @return javax.swing.JTextField\r
227 */\r
228 private JTextField getJTextFieldFeatureFlag() {\r
229 if (jTextFieldFeatureFlag == null) {\r
230 jTextFieldFeatureFlag = new JTextField();\r
3f62225f 231 jTextFieldFeatureFlag.setBounds(new java.awt.Rectangle(168, 157, 320, 20));\r
a929458e 232 jTextFieldFeatureFlag.setPreferredSize(new java.awt.Dimension(320, 20));\r
233 jTextFieldFeatureFlag.setToolTipText("Postfix expression that must evaluate to TRUE or FALSE");\r
234 }\r
235 return jTextFieldFeatureFlag;\r
06a19cee 236 }\r
a929458e 237\r
238 /**\r
239 * This method initializes jButtonOk\r
240 * \r
241 * @return javax.swing.JButton\r
242 * \r
243 */\r
244 private JButton getJButtonOk() {\r
245 if (jButtonOk == null) {\r
246 jButtonOk = new JButton();\r
3f62225f 247 jButtonOk.setBounds(new java.awt.Rectangle(290, 212, 90, 20));\r
a929458e 248 jButtonOk.setText("Ok");\r
249 jButtonOk.addActionListener(this);\r
250 }\r
251 return jButtonOk;\r
06a19cee 252 }\r
a929458e 253\r
254 /**\r
255 * This method initializes jButtonCancel\r
256 * \r
257 * @return javax.swing.JButton\r
258 * \r
259 */\r
260 private JButton getJButtonCancel() {\r
261 if (jButtonCancel == null) {\r
262 jButtonCancel = new JButton();\r
3f62225f 263 jButtonCancel.setBounds(new java.awt.Rectangle(390, 212, 90, 20));\r
a929458e 264 jButtonCancel.setText("Cancel");\r
265 jButtonCancel.addActionListener(this);\r
266 }\r
267 return jButtonCancel;\r
06a19cee 268 }\r
a929458e 269\r
fd16c6d5 270 /**\r
271 * This method initializes jComboBoxUsage \r
272 * \r
273 * @return javax.swing.JComboBox \r
274 */\r
275 private JComboBox getJComboBoxUsage() {\r
276 if (jComboBoxUsage == null) {\r
277 jComboBoxUsage = new JComboBox();\r
3f62225f 278 jComboBoxUsage.setBounds(new java.awt.Rectangle(168, 87, 320, 20));\r
fd16c6d5 279 jComboBoxUsage.setPreferredSize(new java.awt.Dimension(320, 20));\r
280 }\r
281 return jComboBoxUsage;\r
282 }\r
283\r
a929458e 284 public static void main(String[] args) {\r
285\r
06a19cee 286 }\r
a929458e 287\r
288 /**\r
289 * This method initializes this\r
290 * \r
291 */\r
292 private void init() {\r
3f62225f 293 this.setSize(505, 280);\r
a929458e 294 this.setContentPane(getJScrollPane());\r
295 this.setTitle("Pcd Coded");\r
296 initFrame();\r
297 this.setViewMode(false);\r
298 this.centerWindow();\r
06a19cee 299 }\r
a929458e 300\r
301 /**\r
302 * This method initializes this Fill values to all fields if these values are\r
303 * not empty\r
304 * \r
305 * @param inPcdCodedId\r
306 * \r
307 */\r
308 private void init(PcdCodedIdentification inPcdCodedId) {\r
309 init();\r
310 this.id = inPcdCodedId;\r
311\r
312 if (this.id != null) {\r
313 this.jComboBoxCName.setSelectedItem(id.getName());\r
314 this.jTextFieldTokenSpaceGuid.setText(id.getGuid());\r
315 this.jTextFieldDefaultValue.setText(id.getValue());\r
fd16c6d5 316 this.jComboBoxUsage.setSelectedItem(id.getUsage());\r
a929458e 317 this.jTextAreaHelpText.setText(id.getHelp());\r
318 this.jComboBoxItemType.setSelectedItem(id.getType());\r
319 this.jTextFieldFeatureFlag.setText(id.getFeatureFlag());\r
320 this.jArchCheckBox.setSelectedItems(id.getSupArchList());\r
321 }\r
06a19cee 322 }\r
a929458e 323\r
324 /**\r
325 * This is the override edit constructor\r
326 * \r
327 * @param inPcdCodedId\r
328 * @param iFrame\r
329 * \r
330 */\r
331 public PCDsDlg(PcdCodedIdentification inPcdCodedId, IFrame iFrame) {\r
332 super(iFrame, true);\r
333 init(inPcdCodedId);\r
5101eff9 334 }\r
a929458e 335\r
336 /**\r
337 * Disable all components when the mode is view\r
338 * \r
339 * @param isView\r
340 * true - The view mode; false - The non-view mode\r
341 * \r
342 */\r
343 public void setViewMode(boolean isView) {\r
344 if (isView) {\r
345 this.jTextFieldDefaultValue.setEnabled(!isView);\r
346 this.jComboBoxItemType.setEnabled(!isView);\r
347 }\r
06a19cee 348 }\r
349\r
a929458e 350 /**\r
351 * This method initializes jContentPane\r
352 * \r
353 * @return javax.swing.JPanel jContentPane\r
354 * \r
355 */\r
356 private JPanel getJContentPane() {\r
357 if (jContentPane == null) {\r
fd16c6d5 358 jLabelUsage = new JLabel();\r
3f62225f 359 jLabelUsage.setBounds(new java.awt.Rectangle(12, 87, 168, 20));\r
fd16c6d5 360 jLabelUsage.setText("Usge");\r
a929458e 361 jStarLabel1 = new StarLabel();\r
3f62225f 362 jStarLabel1.setLocation(new java.awt.Point(2, 12));\r
a929458e 363 jLabelC_Name = new JLabel();\r
364 jLabelC_Name.setText("PCD C Name");\r
3f62225f 365 jLabelC_Name.setBounds(new java.awt.Rectangle(12, 12, 168, 20));\r
a929458e 366\r
367 jStarLabel2 = new StarLabel();\r
3f62225f 368 jStarLabel2.setLocation(new java.awt.Point(2, 37));\r
a929458e 369 jLabelItemType = new JLabel();\r
370 jLabelItemType.setText("PCD Item Type");\r
3f62225f 371 jLabelItemType.setBounds(new java.awt.Rectangle(12, 37, 168, 20));\r
a929458e 372\r
373 jLabelDefaultValue = new JLabel();\r
374 jLabelDefaultValue.setText("Default Value");\r
3f62225f 375 jLabelDefaultValue.setBounds(new java.awt.Rectangle(12, 62, 168, 20));\r
a929458e 376\r
377 jStarLabel3 = new StarLabel();\r
3f62225f 378 jStarLabel3.setLocation(new java.awt.Point(2, 112));\r
a929458e 379 jLabelHelpText = new JLabel();\r
380 jLabelHelpText.setText("Help Text");\r
3f62225f 381 jLabelHelpText.setBounds(new java.awt.Rectangle(12, 112, 168, 20));\r
a929458e 382\r
383 jLabelFeatureFlag = new JLabel();\r
384 jLabelFeatureFlag.setText("Feature Flag Expression");\r
3f62225f 385 jLabelFeatureFlag.setBounds(new java.awt.Rectangle(12, 157, 168, 20));\r
a929458e 386\r
387 jLabelTokenSpaceGuid = new JLabel();\r
388 jLabelTokenSpaceGuid.setText("Token Space C Name");\r
389 jLabelTokenSpaceGuid.setVisible(false);\r
390\r
391 jLabelArch = new JLabel();\r
392 jLabelArch.setText("Supported Architectures");\r
3f62225f 393 jLabelArch.setBounds(new java.awt.Rectangle(12, 182, 168, 20));\r
a929458e 394 jArchCheckBox = new ArchCheckBox();\r
395 jArchCheckBox.setPreferredSize(new java.awt.Dimension(320, 20));\r
3f62225f 396 jArchCheckBox.setBounds(new java.awt.Rectangle(168, 182, 320, 20));\r
a929458e 397\r
398 // Hidden field\r
3f62225f 399 jLabelTokenSpaceGuid.setBounds(new java.awt.Rectangle(12, 62, 140, 20));\r
a929458e 400\r
401 jContentPane = new JPanel();\r
402 jContentPane.setLayout(null);\r
fd16c6d5 403 jContentPane.setPreferredSize(new java.awt.Dimension(485, 235));\r
a929458e 404\r
405 jContentPane.add(jStarLabel1, null);\r
406 jContentPane.add(jLabelC_Name, null);\r
407 jContentPane.add(getJComboBoxCName(), null);\r
408 jContentPane.add(jStarLabel2, null);\r
409 jContentPane.add(jLabelItemType, null);\r
410 jContentPane.add(getJComboBoxItemType(), null);\r
411 jContentPane.add(jLabelDefaultValue, null);\r
412 jContentPane.add(getJTextFieldDefaultValue(), null);\r
413 jContentPane.add(jStarLabel3, null);\r
414 jContentPane.add(jLabelHelpText, null);\r
415 jContentPane.add(getJScrollPaneHelpText(), null);\r
416 jContentPane.add(jLabelFeatureFlag, null);\r
417 jContentPane.add(getJTextFieldFeatureFlag(), null);\r
418 jContentPane.add(jLabelArch, null);\r
419 jContentPane.add(jArchCheckBox, null);\r
420 // Hidden\r
421 jContentPane.add(getJTextFieldTokenSpaceGuid(), null);\r
422 jContentPane.add(jLabelTokenSpaceGuid, null);\r
423 jContentPane.add(getJButtonOk(), null);\r
424 jContentPane.add(getJButtonCancel(), null);\r
fd16c6d5 425 jContentPane.add(jLabelUsage, null);\r
426 jContentPane.add(getJComboBoxUsage(), null);\r
a929458e 427 }\r
428 return jContentPane;\r
06a19cee 429 }\r
430\r
a929458e 431 /**\r
432 * This method initializes Usage type, Item type and Datum type\r
433 * \r
434 */\r
435 private void initFrame() {\r
436 for (int index = 0; index < pcd.size(); index++) {\r
437 jComboBoxCName.addItem(pcd.getPcd(index));\r
438 }\r
439\r
fd16c6d5 440 Tools.generateComboBoxByVector(jComboBoxUsage, ed.getVPcdUsage());\r
06a19cee 441 }\r
442\r
a929458e 443 /*\r
444 * (non-Javadoc)\r
445 * \r
446 * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)\r
447 * \r
448 * Override actionPerformed to listen all actions\r
449 * \r
450 */\r
451 public void actionPerformed(ActionEvent arg0) {\r
452 if (arg0.getSource() == jButtonOk) {\r
453 if (checkAdd()) {\r
454 getCurrentPcdCoded();\r
455 this.returnType = DataType.RETURN_TYPE_OK;\r
456 this.setVisible(false);\r
457 }\r
458 }\r
459\r
460 if (arg0.getSource() == jButtonCancel) {\r
461 this.returnType = DataType.RETURN_TYPE_CANCEL;\r
462 this.setVisible(false);\r
463 }\r
5101eff9 464 }\r
06a19cee 465\r
a929458e 466 /**\r
467 * Data validation for all fields\r
468 * \r
469 * @retval true - All datas are valid\r
470 * @retval false - At least one data is invalid\r
471 * \r
472 */\r
473 public boolean checkAdd() {\r
474 //\r
475 // Check if all fields have correct data types\r
476 //\r
477\r
478 //\r
479 // Check C_Name\r
480 //\r
481 if (!isEmpty(this.jComboBoxCName.getSelectedItem().toString())) {\r
482 if (!DataValidation.isC_NameType(this.jComboBoxCName.getSelectedItem().toString())) {\r
483 Log.wrn("Update PcdCoded", "Incorrect data type for C Name");\r
484 return false;\r
485 }\r
486 }\r
487\r
488 //\r
489 // Check TokenSpaceGuid\r
490 //\r
491 if (!isEmpty(this.jTextFieldTokenSpaceGuid.getText())) {\r
492 if (!DataValidation.isC_NameType(this.jTextFieldTokenSpaceGuid.getText())) {\r
493 Log.wrn("Update PcdCoded",\r
494 "Incorrect data type for the selected pcd entry, please check in in spd file");\r
495 return false;\r
496 }\r
497 }\r
498\r
499 //\r
500 // Check DefaultValue\r
501 //\r
502 if (!isEmpty(this.jTextFieldDefaultValue.getText())) {\r
503 if (!DataValidation.isDefaultValueType(this.jTextFieldDefaultValue.getText())) {\r
504 Log.wrn("Update PcdCoded", "Incorrect data type for Default Value");\r
505 return false;\r
506 }\r
507 }\r
508\r
509 //\r
510 // Check HelpText\r
511 //\r
512 if (isEmpty(this.jTextAreaHelpText.getText())) {\r
513 Log.wrn("Update PcdCoded", "Help Text should not be empty");\r
514 return false;\r
515 }\r
516\r
517 //\r
518 // Check FeatureFlag\r
519 //\r
520 if (!isEmpty(this.jTextFieldFeatureFlag.getText())) {\r
521 if (!DataValidation.isFeatureFlag(this.jTextFieldFeatureFlag.getText())) {\r
522 Log.wrn("Update PcdCoded", "Incorrect data type for Feature Flag");\r
523 return false;\r
524 }\r
525 }\r
526\r
527 return true;\r
5101eff9 528 }\r
06a19cee 529\r
a929458e 530 private PcdCodedIdentification getCurrentPcdCoded() {\r
531 String arg0 = this.jComboBoxCName.getSelectedItem().toString();\r
532 String arg1 = this.jTextFieldTokenSpaceGuid.getText();\r
533\r
534 String arg2 = this.jTextFieldFeatureFlag.getText();\r
535 Vector<String> arg3 = this.jArchCheckBox.getSelectedItemsVector();\r
536\r
537 String arg4 = this.jTextFieldDefaultValue.getText();\r
538 String arg5 = this.jTextAreaHelpText.getText();\r
539 String arg6 = this.jComboBoxItemType.getSelectedItem().toString();\r
fd16c6d5 540 String arg7 = this.jComboBoxUsage.getSelectedItem().toString();\r
541 if (arg7.equals(DataType.EMPTY_SELECT_ITEM)) {\r
542 arg7 = "";\r
543 }\r
544\r
545 id = new PcdCodedIdentification(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);\r
a929458e 546 return id;\r
06a19cee 547 }\r
548\r
a929458e 549 public PcdCodedIdentification getId() {\r
550 return id;\r
06a19cee 551 }\r
552\r
a929458e 553 public void setId(PcdCodedIdentification id) {\r
554 this.id = id;\r
06a19cee 555 }\r
9a8d6d9f 556\r
a929458e 557 /*\r
558 * (non-Javadoc)\r
559 * \r
560 * @see java.awt.event.ItemListener#itemStateChanged(java.awt.event.ItemEvent)\r
561 * \r
562 * Reflesh the frame when selected item changed\r
563 * \r
564 */\r
565 public void itemStateChanged(ItemEvent arg0) {\r
566 int index = this.jComboBoxCName.getSelectedIndex();\r
567 if (arg0.getSource() == this.jComboBoxCName && arg0.getStateChange() == ItemEvent.SELECTED) {\r
568 if (pcd.getPcd(index).getGuidCName() == null || isEmpty(pcd.getPcd(index).getGuidCName())\r
569 || pcd.getPcd(index).getType() == null || pcd.getPcd(index).getHelp() == null\r
570 || isEmpty(pcd.getPcd(index).getHelp())) {\r
571 Log.wrn("select pcd entry when editing msa",\r
572 "The selected is defined incorrectly.\r\nPlease check it in spd file");\r
573 } else {\r
574 this.jTextFieldTokenSpaceGuid.setText(pcd.getPcd(index).getGuidCName());\r
575 Tools.generateComboBoxByVector(this.jComboBoxItemType, pcd.getPcd(index).getType());\r
576 this.jTextAreaHelpText.setText(pcd.getPcd(index).getHelp());\r
577 this.jTextAreaHelpText.setSelectionStart(0);\r
578 this.jTextAreaHelpText.setSelectionEnd(0);\r
579 }\r
580 }\r
9a8d6d9f 581 }\r
06a19cee 582}\r