import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.ResultSet; import java.sql.SQLException; import java.util.Vector; import javax.swing.JFrame; import javax.swing.JList; public class ControladorAniaidr implements ActionListener{ VistaAniadir vista; Modelo modelo; /** * Carga el controlador * * @param vista Vista a controlar * @param modelo Modelo en el que trabajamos */ public ControladorAniaidr(VistaAniadir vista, Modelo modelo) { this.vista = vista; this.modelo = modelo; this.anaidirListeners(); } /** * Aniade los listenes a la vista */ private void anaidirListeners() { this.vista.aniadir.addActionListener(this); this.vista.aniadir.setActionCommand("aniadir"); this.vista.mostrarTodo.addActionListener(this); this.vista.mostrarTodo.setActionCommand("mostrar"); this.vista.eliminar.addActionListener(this); this.vista.eliminar.setActionCommand("eliminar"); this.vista.buscar.addActionListener(this); this.vista.buscar.setActionCommand("buscar"); this.vista.cargarPasswd.addActionListener(this); this.vista.cargarPasswd.setActionCommand("pass"); } @Override public void actionPerformed(ActionEvent e) { switch(e.getActionCommand()) { case "aniadir":{ this.modelo.insertarTransaccion(this.vista.insertarNombre.getText(), Float.parseFloat(this.vista.insertarDinero.getText()), this.vista.calendario.getDate().toString()); break; } case "mostrar":{ try { ResultSet resultado = this.modelo.obtenerTransacciones(); JFrame ventana = new JFrame(); ventana.setSize(200, 200); JList lista = new JList(); Vector elementos = new Vector(); while(resultado.next()) { elementos.add(resultado.getString(1) + " " + resultado.getString(2) + " " + resultado.getString(3) + " " + resultado.getString(4)); } lista.setListData(elementos); ventana.add(lista); ventana.setVisible(true); } catch (SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } break; } case "eliminar":{ this.modelo.eliminartransaccion(Integer.parseInt(this.vista.insertarNombreViejo.getText())); break; } case "buscar":{ try { ResultSet resultado = this.modelo.buscarTransaccion(Integer.parseInt(this.vista.insertarNombreViejo.getText())); JFrame ventana = new JFrame(); ventana.setSize(200, 200); JList lista = new JList(); Vector elementos = new Vector(); while(resultado.next()) { elementos.add(resultado.getString(1) + " " + resultado.getString(2) + " " + resultado.getString(3) + " " + resultado.getString(4)); } lista.setListData(elementos); ventana.add(lista); ventana.setVisible(true); } catch (SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } break; } case "pass":{ Configuracion.guardarConfiguracion(String.valueOf(this.vista.pass.getPassword())); break; } } } }