/****************************************************************************   
*   Fade Objects
****************************************************************************/

nereidFadeObjects = new Object();
nereidFadeTimers = new Object(); 

function nereidFade(object, destOp, rate, delta) {
	try {
		if (!document.all) 	return
		if (object != "[object]") { 
			setTimeout("nereidFade("+object+","+destOp+","+rate+","+delta+")",0);
			return;
		}
	
		clearTimeout(nereidFadeTimers[object.sourceIndex]);
		
		diff = destOp-object.filters.alpha.opacity;
		direction = 1;
		if (object.filters.alpha.opacity > destOp) {
			direction = -1;
		}
		delta=Math.min(direction*diff,delta);
		object.filters.alpha.opacity+=direction*delta;
		
		if (object.filters.alpha.opacity != destOp) {
			nereidFadeObjects[object.sourceIndex]=object;
			nereidFadeTimers[object.sourceIndex]=setTimeout("nereidFade(nereidFadeObjects["+object.sourceIndex+"],"+destOp+","+rate+","+delta+")",rate);
		}
	}
	catch(e) {
		return;
	}
}
