*
* FIXME: No comprueba que haya equipos repetidos al registrarlo como nuevos o modificarlos
*/
private void guardarEquipo() {
Equipo equipo = null;
// Evalúa que acción debe realizar: NUEVO, MODIFICAR
switch (this.accion) {
case NUEVO:
// El nombre del equipo es un dato obligatorio
if (this.txtNombreEquipo.getText().equals("")) {
Util.mensajeError("Debes indicar el nombre del equipo");
return;
}
equipo = new Equipo();
equipo.setNombre(this.txtNombreEquipo.getText());
equipo.setPatrocinador(this.txtPatrocinador.getText());
equipo.setColor1(this.txtColor1.getText());
equipo.setColor2(this.txtColor2.getText());
equipo.setCategoria(this.txtCategoria.getText());
this.equipos.add(equipo);
try {
Ficheros.escribirObjeto(equipos, Constantes.FICHERO_EQUIPOS);
this.panelEstado.setMensaje("El equipo se ha dado de alta correctamente");
this.limpiarCamposEquipo();
// El foco se coloca en la caja de texto
this.txtNombreEquipo.requestFocusInWindow();
// Refresco el combo y la tabla donde los muestro
this.cbEquipo.listar();
this.tablaEquipos.listar();
} catch (IOException ioe) { // En caso de que haya problemas de escritura
Util.mensajeError("No se ha podido escribir a disco. Vuelta a intentarlo");
ioe.printStackTrace();
}
break;
case MODIFICAR:
if (Util.mensajeConfirmacion("¿Estás seguro?") == JOptionPane.NO_OPTION)
return;
equipo = this.tablaEquipos.getEquipoSeleccionado();
equipo.setNombre(this.txtNombreEquipo.getText());
equipo.setPatrocinador(this.txtPatrocinador.getText());
equipo.setColor1(this.txtColor1.getText());
equipo.setColor2(this.txtColor2.getText());
equipo.setCategoria(this.txtCategoria.getText());
try {
Ficheros.escribirObjeto(this.equipos, Constantes.FICHERO_EQUIPOS);
} catch (IOException ioe) {
Util.mensajeError("No se han podido guardar los cambios");