private void aceptarMaterialFlatButton_Click(object sender, EventArgs e) { if (allReady() && (Convert.ToInt32(asientosLineTextField.Text) % 2 == 0) && routeFree() && !beSelf()) { Vuelo v = new Vuelo( origenLineTextField.Text.ToCharArray()[0], destinoLineTextField.Text.ToCharArray()[0], Convert.ToInt32(tiempoLineTextField.Text), Convert.ToInt32(costoLineTextField.Text), Convert.ToInt32(asientosLineTextField.Text) ); this.flyList.Add(v); // ************************************************************ // Aqui es donde se hace el agregado para el nodo if (!graph.existVertex(v.getOrigen())) { graph.addVertex(v.getOrigen()); GraphForm grafoVentana = new GraphForm(ref graph, 1); this.Hide(); grafoVentana.ShowDialog(); this.Show(); int x = grafoVentana.getPosX(); int y = grafoVentana.getPosY(); if (x > -1 && y > -1) { graph.setCityPoints(v.getOrigen(), x, y); } } if (!graph.existVertex(v.getDestino())) { graph.addVertex(v.getDestino()); GraphForm grafoVentana = new GraphForm(ref graph, 1); this.Hide(); grafoVentana.ShowDialog(); this.Show(); int x = grafoVentana.getPosX(); int y = grafoVentana.getPosY(); if (x > -1 && y > -1) { graph.setCityPoints(v.getDestino(), x, y); } } graph.createAdy(v.getOrigen(), v.getDestino(), v.getCosto(), v.getTiempo()); // ************************************************************* this.Close(); } else if (!routeFree()) { MessageBox.Show("La ruta ya esta ocupada", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (beSelf()) { MessageBox.Show("El origen y destino son el mismo", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if ((Convert.ToInt32(asientosLineTextField.Text) % 2 != 0)) { MessageBox.Show("El número de asientos debe ser par", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { MessageBox.Show("Algun dato esta erroneo", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }