3 The file is used to create, update Variable of MSA/MBD file
5 Copyright (c) 2006, Intel Corporation
6 All rights reserved. This program and the accompanying materials
7 are licensed and made available under the terms and conditions of the BSD License
8 which accompanies this distribution. The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
16 package org
.tianocore
.frameworkwizard
.module
.ui
;
18 import java
.awt
.event
.ActionEvent
;
19 import java
.awt
.event
.ComponentEvent
;
20 import java
.awt
.event
.ItemEvent
;
21 import java
.util
.Vector
;
23 import javax
.swing
.JButton
;
24 import javax
.swing
.JComboBox
;
25 import javax
.swing
.JLabel
;
26 import javax
.swing
.JPanel
;
27 import javax
.swing
.JScrollPane
;
28 import javax
.swing
.JTextArea
;
29 import javax
.swing
.JTextField
;
31 import org
.tianocore
.VariableUsage
;
32 import org
.tianocore
.VariablesDocument
;
33 import org
.tianocore
.ModuleSurfaceAreaDocument
.ModuleSurfaceArea
;
34 import org
.tianocore
.VariablesDocument
.Variables
;
35 import org
.tianocore
.VariablesDocument
.Variables
.Variable
;
36 import org
.tianocore
.frameworkwizard
.common
.DataType
;
37 import org
.tianocore
.frameworkwizard
.common
.DataValidation
;
38 import org
.tianocore
.frameworkwizard
.common
.EnumerationData
;
39 import org
.tianocore
.frameworkwizard
.common
.Log
;
40 import org
.tianocore
.frameworkwizard
.common
.OpeningModuleType
;
41 import org
.tianocore
.frameworkwizard
.common
.Tools
;
42 import org
.tianocore
.frameworkwizard
.common
.ui
.IInternalFrame
;
43 import org
.tianocore
.frameworkwizard
.common
.ui
.StarLabel
;
44 import org
.tianocore
.frameworkwizard
.common
.ui
.iCheckBoxList
.ICheckBoxList
;
45 import org
.tianocore
.frameworkwizard
.module
.Identification
.Variables
.VariablesIdentification
;
46 import org
.tianocore
.frameworkwizard
.module
.Identification
.Variables
.VariablesVector
;
49 The class is used to create, update Variable of MSA/MBD file
50 It extends IInternalFrame
53 public class ModuleVariables
extends IInternalFrame
{
56 /// Define class Serial Version UID
58 private static final long serialVersionUID
= -6998982978030439446L;
61 //Define class members
63 private JPanel jContentPane
= null;
65 private JLabel jLabelVariableName
= null;
67 private JTextField jTextFieldVariableName
= null;
69 private JLabel jLabelUsage
= null;
71 private JComboBox jComboBoxUsage
= null;
73 private StarLabel jStarLabel1
= null;
75 private StarLabel jStarLabel2
= null;
77 private JTextArea jTextAreaList
= null;
79 private JComboBox jComboBoxList
= null;
81 private JButton jButtonAdd
= null;
83 private JButton jButtonRemove
= null;
85 private JButton jButtonUpdate
= null;
87 private JScrollPane jScrollPane
= null;
89 private JScrollPane jScrollPaneList
= null;
91 private JLabel jLabelGuidCName
= null;
93 private JTextField jTextFieldGuidC_Name
= null;
95 private JTextField jTextFieldFeatureFlag
= null;
97 private JLabel jLabelFeatureFlag
= null;
99 private JLabel jLabelArch
= null;
101 private ICheckBoxList iCheckBoxListArch
= null;
103 private JScrollPane jScrollPaneArch
= null;
105 private JLabel jLabelHelpText
= null;
107 private JTextField jTextFieldHelpText
= null;
112 private int intSelectedItemId
= 0;
114 private OpeningModuleType omt
= null;
116 private ModuleSurfaceArea msa
= null;
118 private VariablesDocument
.Variables variables
= null;
120 private VariablesIdentification id
= null;
122 private VariablesVector vid
= new VariablesVector();
124 private EnumerationData ed
= new EnumerationData();
127 This method initializes jTextFieldString
129 @return javax.swing.JTextField jTextFieldString
132 private JTextField
getJTextFieldString() {
133 if (jTextFieldVariableName
== null) {
134 jTextFieldVariableName
= new JTextField();
135 jTextFieldVariableName
.setSize(new java
.awt
.Dimension(320, 20));
136 jTextFieldVariableName
.setPreferredSize(new java
.awt
.Dimension(320, 20));
137 jTextFieldVariableName
.setLocation(new java
.awt
.Point(160, 10));
139 return jTextFieldVariableName
;
143 This method initializes jComboBoxUsage
145 @return javax.swing.JComboBox jComboBoxUsage
148 private JComboBox
getJComboBoxUsage() {
149 if (jComboBoxUsage
== null) {
150 jComboBoxUsage
= new JComboBox();
151 jComboBoxUsage
.setBounds(new java
.awt
.Rectangle(160, 60, 320, 20));
152 jComboBoxUsage
.setPreferredSize(new java
.awt
.Dimension(320, 20));
154 return jComboBoxUsage
;
158 This method initializes jComboBoxFileList
160 @return javax.swing.JComboBox jComboBoxFileList
163 private JComboBox
getJComboBoxList() {
164 if (jComboBoxList
== null) {
165 jComboBoxList
= new JComboBox();
166 jComboBoxList
.setBounds(new java
.awt
.Rectangle(15, 220, 210, 20));
167 jComboBoxList
.addItemListener(this);
168 jComboBoxList
.addActionListener(this);
169 jComboBoxList
.setPreferredSize(new java
.awt
.Dimension(210, 20));
171 return jComboBoxList
;
175 This method initializes jButtonAdd
177 @return javax.swing.JButton jButtonAdd
180 private JButton
getJButtonAdd() {
181 if (jButtonAdd
== null) {
182 jButtonAdd
= new JButton();
183 jButtonAdd
.setBounds(new java
.awt
.Rectangle(230, 220, 80, 20));
184 jButtonAdd
.setText("Add");
185 jButtonAdd
.addActionListener(this);
186 jButtonAdd
.setPreferredSize(new java
.awt
.Dimension(80, 20));
192 This method initializes jButtonRemove
194 @return javax.swing.JButton jButtonRemove
197 private JButton
getJButtonRemove() {
198 if (jButtonRemove
== null) {
199 jButtonRemove
= new JButton();
200 jButtonRemove
.setBounds(new java
.awt
.Rectangle(400, 220, 80, 20));
201 jButtonRemove
.setText("Remove");
202 jButtonRemove
.addActionListener(this);
203 jButtonRemove
.setPreferredSize(new java
.awt
.Dimension(80, 20));
205 return jButtonRemove
;
209 This method initializes jButtonUpdate
211 @return javax.swing.JButton jButtonUpdate
214 private JButton
getJButtonUpdate() {
215 if (jButtonUpdate
== null) {
216 jButtonUpdate
= new JButton();
217 jButtonUpdate
.setBounds(new java
.awt
.Rectangle(315, 220, 80, 20));
218 jButtonUpdate
.setPreferredSize(new java
.awt
.Dimension(80, 20));
219 jButtonUpdate
.setText("Update");
220 jButtonUpdate
.addActionListener(this);
222 return jButtonUpdate
;
226 * This method initializes jScrollPaneFileList
228 * @return javax.swing.JScrollPane
230 private JScrollPane
getJScrollPaneList() {
231 if (jScrollPaneList
== null) {
232 jScrollPaneList
= new JScrollPane();
233 jScrollPaneList
.setBounds(new java
.awt
.Rectangle(15, 245, 465, 240));
234 jScrollPaneList
.setViewportView(getJTextAreaList());
235 jScrollPaneList
.setPreferredSize(new java
.awt
.Dimension(465, 240));
237 return jScrollPaneList
;
241 This method initializes jScrollPane
243 @return javax.swing.JScrollPane
245 private JScrollPane
getJScrollPane() {
246 if (jScrollPane
== null) {
247 jScrollPane
= new JScrollPane();
248 jScrollPane
.setViewportView(getJContentPane());
254 * This method initializes jTextAreaFileList
256 * @return javax.swing.JTextArea
258 private JTextArea
getJTextAreaList() {
259 if (jTextAreaList
== null) {
260 jTextAreaList
= new JTextArea();
261 jTextAreaList
.setEditable(false);
264 return jTextAreaList
;
268 * This method initializes jTextFieldGuidCName
270 * @return javax.swing.JTextField
272 private JTextField
getJTextFieldGuidC_Name() {
273 if (jTextFieldGuidC_Name
== null) {
274 jTextFieldGuidC_Name
= new JTextField();
275 jTextFieldGuidC_Name
.setBounds(new java
.awt
.Rectangle(160, 35, 320, 20));
276 jTextFieldGuidC_Name
.setPreferredSize(new java
.awt
.Dimension(320, 20));
278 return jTextFieldGuidC_Name
;
282 This method initializes jTextFieldFeatureFlag
284 @return javax.swing.JTextField jTextFieldFeatureFlag
287 private JTextField
getJTextFieldFeatureFlag() {
288 if (jTextFieldFeatureFlag
== null) {
289 jTextFieldFeatureFlag
= new JTextField();
290 jTextFieldFeatureFlag
.setBounds(new java
.awt
.Rectangle(160, 110, 320, 20));
291 jTextFieldFeatureFlag
.setPreferredSize(new java
.awt
.Dimension(320, 20));
293 return jTextFieldFeatureFlag
;
297 This method initializes iCheckBoxListArch
299 @return ICheckBoxList
301 private ICheckBoxList
getICheckBoxListSupportedArchitectures() {
302 if (iCheckBoxListArch
== null) {
303 iCheckBoxListArch
= new ICheckBoxList();
304 iCheckBoxListArch
.addFocusListener(this);
305 iCheckBoxListArch
.setToolTipText(DataType
.SUP_ARCH_LIST_HELP_TEXT
);
307 return iCheckBoxListArch
;
311 This method initializes jScrollPaneArch
313 @return javax.swing.JScrollPane
316 private JScrollPane
getJScrollPaneArch() {
317 if (jScrollPaneArch
== null) {
318 jScrollPaneArch
= new JScrollPane();
319 jScrollPaneArch
.setBounds(new java
.awt
.Rectangle(160, 135, 320, 80));
320 jScrollPaneArch
.setPreferredSize(new java
.awt
.Dimension(320, 80));
321 jScrollPaneArch
.setViewportView(getICheckBoxListSupportedArchitectures());
323 return jScrollPaneArch
;
327 This method initializes jTextFieldHelpText
329 @return javax.swing.JTextField
332 private JTextField
getJTextFieldHelpText() {
333 if (jTextFieldHelpText
== null) {
334 jTextFieldHelpText
= new JTextField();
335 jTextFieldHelpText
.setBounds(new java
.awt
.Rectangle(160, 85, 320, 20));
336 jTextFieldHelpText
.setPreferredSize(new java
.awt
.Dimension(320, 20));
338 return jTextFieldHelpText
;
341 public static void main(String
[] args
) {
346 This method initializes this
349 private void init() {
350 this.setSize(500, 515);
351 this.setContentPane(getJScrollPane());
352 this.setTitle("Variables");
354 this.setViewMode(false);
358 This method initializes this
359 Fill values to all fields if these values are not empty
361 @param inPackageDependencies
364 private void init(Variables inVariables
) {
366 this.variables
= inVariables
;
368 if (this.variables
!= null) {
369 if (this.variables
.getVariableList().size() > 0) {
370 for (int index
= 0; index
< this.variables
.getVariableList().size(); index
++) {
371 String arg0
= variables
.getVariableList().get(index
).getVariableName();
372 String arg1
= variables
.getVariableList().get(index
).getGuidCName();
374 if (variables
.getVariableList().get(index
).getUsage() != null) {
375 arg2
= variables
.getVariableList().get(index
).getUsage().toString();
378 String arg3
= variables
.getVariableList().get(index
).getFeatureFlag();
379 Vector
<String
> arg4
= Tools
.convertListToVector(variables
.getVariableList().get(index
).getSupArchList());
380 String arg5
= variables
.getVariableList().get(index
).getHelpText();
381 id
= new VariablesIdentification(arg0
, arg1
, arg2
, arg3
, arg4
, arg5
);
382 vid
.addVariables(id
);
389 Tools
.generateComboBoxByVector(jComboBoxList
, vid
.getVariablesName());
394 This is the default constructor
397 public ModuleVariables() {
400 this.setVisible(true);
404 This is the override edit constructor
406 @param inVariables The input data of VariablesDocument.Variables
409 public ModuleVariables(OpeningModuleType inOmt
) {
412 this.msa
= omt
.getXmlMsa();
413 init(msa
.getVariables());
414 this.setVisible(true);
418 Disable all components when the mode is view
420 @param isView true - The view mode; false - The non-view mode
423 public void setViewMode(boolean isView
) {
425 this.jTextFieldVariableName
.setEnabled(!isView
);
426 this.jComboBoxUsage
.setEnabled(!isView
);
431 This method initializes jContentPane
433 @return javax.swing.JPanel jContentPane
436 private JPanel
getJContentPane() {
437 if (jContentPane
== null) {
438 jLabelGuidCName
= new JLabel();
439 jLabelGuidCName
.setBounds(new java
.awt
.Rectangle(15, 35, 140, 20));
440 jLabelGuidCName
.setText("Guid C_Name");
441 jLabelUsage
= new JLabel();
442 jLabelUsage
.setText("Usage");
443 jLabelUsage
.setBounds(new java
.awt
.Rectangle(15, 60, 140, 20));
444 jLabelVariableName
= new JLabel();
445 jLabelVariableName
.setText("Variable Name");
446 jLabelVariableName
.setLocation(new java
.awt
.Point(15, 10));
447 jLabelVariableName
.setSize(new java
.awt
.Dimension(140, 20));
448 jLabelArch
= new JLabel();
449 jLabelArch
.setBounds(new java
.awt
.Rectangle(15, 135, 140, 20));
450 jLabelArch
.setText("Arch");
451 jLabelFeatureFlag
= new JLabel();
452 jLabelFeatureFlag
.setText("Feature Flag");
453 jLabelFeatureFlag
.setBounds(new java
.awt
.Rectangle(15, 110, 140, 20));
455 jContentPane
= new JPanel();
456 jContentPane
.setLayout(null);
457 jContentPane
.setPreferredSize(new java
.awt
.Dimension(490, 495));
459 jContentPane
.add(jLabelVariableName
, null);
460 jContentPane
.add(jLabelGuidCName
, null);
461 jContentPane
.add(getJTextFieldGuidC_Name(), null);
462 jContentPane
.add(getJTextFieldString(), null);
463 jContentPane
.add(jLabelUsage
, null);
464 jContentPane
.add(getJComboBoxUsage(), null);
465 jStarLabel1
= new StarLabel();
466 jStarLabel1
.setLocation(new java
.awt
.Point(0, 10));
467 jStarLabel2
= new StarLabel();
468 jStarLabel2
.setLocation(new java
.awt
.Point(0, 35));
469 jLabelHelpText
= new JLabel();
470 jLabelHelpText
.setBounds(new java
.awt
.Rectangle(14, 85, 140, 20));
471 jLabelHelpText
.setText("Help Text");
473 jContentPane
.add(jStarLabel1
, null);
474 jContentPane
.add(jStarLabel2
, null);
476 jContentPane
.add(getJComboBoxList(), null);
477 jContentPane
.add(getJButtonAdd(), null);
478 jContentPane
.add(getJButtonRemove(), null);
479 jContentPane
.add(getJButtonUpdate(), null);
480 jContentPane
.add(getJScrollPaneList(), null);
482 jContentPane
.add(jLabelArch
, null);
483 jContentPane
.add(jLabelFeatureFlag
, null);
484 jContentPane
.add(getJTextFieldFeatureFlag(), null);
485 jContentPane
.add(getJScrollPaneArch(), null);
486 jContentPane
.add(jLabelHelpText
, null);
487 jContentPane
.add(getJTextFieldHelpText(), null);
493 * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
495 * Override actionPerformed to listen all actions
498 public void actionPerformed(ActionEvent arg0
) {
499 if (arg0
.getSource() == jButtonAdd
) {
505 if (arg0
.getSource() == jButtonRemove
) {
508 if (arg0
.getSource() == jButtonUpdate
) {
517 This method initializes Usage type
520 private void initFrame() {
521 Tools
.generateComboBoxByVector(jComboBoxUsage
, ed
.getVPpiUsage());
522 this.iCheckBoxListArch
.setAllItems(ed
.getVSupportedArchitectures());
526 Data validation for all fields
528 @retval true - All datas are valid
529 @retval false - At least one data is invalid
532 public boolean checkAdd() {
534 // Check if all fields have correct data types
538 // Check VariableName
540 if (isEmpty(this.jTextFieldVariableName
.getText())) {
541 Log
.err("Variable Name couldn't be empty");
545 if (!isEmpty(this.jTextFieldVariableName
.getText())) {
546 if (!DataValidation
.isHexWordArrayType(this.jTextFieldVariableName
.getText())) {
547 Log
.err("Incorrect data type for Variable Name");
555 if (isEmpty(this.jTextFieldGuidC_Name
.getText())) {
556 Log
.err("Guid C_Name couldn't be empty");
560 if (!isEmpty(this.jTextFieldGuidC_Name
.getText())) {
561 if (!DataValidation
.isC_NameType(this.jTextFieldGuidC_Name
.getText())) {
562 Log
.err("Incorrect data type for Guid C_Name");
570 if (!isEmpty(this.jTextFieldFeatureFlag
.getText())) {
571 if (!DataValidation
.isFeatureFlag(this.jTextFieldFeatureFlag
.getText())) {
572 Log
.err("Incorrect data type for Feature Flag");
581 Save all components of Variables
582 if exists variables, set the value directly
583 if not exists variables, new an instance first
588 int count
= this.vid
.size();
590 this.variables
= Variables
.Factory
.newInstance();
592 for (int index
= 0; index
< count
; index
++) {
593 Variable p
= Variable
.Factory
.newInstance();
594 if (!isEmpty(vid
.getVariables(index
).getName())) {
595 p
.setVariableName(vid
.getVariables(index
).getName());
597 if (!isEmpty(vid
.getVariables(index
).getGuid())) {
598 p
.setGuidCName(vid
.getVariables(index
).getGuid());
600 if (!isEmpty(vid
.getVariables(index
).getUsage())) {
601 p
.setUsage(VariableUsage
.Enum
.forString(vid
.getVariables(index
).getUsage()));
603 if (!isEmpty(vid
.getVariables(index
).getFeatureFlag())) {
604 p
.setFeatureFlag(vid
.getVariables(index
).getFeatureFlag());
606 if (vid
.getVariables(index
).getSupArchList() != null && vid
.getVariables(index
).getSupArchList().size() > 0) {
607 p
.setSupArchList(vid
.getVariables(index
).getSupArchList());
609 if (!isEmpty(vid
.getVariables(index
).getHelp())) {
610 p
.setHelpText(vid
.getVariables(index
).getHelp());
612 this.variables
.addNewVariable();
613 this.variables
.setVariableArray(variables
.getVariableList().size() - 1, p
);
617 this.msa
.setVariables(variables
);
618 this.omt
.setSaved(false);
619 } catch (Exception e
) {
620 Log
.err("Update Variables", e
.getMessage());
625 * @see java.awt.event.ComponentListener#componentResized(java.awt.event.ComponentEvent)
627 * Override componentResized to resize all components when frame's size is changed
629 public void componentResized(ComponentEvent arg0
) {
630 int intCurrentWidth
= this.getJContentPane().getWidth();
631 int intCurrentHeight
= this.getJContentPane().getHeight();
632 int intPreferredWidth
= this.getJContentPane().getPreferredSize().width
;
633 int intPreferredHeight
= this.getJContentPane().getPreferredSize().height
;
635 resizeComponentWidth(jTextFieldVariableName
, intCurrentWidth
, intPreferredWidth
);
636 resizeComponentWidth(jTextFieldGuidC_Name
, intCurrentWidth
, intPreferredWidth
);
637 resizeComponentWidth(jComboBoxUsage
, intCurrentWidth
, intPreferredWidth
);
638 resizeComponentWidth(jTextFieldHelpText
, intCurrentWidth
, intPreferredWidth
);
639 resizeComponentWidth(jTextFieldFeatureFlag
, intCurrentWidth
, intPreferredWidth
);
640 resizeComponentWidth(jScrollPaneArch
, intCurrentWidth
, intPreferredWidth
);
642 resizeComponentWidth(jComboBoxList
, intCurrentWidth
, intPreferredWidth
);
643 resizeComponent(jScrollPaneList
, intCurrentWidth
, intCurrentHeight
, intPreferredWidth
, intPreferredHeight
);
644 relocateComponentX(jButtonAdd
, intCurrentWidth
, intPreferredWidth
, DataType
.SPACE_TO_RIGHT_FOR_ADD_BUTTON
);
645 relocateComponentX(jButtonRemove
, intCurrentWidth
, intPreferredWidth
, DataType
.SPACE_TO_RIGHT_FOR_REMOVE_BUTTON
);
646 relocateComponentX(jButtonUpdate
, intCurrentWidth
, intPreferredWidth
, DataType
.SPACE_TO_RIGHT_FOR_UPDATE_BUTTON
);
649 private VariablesIdentification
getCurrentVariables() {
650 String arg0
= this.jTextFieldVariableName
.getText();
651 String arg1
= this.jTextFieldGuidC_Name
.getText();
652 String arg2
= this.jComboBoxUsage
.getSelectedItem().toString();
654 String arg3
= this.jTextFieldFeatureFlag
.getText();
655 Vector
<String
> arg4
= this.iCheckBoxListArch
.getAllCheckedItemsString();
656 String arg5
= this.jTextFieldHelpText
.getText();
658 id
= new VariablesIdentification(arg0
, arg1
, arg2
, arg3
, arg4
, arg5
);
663 Add current item to Vector
666 private void addToList() {
667 intSelectedItemId
= vid
.size();
669 vid
.addVariables(getCurrentVariables());
671 jComboBoxList
.addItem(id
.getName());
672 jComboBoxList
.setSelectedItem(id
.getName());
675 // Reset select item index
677 intSelectedItemId
= vid
.size();
680 // Reload all fields of selected item
691 Remove current item from Vector
694 private void removeFromList() {
696 // Check if exist items
698 if (this.vid
.size() < 1) {
702 int intTempIndex
= intSelectedItemId
;
704 jComboBoxList
.removeItemAt(intSelectedItemId
);
706 vid
.removeVariables(intTempIndex
);
709 // Reload all fields of selected item
720 Update current item of Vector
723 private void updateForList() {
725 // Check if exist items
727 if (this.vid
.size() < 1) {
732 // Backup selected item index
734 int intTempIndex
= intSelectedItemId
;
736 vid
.updateVariables(getCurrentVariables(), intTempIndex
);
738 jComboBoxList
.removeAllItems();
739 for (int index
= 0; index
< vid
.size(); index
++) {
740 jComboBoxList
.addItem(vid
.getVariables(index
).getName());
744 // Restore selected item index
746 intSelectedItemId
= intTempIndex
;
749 // Reset select item index
751 jComboBoxList
.setSelectedIndex(intSelectedItemId
);
754 // Reload all fields of selected item
765 Refresh all fields' values of selected item of Vector
768 private void reloadFromList() {
769 if (vid
.size() > 0) {
771 // Get selected item index
773 intSelectedItemId
= jComboBoxList
.getSelectedIndex();
775 this.jTextFieldVariableName
.setText(vid
.getVariables(intSelectedItemId
).getName());
776 this.jTextFieldGuidC_Name
.setText(vid
.getVariables(intSelectedItemId
).getGuid());
777 this.jComboBoxUsage
.setSelectedItem(vid
.getVariables(intSelectedItemId
).getUsage());
778 this.jTextFieldHelpText
.setText(vid
.getVariables(intSelectedItemId
).getHelp());
780 jTextFieldFeatureFlag
.setText(vid
.getVariables(intSelectedItemId
).getFeatureFlag());
781 iCheckBoxListArch
.setAllItemsUnchecked();
782 iCheckBoxListArch
.initCheckedItem(true, vid
.getVariables(intSelectedItemId
).getSupArchList());
791 Update list area pane via the elements of Vector
794 private void reloadListArea() {
795 String strListItem
= "";
796 for (int index
= 0; index
< vid
.size(); index
++) {
797 strListItem
= strListItem
+ vid
.getVariables(index
).getName() + DataType
.UNIX_LINE_SEPARATOR
;
799 this.jTextAreaList
.setText(strListItem
);
803 * @see java.awt.event.ItemListener#itemStateChanged(java.awt.event.ItemEvent)
805 * Reflesh the frame when selected item changed
808 public void itemStateChanged(ItemEvent arg0
) {
809 if (arg0
.getSource() == this.jComboBoxList
&& arg0
.getStateChange() == ItemEvent
.SELECTED
) {