X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=Tools%2FSource%2FFrameworkWizard%2Fsrc%2Forg%2Ftianocore%2Fframeworkwizard%2Fmodule%2Fui%2Fdialog%2FProtocolsDlg.java;h=5e171edc8f53183fa66f2dcc80081ba930c7c350;hp=6a794f41fed787b68129a1977cb7c3ea301f53c4;hb=7ab6baa9de2937578a96719eeaba0b4706bd8579;hpb=5b38b75ba698d5815ccee4e10d335ef1273e2830 diff --git a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/module/ui/dialog/ProtocolsDlg.java b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/module/ui/dialog/ProtocolsDlg.java index 6a794f41fe..5e171edc8f 100644 --- a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/module/ui/dialog/ProtocolsDlg.java +++ b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/module/ui/dialog/ProtocolsDlg.java @@ -26,6 +26,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; @@ -40,413 +41,459 @@ import org.tianocore.frameworkwizard.module.Identifications.Protocols.ProtocolsI import org.tianocore.frameworkwizard.workspace.WorkspaceTools; /** - The class is used to create, update Protocol of MSA/MBD file - It extends IInternalFrame - + * The class is used to create, update Protocol of MSA/MBD file + * It extends JDialog + * + */ +public class ProtocolsDlg extends IDialog implements ItemListener { + // / + // / Define class Serial Version UID + // / + private static final long serialVersionUID = -9084913640747858848L; - **/ -public class ProtocolsDlg extends IDialog implements ItemListener { + // + // Define class members + // + private JPanel jContentPane = null; - /// - /// Define class Serial Version UID - /// - private static final long serialVersionUID = -9084913640747858848L; + private JLabel jLabelC_Name = null; - // - //Define class members - // - private JPanel jContentPane = null; + private JLabel jLabelFeatureFlag = null; - private JLabel jLabelC_Name = null; + private JTextField jTextFieldFeatureFlag = null; - private JLabel jLabelFeatureFlag = null; + private JLabel jLabelUsage = null; - private JTextField jTextFieldFeatureFlag = null; + private JComboBox jComboBoxUsage = null; - private JLabel jLabelUsage = null; + private StarLabel jStarLabel1 = null; - private JComboBox jComboBoxUsage = null; + private StarLabel jStarLabel2 = null; - private StarLabel jStarLabel1 = null; + private StarLabel jStarLabel3 = null; - private StarLabel jStarLabel2 = null; + private JLabel jLabelProtocolType = null; - private JLabel jLabelProtocolType = null; + private JLabel jLabelArch = null; - private JLabel jLabelArch = null; + private JScrollPane jScrollPane = null; - private JScrollPane jScrollPane = null; + private JComboBox jComboBoxProtocolType = null; - private JComboBox jComboBoxProtocolType = null; + private JComboBox jComboBoxCName = null; - private JComboBox jComboBoxCName = null; + private JLabel jLabelHelpText = null; - private JLabel jLabelHelpText = null; + private JTextArea jTextAreaHelpText = null; - private JTextField jTextFieldHelpText = null; + private JScrollPane jScrollPaneHelpText = null; - private ArchCheckBox jArchCheckBox = null; - - private JButton jButtonOk = null; + private ArchCheckBox jArchCheckBox = null; - private JButton jButtonCancel = null; + private JButton jButtonOk = null; - // - // Not used by UI - // - private ProtocolsIdentification id = null; - - private WorkspaceTools wt = new WorkspaceTools(); - - private EnumerationData ed = new EnumerationData(); - - /** - 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; - } + private JButton jButtonCancel = null; - /** - This method initializes jComboBoxUsage - - @return javax.swing.JComboBox jComboBoxUsage - - **/ - private JComboBox getJComboBoxProtocolUsage() { - 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("ALWAYS_CONSUMED is the only valid usage for type ProtocolNotify."); - } - return jComboBoxUsage; - } + // + // Not used by UI + // + private ProtocolsIdentification id = null; - /** - This method initializes jScrollPane - - @return javax.swing.JScrollPane - */ - private JScrollPane getJScrollPane() { - if (jScrollPane == null) { - jScrollPane = new JScrollPane(); - jScrollPane.setViewportView(getJContentPane()); - } - return jScrollPane; - } + private WorkspaceTools wt = new WorkspaceTools(); - /** - * This method initializes jComboBoxProtocolType - * - * @return javax.swing.JComboBox - */ - private JComboBox getJComboBoxProtocolType() { - if (jComboBoxProtocolType == null) { - jComboBoxProtocolType = new JComboBox(); - jComboBoxProtocolType.setBounds(new java.awt.Rectangle(160, 10, 320, 20)); - jComboBoxProtocolType.setPreferredSize(new java.awt.Dimension(320, 20)); - jComboBoxProtocolType.addItemListener(this); - jComboBoxProtocolType.setToolTipText("Select Protocol Type
Protocol Notify is a register protocol notify mechanism."); - } - return jComboBoxProtocolType; - } + private EnumerationData ed = new EnumerationData(); - /** - * This method initializes jComboBoxCName - * - * @return javax.swing.JComboBox - */ - 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 the Protocol"); - - } - return jComboBoxCName; + /** + * 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"); } - - /** - 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; + return jTextFieldFeatureFlag; + } + + /** + * This method initializes jComboBoxUsage + * + * @return javax.swing.JComboBox jComboBoxUsage + * + */ + private JComboBox getJComboBoxProtocolUsage() { + 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("
Protocol
ALWAYS_CONSUMEDModule always consumes the protocol
SOMETIMES_CONSUMESModule sometimes consumes the protocol
ALWAYS_PRODUCEDModule always produces the protocol
SOMETIMES_PRODUCEDModule sometimes produces the protocol
TO_STARTThe protocol is consumed by a Driver Binding protocol Start
function. The protocol is used in EFI 1.10 driver model
BY_STARTProtocol is produced by a Driver Binding protocol Start
function. The protocol is used in EFI 1.10 driver model
Protocol Notify
SOMETIMES_CONSUMEDModule will consume the protocol if it is produced.
Consumption is defined by executing the protocol notify
function.
"); } - - /** - 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; + return jComboBoxUsage; + } + + /** + * This method initializes jScrollPane + * + * @return javax.swing.JScrollPane + */ + private JScrollPane getJScrollPane() { + if (jScrollPane == null) { + jScrollPane = new JScrollPane(); + jScrollPane.setViewportView(getJContentPane()); } - - /** - 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; + return jScrollPane; + } + + /** + * This method initializes jComboBoxProtocolType + * + * @return javax.swing.JComboBox + */ + private JComboBox getJComboBoxProtocolType() { + if (jComboBoxProtocolType == null) { + jComboBoxProtocolType = new JComboBox(); + jComboBoxProtocolType.setBounds(new java.awt.Rectangle(160, 10, 320, 20)); + jComboBoxProtocolType.setPreferredSize(new java.awt.Dimension(320, 20)); + jComboBoxProtocolType.addItemListener(this); + jComboBoxProtocolType + .setToolTipText("Select Protocol Type
Protocol Notify is a register protocol notify mechanism."); } - - public static void main(String[] args) { + return jComboBoxProtocolType; + } + + /** + * This method initializes jComboBoxCName + * + * @return javax.swing.JComboBox + */ + 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 the Protocol"); } - - /** - This method initializes this - - **/ - private void init() { - this.setSize(510, 240); - this.setContentPane(getJScrollPane()); - this.setTitle("Protocols"); - initFrame(); - this.setViewMode(false); - this.centerWindow(); + return jComboBoxCName; + } + + /** + * This method initializes jTextAreaHelpText + * + * @return javax.swing.JTextArea + * + */ + private JTextArea getJTextAreaHelpText() { + if (jTextAreaHelpText == null) { + jTextAreaHelpText = new JTextArea(); + jTextAreaHelpText.setLineWrap(true); + jTextAreaHelpText.setWrapStyleWord(true); } - - /** - This method initializes this - Fill values to all fields if these values are not empty - - @param inProtocolsId - - **/ - private void init(ProtocolsIdentification inProtocolsId) { - init(); - this.id = inProtocolsId; - - if (this.id != null) { - this.jComboBoxCName.setSelectedItem(id.getName()); - this.jComboBoxProtocolType.setSelectedItem(id.getType()); - this.jComboBoxUsage.setSelectedItem(id.getUsage()); - this.jTextFieldHelpText.setText(id.getHelp()); - - jTextFieldFeatureFlag.setText(id.getFeatureFlag()); - this.jArchCheckBox.setSelectedItems(id.getSupArchList()); - } + 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()); } - - /** - This is the override edit constructor - - @param inProtocolsIdentification - @param iFrame - - **/ - public ProtocolsDlg(ProtocolsIdentification inProtocolsIdentification, IFrame iFrame) { - super(iFrame, true); - init(inProtocolsIdentification); + 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); } - - /** - 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.jComboBoxUsage.setEnabled(!isView); - this.jTextFieldFeatureFlag.setEnabled(!isView); - } + 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); } - - /** - 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)); - jLabelHelpText = new JLabel(); - jLabelHelpText.setBounds(new java.awt.Rectangle(14, 85, 140, 20)); - jLabelHelpText.setText("Help Text"); - jLabelArch = new JLabel(); - jLabelArch.setBounds(new java.awt.Rectangle(15, 135, 140, 20)); - jLabelArch.setText("Arch Type"); - jLabelProtocolType = new JLabel(); - jLabelProtocolType.setBounds(new java.awt.Rectangle(15, 10, 140, 20)); - jLabelProtocolType.setText("Protocol 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)); - - jContentPane = new JPanel(); - jContentPane.setLayout(null); - jContentPane.setPreferredSize(new java.awt.Dimension(490, 190)); - - jContentPane.add(jLabelC_Name, null); - jContentPane.add(jLabelFeatureFlag, null); - jContentPane.add(getJTextFieldFeatureFlag(), null); - jContentPane.add(jLabelUsage, null); - jContentPane.add(getJComboBoxProtocolUsage(), null); - jContentPane.add(jLabelProtocolType, 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(jLabelArch, null); - jContentPane.add(getJComboBoxProtocolType(), null); - jContentPane.add(getJComboBoxCName(), null); - jContentPane.add(jLabelHelpText, null); - jContentPane.add(getJTextFieldHelpText(), null); - jContentPane.add(jArchCheckBox, null); - jContentPane.add(getJButtonOk(), null); - jContentPane.add(getJButtonCancel(), null); - } - return jContentPane; + return jButtonCancel; + } + + public static void main(String[] args) { + + } + + /** + * This method initializes this + * + */ + private void init() { + this.setSize(500, 255); + this.setContentPane(getJScrollPane()); + this.setTitle("Protocols"); + initFrame(); + this.setViewMode(false); + this.centerWindow(); + } + + /** + * This method initializes this Fill values to all fields if these values are + * not empty + * + * @param inProtocolsId + * + */ + private void init(ProtocolsIdentification inProtocolsId) { + init(); + this.id = inProtocolsId; + + if (this.id != null) { + this.jComboBoxCName.setSelectedItem(id.getName()); + this.jComboBoxProtocolType.setSelectedItem(id.getType()); + this.jComboBoxUsage.setSelectedItem(id.getUsage()); + this.jTextAreaHelpText.setText(id.getHelp()); + this.jTextFieldFeatureFlag.setText(id.getFeatureFlag()); + this.jArchCheckBox.setSelectedItems(id.getSupArchList()); } - - /** - This method initializes Usage type - - **/ - private void initFrame() { - Tools.generateComboBoxByVector(jComboBoxProtocolType, ed.getVProtocolType()); - Tools.generateComboBoxByVector(jComboBoxCName, wt.getAllProtocolDeclarationsFromWorkspace()); - Tools.generateComboBoxByVector(jComboBoxUsage, ed.getVProtocolUsage()); + } + + /** + * This is the override edit constructor + * + * @param inProtocolsIdentification + * @param iFrame + * + */ + public ProtocolsDlg(ProtocolsIdentification inProtocolsIdentification, + IFrame iFrame) { + super(iFrame, true); + init(inProtocolsIdentification); + } + + /** + * 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.jComboBoxUsage.setEnabled(!isView); + this.jTextFieldFeatureFlag.setEnabled(!isView); } - - /* (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()) { - getCurrentProtocols(); - this.returnType = DataType.RETURN_TYPE_OK; - this.setVisible(false); - } - } - - if (arg0.getSource() == jButtonCancel) { - this.returnType = DataType.RETURN_TYPE_CANCEL; - this.setVisible(false); - } + } + + /** + * 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)); + jLabelProtocolType = new JLabel(); + jLabelProtocolType.setBounds(new java.awt.Rectangle(15, 10, 145, 20)); + jLabelProtocolType.setText("Select Protocol Type"); + + jStarLabel2 = new StarLabel(); + jStarLabel2.setLocation(new java.awt.Point(2, 35)); + jLabelC_Name = new JLabel(); + jLabelC_Name.setText("Protocol 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(15, 85, 145, 20)); + jLabelHelpText.setText("Help Text"); + + jLabelFeatureFlag = new JLabel(); + jLabelFeatureFlag.setText("Feature Flag Expression"); + 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("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(jLabelProtocolType, null); + jContentPane.add(getJComboBoxProtocolType(), null); + jContentPane.add(jStarLabel2, null); + jContentPane.add(jLabelC_Name, null); + jContentPane.add(getJComboBoxCName(), null); + jContentPane.add(jStarLabel3, null); + jContentPane.add(jLabelUsage, null); + jContentPane.add(getJComboBoxProtocolUsage(), 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); } - - /** - 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 Protocols", "Incorrect data type for Protocol/ProtocolNotify Name"); - return false; - } - } - - // - // Check FeatureFlag - // - if (!isEmpty(this.jTextFieldFeatureFlag.getText())) { - if (!DataValidation.isFeatureFlag(this.jTextFieldFeatureFlag.getText())) { - Log.wrn("Update Protocols", "Incorrect data type for Feature Flag"); - return false; - } - } - - return true; + return jContentPane; + } + + /** + * This method initializes Usage type + * + */ + private void initFrame() { + Tools + .generateComboBoxByVector(jComboBoxProtocolType, ed.getVProtocolType()); + Tools.generateComboBoxByVector(jComboBoxCName, wt + .getAllProtocolDeclarationsFromWorkspace()); + Tools.generateComboBoxByVector(jComboBoxUsage, ed.getVProtocolUsage()); + } + + /* + * (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()) { + getCurrentProtocols(); + this.returnType = DataType.RETURN_TYPE_OK; + this.setVisible(false); + } } - private ProtocolsIdentification getCurrentProtocols() { - String arg0 = this.jComboBoxCName.getSelectedItem().toString(); - String arg1 = this.jComboBoxProtocolType.getSelectedItem().toString(); - String arg2 = this.jComboBoxUsage.getSelectedItem().toString(); - - String arg3 = this.jTextFieldFeatureFlag.getText(); - Vector arg4 = this.jArchCheckBox.getSelectedItemsVector(); - String arg5 = this.jTextFieldHelpText.getText(); - id = new ProtocolsIdentification(arg0, arg1, arg2, arg3, arg4, arg5); - return id; + 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 + // - /* (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.jComboBoxProtocolType && arg0.getStateChange() == ItemEvent.SELECTED) { - if (this.jComboBoxProtocolType.getSelectedItem().toString().equals(ed.getVProtocolType().get(0))) { - Tools.generateComboBoxByVector(this.jComboBoxUsage, ed.getVProtocolUsage()); - } else { - Tools.generateComboBoxByVector(this.jComboBoxUsage, ed.getVProtocolNotifyUsage()); - } - } + // + // Check Name + // + if (!isEmpty(this.jComboBoxCName.getSelectedItem().toString())) { + if (!DataValidation.isC_NameType(this.jComboBoxCName.getSelectedItem() + .toString())) { + Log.wrn("Update Protocols", + "Incorrect data type for Protocol/ProtocolNotify Name"); + return false; + } } - public ProtocolsIdentification getId() { - return id; + // + // Check FeatureFlag + // + if (!isEmpty(this.jTextFieldFeatureFlag.getText())) { + if (!DataValidation.isFeatureFlag(this.jTextFieldFeatureFlag.getText())) { + Log.wrn("Update Protocols", "Incorrect data type for Feature Flag"); + return false; + } } - public void setId(ProtocolsIdentification id) { - this.id = id; + return true; + } + + private ProtocolsIdentification getCurrentProtocols() { + String arg0 = this.jComboBoxCName.getSelectedItem().toString(); + String arg1 = this.jComboBoxProtocolType.getSelectedItem().toString(); + String arg2 = this.jComboBoxUsage.getSelectedItem().toString(); + + String arg3 = this.jTextFieldFeatureFlag.getText(); + Vector arg4 = this.jArchCheckBox.getSelectedItemsVector(); + String arg5 = this.jTextAreaHelpText.getText(); + id = new ProtocolsIdentification(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.jComboBoxProtocolType + && arg0.getStateChange() == ItemEvent.SELECTED) { + if (this.jComboBoxProtocolType.getSelectedItem().toString().equals( + ed.getVProtocolType().get(0))) { + Tools.generateComboBoxByVector(this.jComboBoxUsage, ed + .getVProtocolUsage()); + } else { + Tools.generateComboBoxByVector(this.jComboBoxUsage, ed + .getVProtocolNotifyUsage()); + } } + } + + public ProtocolsIdentification getId() { + return id; + } + + public void setId(ProtocolsIdentification id) { + this.id = id; + } }