diff --git a/GestiónBotónSeleccionarAsiento.java b/GestiónBotónSeleccionarAsiento.java index c7cafc0..26677a9 100644 --- a/GestiónBotónSeleccionarAsiento.java +++ b/GestiónBotónSeleccionarAsiento.java @@ -1,7 +1,9 @@ import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; -public class GestiónBotónSeleccionarAsiento implements ChangeListener { +public class GestiónBotónSeleccionarAsiento implements ActionListener { private Asiento asiento; private SeleccionarAsientoV ventana; public GestiónBotónSeleccionarAsiento(Asiento parAsiento, SeleccionarAsientoV parVentana) { @@ -10,7 +12,7 @@ public class GestiónBotónSeleccionarAsiento implements ChangeListener { } @Override - public void stateChanged(ChangeEvent e) { + public void actionPerformed(ActionEvent e) { System.out.println("i:" + asiento.getX() + " j:" + asiento.getY()); ventana.seleccionarAsientos(asiento); } diff --git a/SeleccionarAsientoV.java b/SeleccionarAsientoV.java index b6cbaae..3db563e 100644 --- a/SeleccionarAsientoV.java +++ b/SeleccionarAsientoV.java @@ -1,8 +1,11 @@ import javax.swing.*; import java.awt.*; +import java.util.ArrayList; +import java.util.List; public class SeleccionarAsientoV extends JPanel { + JPanel panel; private JPanel pSuperior = new JPanel(new FlowLayout(FlowLayout.LEFT)); private JButton bRegresar = new JButton("Regresar."); private int noAsientosSeleccionados = 0; @@ -19,13 +22,15 @@ public class SeleccionarAsientoV extends JPanel { private Asiento [][] asientos; - + List asientosSeleccionados = new ArrayList(); public SeleccionarAsientoV(Asiento [][] parAsientos) throws HeadlessException { this.setLayout(new BorderLayout()); asientos = parAsientos; agregarComponentes(); + añadirListeners(); + crearCeldas(7,10); } @@ -73,7 +78,7 @@ public class SeleccionarAsientoV extends JPanel { } tfAux.setSize(100,100); //tfAux.addKeyListener(new GestiónTecladoEscribirCaracter(this,i,j)); - tfAux.addChangeListener(new GestiónBotónSeleccionarAsiento(new Asiento(i,j,zona,asientos[i][j].isDisponibilidad()),this)); + tfAux.addActionListener(new GestiónBotónSeleccionarAsiento(new Asiento(i,j,zona,asientos[i][j].isDisponibilidad()),this)); con.gridx = j; con.gridy = i; con.gridheight = 1; @@ -88,6 +93,10 @@ public class SeleccionarAsientoV extends JPanel { this.add(pSala,BorderLayout.CENTER); } + public void añadirListeners(){ + //bRegresar.addActionListener(new GestiónBotónCambiarVentana(this,new ventana2().panelV2)); + } + public void seleccionarAsientos(Asiento asiento){ int precio = 0; @@ -112,14 +121,28 @@ public class SeleccionarAsientoV extends JPanel { if (bAsientos[x][y].isSelected()) { noAsientosSeleccionados++; total += precio; + asientosSeleccionados.add(asiento); } else { noAsientosSeleccionados--; total -= precio; + + for(int a = 0; a < asientosSeleccionados.size() ;a++){ + if(asientosSeleccionados.get(a).equals(asiento)){ + asientosSeleccionados.remove(a); + } + } + } }else{ bAsientos[x][y].setSelected(false); } + System.out.print("["); + for(int a = 0; a < asientosSeleccionados.size() ;a++){ + System.out.print(asientosSeleccionados.get(a).getX() + " " + asientosSeleccionados.get(a).getY() + ", " ); + } + System.out.println("]"); + lSeleccionar.setText("Asientos seleccionados: " + noAsientosSeleccionados); lTotal.setText("Total: " + total + "$"); } diff --git a/out/production/mezontleTeam/GestiónBotónSeleccionarAsiento.class b/out/production/mezontleTeam/GestiónBotónSeleccionarAsiento.class index a9f3d46..fe1da11 100644 Binary files a/out/production/mezontleTeam/GestiónBotónSeleccionarAsiento.class and b/out/production/mezontleTeam/GestiónBotónSeleccionarAsiento.class differ diff --git a/out/production/mezontleTeam/SeleccionarAsientoV.class b/out/production/mezontleTeam/SeleccionarAsientoV.class index 7903efe..88ac2b5 100644 Binary files a/out/production/mezontleTeam/SeleccionarAsientoV.class and b/out/production/mezontleTeam/SeleccionarAsientoV.class differ