mirror of https://github.com/acidanthera/audk.git
Fixed Absolute position of fields, Added ToolTipText and made HelpText a Scrolling Text Area
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1131 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
9cf435c223
commit
5101eff919
|
@ -23,6 +23,7 @@ import javax.swing.JLabel;
|
|||
import javax.swing.JPanel;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.JTextField;
|
||||
import javax.swing.JTextArea;
|
||||
|
||||
import org.tianocore.frameworkwizard.common.DataType;
|
||||
import org.tianocore.frameworkwizard.common.DataValidation;
|
||||
|
@ -37,392 +38,433 @@ import org.tianocore.frameworkwizard.module.Identifications.Hobs.HobsIdentificat
|
|||
import org.tianocore.frameworkwizard.workspace.WorkspaceTools;
|
||||
|
||||
/**
|
||||
The class is used to create, update Hob of MSA/MBD file
|
||||
It extends IInternalFrame
|
||||
|
||||
**/
|
||||
* The class is used to create, update Hob of the MSA file It extends JDialog
|
||||
*
|
||||
*/
|
||||
public class HobsDlg extends IDialog {
|
||||
|
||||
///
|
||||
/// Define class Serial Version UID
|
||||
///
|
||||
private static final long serialVersionUID = -553473437579358325L;
|
||||
// /
|
||||
// / Define class Serial Version UID
|
||||
// /
|
||||
private static final long serialVersionUID = -553473437579358325L;
|
||||
|
||||
//
|
||||
// Define class members
|
||||
//
|
||||
private JPanel jContentPane = null;
|
||||
|
||||
private JLabel jLabelC_Name = null;
|
||||
|
||||
private JComboBox jComboBoxGuidC_Name = null;
|
||||
|
||||
private JLabel jLabelUsage = null;
|
||||
|
||||
private JLabel jLabelHobType = null;
|
||||
|
||||
private JComboBox jComboBoxUsage = null;
|
||||
|
||||
private JComboBox jComboBoxHobType = null;
|
||||
|
||||
private StarLabel jStarLabel1 = null;
|
||||
|
||||
private StarLabel jStarLabel2 = null;
|
||||
|
||||
private StarLabel jStarLabel3 = null;
|
||||
|
||||
private JLabel jLabelArch = null;
|
||||
|
||||
private JScrollPane jScrollPane = null;
|
||||
|
||||
private JLabel jLabelFeatureFlag = null;
|
||||
|
||||
private JTextField jTextFieldFeatureFlag = null;
|
||||
|
||||
private JLabel jLabelHelpText = null;
|
||||
|
||||
private JTextArea jTextAreaHelpText = null;
|
||||
|
||||
private JScrollPane jScrollPaneHelpText = null;
|
||||
|
||||
private ArchCheckBox jArchCheckBox = null;
|
||||
|
||||
private JButton jButtonOk = null;
|
||||
|
||||
private JButton jButtonCancel = null;
|
||||
|
||||
//
|
||||
// Not used by UI
|
||||
//
|
||||
private HobsIdentification id = null;
|
||||
|
||||
private EnumerationData ed = new EnumerationData();
|
||||
|
||||
private WorkspaceTools wt = new WorkspaceTools();
|
||||
|
||||
/**
|
||||
* This method initializes jTextField
|
||||
*
|
||||
* @return javax.swing.JTextField jTextFieldC_Name
|
||||
*
|
||||
*/
|
||||
private JComboBox getJComboBoxGuidC_Name() {
|
||||
if (jComboBoxGuidC_Name == null) {
|
||||
jComboBoxGuidC_Name = new JComboBox();
|
||||
jComboBoxGuidC_Name.setBounds(new java.awt.Rectangle(160, 10, 320, 20));
|
||||
jComboBoxGuidC_Name.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jComboBoxGuidC_Name.setToolTipText("Select the GUID C Name of the Hob");
|
||||
}
|
||||
return jComboBoxGuidC_Name;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jComboBoxHobType
|
||||
*
|
||||
* @return javax.swing.JComboBox jComboBoxHobType
|
||||
*
|
||||
*/
|
||||
private JComboBox getJComboBoxHobType() {
|
||||
if (jComboBoxHobType == null) {
|
||||
jComboBoxHobType = new JComboBox();
|
||||
jComboBoxHobType.setBounds(new java.awt.Rectangle(160, 35, 320, 20));
|
||||
jComboBoxHobType.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jComboBoxHobType.setToolTipText("<html><table><tr><td>PHIT</td><td>EFI_HOB_TYPE_HANDOFF</td></tr><tr><td>MEMORY_ALLOCATION</td><td>EFI_HOB_TYPE_MEMORY_ALLOCATION and $BaseName</td></tr><tr><td>RESOURCE_DESCRIPTOR</td><td>EFI_HOB_TYPE_RESOURCE_DESCRIPTOR</td></tr><tr><td>GUID_EXTENTION</td><td>EFI_HOB_TYPE_GUID_EXTENSION and BaseName of GUID</td></tr><tr><td>FIRMWARE_VOLUME</td><td>EFI_HOB_TYPE_FV</td></tr><tr><td>CPU</td><td>EFI_HOB_TYPE_CPU</td></tr><tr><td>POOL</td><td>EFI_HOB_TYPE_PEI_MEMORY_POOL</td></tr><tr><td>CAPSULE_VOLUME</td><td>EFI_HOB_TYPE_CV</td></tr></table></html>");
|
||||
}
|
||||
return jComboBoxHobType;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jComboBoxUsage
|
||||
*
|
||||
* @return javax.swing.JComboBox jComboBoxUsage
|
||||
*
|
||||
*/
|
||||
private JComboBox getJComboBoxUsage() {
|
||||
if (jComboBoxUsage == null) {
|
||||
jComboBoxUsage = new JComboBox();
|
||||
jComboBoxUsage.setBounds(new java.awt.Rectangle(160, 60, 320, 20));
|
||||
jComboBoxUsage.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jComboBoxUsage.setToolTipText("<html><table><tr><td>ALWAYS_CONSUMED</td><td>HOB must be present in the system</td></tr><tr><td>SOMETIMES_CONSUMED</td><td>HOB will be used if it's present</td></tr><tr><td>ALWAYS_PRODUCED</td><td>HOB is always produced</td></tr><tr><td>SOMETIMES_PRODUCED</td><td>HOB will sometimes be produced by the module</td></tr></table></html>");
|
||||
}
|
||||
return jComboBoxUsage;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jScrollPane
|
||||
*
|
||||
* @return javax.swing.JScrollPane
|
||||
*/
|
||||
private JScrollPane getJScrollPane() {
|
||||
if (jScrollPane == null) {
|
||||
jScrollPane = new JScrollPane();
|
||||
jScrollPane.setViewportView(getJContentPane());
|
||||
}
|
||||
return jScrollPane;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextFieldFeatureFlag
|
||||
*
|
||||
* @return javax.swing.JTextField
|
||||
*/
|
||||
private JTextField getJTextFieldFeatureFlag() {
|
||||
if (jTextFieldFeatureFlag == null) {
|
||||
jTextFieldFeatureFlag = new JTextField();
|
||||
jTextFieldFeatureFlag
|
||||
.setBounds(new java.awt.Rectangle(160, 130, 320, 20));
|
||||
jTextFieldFeatureFlag.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jTextFieldFeatureFlag.setToolTipText("Postfix expression that must evaluate to TRUE or FALSE");
|
||||
}
|
||||
return jTextFieldFeatureFlag;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextFieldHelpText
|
||||
*
|
||||
* @return javax.swing.JTextField
|
||||
*
|
||||
*/
|
||||
private JTextArea getJTextAreaHelpText() {
|
||||
if (jTextAreaHelpText == null) {
|
||||
jTextAreaHelpText = new JTextArea();
|
||||
jTextAreaHelpText.setLineWrap(true);
|
||||
jTextAreaHelpText.setWrapStyleWord(true);
|
||||
}
|
||||
return jTextAreaHelpText;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jScrollPaneHelpText
|
||||
*
|
||||
* @return javax.swing.JScrollPane
|
||||
*/
|
||||
private JScrollPane getJScrollPaneHelpText() {
|
||||
if (jScrollPaneHelpText == null) {
|
||||
jScrollPaneHelpText = new JScrollPane();
|
||||
jScrollPaneHelpText
|
||||
.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
|
||||
jScrollPaneHelpText.setSize(new java.awt.Dimension(320, 40));
|
||||
jScrollPaneHelpText.setPreferredSize(new java.awt.Dimension(320, 40));
|
||||
jScrollPaneHelpText.setLocation(new java.awt.Point(160, 85));
|
||||
jScrollPaneHelpText.setViewportView(getJTextAreaHelpText());
|
||||
}
|
||||
return jScrollPaneHelpText;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jButtonOk
|
||||
*
|
||||
* @return javax.swing.JButton
|
||||
*
|
||||
*/
|
||||
private JButton getJButtonOk() {
|
||||
if (jButtonOk == null) {
|
||||
jButtonOk = new JButton();
|
||||
jButtonOk.setBounds(new java.awt.Rectangle(290, 182, 90, 20));
|
||||
jButtonOk.setText("Ok");
|
||||
jButtonOk.addActionListener(this);
|
||||
}
|
||||
return jButtonOk;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jButtonCancel
|
||||
*
|
||||
* @return javax.swing.JButton
|
||||
*
|
||||
*/
|
||||
private JButton getJButtonCancel() {
|
||||
if (jButtonCancel == null) {
|
||||
jButtonCancel = new JButton();
|
||||
jButtonCancel.setBounds(new java.awt.Rectangle(390, 182, 90, 20));
|
||||
jButtonCancel.setText("Cancel");
|
||||
jButtonCancel.addActionListener(this);
|
||||
}
|
||||
return jButtonCancel;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes this
|
||||
*
|
||||
*/
|
||||
private void init() {
|
||||
this.setSize(500, 255);
|
||||
this.setContentPane(getJScrollPane());
|
||||
this.setTitle("Hobs");
|
||||
initFrame();
|
||||
this.setViewMode(false);
|
||||
this.centerWindow();
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes this Fill values to all fields if these values are
|
||||
* not empty
|
||||
*
|
||||
* @param inHobsId
|
||||
*
|
||||
*/
|
||||
private void init(HobsIdentification inHobsId) {
|
||||
init();
|
||||
this.id = inHobsId;
|
||||
|
||||
if (this.id != null) {
|
||||
this.jComboBoxGuidC_Name.setSelectedItem(id.getName());
|
||||
this.jComboBoxHobType.setSelectedItem(id.getType());
|
||||
this.jComboBoxUsage.setSelectedItem(id.getUsage());
|
||||
this.jTextAreaHelpText.setText(id.getHelp());
|
||||
this.jTextFieldFeatureFlag.setText(id.getFeatureFlag());
|
||||
this.jArchCheckBox.setSelectedItems(id.getSupArchList());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This is the override edit constructor
|
||||
*
|
||||
* @param inHobsIdentification
|
||||
* @param iFrame
|
||||
*
|
||||
*/
|
||||
public HobsDlg(HobsIdentification inHobsIdentification, IFrame iFrame) {
|
||||
super(iFrame, true);
|
||||
init(inHobsIdentification);
|
||||
}
|
||||
|
||||
/**
|
||||
* Disable all components when the mode is view
|
||||
*
|
||||
* @param isView
|
||||
* true - The view mode; false - The non-view mode
|
||||
*
|
||||
*/
|
||||
public void setViewMode(boolean isView) {
|
||||
if (isView) {
|
||||
this.jComboBoxGuidC_Name.setEnabled(!isView);
|
||||
this.jComboBoxUsage.setEnabled(!isView);
|
||||
this.jComboBoxHobType.setEnabled(!isView);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jContentPane
|
||||
*
|
||||
* @return javax.swing.JPanel jContentPane
|
||||
*
|
||||
*/
|
||||
public JPanel getJContentPane() {
|
||||
if (jContentPane == null) {
|
||||
jStarLabel1 = new StarLabel();
|
||||
jStarLabel1.setLocation(new java.awt.Point(2, 10));
|
||||
jLabelC_Name = new JLabel();
|
||||
jLabelC_Name.setText("Hob's Guid C Name");
|
||||
jLabelC_Name.setBounds(new java.awt.Rectangle(15, 10, 145, 20));
|
||||
|
||||
jStarLabel2 = new StarLabel();
|
||||
jStarLabel2.setLocation(new java.awt.Point(2, 35));
|
||||
jLabelHobType = new JLabel();
|
||||
jLabelHobType.setText("Hob Type");
|
||||
jLabelHobType.setBounds(new java.awt.Rectangle(15, 35, 145, 20));
|
||||
|
||||
jStarLabel3 = new StarLabel();
|
||||
jStarLabel3.setLocation(new java.awt.Point(2, 60));
|
||||
jLabelUsage = new JLabel();
|
||||
jLabelUsage.setText("Usage");
|
||||
jLabelUsage.setBounds(new java.awt.Rectangle(15, 60, 145, 20));
|
||||
|
||||
jLabelHelpText = new JLabel();
|
||||
jLabelHelpText.setBounds(new java.awt.Rectangle(15, 85, 145, 20));
|
||||
jLabelHelpText.setText("Help Text");
|
||||
|
||||
jLabelFeatureFlag = new JLabel();
|
||||
jLabelFeatureFlag.setBounds(new java.awt.Rectangle(15, 130, 145, 20));
|
||||
jLabelFeatureFlag.setText("Feature Flag Expression");
|
||||
|
||||
jLabelArch = new JLabel();
|
||||
jLabelArch.setBounds(new java.awt.Rectangle(15, 155, 145, 20));
|
||||
jLabelArch.setText("Supported Architectures");
|
||||
jArchCheckBox = new ArchCheckBox();
|
||||
jArchCheckBox.setBounds(new java.awt.Rectangle(160, 155, 320, 20));
|
||||
jArchCheckBox.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
|
||||
jContentPane = new JPanel();
|
||||
jContentPane.setLayout(null);
|
||||
jContentPane.setPreferredSize(new java.awt.Dimension(485, 210));
|
||||
|
||||
jContentPane.add(jStarLabel1, null);
|
||||
jContentPane.add(jLabelC_Name, null);
|
||||
jContentPane.add(getJComboBoxGuidC_Name(), null);
|
||||
jContentPane.add(jStarLabel2, null);
|
||||
jContentPane.add(jLabelHobType, null);
|
||||
jContentPane.add(getJComboBoxHobType(), null);
|
||||
jContentPane.add(jStarLabel3, null);
|
||||
jContentPane.add(jLabelUsage, null);
|
||||
jContentPane.add(getJComboBoxUsage(), null);
|
||||
jContentPane.add(jLabelHelpText, null);
|
||||
jContentPane.add(getJScrollPaneHelpText(), null);
|
||||
jContentPane.add(jLabelFeatureFlag, null);
|
||||
jContentPane.add(getJTextFieldFeatureFlag(), null);
|
||||
jContentPane.add(jLabelArch, null);
|
||||
jContentPane.add(jArchCheckBox, null);
|
||||
jContentPane.add(getJButtonOk(), null);
|
||||
jContentPane.add(getJButtonCancel(), null);
|
||||
}
|
||||
return jContentPane;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes Usage type and Hob type
|
||||
*
|
||||
*/
|
||||
private void initFrame() {
|
||||
Tools.generateComboBoxByVector(jComboBoxUsage, ed.getVHobUsage());
|
||||
Tools.generateComboBoxByVector(jComboBoxHobType, ed.getVHobType());
|
||||
Tools.generateComboBoxByVector(jComboBoxGuidC_Name, wt
|
||||
.getAllGuidDeclarationsFromWorkspace());
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
|
||||
*
|
||||
* Override actionPerformed to listen all actions
|
||||
*
|
||||
*/
|
||||
public void actionPerformed(ActionEvent arg0) {
|
||||
if (arg0.getSource() == jButtonOk) {
|
||||
if (checkAdd()) {
|
||||
getCurrentHobs();
|
||||
this.returnType = DataType.RETURN_TYPE_OK;
|
||||
this.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
if (arg0.getSource() == jButtonCancel) {
|
||||
this.returnType = DataType.RETURN_TYPE_CANCEL;
|
||||
this.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Data validation for all fields
|
||||
*
|
||||
* @retval true - All datas are valid
|
||||
* @retval false - At least one data is invalid
|
||||
*
|
||||
*/
|
||||
public boolean checkAdd() {
|
||||
//
|
||||
// Check if all fields have correct data types
|
||||
//
|
||||
|
||||
//
|
||||
//Define class members
|
||||
// Check Name
|
||||
//
|
||||
private JPanel jContentPane = null;
|
||||
if (isEmpty(this.jComboBoxGuidC_Name.getSelectedItem().toString())) {
|
||||
Log.wrn("Update Hobs", "Hob Guid C Name must not be empty");
|
||||
return false;
|
||||
}
|
||||
|
||||
private JLabel jLabel = null;
|
||||
|
||||
private JComboBox jComboBoxGuidC_Name = null;
|
||||
|
||||
private JLabel jLabelUsage = null;
|
||||
|
||||
private JLabel jLabelHobType = null;
|
||||
|
||||
private JComboBox jComboBoxUsage = null;
|
||||
|
||||
private JComboBox jComboBoxHobType = null;
|
||||
|
||||
private StarLabel jStarLabel1 = null;
|
||||
|
||||
private JLabel jLabelArch = null;
|
||||
|
||||
private JScrollPane jScrollPane = null;
|
||||
|
||||
private JLabel jLabelFeatureFlag = null;
|
||||
|
||||
private JTextField jTextFieldFeatureFlag = null;
|
||||
|
||||
private JLabel jLabelHelpText = null;
|
||||
|
||||
private JTextField jTextFieldHelpText = null;
|
||||
|
||||
private ArchCheckBox jArchCheckBox = null;
|
||||
|
||||
private JButton jButtonOk = null;
|
||||
|
||||
private JButton jButtonCancel = null;
|
||||
if (!isEmpty(this.jComboBoxGuidC_Name.getSelectedItem().toString())) {
|
||||
if (!DataValidation.isC_NameType(this.jComboBoxGuidC_Name
|
||||
.getSelectedItem().toString())) {
|
||||
Log.wrn("Update Hobs", "Incorrect data type for Hob Name");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Not used by UI
|
||||
// Check FeatureFlag
|
||||
//
|
||||
private HobsIdentification id = null;
|
||||
|
||||
private EnumerationData ed = new EnumerationData();
|
||||
|
||||
private WorkspaceTools wt = new WorkspaceTools();
|
||||
|
||||
/**
|
||||
This method initializes jTextField
|
||||
|
||||
@return javax.swing.JTextField jTextFieldC_Name
|
||||
|
||||
**/
|
||||
private JComboBox getJComboBoxGuidC_Name() {
|
||||
if (jComboBoxGuidC_Name == null) {
|
||||
jComboBoxGuidC_Name = new JComboBox();
|
||||
jComboBoxGuidC_Name.setBounds(new java.awt.Rectangle(160, 10, 320, 20));
|
||||
jComboBoxGuidC_Name.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jComboBoxGuidC_Name.setToolTipText("Select the GUID C Name of the Hob");
|
||||
}
|
||||
return jComboBoxGuidC_Name;
|
||||
if (!isEmpty(this.jTextFieldFeatureFlag.getText())) {
|
||||
if (!DataValidation.isFeatureFlag(this.jTextFieldFeatureFlag.getText())) {
|
||||
Log.wrn("Update Hobs", "Incorrect data type for Feature Flag");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jComboBoxUsage
|
||||
|
||||
@return javax.swing.JComboBox jComboBoxUsage
|
||||
|
||||
**/
|
||||
private JComboBox getJComboBoxUsage() {
|
||||
if (jComboBoxUsage == null) {
|
||||
jComboBoxUsage = new JComboBox();
|
||||
jComboBoxUsage.setBounds(new java.awt.Rectangle(160, 60, 320, 20));
|
||||
jComboBoxUsage.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jComboBoxUsage;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jComboBoxHobType
|
||||
|
||||
@return javax.swing.JComboBox jComboBoxHobType
|
||||
|
||||
**/
|
||||
private JComboBox getJComboBoxHobType() {
|
||||
if (jComboBoxHobType == null) {
|
||||
jComboBoxHobType = new JComboBox();
|
||||
jComboBoxHobType.setBounds(new java.awt.Rectangle(160, 35, 320, 20));
|
||||
jComboBoxHobType.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jComboBoxHobType;
|
||||
}
|
||||
private HobsIdentification getCurrentHobs() {
|
||||
String arg0 = this.jComboBoxGuidC_Name.getSelectedItem().toString();
|
||||
String arg1 = this.jComboBoxHobType.getSelectedItem().toString();
|
||||
String arg2 = this.jComboBoxUsage.getSelectedItem().toString();
|
||||
|
||||
/**
|
||||
This method initializes jScrollPane
|
||||
|
||||
@return javax.swing.JScrollPane
|
||||
*/
|
||||
private JScrollPane getJScrollPane() {
|
||||
if (jScrollPane == null) {
|
||||
jScrollPane = new JScrollPane();
|
||||
jScrollPane.setViewportView(getJContentPane());
|
||||
}
|
||||
return jScrollPane;
|
||||
}
|
||||
String arg3 = this.jTextFieldFeatureFlag.getText();
|
||||
Vector<String> arg4 = this.jArchCheckBox.getSelectedItemsVector();
|
||||
String arg5 = this.jTextAreaHelpText.getText();
|
||||
id = new HobsIdentification(arg0, arg1, arg2, arg3, arg4, arg5);
|
||||
return id;
|
||||
}
|
||||
|
||||
public HobsIdentification getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextFieldFeatureFlag
|
||||
*
|
||||
* @return javax.swing.JTextField
|
||||
*/
|
||||
private JTextField getJTextFieldFeatureFlag() {
|
||||
if (jTextFieldFeatureFlag == null) {
|
||||
jTextFieldFeatureFlag = new JTextField();
|
||||
jTextFieldFeatureFlag.setBounds(new java.awt.Rectangle(160, 110, 320, 20));
|
||||
jTextFieldFeatureFlag.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jTextFieldFeatureFlag;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jTextFieldHelpText
|
||||
|
||||
@return javax.swing.JTextField
|
||||
|
||||
**/
|
||||
private JTextField getJTextFieldHelpText() {
|
||||
if (jTextFieldHelpText == null) {
|
||||
jTextFieldHelpText = new JTextField();
|
||||
jTextFieldHelpText.setBounds(new java.awt.Rectangle(160, 85, 320, 20));
|
||||
jTextFieldHelpText.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jTextFieldHelpText;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jButtonOk
|
||||
|
||||
@return javax.swing.JButton
|
||||
|
||||
**/
|
||||
private JButton getJButtonOk() {
|
||||
if (jButtonOk == null) {
|
||||
jButtonOk = new JButton();
|
||||
jButtonOk.setBounds(new java.awt.Rectangle(290, 165, 90, 20));
|
||||
jButtonOk.setText("Ok");
|
||||
jButtonOk.addActionListener(this);
|
||||
}
|
||||
return jButtonOk;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jButtonCancel
|
||||
|
||||
@return javax.swing.JButton
|
||||
|
||||
**/
|
||||
private JButton getJButtonCancel() {
|
||||
if (jButtonCancel == null) {
|
||||
jButtonCancel = new JButton();
|
||||
jButtonCancel.setBounds(new java.awt.Rectangle(390, 165, 90, 20));
|
||||
jButtonCancel.setText("Cancel");
|
||||
jButtonCancel.addActionListener(this);
|
||||
}
|
||||
return jButtonCancel;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes this
|
||||
|
||||
**/
|
||||
private void init() {
|
||||
this.setSize(510, 240);
|
||||
this.setContentPane(getJScrollPane());
|
||||
this.setTitle("Hobs");
|
||||
initFrame();
|
||||
this.setViewMode(false);
|
||||
this.centerWindow();
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes this
|
||||
Fill values to all fields if these values are not empty
|
||||
|
||||
@param inHobsId
|
||||
|
||||
**/
|
||||
private void init(HobsIdentification inHobsId) {
|
||||
init();
|
||||
this.id = inHobsId;
|
||||
|
||||
if (this.id != null) {
|
||||
this.jComboBoxGuidC_Name.setSelectedItem(id.getName());
|
||||
this.jComboBoxHobType.setSelectedItem(id.getType());
|
||||
this.jComboBoxUsage.setSelectedItem(id.getUsage());
|
||||
this.jTextFieldHelpText.setText(id.getHelp());
|
||||
this.jTextFieldFeatureFlag.setText(id.getFeatureFlag());
|
||||
this.jArchCheckBox.setSelectedItems(id.getSupArchList());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
This is the override edit constructor
|
||||
|
||||
@param inHobsIdentification
|
||||
@param iFrame
|
||||
|
||||
**/
|
||||
public HobsDlg(HobsIdentification inHobsIdentification, IFrame iFrame) {
|
||||
super(iFrame, true);
|
||||
init(inHobsIdentification);
|
||||
}
|
||||
|
||||
/**
|
||||
Disable all components when the mode is view
|
||||
|
||||
@param isView true - The view mode; false - The non-view mode
|
||||
|
||||
**/
|
||||
public void setViewMode(boolean isView) {
|
||||
if (isView) {
|
||||
this.jComboBoxGuidC_Name.setEnabled(!isView);
|
||||
this.jComboBoxUsage.setEnabled(!isView);
|
||||
this.jComboBoxHobType.setEnabled(!isView);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jContentPane
|
||||
|
||||
@return javax.swing.JPanel jContentPane
|
||||
|
||||
**/
|
||||
public JPanel getJContentPane() {
|
||||
if (jContentPane == null) {
|
||||
jArchCheckBox = new ArchCheckBox();
|
||||
jArchCheckBox.setBounds(new java.awt.Rectangle(160, 135, 320, 20));
|
||||
jArchCheckBox.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jLabelFeatureFlag = new JLabel();
|
||||
jLabelFeatureFlag.setBounds(new java.awt.Rectangle(15, 110, 140, 20));
|
||||
jLabelFeatureFlag.setText("Feature Flag");
|
||||
jLabelArch = new JLabel();
|
||||
jLabelArch.setBounds(new java.awt.Rectangle(15, 135, 140, 20));
|
||||
jLabelArch.setText("Arch");
|
||||
jLabelHobType = new JLabel();
|
||||
jLabelHobType.setText("Hob Type");
|
||||
jLabelHobType.setBounds(new java.awt.Rectangle(15, 35, 140, 20));
|
||||
jLabelUsage = new JLabel();
|
||||
jLabelUsage.setText("Usage");
|
||||
jLabelUsage.setBounds(new java.awt.Rectangle(15, 60, 140, 20));
|
||||
jLabel = new JLabel();
|
||||
jLabel.setText("Guid C Name");
|
||||
jLabel.setBounds(new java.awt.Rectangle(15, 10, 140, 20));
|
||||
jLabelHelpText = new JLabel();
|
||||
jLabelHelpText.setBounds(new java.awt.Rectangle(14, 85, 140, 20));
|
||||
jLabelHelpText.setText("Help Text");
|
||||
|
||||
jContentPane = new JPanel();
|
||||
jContentPane.setLayout(null);
|
||||
jContentPane.setPreferredSize(new java.awt.Dimension(490, 190));
|
||||
|
||||
jContentPane.add(jLabel, null);
|
||||
jContentPane.add(getJComboBoxGuidC_Name(), null);
|
||||
jContentPane.add(jLabelUsage, null);
|
||||
jContentPane.add(jLabelHobType, null);
|
||||
jContentPane.add(getJComboBoxUsage(), null);
|
||||
jContentPane.add(getJComboBoxHobType(), null);
|
||||
jStarLabel1 = new StarLabel();
|
||||
jStarLabel1.setLocation(new java.awt.Point(0, 10));
|
||||
jContentPane.add(jStarLabel1, null);
|
||||
|
||||
jContentPane.add(jLabelArch, null);
|
||||
|
||||
jContentPane.add(jLabelFeatureFlag, null);
|
||||
jContentPane.add(getJTextFieldFeatureFlag(), null);
|
||||
jContentPane.add(jLabelHelpText, null);
|
||||
jContentPane.add(getJTextFieldHelpText(), null);
|
||||
jContentPane.add(jArchCheckBox, null);
|
||||
jContentPane.add(getJButtonOk(), null);
|
||||
jContentPane.add(getJButtonCancel(), null);
|
||||
}
|
||||
return jContentPane;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes Usage type and Hob type
|
||||
|
||||
**/
|
||||
private void initFrame() {
|
||||
Tools.generateComboBoxByVector(jComboBoxUsage, ed.getVHobUsage());
|
||||
Tools.generateComboBoxByVector(jComboBoxHobType, ed.getVHobType());
|
||||
Tools.generateComboBoxByVector(jComboBoxGuidC_Name, wt.getAllGuidDeclarationsFromWorkspace());
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
|
||||
*
|
||||
* Override actionPerformed to listen all actions
|
||||
*
|
||||
*/
|
||||
public void actionPerformed(ActionEvent arg0) {
|
||||
if (arg0.getSource() == jButtonOk) {
|
||||
if (checkAdd()) {
|
||||
getCurrentHobs();
|
||||
this.returnType = DataType.RETURN_TYPE_OK;
|
||||
this.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
if (arg0.getSource() == jButtonCancel) {
|
||||
this.returnType = DataType.RETURN_TYPE_CANCEL;
|
||||
this.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
Data validation for all fields
|
||||
|
||||
@retval true - All datas are valid
|
||||
@retval false - At least one data is invalid
|
||||
|
||||
**/
|
||||
public boolean checkAdd() {
|
||||
//
|
||||
// Check if all fields have correct data types
|
||||
//
|
||||
|
||||
//
|
||||
// Check Name
|
||||
//
|
||||
if (isEmpty(this.jComboBoxGuidC_Name.getSelectedItem().toString())) {
|
||||
Log.wrn("Update Hobs", "Hob Name couldn't be empty");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!isEmpty(this.jComboBoxGuidC_Name.getSelectedItem().toString())) {
|
||||
if (!DataValidation.isC_NameType(this.jComboBoxGuidC_Name.getSelectedItem().toString())) {
|
||||
Log.wrn("Update Hobs", "Incorrect data type for Hob Name");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Check FeatureFlag
|
||||
//
|
||||
if (!isEmpty(this.jTextFieldFeatureFlag.getText())) {
|
||||
if (!DataValidation.isFeatureFlag(this.jTextFieldFeatureFlag.getText())) {
|
||||
Log.wrn("Update Hobs", "Incorrect data type for Feature Flag");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private HobsIdentification getCurrentHobs() {
|
||||
String arg0 = this.jComboBoxGuidC_Name.getSelectedItem().toString();
|
||||
String arg1 = this.jComboBoxHobType.getSelectedItem().toString();
|
||||
String arg2 = this.jComboBoxUsage.getSelectedItem().toString();
|
||||
|
||||
String arg3 = this.jTextFieldFeatureFlag.getText();
|
||||
Vector<String> arg4 = this.jArchCheckBox.getSelectedItemsVector();
|
||||
String arg5 = this.jTextFieldHelpText.getText();
|
||||
id = new HobsIdentification(arg0, arg1, arg2, arg3, arg4, arg5);
|
||||
return id;
|
||||
}
|
||||
|
||||
public HobsIdentification getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(HobsIdentification id) {
|
||||
this.id = id;
|
||||
}
|
||||
public void setId(HobsIdentification id) {
|
||||
this.id = id;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -40,495 +40,525 @@ import org.tianocore.frameworkwizard.module.Identifications.PcdCoded.PcdVector;
|
|||
import org.tianocore.frameworkwizard.workspace.WorkspaceTools;
|
||||
|
||||
/**
|
||||
The class is used to create, update PCD of MSA/MBD file
|
||||
It extends IInternalFrame
|
||||
|
||||
**/
|
||||
* The class is used to create, update PCD of MSA/MBD file It extends
|
||||
* IInternalFrame
|
||||
*
|
||||
*/
|
||||
public class PCDsDlg extends IDialog implements ItemListener {
|
||||
|
||||
///
|
||||
/// Define class Serial Version UID
|
||||
///
|
||||
private static final long serialVersionUID = 2227717658188438696L;
|
||||
// /
|
||||
// / Define class Serial Version UID
|
||||
// /
|
||||
private static final long serialVersionUID = 2227717658188438696L;
|
||||
|
||||
//
|
||||
//Define class members
|
||||
//
|
||||
private JPanel jContentPane = null;
|
||||
//
|
||||
// Define class members
|
||||
//
|
||||
private JPanel jContentPane = null;
|
||||
|
||||
private JLabel jLabelItemType = null;
|
||||
private JLabel jLabelItemType = null;
|
||||
|
||||
private JLabel jLabelC_Name = null;
|
||||
private JLabel jLabelC_Name = null;
|
||||
|
||||
private JComboBox jComboBoxItemType = null;
|
||||
private JComboBox jComboBoxItemType = null;
|
||||
|
||||
private JComboBox jComboBoxCName = null;
|
||||
private JComboBox jComboBoxCName = null;
|
||||
|
||||
private JLabel jLabelDefaultValue = null;
|
||||
private JLabel jLabelDefaultValue = null;
|
||||
|
||||
private JTextField jTextFieldDefaultValue = null;
|
||||
private JTextField jTextFieldDefaultValue = null;
|
||||
|
||||
private StarLabel jStarLabel1 = null;
|
||||
private StarLabel jStarLabel1 = null;
|
||||
|
||||
private StarLabel jStarLabel2 = null;
|
||||
private StarLabel jStarLabel2 = null;
|
||||
|
||||
private StarLabel jStarLabel3 = null;
|
||||
private StarLabel jStarLabel3 = null;
|
||||
|
||||
private JLabel jLabelHelpText = null;
|
||||
private JLabel jLabelHelpText = null;
|
||||
|
||||
private JTextArea jTextAreaHelpText = null;
|
||||
private JTextArea jTextAreaHelpText = null;
|
||||
|
||||
private JScrollPane jScrollPane = null;
|
||||
private JScrollPane jScrollPane = null;
|
||||
|
||||
private JLabel jLabelTokenSpaceGuid = null;
|
||||
private JLabel jLabelTokenSpaceGuid = null;
|
||||
|
||||
private JTextField jTextFieldTokenSpaceGuid = null;
|
||||
private JTextField jTextFieldTokenSpaceGuid = null;
|
||||
|
||||
private JLabel jLabelFeatureFlag = null;
|
||||
private JLabel jLabelFeatureFlag = null;
|
||||
|
||||
private JTextField jTextFieldFeatureFlag = null;
|
||||
private JTextField jTextFieldFeatureFlag = null;
|
||||
|
||||
private JLabel jLabelArch = null;
|
||||
private JLabel jLabelArch = null;
|
||||
|
||||
private ArchCheckBox jArchCheckBox = null;
|
||||
private ArchCheckBox jArchCheckBox = null;
|
||||
|
||||
private JButton jButtonOk = null;
|
||||
private JButton jButtonOk = null;
|
||||
|
||||
private JButton jButtonCancel = null;
|
||||
private JButton jButtonCancel = null;
|
||||
|
||||
private JScrollPane jScrollPaneHelpText = null;
|
||||
//
|
||||
// Not used by UI
|
||||
//
|
||||
private PcdCodedIdentification id = null;
|
||||
private JScrollPane jScrollPaneHelpText = null;
|
||||
|
||||
private WorkspaceTools wt = new WorkspaceTools();
|
||||
//
|
||||
// Not used by UI
|
||||
//
|
||||
private PcdCodedIdentification id = null;
|
||||
|
||||
private PcdVector pcd = wt.getAllPcdDeclarationsFromWorkspace();
|
||||
|
||||
/**
|
||||
This method initializes jComboBoxItemType
|
||||
|
||||
@return javax.swing.JComboBox jComboBoxItemType
|
||||
|
||||
**/
|
||||
private JComboBox getJComboBoxItemType() {
|
||||
if (jComboBoxItemType == null) {
|
||||
jComboBoxItemType = new JComboBox();
|
||||
jComboBoxItemType.setBounds(new java.awt.Rectangle(160, 35, 320, 20));
|
||||
jComboBoxItemType.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jComboBoxItemType;
|
||||
private WorkspaceTools wt = new WorkspaceTools();
|
||||
|
||||
private PcdVector pcd = wt.getAllPcdDeclarationsFromWorkspace();
|
||||
|
||||
/**
|
||||
* This method initializes jComboBoxItemType
|
||||
*
|
||||
* @return javax.swing.JComboBox jComboBoxItemType
|
||||
*
|
||||
*/
|
||||
private JComboBox getJComboBoxItemType() {
|
||||
if (jComboBoxItemType == null) {
|
||||
jComboBoxItemType = new JComboBox();
|
||||
jComboBoxItemType.setBounds(new java.awt.Rectangle(160, 35, 320, 20));
|
||||
jComboBoxItemType.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jComboBoxItemType;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextFieldC_Name
|
||||
*
|
||||
* @return javax.swing.JTextField jTextFieldC_Name
|
||||
*
|
||||
*/
|
||||
private JComboBox getJComboBoxCName() {
|
||||
if (jComboBoxCName == null) {
|
||||
jComboBoxCName = new JComboBox();
|
||||
jComboBoxCName.setBounds(new java.awt.Rectangle(160, 10, 320, 20));
|
||||
jComboBoxCName.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jComboBoxCName.addItemListener(this);
|
||||
}
|
||||
return jComboBoxCName;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextFieldDefaultValue
|
||||
*
|
||||
* @return javax.swing.JTextField jTextFieldDefaultValue
|
||||
*
|
||||
*/
|
||||
private JTextField getJTextFieldDefaultValue() {
|
||||
if (jTextFieldDefaultValue == null) {
|
||||
jTextFieldDefaultValue = new JTextField();
|
||||
jTextFieldDefaultValue
|
||||
.setBounds(new java.awt.Rectangle(160, 60, 320, 20));
|
||||
jTextFieldDefaultValue.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jTextFieldDefaultValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextAreaHelpText
|
||||
*
|
||||
* @return javax.swing.JTextArea
|
||||
*/
|
||||
private JTextArea getJTextAreaHelpText() {
|
||||
if (jTextAreaHelpText == null) {
|
||||
jTextAreaHelpText = new JTextArea();
|
||||
jTextAreaHelpText.setLineWrap(true);
|
||||
jTextAreaHelpText.setWrapStyleWord(true);
|
||||
}
|
||||
return jTextAreaHelpText;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jScrollPaneHelpText
|
||||
*
|
||||
* @return javax.swing.JScrollPane
|
||||
*
|
||||
*/
|
||||
private JScrollPane getJScrollPaneHelpText() {
|
||||
if (jScrollPaneHelpText == null) {
|
||||
jScrollPaneHelpText = new JScrollPane();
|
||||
jScrollPaneHelpText
|
||||
.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
|
||||
jScrollPaneHelpText.setSize(new java.awt.Dimension(320, 40));
|
||||
jScrollPaneHelpText.setPreferredSize(new java.awt.Dimension(320, 40));
|
||||
jScrollPaneHelpText.setLocation(new java.awt.Point(160, 85));
|
||||
jScrollPaneHelpText.setViewportView(getJTextAreaHelpText());
|
||||
}
|
||||
return jScrollPaneHelpText;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jScrollPane
|
||||
*
|
||||
* @return javax.swing.JScrollPane
|
||||
*/
|
||||
private JScrollPane getJScrollPane() {
|
||||
if (jScrollPane == null) {
|
||||
jScrollPane = new JScrollPane();
|
||||
jScrollPane.setViewportView(getJContentPane());
|
||||
}
|
||||
return jScrollPane;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextFieldTokenSpaceGuid
|
||||
*
|
||||
* @return javax.swing.JTextField
|
||||
*/
|
||||
private JTextField getJTextFieldTokenSpaceGuid() {
|
||||
if (jTextFieldTokenSpaceGuid == null) {
|
||||
jTextFieldTokenSpaceGuid = new JTextField();
|
||||
jTextFieldTokenSpaceGuid.setBounds(new java.awt.Rectangle(160, 60, 320,
|
||||
20));
|
||||
jTextFieldTokenSpaceGuid
|
||||
.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jTextFieldTokenSpaceGuid.setVisible(false);
|
||||
}
|
||||
return jTextFieldTokenSpaceGuid;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextFieldFeatureFlag
|
||||
*
|
||||
* @return javax.swing.JTextField
|
||||
*/
|
||||
private JTextField getJTextFieldFeatureFlag() {
|
||||
if (jTextFieldFeatureFlag == null) {
|
||||
jTextFieldFeatureFlag = new JTextField();
|
||||
jTextFieldFeatureFlag
|
||||
.setBounds(new java.awt.Rectangle(160, 130, 320, 20));
|
||||
jTextFieldFeatureFlag.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jTextFieldFeatureFlag.setToolTipText("Postfix expression that must evaluate to TRUE or FALSE");
|
||||
}
|
||||
return jTextFieldFeatureFlag;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jButtonOk
|
||||
*
|
||||
* @return javax.swing.JButton
|
||||
*
|
||||
*/
|
||||
private JButton getJButtonOk() {
|
||||
if (jButtonOk == null) {
|
||||
jButtonOk = new JButton();
|
||||
jButtonOk.setBounds(new java.awt.Rectangle(290, 182, 90, 20));
|
||||
jButtonOk.setText("Ok");
|
||||
jButtonOk.addActionListener(this);
|
||||
}
|
||||
return jButtonOk;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jButtonCancel
|
||||
*
|
||||
* @return javax.swing.JButton
|
||||
*
|
||||
*/
|
||||
private JButton getJButtonCancel() {
|
||||
if (jButtonCancel == null) {
|
||||
jButtonCancel = new JButton();
|
||||
jButtonCancel.setBounds(new java.awt.Rectangle(390, 182, 90, 20));
|
||||
jButtonCancel.setText("Cancel");
|
||||
jButtonCancel.addActionListener(this);
|
||||
}
|
||||
return jButtonCancel;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes this
|
||||
*
|
||||
*/
|
||||
private void init() {
|
||||
this.setSize(500, 255);
|
||||
this.setContentPane(getJScrollPane());
|
||||
this.setTitle("Pcd Coded");
|
||||
initFrame();
|
||||
this.setViewMode(false);
|
||||
this.centerWindow();
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes this Fill values to all fields if these values are
|
||||
* not empty
|
||||
*
|
||||
* @param inPcdCodedId
|
||||
*
|
||||
*/
|
||||
private void init(PcdCodedIdentification inPcdCodedId) {
|
||||
init();
|
||||
this.id = inPcdCodedId;
|
||||
|
||||
if (this.id != null) {
|
||||
this.jComboBoxCName.setSelectedItem(id.getName());
|
||||
this.jTextFieldTokenSpaceGuid.setText(id.getGuid());
|
||||
this.jTextFieldDefaultValue.setText(id.getValue());
|
||||
this.jTextAreaHelpText.setText(id.getHelp());
|
||||
this.jComboBoxItemType.setSelectedItem(id.getType());
|
||||
this.jTextFieldFeatureFlag.setText(id.getFeatureFlag());
|
||||
this.jArchCheckBox.setSelectedItems(id.getSupArchList());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This is the override edit constructor
|
||||
*
|
||||
* @param inPcdCodedId
|
||||
* @param iFrame
|
||||
*
|
||||
*/
|
||||
public PCDsDlg(PcdCodedIdentification inPcdCodedId, IFrame iFrame) {
|
||||
super(iFrame, true);
|
||||
init(inPcdCodedId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Disable all components when the mode is view
|
||||
*
|
||||
* @param isView
|
||||
* true - The view mode; false - The non-view mode
|
||||
*
|
||||
*/
|
||||
public void setViewMode(boolean isView) {
|
||||
if (isView) {
|
||||
this.jTextFieldDefaultValue.setEnabled(!isView);
|
||||
this.jComboBoxItemType.setEnabled(!isView);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jContentPane
|
||||
*
|
||||
* @return javax.swing.JPanel jContentPane
|
||||
*
|
||||
*/
|
||||
private JPanel getJContentPane() {
|
||||
if (jContentPane == null) {
|
||||
jStarLabel1 = new StarLabel();
|
||||
jStarLabel1.setLocation(new java.awt.Point(2, 10));
|
||||
jLabelC_Name = new JLabel();
|
||||
jLabelC_Name.setText("PCD C Name");
|
||||
jLabelC_Name.setBounds(new java.awt.Rectangle(15, 10, 145, 20));
|
||||
|
||||
jStarLabel2 = new StarLabel();
|
||||
jStarLabel2.setLocation(new java.awt.Point(2, 35));
|
||||
jLabelItemType = new JLabel();
|
||||
jLabelItemType.setText("PCD Item Type");
|
||||
jLabelItemType.setBounds(new java.awt.Rectangle(15, 35, 145, 20));
|
||||
|
||||
jLabelDefaultValue = new JLabel();
|
||||
jLabelDefaultValue.setText("Default Value");
|
||||
jLabelDefaultValue.setBounds(new java.awt.Rectangle(15, 60, 145, 20));
|
||||
|
||||
jStarLabel3 = new StarLabel();
|
||||
jStarLabel3.setLocation(new java.awt.Point(2, 85));
|
||||
jLabelHelpText = new JLabel();
|
||||
jLabelHelpText.setText("Help Text");
|
||||
jLabelHelpText.setBounds(new java.awt.Rectangle(15, 85, 145, 20));
|
||||
|
||||
jLabelFeatureFlag = new JLabel();
|
||||
jLabelFeatureFlag.setText("Feature Flag Expression");
|
||||
jLabelFeatureFlag.setBounds(new java.awt.Rectangle(15, 130, 140, 20));
|
||||
|
||||
jLabelTokenSpaceGuid = new JLabel();
|
||||
jLabelTokenSpaceGuid.setText("Token Space C Name");
|
||||
jLabelTokenSpaceGuid.setVisible(false);
|
||||
|
||||
jLabelArch = new JLabel();
|
||||
jLabelArch.setText("Supported Architectures");
|
||||
jLabelArch.setBounds(new java.awt.Rectangle(15, 155, 145, 20));
|
||||
jArchCheckBox = new ArchCheckBox();
|
||||
jArchCheckBox.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jArchCheckBox.setBounds(new java.awt.Rectangle(160, 155, 320, 20));
|
||||
|
||||
// Hidden field
|
||||
jLabelTokenSpaceGuid.setBounds(new java.awt.Rectangle(15, 60, 140, 20));
|
||||
|
||||
jContentPane = new JPanel();
|
||||
jContentPane.setLayout(null);
|
||||
jContentPane.setPreferredSize(new java.awt.Dimension(485, 210));
|
||||
|
||||
jContentPane.add(jStarLabel1, null);
|
||||
jContentPane.add(jLabelC_Name, null);
|
||||
jContentPane.add(getJComboBoxCName(), null);
|
||||
jContentPane.add(jStarLabel2, null);
|
||||
jContentPane.add(jLabelItemType, null);
|
||||
jContentPane.add(getJComboBoxItemType(), null);
|
||||
jContentPane.add(jLabelDefaultValue, null);
|
||||
jContentPane.add(getJTextFieldDefaultValue(), null);
|
||||
jContentPane.add(jStarLabel3, null);
|
||||
jContentPane.add(jLabelHelpText, null);
|
||||
jContentPane.add(getJScrollPaneHelpText(), null);
|
||||
jContentPane.add(jLabelFeatureFlag, null);
|
||||
jContentPane.add(getJTextFieldFeatureFlag(), null);
|
||||
jContentPane.add(jLabelArch, null);
|
||||
jContentPane.add(jArchCheckBox, null);
|
||||
// Hidden
|
||||
jContentPane.add(getJTextFieldTokenSpaceGuid(), null);
|
||||
jContentPane.add(jLabelTokenSpaceGuid, null);
|
||||
jContentPane.add(getJButtonOk(), null);
|
||||
jContentPane.add(getJButtonCancel(), null);
|
||||
}
|
||||
return jContentPane;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes Usage type, Item type and Datum type
|
||||
*
|
||||
*/
|
||||
private void initFrame() {
|
||||
for (int index = 0; index < pcd.size(); index++) {
|
||||
jComboBoxCName.addItem(pcd.getPcd(index));
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jTextFieldC_Name
|
||||
|
||||
@return javax.swing.JTextField jTextFieldC_Name
|
||||
|
||||
**/
|
||||
private JComboBox getJComboBoxCName() {
|
||||
if (jComboBoxCName == null) {
|
||||
jComboBoxCName = new JComboBox();
|
||||
jComboBoxCName.setBounds(new java.awt.Rectangle(160, 10, 320, 20));
|
||||
jComboBoxCName.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jComboBoxCName.addItemListener(this);
|
||||
//jComboBoxCName.addActionListener(this);
|
||||
}
|
||||
return jComboBoxCName;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jTextFieldDefaultValue
|
||||
|
||||
@return javax.swing.JTextField jTextFieldDefaultValue
|
||||
|
||||
**/
|
||||
private JTextField getJTextFieldDefaultValue() {
|
||||
if (jTextFieldDefaultValue == null) {
|
||||
jTextFieldDefaultValue = new JTextField();
|
||||
jTextFieldDefaultValue.setBounds(new java.awt.Rectangle(160, 60, 320, 20));
|
||||
jTextFieldDefaultValue.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jTextFieldDefaultValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextAreaHelpText
|
||||
*
|
||||
* @return javax.swing.JTextArea
|
||||
*/
|
||||
private JTextArea getJTextAreaHelpText() {
|
||||
if (jTextAreaHelpText == null) {
|
||||
jTextAreaHelpText = new JTextArea();
|
||||
jTextAreaHelpText.setLineWrap(true);
|
||||
jTextAreaHelpText.setWrapStyleWord(true);
|
||||
// jTextAreaHelpText.setBounds(new java.awt.Rectangle(160, 85, 320, 20));
|
||||
// jTextAreaHelpText.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jTextAreaHelpText;
|
||||
}
|
||||
private JScrollPane getJScrollPaneHelpText() {
|
||||
if (jScrollPaneHelpText == null ) {
|
||||
jScrollPaneHelpText = new JScrollPane();
|
||||
jScrollPaneHelpText.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
|
||||
jScrollPaneHelpText.setSize(new java.awt.Dimension(320, 40));
|
||||
jScrollPaneHelpText.setPreferredSize(new java.awt.Dimension(320, 40));
|
||||
jScrollPaneHelpText.setLocation(new java.awt.Point(160, 85));
|
||||
jScrollPaneHelpText.setViewportView(getJTextAreaHelpText());
|
||||
// Tools.generateComboBoxByVector(jComboBoxItemType, ed.getVPcdItemTypes());
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
|
||||
*
|
||||
* Override actionPerformed to listen all actions
|
||||
*
|
||||
*/
|
||||
public void actionPerformed(ActionEvent arg0) {
|
||||
if (arg0.getSource() == jButtonOk) {
|
||||
if (checkAdd()) {
|
||||
getCurrentPcdCoded();
|
||||
this.returnType = DataType.RETURN_TYPE_OK;
|
||||
this.setVisible(false);
|
||||
}
|
||||
return jScrollPaneHelpText;
|
||||
}
|
||||
|
||||
if (arg0.getSource() == jButtonCancel) {
|
||||
this.returnType = DataType.RETURN_TYPE_CANCEL;
|
||||
this.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jScrollPane
|
||||
|
||||
@return javax.swing.JScrollPane
|
||||
*/
|
||||
private JScrollPane getJScrollPane() {
|
||||
if (jScrollPane == null) {
|
||||
jScrollPane = new JScrollPane();
|
||||
jScrollPane.setViewportView(getJContentPane());
|
||||
}
|
||||
return jScrollPane;
|
||||
/**
|
||||
* Data validation for all fields
|
||||
*
|
||||
* @retval true - All datas are valid
|
||||
* @retval false - At least one data is invalid
|
||||
*
|
||||
*/
|
||||
public boolean checkAdd() {
|
||||
//
|
||||
// Check if all fields have correct data types
|
||||
//
|
||||
|
||||
//
|
||||
// Check C_Name
|
||||
//
|
||||
if (!isEmpty(this.jComboBoxCName.getSelectedItem().toString())) {
|
||||
if (!DataValidation.isC_NameType(this.jComboBoxCName.getSelectedItem()
|
||||
.toString())) {
|
||||
Log.wrn("Update PcdCoded", "Incorrect data type for C Name");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextFieldTokenSpaceGuid
|
||||
*
|
||||
* @return javax.swing.JTextField
|
||||
*/
|
||||
private JTextField getJTextFieldTokenSpaceGuid() {
|
||||
if (jTextFieldTokenSpaceGuid == null) {
|
||||
jTextFieldTokenSpaceGuid = new JTextField();
|
||||
jTextFieldTokenSpaceGuid.setBounds(new java.awt.Rectangle(160, 60, 320, 20));
|
||||
jTextFieldTokenSpaceGuid.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jTextFieldTokenSpaceGuid.setVisible(false);
|
||||
}
|
||||
return jTextFieldTokenSpaceGuid;
|
||||
//
|
||||
// Check TokenSpaceGuid
|
||||
//
|
||||
if (!isEmpty(this.jTextFieldTokenSpaceGuid.getText())) {
|
||||
if (!DataValidation.isC_NameType(this.jTextFieldTokenSpaceGuid.getText())) {
|
||||
Log
|
||||
.wrn("Update PcdCoded",
|
||||
"Incorrect data type for the selected pcd entry, please check in in spd file");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextFieldFeatureFlag
|
||||
*
|
||||
* @return javax.swing.JTextField
|
||||
*/
|
||||
private JTextField getJTextFieldFeatureFlag() {
|
||||
if (jTextFieldFeatureFlag == null) {
|
||||
jTextFieldFeatureFlag = new JTextField();
|
||||
jTextFieldFeatureFlag.setBounds(new java.awt.Rectangle(160, 130, 320, 20));
|
||||
jTextFieldFeatureFlag.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
//jLabelFeatureFlag.setBounds(new java.awt.Rectangle(15, 130, 140, 20));
|
||||
}
|
||||
return jTextFieldFeatureFlag;
|
||||
//
|
||||
// Check DefaultValue
|
||||
//
|
||||
if (!isEmpty(this.jTextFieldDefaultValue.getText())) {
|
||||
if (!DataValidation.isDefaultValueType(this.jTextFieldDefaultValue
|
||||
.getText())) {
|
||||
Log.wrn("Update PcdCoded", "Incorrect data type for Default Value");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jButtonOk
|
||||
|
||||
@return javax.swing.JButton
|
||||
|
||||
**/
|
||||
private JButton getJButtonOk() {
|
||||
if (jButtonOk == null) {
|
||||
jButtonOk = new JButton();
|
||||
jButtonOk.setBounds(new java.awt.Rectangle(290, 185, 90, 20));
|
||||
jButtonOk.setText("Ok");
|
||||
jButtonOk.addActionListener(this);
|
||||
}
|
||||
return jButtonOk;
|
||||
//
|
||||
// Check HelpText
|
||||
//
|
||||
if (isEmpty(this.jTextAreaHelpText.getText())) {
|
||||
Log.wrn("Update PcdCoded", "Help Text should not be empty");
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jButtonCancel
|
||||
|
||||
@return javax.swing.JButton
|
||||
|
||||
**/
|
||||
private JButton getJButtonCancel() {
|
||||
if (jButtonCancel == null) {
|
||||
jButtonCancel = new JButton();
|
||||
jButtonCancel.setBounds(new java.awt.Rectangle(390, 185, 90, 20));
|
||||
jButtonCancel.setText("Cancel");
|
||||
jButtonCancel.addActionListener(this);
|
||||
}
|
||||
return jButtonCancel;
|
||||
//
|
||||
// Check FeatureFlag
|
||||
//
|
||||
if (!isEmpty(this.jTextFieldFeatureFlag.getText())) {
|
||||
if (!DataValidation.isFeatureFlag(this.jTextFieldFeatureFlag.getText())) {
|
||||
Log.wrn("Update PcdCoded", "Incorrect data type for Feature Flag");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
return true;
|
||||
}
|
||||
|
||||
private PcdCodedIdentification getCurrentPcdCoded() {
|
||||
String arg0 = this.jComboBoxCName.getSelectedItem().toString();
|
||||
String arg1 = this.jTextFieldTokenSpaceGuid.getText();
|
||||
|
||||
String arg2 = this.jTextFieldFeatureFlag.getText();
|
||||
Vector<String> arg3 = this.jArchCheckBox.getSelectedItemsVector();
|
||||
|
||||
String arg4 = this.jTextFieldDefaultValue.getText();
|
||||
String arg5 = this.jTextAreaHelpText.getText();
|
||||
String arg6 = this.jComboBoxItemType.getSelectedItem().toString();
|
||||
id = new PcdCodedIdentification(arg0, arg1, arg2, arg3, arg4, arg5, arg6);
|
||||
return id;
|
||||
}
|
||||
|
||||
public PcdCodedIdentification getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(PcdCodedIdentification id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see java.awt.event.ItemListener#itemStateChanged(java.awt.event.ItemEvent)
|
||||
*
|
||||
* Reflesh the frame when selected item changed
|
||||
*
|
||||
*/
|
||||
public void itemStateChanged(ItemEvent arg0) {
|
||||
int index = this.jComboBoxCName.getSelectedIndex();
|
||||
if (arg0.getSource() == this.jComboBoxCName
|
||||
&& arg0.getStateChange() == ItemEvent.SELECTED) {
|
||||
if (pcd.getPcd(index).getGuidCName() == null
|
||||
|| isEmpty(pcd.getPcd(index).getGuidCName())
|
||||
|| pcd.getPcd(index).getType() == null
|
||||
|| pcd.getPcd(index).getHelp() == null
|
||||
|| isEmpty(pcd.getPcd(index).getHelp())) {
|
||||
Log
|
||||
.wrn("select pcd entry when editing msa",
|
||||
"The selected is defined incorrectly.\r\nPlease check it in spd file");
|
||||
} else {
|
||||
this.jTextFieldTokenSpaceGuid.setText(pcd.getPcd(index).getGuidCName());
|
||||
Tools.generateComboBoxByVector(this.jComboBoxItemType, pcd
|
||||
.getPcd(index).getType());
|
||||
this.jTextAreaHelpText.setText(pcd.getPcd(index).getHelp());
|
||||
this.jTextAreaHelpText.setSelectionStart(0);
|
||||
this.jTextAreaHelpText.setSelectionEnd(0);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes this
|
||||
|
||||
**/
|
||||
private void init() {
|
||||
this.setSize(508, 260);
|
||||
this.setContentPane(getJScrollPane());
|
||||
this.setTitle("Pcd Coded");
|
||||
initFrame();
|
||||
this.setViewMode(false);
|
||||
this.centerWindow();
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes this
|
||||
Fill values to all fields if these values are not empty
|
||||
|
||||
@param inPcdCodedId
|
||||
|
||||
**/
|
||||
private void init(PcdCodedIdentification inPcdCodedId) {
|
||||
init();
|
||||
this.id = inPcdCodedId;
|
||||
|
||||
if (this.id != null) {
|
||||
this.jComboBoxCName.setSelectedItem(id.getName());
|
||||
this.jTextFieldTokenSpaceGuid.setText(id.getGuid());
|
||||
this.jTextFieldDefaultValue.setText(id.getValue());
|
||||
this.jTextAreaHelpText.setText(id.getHelp());
|
||||
this.jComboBoxItemType.setSelectedItem(id.getType());
|
||||
this.jTextFieldFeatureFlag.setText(id.getFeatureFlag());
|
||||
this.jArchCheckBox.setSelectedItems(id.getSupArchList());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
This is the override edit constructor
|
||||
|
||||
@param inPcdCodedId
|
||||
@param iFrame
|
||||
|
||||
**/
|
||||
public PCDsDlg(PcdCodedIdentification inPcdCodedId, IFrame iFrame) {
|
||||
super(iFrame, true);
|
||||
init(inPcdCodedId);
|
||||
}
|
||||
|
||||
/**
|
||||
Disable all components when the mode is view
|
||||
|
||||
@param isView true - The view mode; false - The non-view mode
|
||||
|
||||
**/
|
||||
public void setViewMode(boolean isView) {
|
||||
if (isView) {
|
||||
this.jTextFieldDefaultValue.setEnabled(!isView);
|
||||
this.jComboBoxItemType.setEnabled(!isView);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jContentPane
|
||||
|
||||
@return javax.swing.JPanel jContentPane
|
||||
|
||||
**/
|
||||
private JPanel getJContentPane() {
|
||||
if (jContentPane == null) {
|
||||
jArchCheckBox = new ArchCheckBox();
|
||||
jArchCheckBox.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jLabelArch = new JLabel();
|
||||
jLabelArch.setText("Sup Arch List");
|
||||
jLabelFeatureFlag = new JLabel();
|
||||
jLabelFeatureFlag.setText("Feature Flag");
|
||||
jLabelTokenSpaceGuid = new JLabel();
|
||||
jLabelTokenSpaceGuid.setText("Token Space C Name");
|
||||
jLabelTokenSpaceGuid.setVisible(false);
|
||||
jLabelHelpText = new JLabel();
|
||||
jLabelHelpText.setText("Help Text");
|
||||
jLabelC_Name = new JLabel();
|
||||
jLabelC_Name.setText("C Name");
|
||||
jLabelDefaultValue = new JLabel();
|
||||
jLabelDefaultValue.setText("Default Value");
|
||||
jLabelItemType = new JLabel();
|
||||
jLabelItemType.setText("Item Type");
|
||||
|
||||
jLabelC_Name.setBounds(new java.awt.Rectangle(15, 10, 140, 20));
|
||||
jLabelItemType.setBounds(new java.awt.Rectangle(15, 35, 140, 20));
|
||||
jLabelDefaultValue.setBounds(new java.awt.Rectangle(15, 60, 140, 20));
|
||||
jLabelHelpText.setBounds(new java.awt.Rectangle(15, 85, 140, 20));
|
||||
jLabelFeatureFlag.setBounds(new java.awt.Rectangle(15, 130, 140, 20));
|
||||
jLabelArch.setBounds(new java.awt.Rectangle(15, 155, 140, 20));
|
||||
|
||||
jArchCheckBox.setBounds(new java.awt.Rectangle(160, 155, 320, 20));
|
||||
jLabelTokenSpaceGuid.setBounds(new java.awt.Rectangle(15, 60, 140, 20));
|
||||
|
||||
jContentPane = new JPanel();
|
||||
jContentPane.setLayout(null);
|
||||
jContentPane.setPreferredSize(new java.awt.Dimension(490, 190));
|
||||
|
||||
jContentPane.add(jLabelItemType, null);
|
||||
jContentPane.add(jLabelC_Name, null);
|
||||
jContentPane.add(getJComboBoxCName(), null);
|
||||
jContentPane.add(jLabelDefaultValue, null);
|
||||
jContentPane.add(getJTextFieldDefaultValue(), null);
|
||||
jContentPane.add(getJScrollPaneHelpText(), null);
|
||||
jContentPane.add(getJComboBoxItemType(), null);
|
||||
jStarLabel1 = new StarLabel();
|
||||
jStarLabel1.setLocation(new java.awt.Point(0, 10));
|
||||
jStarLabel2 = new StarLabel();
|
||||
jStarLabel2.setLocation(new java.awt.Point(0, 35));
|
||||
jStarLabel3 = new StarLabel();
|
||||
jStarLabel3.setLocation(new java.awt.Point(0, 85));
|
||||
jContentPane.add(jStarLabel1, null);
|
||||
jContentPane.add(jStarLabel2, null);
|
||||
jContentPane.add(jStarLabel3, null);
|
||||
jContentPane.add(jLabelHelpText, null);
|
||||
// jContentPane.add(getJTextFieldHelpText(), null);
|
||||
|
||||
jContentPane.add(jLabelTokenSpaceGuid, null);
|
||||
jContentPane.add(getJTextFieldTokenSpaceGuid(), null);
|
||||
jContentPane.add(jLabelFeatureFlag, null);
|
||||
jContentPane.add(getJTextFieldFeatureFlag(), null);
|
||||
jContentPane.add(jLabelArch, null);
|
||||
jContentPane.add(jArchCheckBox, null);
|
||||
jContentPane.add(getJButtonOk(), null);
|
||||
jContentPane.add(getJButtonCancel(), null);
|
||||
}
|
||||
return jContentPane;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes Usage type, Item type and Datum type
|
||||
|
||||
**/
|
||||
private void initFrame() {
|
||||
for (int index = 0; index < pcd.size(); index++) {
|
||||
jComboBoxCName.addItem(pcd.getPcd(index));
|
||||
}
|
||||
|
||||
//Tools.generateComboBoxByVector(jComboBoxItemType, ed.getVPcdItemTypes());
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
|
||||
*
|
||||
* Override actionPerformed to listen all actions
|
||||
*
|
||||
*/
|
||||
public void actionPerformed(ActionEvent arg0) {
|
||||
if (arg0.getSource() == jButtonOk) {
|
||||
if (checkAdd()) {
|
||||
getCurrentPcdCoded();
|
||||
this.returnType = DataType.RETURN_TYPE_OK;
|
||||
this.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
if (arg0.getSource() == jButtonCancel) {
|
||||
this.returnType = DataType.RETURN_TYPE_CANCEL;
|
||||
this.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
Data validation for all fields
|
||||
|
||||
@retval true - All datas are valid
|
||||
@retval false - At least one data is invalid
|
||||
|
||||
**/
|
||||
public boolean checkAdd() {
|
||||
//
|
||||
// Check if all fields have correct data types
|
||||
//
|
||||
|
||||
//
|
||||
// Check C_Name
|
||||
//
|
||||
if (!isEmpty(this.jComboBoxCName.getSelectedItem().toString())) {
|
||||
if (!DataValidation.isC_NameType(this.jComboBoxCName.getSelectedItem().toString())) {
|
||||
Log.wrn("Update PcdCoded", "Incorrect data type for C Name");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Check TokenSpaceGuid
|
||||
//
|
||||
if (!isEmpty(this.jTextFieldTokenSpaceGuid.getText())) {
|
||||
if (!DataValidation.isC_NameType(this.jTextFieldTokenSpaceGuid.getText())) {
|
||||
Log.wrn("Update PcdCoded", "Incorrect data type for the selected pcd entry, please check in in spd file");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Check DefaultValue
|
||||
//
|
||||
if (!isEmpty(this.jTextFieldDefaultValue.getText())) {
|
||||
if (!DataValidation.isDefaultValueType(this.jTextFieldDefaultValue.getText())) {
|
||||
Log.wrn("Update PcdCoded", "Incorrect data type for Default Value");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Check HelpText
|
||||
//
|
||||
if (isEmpty(this.jTextAreaHelpText.getText())) {
|
||||
Log.wrn("Update PcdCoded", "Help Text should not be empty");
|
||||
return false;
|
||||
}
|
||||
|
||||
//
|
||||
// Check FeatureFlag
|
||||
//
|
||||
if (!isEmpty(this.jTextFieldFeatureFlag.getText())) {
|
||||
if (!DataValidation.isFeatureFlag(this.jTextFieldFeatureFlag.getText())) {
|
||||
Log.wrn("Update PcdCoded", "Incorrect data type for Feature Flag");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private PcdCodedIdentification getCurrentPcdCoded() {
|
||||
String arg0 = this.jComboBoxCName.getSelectedItem().toString();
|
||||
String arg1 = this.jTextFieldTokenSpaceGuid.getText();
|
||||
|
||||
String arg2 = this.jTextFieldFeatureFlag.getText();
|
||||
Vector<String> arg3 = this.jArchCheckBox.getSelectedItemsVector();
|
||||
|
||||
String arg4 = this.jTextFieldDefaultValue.getText();
|
||||
String arg5 = this.jTextAreaHelpText.getText();
|
||||
String arg6 = this.jComboBoxItemType.getSelectedItem().toString();
|
||||
id = new PcdCodedIdentification(arg0, arg1, arg2, arg3, arg4, arg5, arg6);
|
||||
return id;
|
||||
}
|
||||
|
||||
public PcdCodedIdentification getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(PcdCodedIdentification id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see java.awt.event.ItemListener#itemStateChanged(java.awt.event.ItemEvent)
|
||||
*
|
||||
* Reflesh the frame when selected item changed
|
||||
*
|
||||
*/
|
||||
public void itemStateChanged(ItemEvent arg0) {
|
||||
int index = this.jComboBoxCName.getSelectedIndex();
|
||||
if (arg0.getSource() == this.jComboBoxCName && arg0.getStateChange() == ItemEvent.SELECTED ) {
|
||||
if (pcd.getPcd(index).getGuidCName() == null || isEmpty(pcd.getPcd(index).getGuidCName())
|
||||
|| pcd.getPcd(index).getType() == null || pcd.getPcd(index).getHelp() == null || isEmpty(pcd.getPcd(index).getHelp())) {
|
||||
Log.wrn("select pcd entry when editing msa", "The selected is defined incorrectly.\r\nPlease check it in spd file");
|
||||
} else {
|
||||
this.jTextFieldTokenSpaceGuid.setText(pcd.getPcd(index).getGuidCName());
|
||||
Tools.generateComboBoxByVector(this.jComboBoxItemType, pcd.getPcd(index).getType());
|
||||
this.jTextAreaHelpText.setText(pcd.getPcd(index).getHelp());
|
||||
this.jTextAreaHelpText.setSelectionStart(0);
|
||||
this.jTextAreaHelpText.setSelectionEnd(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,6 +25,7 @@ import javax.swing.JLabel;
|
|||
import javax.swing.JPanel;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.JTextField;
|
||||
import javax.swing.JTextArea;
|
||||
|
||||
import org.tianocore.frameworkwizard.common.DataType;
|
||||
import org.tianocore.frameworkwizard.common.DataValidation;
|
||||
|
@ -39,394 +40,436 @@ import org.tianocore.frameworkwizard.module.Identifications.Ppis.PpisIdentificat
|
|||
import org.tianocore.frameworkwizard.workspace.WorkspaceTools;
|
||||
|
||||
/**
|
||||
The class is used to create, update Ppi of MSA/MBD file
|
||||
It extends IInternalFrame
|
||||
|
||||
**/
|
||||
* The class is used to create, update Ppi of MSA/MBD file It extends
|
||||
* IInternalFrame
|
||||
*
|
||||
*/
|
||||
public class PpisDlg extends IDialog implements ItemListener {
|
||||
|
||||
///
|
||||
/// Define class Serial Version UID
|
||||
///
|
||||
private static final long serialVersionUID = -4284901202357037724L;
|
||||
// /
|
||||
// / Define class Serial Version UID
|
||||
// /
|
||||
private static final long serialVersionUID = -4284901202357037724L;
|
||||
|
||||
//
|
||||
// Define class members
|
||||
//
|
||||
private JPanel jContentPane = null;
|
||||
|
||||
private JLabel jLabelC_Name = null;
|
||||
|
||||
private JComboBox jComboBoxCName = null;
|
||||
|
||||
private JTextField jTextFieldFeatureFlag = null;
|
||||
|
||||
private JLabel jLabelFeatureFlag = null;
|
||||
|
||||
private JLabel jLabelUsage = null;
|
||||
|
||||
private JComboBox jComboBoxUsage = null;
|
||||
|
||||
private JLabel jLabelPpiType = null;
|
||||
|
||||
private StarLabel jStarLabel1 = null;
|
||||
|
||||
private StarLabel jStarLabel2 = null;
|
||||
|
||||
private StarLabel jStarLabel3 = null;
|
||||
|
||||
private JComboBox jComboBoxPpiType = null;
|
||||
|
||||
private JLabel jLabelArch = null;
|
||||
|
||||
private JScrollPane jScrollPane = null;
|
||||
|
||||
private JLabel jLabelHelpText = null;
|
||||
|
||||
private JTextArea jTextAreaHelpText = null;
|
||||
|
||||
private JScrollPane jScrollPaneHelpText = null;
|
||||
|
||||
private ArchCheckBox jArchCheckBox = null;
|
||||
|
||||
private JButton jButtonOk = null;
|
||||
|
||||
private JButton jButtonCancel = null;
|
||||
|
||||
//
|
||||
// Not used by UI
|
||||
//
|
||||
private PpisIdentification id = null;
|
||||
|
||||
private WorkspaceTools wt = new WorkspaceTools();
|
||||
|
||||
private EnumerationData ed = new EnumerationData();
|
||||
|
||||
/**
|
||||
* This method initializes jComboBoxPpiType
|
||||
*
|
||||
* @return javax.swing.JComboBox
|
||||
*/
|
||||
private JComboBox getJComboBoxPpiType() {
|
||||
if (jComboBoxPpiType == null) {
|
||||
jComboBoxPpiType = new JComboBox();
|
||||
jComboBoxPpiType.setBounds(new java.awt.Rectangle(160, 10, 320, 20));
|
||||
jComboBoxPpiType.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jComboBoxPpiType.addItemListener(this);
|
||||
jComboBoxPpiType.setToolTipText("<html>PPIs are named by GUID.<br>PPI Notify is consumed via a register PPI Notify mechanism");
|
||||
}
|
||||
return jComboBoxPpiType;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextFieldC_Name
|
||||
*
|
||||
* @return javax.swing.JTextField jTextFieldC_Name
|
||||
*
|
||||
*/
|
||||
private JComboBox getJComboBoxCName() {
|
||||
if (jComboBoxCName == null) {
|
||||
jComboBoxCName = new JComboBox();
|
||||
jComboBoxCName.setBounds(new java.awt.Rectangle(160, 35, 320, 20));
|
||||
jComboBoxCName.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jComboBoxCName.setToolTipText("Select Guid C Name of PPI");
|
||||
}
|
||||
return jComboBoxCName;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jComboBoxUsage
|
||||
*
|
||||
* @return javax.swing.JComboBox jComboBoxUsage
|
||||
*
|
||||
*/
|
||||
private JComboBox getJComboBoxUsage() {
|
||||
if (jComboBoxUsage == null) {
|
||||
jComboBoxUsage = new JComboBox();
|
||||
jComboBoxUsage.setBounds(new java.awt.Rectangle(160, 60, 320, 20));
|
||||
jComboBoxUsage.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jComboBoxUsage.setToolTipText("<html><table><tr><td colspan=2 align=center><b>PPI</b></td></tr><tr><td>ALWAYS_CONSUMED</td><td>Module always consumes the PPI</td></tr><tr><td>SOMETIMES_CONSUMED</td><td>Module sometimes consumes the PPI</td></tr><tr><td>ALWAYS_PRODUCED</td><td>Module always produces the PPI</td></tr><tr><td>SOMETIMES_PRODUCED</td><td>Module sometimes produces the PPI</td></tr><tr><td colspan=2 align=center><b>PPI Notify</b></td></tr><tr><td>SOMETIMES_CONSUMED</td><td>Module will consume the PPI if it is produced. Consumption<br>is defined by executing the PPI notify function</td></tr></table></html>");
|
||||
}
|
||||
return jComboBoxUsage;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextFieldFeatureFlag
|
||||
*
|
||||
* @return javax.swing.JTextField jTextFieldFeatureFlag
|
||||
*
|
||||
*/
|
||||
private JTextField getJTextFieldFeatureFlag() {
|
||||
if (jTextFieldFeatureFlag == null) {
|
||||
jTextFieldFeatureFlag = new JTextField();
|
||||
jTextFieldFeatureFlag
|
||||
.setBounds(new java.awt.Rectangle(160, 130, 320, 20));
|
||||
jTextFieldFeatureFlag.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jTextFieldFeatureFlag
|
||||
.setToolTipText("Postfix expression that must evaluate to TRUE or FALSE");
|
||||
}
|
||||
return jTextFieldFeatureFlag;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jScrollPane
|
||||
*
|
||||
* @return javax.swing.JScrollPane
|
||||
*/
|
||||
private JScrollPane getJScrollPane() {
|
||||
if (jScrollPane == null) {
|
||||
jScrollPane = new JScrollPane();
|
||||
jScrollPane.setViewportView(getJContentPane());
|
||||
}
|
||||
return jScrollPane;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jTextAreaHelpText
|
||||
*
|
||||
* @return javax.swing.JTextArea
|
||||
*
|
||||
*/
|
||||
private JTextArea getJTextAreaHelpText() {
|
||||
if (jTextAreaHelpText == null) {
|
||||
jTextAreaHelpText = new JTextArea();
|
||||
jTextAreaHelpText.setLineWrap(true);
|
||||
jTextAreaHelpText.setWrapStyleWord(true);
|
||||
}
|
||||
return jTextAreaHelpText;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jScrollPaneHelpText
|
||||
*
|
||||
* @return javax.swing.JScrollPane
|
||||
*
|
||||
*/
|
||||
private JScrollPane getJScrollPaneHelpText() {
|
||||
if (jScrollPaneHelpText == null) {
|
||||
jScrollPaneHelpText = new JScrollPane();
|
||||
jScrollPaneHelpText
|
||||
.setHorizontalScrollBarPolicy(javax.swing.JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
|
||||
jScrollPaneHelpText.setSize(new java.awt.Dimension(320, 40));
|
||||
jScrollPaneHelpText.setPreferredSize(new java.awt.Dimension(320, 40));
|
||||
jScrollPaneHelpText.setLocation(new java.awt.Point(160, 85));
|
||||
jScrollPaneHelpText.setViewportView(getJTextAreaHelpText());
|
||||
}
|
||||
return jScrollPaneHelpText;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jButtonOk
|
||||
*
|
||||
* @return javax.swing.JButton
|
||||
*
|
||||
*/
|
||||
private JButton getJButtonOk() {
|
||||
if (jButtonOk == null) {
|
||||
jButtonOk = new JButton();
|
||||
jButtonOk.setBounds(new java.awt.Rectangle(290, 182, 90, 20));
|
||||
jButtonOk.setText("Ok");
|
||||
jButtonOk.addActionListener(this);
|
||||
}
|
||||
return jButtonOk;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jButtonCancel
|
||||
*
|
||||
* @return javax.swing.JButton
|
||||
*
|
||||
*/
|
||||
private JButton getJButtonCancel() {
|
||||
if (jButtonCancel == null) {
|
||||
jButtonCancel = new JButton();
|
||||
jButtonCancel.setBounds(new java.awt.Rectangle(390, 182, 90, 20));
|
||||
jButtonCancel.setText("Cancel");
|
||||
jButtonCancel.addActionListener(this);
|
||||
}
|
||||
return jButtonCancel;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes this
|
||||
*
|
||||
*/
|
||||
private void init() {
|
||||
this.setSize(500, 255);
|
||||
this.setContentPane(getJScrollPane());
|
||||
this.setTitle("PPI Definitions");
|
||||
initFrame();
|
||||
this.centerWindow();
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes this Fill values to all fields if these values are
|
||||
* not empty
|
||||
*
|
||||
* @param inProtocolsId
|
||||
*
|
||||
*/
|
||||
private void init(PpisIdentification inPpisId) {
|
||||
init();
|
||||
this.id = inPpisId;
|
||||
|
||||
if (this.id != null) {
|
||||
this.jComboBoxCName.setSelectedItem(id.getName());
|
||||
this.jComboBoxPpiType.setSelectedItem(id.getType());
|
||||
this.jComboBoxUsage.setSelectedItem(id.getUsage());
|
||||
this.jTextAreaHelpText.setText(id.getHelp());
|
||||
this.jTextFieldFeatureFlag.setText(id.getFeatureFlag());
|
||||
this.jArchCheckBox.setSelectedItems(id.getSupArchList());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This is the override edit constructor
|
||||
*
|
||||
* @param inProtocolsIdentification
|
||||
* @param iFrame
|
||||
*
|
||||
*/
|
||||
public PpisDlg(PpisIdentification inPpisIdentification, IFrame iFrame) {
|
||||
super(iFrame, true);
|
||||
init(inPpisIdentification);
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jContentPane
|
||||
*
|
||||
* @return javax.swing.JPanel jContentPane
|
||||
*
|
||||
*/
|
||||
private JPanel getJContentPane() {
|
||||
if (jContentPane == null) {
|
||||
jStarLabel1 = new StarLabel();
|
||||
jStarLabel1.setLocation(new java.awt.Point(2, 10));
|
||||
jLabelPpiType = new JLabel();
|
||||
jLabelPpiType.setBounds(new java.awt.Rectangle(15, 10, 145, 20));
|
||||
jLabelPpiType.setText("Ppi Type");
|
||||
|
||||
jStarLabel2 = new StarLabel();
|
||||
jStarLabel2.setLocation(new java.awt.Point(2, 35));
|
||||
jLabelC_Name = new JLabel();
|
||||
jLabelC_Name.setText("PPI GUID C Name");
|
||||
jLabelC_Name.setBounds(new java.awt.Rectangle(15, 35, 145, 20));
|
||||
|
||||
jStarLabel3 = new StarLabel();
|
||||
jStarLabel3.setLocation(new java.awt.Point(2, 60));
|
||||
jLabelUsage = new JLabel();
|
||||
jLabelUsage.setText("Usage");
|
||||
jLabelUsage.setBounds(new java.awt.Rectangle(15, 60, 145, 20));
|
||||
|
||||
jLabelHelpText = new JLabel();
|
||||
jLabelHelpText.setBounds(new java.awt.Rectangle(14, 85, 145, 20));
|
||||
jLabelHelpText.setText("Help Text");
|
||||
|
||||
jLabelFeatureFlag = new JLabel();
|
||||
jLabelFeatureFlag.setText("Feature Flag");
|
||||
jLabelFeatureFlag.setBounds(new java.awt.Rectangle(15, 130, 145, 20));
|
||||
|
||||
jLabelArch = new JLabel();
|
||||
jLabelArch.setBounds(new java.awt.Rectangle(15, 155, 145, 20));
|
||||
jLabelArch.setText("Arch");
|
||||
jArchCheckBox = new ArchCheckBox();
|
||||
jArchCheckBox.setBounds(new java.awt.Rectangle(160, 155, 320, 20));
|
||||
jArchCheckBox.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
|
||||
jContentPane = new JPanel();
|
||||
jContentPane.setLayout(null);
|
||||
jContentPane.setPreferredSize(new java.awt.Dimension(485, 210));
|
||||
|
||||
jContentPane.add(jStarLabel1, null);
|
||||
jContentPane.add(jLabelPpiType, null);
|
||||
jContentPane.add(getJComboBoxPpiType(), null);
|
||||
jContentPane.add(jStarLabel2, null);
|
||||
jContentPane.add(jLabelC_Name, null);
|
||||
jContentPane.add(getJComboBoxCName(), null);
|
||||
jContentPane.add(jStarLabel3, null);
|
||||
jContentPane.add(jLabelUsage, null);
|
||||
jContentPane.add(getJComboBoxUsage(), null);
|
||||
jContentPane.add(jLabelHelpText, null);
|
||||
jContentPane.add(getJScrollPaneHelpText(), null);
|
||||
jContentPane.add(jLabelFeatureFlag, null);
|
||||
jContentPane.add(getJTextFieldFeatureFlag(), null);
|
||||
jContentPane.add(jLabelArch, null);
|
||||
jContentPane.add(jArchCheckBox, null);
|
||||
jContentPane.add(getJButtonOk(), null);
|
||||
jContentPane.add(getJButtonCancel(), null);
|
||||
}
|
||||
return jContentPane;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes Usage type
|
||||
*
|
||||
*/
|
||||
private void initFrame() {
|
||||
Tools.generateComboBoxByVector(jComboBoxCName, wt
|
||||
.getAllPpiDeclarationsFromWorkspace());
|
||||
Tools.generateComboBoxByVector(jComboBoxPpiType, ed.getVPpiType());
|
||||
Tools.generateComboBoxByVector(jComboBoxUsage, ed.getVPpiUsage());
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
|
||||
*
|
||||
* Override actionPerformed to listen all actions
|
||||
*
|
||||
*/
|
||||
public void actionPerformed(ActionEvent arg0) {
|
||||
if (arg0.getSource() == jButtonOk) {
|
||||
if (checkAdd()) {
|
||||
getCurrentPpis();
|
||||
this.returnType = DataType.RETURN_TYPE_OK;
|
||||
this.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
if (arg0.getSource() == jButtonCancel) {
|
||||
this.returnType = DataType.RETURN_TYPE_CANCEL;
|
||||
this.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Data validation for all fields
|
||||
*
|
||||
* @retval true - All datas are valid
|
||||
* @retval false - At least one data is invalid
|
||||
*
|
||||
*/
|
||||
public boolean checkAdd() {
|
||||
//
|
||||
// Check if all fields have correct data types
|
||||
//
|
||||
|
||||
//
|
||||
//Define class members
|
||||
// Check Name
|
||||
//
|
||||
private JPanel jContentPane = null;
|
||||
|
||||
private JLabel jLabelC_Name = null;
|
||||
|
||||
private JComboBox jComboBoxCName = null;
|
||||
|
||||
private JTextField jTextFieldFeatureFlag = null;
|
||||
|
||||
private JLabel jLabelFeatureFlag = null;
|
||||
|
||||
private JLabel jLabelUsage = null;
|
||||
|
||||
private JComboBox jComboBoxUsage = null;
|
||||
|
||||
private JLabel jLabelPpiType = null;
|
||||
|
||||
private StarLabel jStarLabel1 = null;
|
||||
|
||||
private StarLabel jStarLabel2 = null;
|
||||
|
||||
private JComboBox jComboBoxPpiType = null;
|
||||
|
||||
private JLabel jLabelArch = null;
|
||||
|
||||
private JScrollPane jScrollPane = null;
|
||||
|
||||
private JLabel jLabelHelpText = null;
|
||||
|
||||
private JTextField jTextFieldHelpText = null;
|
||||
|
||||
private ArchCheckBox jArchCheckBox = null;
|
||||
|
||||
private JButton jButtonOk = null;
|
||||
|
||||
private JButton jButtonCancel = null;
|
||||
if (!isEmpty(this.jComboBoxCName.getSelectedItem().toString())) {
|
||||
if (!DataValidation.isC_NameType(this.jComboBoxCName.getSelectedItem()
|
||||
.toString())) {
|
||||
Log.wrn("Update Ppis", "Incorrect data type for Ppi/PpiNotify Name");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Not used by UI
|
||||
// Check FeatureFlag
|
||||
//
|
||||
private PpisIdentification id = null;
|
||||
|
||||
private WorkspaceTools wt = new WorkspaceTools();
|
||||
|
||||
private EnumerationData ed = new EnumerationData();
|
||||
|
||||
/**
|
||||
This method initializes jTextFieldC_Name
|
||||
|
||||
@return javax.swing.JTextField jTextFieldC_Name
|
||||
|
||||
**/
|
||||
private JComboBox getJComboBoxCName() {
|
||||
if (jComboBoxCName == null) {
|
||||
jComboBoxCName = new JComboBox();
|
||||
jComboBoxCName.setBounds(new java.awt.Rectangle(160, 35, 320, 20));
|
||||
jComboBoxCName.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jComboBoxCName;
|
||||
if (!isEmpty(this.jTextFieldFeatureFlag.getText())) {
|
||||
if (!DataValidation.isFeatureFlag(this.jTextFieldFeatureFlag.getText())) {
|
||||
Log.wrn("Update Ppis", "Incorrect data type for Feature Flag");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jTextFieldFeatureFlag
|
||||
|
||||
@return javax.swing.JTextField jTextFieldFeatureFlag
|
||||
|
||||
**/
|
||||
private JTextField getJTextFieldFeatureFlag() {
|
||||
if (jTextFieldFeatureFlag == null) {
|
||||
jTextFieldFeatureFlag = new JTextField();
|
||||
jTextFieldFeatureFlag.setBounds(new java.awt.Rectangle(160, 110, 320, 20));
|
||||
jTextFieldFeatureFlag.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jTextFieldFeatureFlag;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jComboBox
|
||||
|
||||
@return javax.swing.JComboBox jComboBoxUsage
|
||||
|
||||
**/
|
||||
private JComboBox getJComboBox() {
|
||||
if (jComboBoxUsage == null) {
|
||||
jComboBoxUsage = new JComboBox();
|
||||
jComboBoxUsage.setBounds(new java.awt.Rectangle(160, 60, 320, 20));
|
||||
jComboBoxUsage.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jComboBoxUsage;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method initializes jComboBoxPpiType
|
||||
*
|
||||
* @return javax.swing.JComboBox
|
||||
*/
|
||||
private JComboBox getJComboBoxPpiType() {
|
||||
if (jComboBoxPpiType == null) {
|
||||
jComboBoxPpiType = new JComboBox();
|
||||
jComboBoxPpiType.setBounds(new java.awt.Rectangle(160, 10, 320, 20));
|
||||
jComboBoxPpiType.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jComboBoxPpiType.addItemListener(this);
|
||||
}
|
||||
return jComboBoxPpiType;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jScrollPane
|
||||
|
||||
@return javax.swing.JScrollPane
|
||||
*/
|
||||
private JScrollPane getJScrollPane() {
|
||||
if (jScrollPane == null) {
|
||||
jScrollPane = new JScrollPane();
|
||||
jScrollPane.setViewportView(getJContentPane());
|
||||
}
|
||||
return jScrollPane;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jTextFieldHelpText
|
||||
|
||||
@return javax.swing.JTextField
|
||||
|
||||
**/
|
||||
private JTextField getJTextFieldHelpText() {
|
||||
if (jTextFieldHelpText == null) {
|
||||
jTextFieldHelpText = new JTextField();
|
||||
jTextFieldHelpText.setBounds(new java.awt.Rectangle(160, 85, 320, 20));
|
||||
jTextFieldHelpText.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
}
|
||||
return jTextFieldHelpText;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jButtonOk
|
||||
|
||||
@return javax.swing.JButton
|
||||
|
||||
**/
|
||||
private JButton getJButtonOk() {
|
||||
if (jButtonOk == null) {
|
||||
jButtonOk = new JButton();
|
||||
jButtonOk.setBounds(new java.awt.Rectangle(290, 165, 90, 20));
|
||||
jButtonOk.setText("Ok");
|
||||
jButtonOk.addActionListener(this);
|
||||
}
|
||||
return jButtonOk;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jButtonCancel
|
||||
|
||||
@return javax.swing.JButton
|
||||
|
||||
**/
|
||||
private JButton getJButtonCancel() {
|
||||
if (jButtonCancel == null) {
|
||||
jButtonCancel = new JButton();
|
||||
jButtonCancel.setBounds(new java.awt.Rectangle(390, 165, 90, 20));
|
||||
jButtonCancel.setText("Cancel");
|
||||
jButtonCancel.addActionListener(this);
|
||||
}
|
||||
return jButtonCancel;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes this
|
||||
|
||||
**/
|
||||
private void init() {
|
||||
this.setSize(510, 240);
|
||||
this.setContentPane(getJScrollPane());
|
||||
this.setTitle("Ppis");
|
||||
initFrame();
|
||||
this.centerWindow();
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes this
|
||||
Fill values to all fields if these values are not empty
|
||||
|
||||
@param inProtocolsId
|
||||
|
||||
**/
|
||||
private void init(PpisIdentification inPpisId) {
|
||||
init();
|
||||
this.id = inPpisId;
|
||||
|
||||
if (this.id != null) {
|
||||
this.jComboBoxCName.setSelectedItem(id.getName());
|
||||
this.jComboBoxPpiType.setSelectedItem(id.getType());
|
||||
this.jComboBoxUsage.setSelectedItem(id.getUsage());
|
||||
this.jTextFieldHelpText.setText(id.getHelp());
|
||||
this.jTextFieldFeatureFlag.setText(id.getFeatureFlag());
|
||||
this.jArchCheckBox.setSelectedItems(id.getSupArchList());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
This is the override edit constructor
|
||||
|
||||
@param inProtocolsIdentification
|
||||
@param iFrame
|
||||
|
||||
**/
|
||||
public PpisDlg(PpisIdentification inPpisIdentification, IFrame iFrame) {
|
||||
super(iFrame, true);
|
||||
init(inPpisIdentification);
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes jContentPane
|
||||
|
||||
@return javax.swing.JPanel jContentPane
|
||||
|
||||
**/
|
||||
private JPanel getJContentPane() {
|
||||
if (jContentPane == null) {
|
||||
jArchCheckBox = new ArchCheckBox();
|
||||
jArchCheckBox.setBounds(new java.awt.Rectangle(160, 135, 320, 20));
|
||||
jArchCheckBox.setPreferredSize(new java.awt.Dimension(320, 20));
|
||||
jLabelArch = new JLabel();
|
||||
jLabelArch.setBounds(new java.awt.Rectangle(15, 135, 140, 20));
|
||||
jLabelArch.setText("Arch");
|
||||
jLabelPpiType = new JLabel();
|
||||
jLabelPpiType.setBounds(new java.awt.Rectangle(15, 10, 140, 20));
|
||||
jLabelPpiType.setText("Ppi Type");
|
||||
jLabelUsage = new JLabel();
|
||||
jLabelUsage.setText("Usage");
|
||||
jLabelUsage.setBounds(new java.awt.Rectangle(15, 60, 140, 20));
|
||||
jLabelFeatureFlag = new JLabel();
|
||||
jLabelFeatureFlag.setText("Feature Flag");
|
||||
jLabelFeatureFlag.setBounds(new java.awt.Rectangle(15, 110, 140, 20));
|
||||
jLabelC_Name = new JLabel();
|
||||
jLabelC_Name.setText("C Name Type");
|
||||
jLabelC_Name.setBounds(new java.awt.Rectangle(15, 35, 140, 20));
|
||||
jLabelHelpText = new JLabel();
|
||||
jLabelHelpText.setBounds(new java.awt.Rectangle(14, 85, 140, 20));
|
||||
jLabelHelpText.setText("Help Text");
|
||||
|
||||
jContentPane = new JPanel();
|
||||
jContentPane.setLayout(null);
|
||||
jContentPane.setPreferredSize(new java.awt.Dimension(490, 190));
|
||||
|
||||
jContentPane.add(jLabelC_Name, null);
|
||||
jContentPane.add(getJComboBoxCName(), null);
|
||||
jContentPane.add(getJTextFieldFeatureFlag(), null);
|
||||
jContentPane.add(jLabelFeatureFlag, null);
|
||||
jContentPane.add(jLabelUsage, null);
|
||||
jContentPane.add(getJComboBox(), null);
|
||||
jContentPane.add(getJComboBoxPpiType(), null);
|
||||
jContentPane.add(jLabelArch, null);
|
||||
jContentPane.add(jLabelPpiType, null);
|
||||
jStarLabel1 = new StarLabel();
|
||||
jStarLabel1.setBounds(new java.awt.Rectangle(0, 10, 10, 20));
|
||||
jStarLabel2 = new StarLabel();
|
||||
jStarLabel2.setBounds(new java.awt.Rectangle(0, 35, 10, 20));
|
||||
|
||||
jContentPane.add(jStarLabel1, null);
|
||||
jContentPane.add(jStarLabel2, null);
|
||||
|
||||
jContentPane.add(jLabelHelpText, null);
|
||||
jContentPane.add(getJTextFieldHelpText(), null);
|
||||
jContentPane.add(jArchCheckBox, null);
|
||||
jContentPane.add(getJButtonOk(), null);
|
||||
jContentPane.add(getJButtonCancel(), null);
|
||||
}
|
||||
return jContentPane;
|
||||
}
|
||||
|
||||
/**
|
||||
This method initializes Usage type
|
||||
|
||||
**/
|
||||
private void initFrame() {
|
||||
Tools.generateComboBoxByVector(jComboBoxCName, wt.getAllPpiDeclarationsFromWorkspace());
|
||||
Tools.generateComboBoxByVector(jComboBoxPpiType, ed.getVPpiType());
|
||||
Tools.generateComboBoxByVector(jComboBoxUsage, ed.getVPpiUsage());
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
|
||||
*
|
||||
* Override actionPerformed to listen all actions
|
||||
*
|
||||
*/
|
||||
public void actionPerformed(ActionEvent arg0) {
|
||||
if (arg0.getSource() == jButtonOk) {
|
||||
if (checkAdd()) {
|
||||
getCurrentPpis();
|
||||
this.returnType = DataType.RETURN_TYPE_OK;
|
||||
this.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
if (arg0.getSource() == jButtonCancel) {
|
||||
this.returnType = DataType.RETURN_TYPE_CANCEL;
|
||||
this.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
Data validation for all fields
|
||||
|
||||
@retval true - All datas are valid
|
||||
@retval false - At least one data is invalid
|
||||
|
||||
**/
|
||||
public boolean checkAdd() {
|
||||
//
|
||||
// Check if all fields have correct data types
|
||||
//
|
||||
|
||||
//
|
||||
// Check Name
|
||||
//
|
||||
if (!isEmpty(this.jComboBoxCName.getSelectedItem().toString())) {
|
||||
if (!DataValidation.isC_NameType(this.jComboBoxCName.getSelectedItem().toString())) {
|
||||
Log.wrn("Update Ppis", "Incorrect data type for Ppi/PpiNotify Name");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Check FeatureFlag
|
||||
//
|
||||
if (!isEmpty(this.jTextFieldFeatureFlag.getText())) {
|
||||
if (!DataValidation.isFeatureFlag(this.jTextFieldFeatureFlag.getText())) {
|
||||
Log.wrn("Update Ppis", "Incorrect data type for Feature Flag");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private PpisIdentification getCurrentPpis() {
|
||||
private PpisIdentification getCurrentPpis() {
|
||||
String arg0 = this.jComboBoxCName.getSelectedItem().toString();
|
||||
String arg1 = this.jComboBoxPpiType.getSelectedItem().toString();
|
||||
String arg2 = this.jComboBoxUsage.getSelectedItem().toString();
|
||||
|
||||
String arg3 = this.jTextFieldFeatureFlag.getText();
|
||||
Vector<String> arg4 = this.jArchCheckBox.getSelectedItemsVector();
|
||||
String arg5 = this.jTextFieldHelpText.getText();
|
||||
String arg5 = this.jTextAreaHelpText.getText();
|
||||
|
||||
id = new PpisIdentification(arg0, arg1, arg2, arg3, arg4, arg5);
|
||||
return id;
|
||||
} /*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see java.awt.event.ItemListener#itemStateChanged(java.awt.event.ItemEvent)
|
||||
*
|
||||
* Reflesh the frame when selected item changed
|
||||
*
|
||||
*/
|
||||
public void itemStateChanged(ItemEvent arg0) {
|
||||
if (arg0.getSource() == this.jComboBoxPpiType
|
||||
&& arg0.getStateChange() == ItemEvent.SELECTED) {
|
||||
if (this.jComboBoxPpiType.getSelectedItem().toString().equals(
|
||||
ed.getVPpiType().get(0))) {
|
||||
Tools.generateComboBoxByVector(this.jComboBoxUsage, ed.getVPpiUsage());
|
||||
} else {
|
||||
Tools.generateComboBoxByVector(this.jComboBoxUsage, ed
|
||||
.getVPpiNotifyUsage());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see java.awt.event.ItemListener#itemStateChanged(java.awt.event.ItemEvent)
|
||||
*
|
||||
* Reflesh the frame when selected item changed
|
||||
*
|
||||
*/
|
||||
public void itemStateChanged(ItemEvent arg0) {
|
||||
if (arg0.getSource() == this.jComboBoxPpiType && arg0.getStateChange() == ItemEvent.SELECTED) {
|
||||
if (this.jComboBoxPpiType.getSelectedItem().toString().equals(ed.getVPpiType().get(0))) {
|
||||
Tools.generateComboBoxByVector(this.jComboBoxUsage, ed.getVPpiUsage());
|
||||
} else {
|
||||
Tools.generateComboBoxByVector(this.jComboBoxUsage, ed.getVPpiNotifyUsage());
|
||||
}
|
||||
}
|
||||
}
|
||||
public PpisIdentification getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public PpisIdentification getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(PpisIdentification id) {
|
||||
this.id = id;
|
||||
}
|
||||
public void setId(PpisIdentification id) {
|
||||
this.id = id;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue