import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import javax.swing.SwingUtilities; /** * Écouteur d'événements de souris associé à chaque bouton de la grille. * Détecte si le joueur effectue un clic gauche (révéler) ou un clic droit (marqueur). */ public class ActionCase implements MouseListener { private FenetreJeu fenetreJeu; private int ligne; private int colonne; /** * Constructeur de l'action de case. * @param f La fenêtre de jeu principale pour interagir avec sa logique. * @param l L'index de la ligne de cette case. * @param c L'index de la colonne de cette case. */ public ActionCase(FenetreJeu f, int l, int c) { this.fenetreJeu = f; this.ligne = l; this.colonne = c; } /** * Méthode déclenchée lors du clic sur le bouton de la case. * @param e L'événement de la souris. */ public void mouseClicked(MouseEvent e) { if (SwingUtilities.isRightMouseButton(e)) { fenetreJeu.clicDroit(ligne, colonne); } else if (SwingUtilities.isLeftMouseButton(e)) { fenetreJeu.clicGauche(ligne, colonne); } } public void mousePressed(MouseEvent e) {} public void mouseReleased(MouseEvent e) {} public void mouseEntered(MouseEvent e) {} public void mouseExited(MouseEvent e) {} }