package Vista;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

class BotonConImagen extends JButton {
    int cambio = 0;
    int precio = 150;
    private int id; // Campo id privado
    private boolean isAmarillo = false; // Estado para indicar si está utilizando el color amarillo

    public BotonConImagen(int id) {
        this.id = id;
        ImageIcon icono = new ImageIcon("C:/Users/mario/OneDrive/Documentos/NetBeansProjects/Imagene/src/asdasdasdasd.png"); 
        setIcon(icono); // Establece la imagen en el botón
        setPreferredSize(new Dimension(icono.getIconWidth(), icono.getIconHeight())); // Establece el tamaño del botón según el tamaño de la imagen
        setBorderPainted(false);
        setContentAreaFilled(false);
        setFocusPainted(false);

        // Agrega el ActionListener para cambiar el color del botón
        addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                if (cambio == 0) {
                    ImageIcon icono = new ImageIcon("C:/Users/mario/OneDrive/Documentos/NetBeansProjects/Imagene/src/asiento seleccion.png");
                    setIcon(icono); // Establece la imagen en el botón
                    setPreferredSize(new Dimension(icono.getIconWidth(), icono.getIconHeight())); // Establece el tamaño del botón según el tamaño de la imagen
                    cambio = 1;
                    isAmarillo = true;
                } else {
                    ImageIcon icono = new ImageIcon("C:/Users/mario/OneDrive/Documentos/NetBeansProjects/Imagene/src/asdasdasdasd.png");
                    setIcon(icono); // Establece la imagen en el botón
                    setPreferredSize(new Dimension(icono.getIconWidth(), icono.getIconHeight())); // Establece el tamaño del botón según el tamaño de la imagen
                    cambio = 0;
                    isAmarillo = false;
                }
            }
        });
    }

    // Métodos getter y setter para el campo id
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }
    
    public int getPrecio() {
        return precio;
    }

    public void setPrecio(int precio) {
        this.precio = precio;
    }

    // Método para verificar si el botón está utilizando el color amarillo
    public boolean isAmarillo() {
        return isAmarillo;
    }
    
    public void Ocupado(){
        //ImageIcon icono = new ImageIcon("C:/Users/Cesar/Downloads/asiento ocupado.png");
        //setIcon(icono); // Establece la imagen en el botón
        setEnabled(false);
    }
    
    public void Disponible(){
        //ImageIcon icono = new ImageIcon("C:/Users/Cesar/Downloads/asiento ocupado.png");
        //setIcon(icono); // Establece la imagen en el botón
        setEnabled(true);
    }
}