import java.awt.*;
/**
* La classe ThreadTacheDeFond
implante un Thread
* permettant de gerer le rafraichissement d'un Canvas
* a interval regulier d'une duree arbitraire.
*
* @author Nicolas Janey
* @author nicolas.janey@univ-fcomte.fr
* @version 1.0, 16/11/08
*/
public class ThreadTacheDeFond extends Thread {
/**
* Le Canvas
a rafraichir regulierement.
*/
private Canvas c;
/**
* Le booleen indiquant si l'animation est en cours.
*/
private boolean animated;
/**
* La temporisation entre chaque demande de rafraichissement.
*/
private int temporisation;
/**
* Le booleen controlant l'exécution du Thread
.
*/
private boolean ok = true ;
/**
* Constructeur pour un ThreadTacheDeFond
muni d'une certaine temporisation
* et d'un certain Canvas
.
*
*/
public ThreadTacheDeFond(int temporisation,Canvas c) {
this.c = c;
this.temporisation = temporisation;
ok = true;
animated = false;
}
/**
* Methode d'execution.
*
*/
public void run() {
while ( ok ) {
if ( animated )
c.repaint();
try {
sleep(temporisation); }
catch(Exception e) { } }
}
/**
* "Termine" le fonctionnement de this.
*
*/
public void arret() {
ok = false ;
}
/**
* Active/desactive l'animation geree par this.
*
*/
public void setAnimated(boolean animated) {
this.animated = animated ;
}
}