예제 #1
0
        private void btnEditarTransicion_Click(object sender, EventArgs e)
        {
            //Metodo que edita una transicion
            if (cmbEstado.SelectedItem != null && cmbEstadoSiguiente.SelectedItem != null &&
                cmbMovimiento.SelectedItem != null && cmbOperacion.SelectedItem != null &&
                cmbSimboloLeido.SelectedItem != null && cmbSimboloNuevo.SelectedItem != null
                )
            {
                Transicion transicion = new Transicion()
                {
                    q            = cmbEstado.SelectedItem.ToString(),
                    ValorBuscado = char.Parse(cmbSimboloLeido.SelectedItem.ToString()),
                    Operacion    = (Operaciones)cmbOperacion.SelectedItem,
                    Movimiento   = (Movimientos)cmbMovimiento.SelectedItem,
                    ValorNuevo   = char.Parse(cmbSimboloNuevo.SelectedItem.ToString()),
                    p            = cmbEstadoSiguiente.SelectedItem.ToString()
                };

                string msg = maquina.EditarTransicion(transicionSeleccionada, transicion);
                if (msg.Equals("Ok"))
                {
                    MessageBox.Show(msg, "Informacion");
                }
            }
            else
            {
                MessageBox.Show("Valide que esta insertando los datos requeridos");
            }
            MostrarTransiciones();
        }
예제 #2
0
 private void btnAgregarTransicion_Click(object sender, EventArgs e)
 {
     //Metodo que agrega una transicion
     if (cmbEstado.SelectedItem != null && cmbEstadoSiguiente.SelectedItem != null && //Validacion de que los Combobox tengan informacion
         cmbMovimiento.SelectedItem != null && cmbOperacion.SelectedItem != null &&
         cmbSimboloLeido.SelectedItem != null && cmbSimboloNuevo.SelectedItem != null
         )
     {
         Transicion transicion = new Transicion() //Se cra la transicion
         {
             q            = cmbEstado.SelectedItem.ToString(),
             ValorBuscado = char.Parse(cmbSimboloLeido.SelectedItem.ToString()),
             Operacion    = (Operaciones)cmbOperacion.SelectedItem,
             Movimiento   = (Movimientos)cmbMovimiento.SelectedItem,
             ValorNuevo   = char.Parse(cmbSimboloNuevo.SelectedItem.ToString()),
             p            = cmbEstadoSiguiente.SelectedItem.ToString()
         };
         //Evalua si la transicion ya existe  en la lista
         if (maquina.ListaTransiciones.Contains(transicion))
         {
             MessageBox.Show("Informacion", "Ya existe una configuracion para el estado  y simbolo leido elegidos");
             return;
         }
         else
         {
             maquina.AgregarTransicion(transicion);
         }
     }
     MostrarTransiciones();
 }
예제 #3
0
        private void dgTransiciones_SelectionChanged(object sender, EventArgs e)
        {
            //Evento que detecta cuando el usuario selecciona una transicion de la tabla
            if (dgTransiciones.SelectedRows.Count == 0)
            {
                return;
            }
            else
            {
                DataGridViewRow dr = dgTransiciones.SelectedRows[0];

                transicionSeleccionada = new Transicion()
                {
                    q            = dr.Cells["Estado Actual"].Value.ToString(),
                    ValorBuscado = (char)dr.Cells["Simbolo Leido"].Value,
                    Operacion    = (Operaciones)dr.Cells["Operacion"].Value,
                    ValorNuevo   = (char)dr.Cells["Simbolo Escrito"].Value,
                    p            = dr.Cells["Nuevo Estado"].Value.ToString(),
                    Movimiento   = (Movimientos)dr.Cells["Movimiento"].Value
                };

                cmbEstado.SelectedItem          = transicionSeleccionada.q;
                cmbEstadoSiguiente.SelectedItem = transicionSeleccionada.p;
                cmbMovimiento.SelectedItem      = transicionSeleccionada.Movimiento;
                cmbOperacion.SelectedItem       = transicionSeleccionada.Operacion;
                cmbSimboloLeido.SelectedItem    = transicionSeleccionada.ValorBuscado;
                cmbSimboloNuevo.SelectedItem    = transicionSeleccionada.ValorNuevo;
            }
        }
예제 #4
0
        public string AgregarTransicion(Transicion t)
        {
            string msg = "";

            if (!ListaTransiciones.Contains(t))
            {
                ListaTransiciones.Add(t);
                msg = "Ok";
            }
            else
            {
                msg = "Error al agregar la transicion";
            }
            return(msg);
        }
예제 #5
0
        public string EliminarTransicion(Transicion t)
        {
            string msg = "";

            if (ListaTransiciones.Contains(t))
            {
                ListaTransiciones.Remove(t);
                msg = "Ok";
            }
            else
            {
                msg = "Error al eliminar la transicion";
            }
            return(msg);
        }
예제 #6
0
        public string EditarTransicion(Transicion oldT, Transicion newT)
        {
            string msg = "";

            if (ListaTransiciones.Contains(oldT))
            {
                ListaTransiciones.Remove(oldT);
                ListaTransiciones.Add(newT);

                msg = "Ok";
            }
            else
            {
                msg = "Error al editar la transicion: No existe la transicion que se intenta editar";
            }
            return(msg);
        }