[ Index ]
 

Code source de eGroupWare 1.2.106-2

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/phpgwapi/js/dynapi/fx/ -> slideanim.js (source)

   1  /*
   2      DynAPI Distribution
   3      Slide Animation Extension
   4  
   5      The DynAPI Distribution is distributed under the terms of the GNU LGPL license.
   6  
   7      requires: dynapi.fx.Thread
   8  */
   9  
  10  // Generates a path between 2 points, stepping inc pixels at a time
  11  function SlideAnimation(x1,y1,x2,y2,inc) {
  12      var n,dx,dy,lx,ly,p=[];
  13      if (x2==null) x2 = x1;
  14      if (y2==null) y2 = y1;
  15  
  16      lx = x2-x1;
  17      ly = y2-y1;
  18      n = Math.sqrt(Math.pow(lx,2) + Math.pow(ly,2))/(inc||10);
  19      dx = lx/n;
  20      dy = ly/n;
  21      for (var i=0;i<n;i++) {
  22          p[i*2] = x1 + Math.round(dx*i);
  23          p[i*2+1] = y1 + Math.round(dy*i);
  24      }
  25      if (p[i*2-2] != x2 || p[i*2-1] != y2) {
  26          p[i*2] = x2;
  27          p[i*2+1] = y2;
  28      }
  29      return p;
  30  };
  31  
  32  
  33  DynLayer.prototype.slideTo = function(x2,y2,inc,ms) {
  34      if (this.x!=x2 || this.y!=y2) {
  35          if (!this._thread) this._thread = new Thread(this);
  36          if (ms) this._thread.interval = ms;
  37          this._thread.play(SlideAnimation(this.x,this.y,x2,y2,inc));
  38      }
  39  };
  40  DynLayer.prototype.slideStop = function () {
  41      if (this._thread) this._thread.stop();
  42  };


Généré le : Sun Feb 25 17:20:01 2007 par Balluche grâce à PHPXref 0.7