// Run_filter
function Run_filter(obj)
{	
	if(obj && obj.filters && obj.filters[0])
	{
		obj.filters[0].apply();
		obj.visibility="visible";
		obj.filters[0].play();
	}
}

// --------------------------------------------------------------------------
//
// Classe ImagesFilter
//
// --------------------------------------------------------------------------

// variable static
var IF_array = new Array();

function ImagesFilter(nom)
{
  // Variables membres
  this.nom    = nom;
  this.idx    = 0;
  this.iStart = 0;
  this.iEnd   = 0;
  this.tid    = 0;

  // Fonctions membres
  this.Preload     = IF_Preload;
  this.StartFilter = IF_StartFilter;
}

// IF_Preload
function IF_Preload()
{
  this.iStart = IF_array.length;
  this.iEnd = this.iStart + IF_Preload.arguments.length;
  for (i = this.iStart; i < this.iEnd; i++)
  {
    IF_array[i]     = new Image();
    IF_array[i].src = IF_Preload.arguments[i - this.iStart];
  }
  this.idx = this.iStart;
}

// IF_StartFilter
function IF_StartFilter(delay)
{
  this.tid = IF_OnTimerFilter(this.nom, delay, this.idx, this.iStart, this.iEnd);
}

// IF_OnTimerFilter : fct callback
function IF_OnTimerFilter(nom, delay, idx, iStart, iEnd)
{
  if(document.getElementById)
  {
    o=document.getElementById(nom);
  }
  else if(document.images)
  {
    o=document.images.nom;
  }
  
  if(o)
  {
    if(o.filters)
    {
      o.filters[0].apply();
      o.src = IF_array[idx++].src;
      o.filters[0].play();
    }
    else
    {
      o.src = IF_array[idx++].src;
    }
  } 
  if (idx >= iEnd)
  {
    idx = iStart;
  }

  var fct = "IF_OnTimerFilter('"+nom+"',"+delay+","+idx+","+iStart+","+iEnd+")";
  var tid = setTimeout(fct, delay);
  return tid;
}

/*
filter:progid:DXImageTransform.Microsoft.Fade(Duration=1.0,overlap=1.0)
filter:progid:DXImageTransform.Microsoft.Pixelate(MaxSquare=50, Duration=1, Enabled=false)
filter:progid:DXImageTransform.Microsoft.RandomDissolve()
filter:progid:DXImageTransform.Microsoft.Stretch(stretchStyle="hide") 

filter:progid:DXImageTransform.Microsoft.Wipe(Gradientsize=1.0, wipeStyle=0, motion='forward')
filter:progid:DXImageTransform.Microsoft.Barn(orientation=horizontal, motion=out)
filter:progid:DXImageTransform.Microsoft.Blinds(bands=2, direction='RIGHT')
filter:progid:DXImageTransform.Microsoft.Checkerboard(squaresX=12, squaresY=8, direction='right', duration=1) 
filter:progid:DXImageTransform.Microsoft.Inset()
filter:progid:DXImageTransform.Microsoft.Iris(irisStyle='CIRCLE', motion='out')
filter:progid:DXImageTransform.Microsoft.RadialWipe(wipeStyle='clock')
filter:progid:DXImageTransform.Microsoft.RandomBars(orientation='horizontal')
filter:progid:DXImageTransform.Microsoft.Slide(slideStyle='HIDE', bands=1)
filter:progid:DXImageTransform.Microsoft.Spiral(GridSizeX=16, GridSizeY=16)
filter:progid:DXImageTransform.Microsoft.Strips(Duration=5, Motion='leftdown')
filter:progid:DXImageTransform.Microsoft.Wheel(spokes=4)
filter:progid:DXImageTransform.Microsoft.zigzag(GridSizeX=16, GridSizeY=16)
*/

