// JavaScript Document

///////////////////////////
//
// ANIMATION
//
///////////////////////////

function animation(){
	
	/* création d'une référence vers l'objet courant */
	var obj = this;  
		
	/* Propriétés */
	this.animationTableau = new Array();
	this.preloadImage = new Image();
	
	/* Compteur */
	this.i = 0 ;
	this.timeout;
	
	/* Id des images */
	this.image = "" ;

	/* delai et cadence */
	this.cadence = 100 ;
	
	/* Tableau */
	this.insert = function ( num , value ){
		this.animationTableau[num] = [value];
		this.preload( value );
	}
	
	/* on mouseOver */
	this.mouseOver = function() {
		clearTimeout ( this.timeout ) ;
		this.i++;
		if ( this.i < this.animationTableau.length ) {
			document.getElementById( this.image ).src = this.animationTableau[this.i];
			this.timeout = setTimeout( function () { obj.mouseOver() } , this.cadence ) ;
		}
	}
	
	/* on MouseOut */
	this.mouseOut = function() {
		clearTimeout ( this.timeout ) ;
		this.i--;
		if ( this.i >= 0 ) {
			document.getElementById( this.image ).src = this.animationTableau[this.i];
			this.timeout = setTimeout( function () { obj.mouseOut() } , this.cadence ) ;
		}
	}
			
	/* Preload des images */
	this.preload = function ( value ) {
		this.preloadImage.src = value ; 
	}	
	
	/* Initialisation */
	this.init = function () {
		/* Calque */
		document.getElementById( this.image ).src = this.animationTableau[this.i];
	}
	
	
	
}
