Amélioration de la javadoc et du code
This commit is contained in:
@@ -6,18 +6,57 @@ import javax.swing.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
|
||||
/**
|
||||
* ActionListener pour animer le défilement du plateau.
|
||||
* Cette classe permet de déplacer progressivement le plateau en fonction de la cible et du nombre d'étapes.
|
||||
*
|
||||
* @version 1.0
|
||||
* @author Khalid Chenouna, Lenny FOULOU
|
||||
*/
|
||||
public class TilePanningActionListener implements ActionListener {
|
||||
/**
|
||||
* Référence au plateau.
|
||||
*/
|
||||
private Board board;
|
||||
private int targetOffsetX, targetOffsetY;
|
||||
private int steps; // Nombre d'étapes pour l'animation
|
||||
|
||||
/**
|
||||
* Cible X de défilement du plateau.
|
||||
*/
|
||||
private int targetOffsetX;
|
||||
|
||||
/**
|
||||
* Cible Y de défilement du plateau.
|
||||
*/
|
||||
private int targetOffsetY;
|
||||
|
||||
/**
|
||||
* Nombre d'étapes pour l'animation
|
||||
*/
|
||||
private int steps;
|
||||
|
||||
/**
|
||||
* Timer pour l'animation
|
||||
*/
|
||||
private Timer timer;
|
||||
|
||||
// Indicateur pour vérifier si l'animation est en cours
|
||||
/**
|
||||
* Indique si une animation est en cours.
|
||||
*/
|
||||
private static boolean isAnimating = false;
|
||||
|
||||
// Variables pour suivre l'état de l'animation
|
||||
/**
|
||||
* Compteur d'étapes pour l'animation.
|
||||
*/
|
||||
private int currentStep = 0;
|
||||
|
||||
/**
|
||||
* Constructeur pour initialiser les variables de l'animation.
|
||||
*
|
||||
* @param board Référence au plateau
|
||||
* @param targetOffsetX Cible X de défilement du plateau
|
||||
* @param targetOffsetY Cible Y de défilement du plateau
|
||||
* @param steps Nombre d'étapes pour l'animation
|
||||
*/
|
||||
public TilePanningActionListener(Board board, int targetOffsetX, int targetOffsetY, int steps) {
|
||||
this.board = board;
|
||||
this.targetOffsetX = targetOffsetX;
|
||||
@@ -25,6 +64,12 @@ public class TilePanningActionListener implements ActionListener {
|
||||
this.steps = steps;
|
||||
}
|
||||
|
||||
/**
|
||||
* Méthode appelée à chaque étape de l'animation.
|
||||
*
|
||||
* @param e Evénement d'action
|
||||
* @see ActionEvent
|
||||
*/
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
int currentOffsetX = board.getOffsetX();
|
||||
@@ -54,10 +99,12 @@ public class TilePanningActionListener implements ActionListener {
|
||||
}
|
||||
}
|
||||
|
||||
// Lancer l'animation
|
||||
/**
|
||||
* Démarrer l'animation.
|
||||
*/
|
||||
public void startAnimation() {
|
||||
if (isAnimating) {
|
||||
stopCurrentAnimation();
|
||||
stopAnimation();
|
||||
}
|
||||
|
||||
isAnimating = true;
|
||||
@@ -70,19 +117,13 @@ public class TilePanningActionListener implements ActionListener {
|
||||
timer.start();
|
||||
}
|
||||
|
||||
// Arrêter l'animation proprement
|
||||
/**
|
||||
* Arrêter l'animation.
|
||||
*/
|
||||
private void stopAnimation() {
|
||||
if (timer != null) {
|
||||
timer.stop(); // Arrêter le timer
|
||||
}
|
||||
isAnimating = false; // Réinitialiser l'indicateur d'animation
|
||||
}
|
||||
|
||||
// Annuler l'animation en cours
|
||||
private void stopCurrentAnimation() {
|
||||
if (timer != null) {
|
||||
timer.stop(); // Arrêter le timer de l'animation en cours
|
||||
}
|
||||
isAnimating = false; // Réinitialiser l'animation
|
||||
}
|
||||
}
|
||||
|
@@ -5,23 +5,57 @@ import java.awt.event.MouseEvent;
|
||||
import javax.swing.JButton;
|
||||
import java.awt.Color;
|
||||
|
||||
/**
|
||||
* Listener pour animer un bouton lorsqu'il est survolé par la souris.
|
||||
* Cette classe permet de changer la couleur du bouton lorsque la souris entre ou sort de la zone du bouton.
|
||||
*
|
||||
* @version 1.0
|
||||
* @author Moncef STITI, Lenny FOULOU
|
||||
*/
|
||||
public class TutorialButtonHoverListener extends MouseAdapter {
|
||||
|
||||
/**
|
||||
* Référence au bouton à animer
|
||||
*/
|
||||
private final JButton button;
|
||||
|
||||
/**
|
||||
* Couleur de survol du bouton
|
||||
*/
|
||||
private final Color hoverColor;
|
||||
|
||||
/**
|
||||
* Couleur d'origine du bouton
|
||||
*/
|
||||
private final Color originalColor;
|
||||
|
||||
/**
|
||||
* Constructeur pour initialiser les variables du listener.
|
||||
*
|
||||
* @param button Référence au bouton à animer
|
||||
* @param hoverColor Couleur de survol du bouton
|
||||
* @param originalColor Couleur d'origine du bouton
|
||||
*/
|
||||
public TutorialButtonHoverListener(JButton button, Color hoverColor, Color originalColor) {
|
||||
this.button = button;
|
||||
this.hoverColor = hoverColor;
|
||||
this.originalColor = originalColor;
|
||||
}
|
||||
|
||||
/**
|
||||
* Change la couleur du bouton lorsque la souris entre dans la zone du bouton.
|
||||
* @param evt Evénement de souris
|
||||
* @see MouseEvent
|
||||
*/
|
||||
@Override
|
||||
public void mouseEntered(MouseEvent evt) {
|
||||
button.setBackground(hoverColor); // Couleur plus claire au survol
|
||||
}
|
||||
|
||||
/**
|
||||
* Change la couleur du bouton lorsque la souris sort de la zone du bouton.
|
||||
* @param evt Evénement de souris
|
||||
* @see MouseEvent
|
||||
*/
|
||||
@Override
|
||||
public void mouseExited(MouseEvent evt) {
|
||||
button.setBackground(originalColor); // Retour à la couleur originale
|
||||
|
Reference in New Issue
Block a user