public EditMechanicalAgentForm(MechanicalAgent agent)
        {
            InitializeComponent();
            if (agent != null)
            {
                if (agentComboBox.Items.Contains(agent.name))
                {
                    agentComboBox.Text = agent.name;
                }
                else
                {
                    agentComboBox.Text    = "Outros";
                    otherNameTextBox.Text = agent.name;
                }

                if (riskComboBox.Items.Contains(agent.associatedRisk))
                {
                    riskComboBox.Text = agent.associatedRisk;
                }
                else
                {
                    riskComboBox.Text     = "Outros";
                    otherRiskTextBox.Text = agent.associatedRisk;
                }

                additionalInfoTextBox.Text = agent.additionalInfo;
            }
        }
 private void AddAgentDataToTable(MechanicalAgent createdAgent)
 {
     if (createdAgent != null)
     {
         this.mechanicalAgentsDataGridView.Rows.Add(
             createdAgent.name,
             createdAgent.associatedRisk,
             createdAgent.additionalInfo
             );
     }
 }
        private void CreateMechanicalAgentList()
        {
            mechanicalAgentList = new List <MechanicalAgent>();
            foreach (DataGridViewRow row in mechanicalAgentsDataGridView.Rows)
            {
                if (row.Cells[0] != null)
                {
                    MechanicalAgent agent = new MechanicalAgent(
                        row.Cells[0].Value.ToString(),
                        row.Cells[1].Value.ToString(),
                        row.Cells[2].Value.ToString()
                        );

                    agent.CheckValidity();
                    mechanicalAgentList.Add(agent);
                }
            }
        }
        private void concludeButton_Click(object sender, EventArgs e)
        {
            MechanicalAgent agent = new MechanicalAgent();

            agent.name           = agentComboBox.Text == "Outros" ? otherNameTextBox.Text : agentComboBox.Text;
            agent.associatedRisk = riskComboBox.Text == "Outros" ? otherRiskTextBox.Text : riskComboBox.Text;
            agent.additionalInfo = additionalInfoTextBox.Text;

            try
            {
                agent.CheckValidity();
                createdAgent = agent;
                Close();
            }
            catch (Exception ex)
            {
                this.createdAgent = null;
                MessageBox.Show(ex.Message);
            }
        }
        private void editMechanicalAgentButton_Click(object sender, EventArgs e)
        {
            if (mechanicalAgentsDataGridView.SelectedRows.Count > 0)
            {
                DataGridViewRow row   = mechanicalAgentsDataGridView.SelectedRows[0];
                MechanicalAgent agent = new MechanicalAgent(
                    row.Cells[0].Value.ToString(),
                    row.Cells[1].Value.ToString(),
                    row.Cells[2].Value.ToString()
                    );

                EditMechanicalAgentForm newAgent = new EditMechanicalAgentForm(agent);
                newAgent.ShowDialog();

                if (newAgent.createdAgent != null)
                {
                    mechanicalAgentsDataGridView.Rows[row.Index].Cells[0].Value = newAgent.createdAgent.name;
                    mechanicalAgentsDataGridView.Rows[row.Index].Cells[1].Value = newAgent.createdAgent.associatedRisk;
                    mechanicalAgentsDataGridView.Rows[row.Index].Cells[2].Value = newAgent.createdAgent.additionalInfo;
                }
            }
        }
 private void cancelButton_Click(object sender, EventArgs e)
 {
     createdAgent = null;
     Close();
 }