ajout javadoc pour game et gui

This commit is contained in:
Lenny FOULOU
2024-12-10 17:16:13 +01:00
parent b6ef8ef731
commit c9bbebf500
5 changed files with 294 additions and 18 deletions

View File

@@ -8,14 +8,32 @@ import javax.swing.*;
import java.util.List;
import java.util.Arrays;
/**
* Représente un panneau contenant les boutons du menu principal du jeu.
* Ce panneau dispose d'une disposition verticale et intègre des boutons avec un style personnalisé.
*
* @version 1.0
* @author Khalid CHENOUNA
*/
public class ButtonPanel extends JPanel {
/** Bouton pour démarrer une nouvelle partie. */
private JButton newGameButton;
/** Bouton pour accéder aux instructions sur comment jouer. */
private JButton howToPlayButton;
/** Bouton pour accéder aux paramètres du jeu. */
private JButton settingsButton;
/** Bouton pour quitter l'application. */
private JButton exitButton;
/**
* Constructeur qui initialise le panneau avec des boutons et applique un style personnalisé.
*
* @param fontSize La taille de police initiale des boutons.
*/
public ButtonPanel(float fontSize) {
// Paramétrage de l'apparence du panneau
this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
@@ -47,26 +65,58 @@ public class ButtonPanel extends JPanel {
MainMenuMouseController gestionSouris = new MainMenuMouseController(this);
}
/**
* Retourne le bouton "Jouer".
*
* @return Le bouton "Jouer".
*/
public JButton getNewGameButton() {
return newGameButton;
}
/**
* Retourne le bouton "Comment jouer ?".
*
* @return Le bouton "Comment jouer ?".
*/
public JButton getHowToPlayButton() {
return howToPlayButton;
}
/**
* Retourne le bouton "Paramètres".
*
* @return Le bouton "Paramètres".
*/
public JButton getSettingsButton() {
return settingsButton;
}
/**
* Retourne le bouton "Quitter".
*
* @return Le bouton "Quitter".
*/
public JButton getExitButton() {
return exitButton;
}
/**
* Retourne la liste de tous les boutons contenus dans ce panneau.
*
* @return Une liste des boutons : "Jouer", "Comment jouer ?", "Paramètres" et "Quitter".
*/
public List<JButton> getButtons() {
return Arrays.asList(newGameButton, howToPlayButton, settingsButton, exitButton);
}
/**
* Met à jour la taille des polices des boutons en fonction de la largeur de la fenêtre.
* Cette méthode ajuste dynamiquement la taille des polices pour s'adapter
* à différents écrans ou résolutions.
*
* @param windowWidth La largeur actuelle de la fenêtre.
*/
public void updateButtonFonts(int windowWidth) {
// Mettre à jour la police des boutons avec la taille ajustée
float newFontSize = windowWidth / 30f;