2026-03-30 22:33:20 +02:00
|
|
|
import java.awt.event.ActionEvent;
|
|
|
|
|
import java.awt.event.ActionListener;
|
2026-04-03 16:56:08 +02:00
|
|
|
import javax.swing.JOptionPane;
|
2026-03-30 22:33:20 +02:00
|
|
|
|
|
|
|
|
public class ControleurMenu implements ActionListener {
|
|
|
|
|
|
|
|
|
|
private MenuPrincipal menu;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public ControleurMenu(MenuPrincipal m) {
|
|
|
|
|
this.menu = m;
|
|
|
|
|
}
|
|
|
|
|
|
2026-04-03 16:56:08 +02:00
|
|
|
@Override
|
2026-03-30 22:33:20 +02:00
|
|
|
public void actionPerformed(ActionEvent evenement) {
|
|
|
|
|
if (evenement.getSource() == this.menu.getBtnNouvellePartie()) {
|
2026-04-03 16:56:08 +02:00
|
|
|
try {
|
|
|
|
|
String strL = JOptionPane.showInputDialog(menu, "Nombre de lignes (entre 4 et 30) :");
|
|
|
|
|
if (strL == null) return;
|
|
|
|
|
int l = Integer.parseInt(strL);
|
|
|
|
|
|
|
|
|
|
String strC = JOptionPane.showInputDialog(menu, "Nombre de colonnes (entre 4 et 30) :");
|
|
|
|
|
if (strC == null) return;
|
|
|
|
|
int c = Integer.parseInt(strC);
|
|
|
|
|
|
|
|
|
|
String strM = JOptionPane.showInputDialog(menu, "Nombre total de mines :");
|
|
|
|
|
if (strM == null) return;
|
|
|
|
|
int m = Integer.parseInt(strM);
|
|
|
|
|
|
|
|
|
|
if (l < 4 || l > 30 || c < 4 || c > 30 || m >= (l * c)) {
|
|
|
|
|
JOptionPane.showMessageDialog(menu, "Valeurs incorrectes ! Les dimensions doivent être entre 4 et 30, et les mines inférieures au nombre de cases.");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Grille nouvelleGrille = new Grille(l, c, m);
|
|
|
|
|
FenetreJeu fenetre = new FenetreJeu(nouvelleGrille);
|
|
|
|
|
fenetre.setVisible(true);
|
|
|
|
|
this.menu.dispose();
|
|
|
|
|
|
|
|
|
|
} catch (NumberFormatException ex) {
|
|
|
|
|
JOptionPane.showMessageDialog(menu, "Erreur : Vous devez entrer des nombres entiers !");
|
|
|
|
|
}
|
2026-03-30 22:33:20 +02:00
|
|
|
|
|
|
|
|
} else if (evenement.getSource() == this.menu.getBtnReprendre()) {
|
|
|
|
|
System.out.println("Chargement de la sauvegarde...");
|
|
|
|
|
} else if (evenement.getSource() == this.menu.getBtnQuitter()) {
|
|
|
|
|
System.exit(0);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|