feat(Rankboard.java): ajout commentaire

This commit is contained in:
2025-11-09 18:56:03 +01:00
parent 2db6d5c4bb
commit 4514fd3204

View File

@@ -4,10 +4,32 @@ import java.util.Comparator;
import javax.swing.JLabel;
/**
* Rankboard est une vue graphique affichant le classement des voitures.
* <p>
* Elle hérite de GameView et met à jour dynamiquement le score de chaque voiture.
* Les scores sont triés du plus grand au plus petit.
* </p>
*/
public class Rankboard extends GameView
{
ArrayList<Car> cars;
private final JLabel label;
/** Liste des voitures à afficher */
ArrayList<Car> cars;
/** Composant JLabel pour afficher le classement */
private final JLabel label;
/**
* Construit un Rankboard.
*
* @param title Titre de la fenêtre
* @param cars Liste des voitures à suivre
* @param width Largeur de la fenêtre
* @param height Hauteur de la fenêtre
* @param x Position horizontale de la fenêtre
* @param y Position verticale de la fenêtre
*/
public Rankboard(String title, ArrayList<Car> cars, int width, int height, int x, int y)
{
super(title, width, height, x, y);
@@ -16,6 +38,13 @@ public class Rankboard extends GameView
this.add(label, BorderLayout.CENTER);
}
/**
* Met à jour le texte affiché dans le JLabel.
* <p>
* Trie les voitures par score décroissant et construit
* un tableau HTML pour l'affichage.
* </p>
*/
private void updateRankText()
{
cars.sort(Comparator.comparingInt(Car::getScore).reversed());
@@ -30,6 +59,10 @@ public class Rankboard extends GameView
}
@Override
/**
* Méthode appelée par GameView.update().
* Elle met à jour le classement affiché.
*/
protected void run()
{
updateRankText();