/*
NEED : null
SOFTWARE:  FIREFOX, MOZILLA, IE

L'objet KAlpha stock l'opacité et un objethtml lié à cette opacité */

function KAlpha(htmlLinkedObj) {

var unblock;
/* _htmlLinkedObj : objethtml lié à cette objet KColor*/
var _htmlLinkedObj;

/* this._Alphval : A */
var _Alphval;

var _Amax;
var _Amin;

this.nav=new KNav();



this._Amax=1;
this._Amin=0.05;


this._Alphval=1;

this.set=function(val){ if(this.unblock){	this._Alphval=val;}}


this.get=function(){
	val=this._Alphval;
	if (val<this._Amin)
		val=this._Amin;
				
	if(val>this._Amax)
		val=this._Amax;
		
	return val;
}


/* this.setA affecté la valeur de l'opacité sur l'interval [0, 1];
need: function -this.set(); */
this.setA=function(val){
	if(val!=null)
	this.set(val);
	
	this.setPhysA();
	}



/* this.inc incremente la valeur ;
this.dec decremente la valeur ;
need: function -this.set(index,val);*/
this.incA=function(val){this.setA(this._Alphval+val);this.setPhysA();}
this.decA=function(val){ this.setA(this._Alphval-val); this.setPhysA(); }

/* this.getA renvois la valeur XxX;
need: function -this.get(index); */
this.getA=function(){return this.get();}
	
/* this.setPhyA applique la couleur à l'objet;
need: function -this.get; */
this.setPhysA=function(){ 


	switch (this.nav.get()){
case 1:
this._htmlLinkedObj.style.opacity=this.getA();
break;
case 0:
	//	alert(this.getA()*this.coef);
		this._htmlLinkedObj.style.filter="alpha(opacity:"+(this.getA()*100)+")";
		break;
	}
}


/* this.createLink crée le lien entre l'objet et l'objet Html; */
this.createLink=function(htmlLinkedObj){this._htmlLinkedObj=htmlLinkedObj;}

this.unlock=function(){this.unblock=true;}
this.lock=function(){this.unblock=false;}


/* this.constructor initialise l'objet */
this.construtor=function(htmlLinkedObj){	
this.createLink(htmlLinkedObj);   
this.unlock();
this.setA(1);
}

this.construtor(htmlLinkedObj);

	
}
