dojo.provide("dojo.animation.AnimationEvent");
dojo.require("dojo.lang.common");
dojo.deprecated("dojo.animation.AnimationEvent is slated for removal in 0.5; use dojo.lfx.* instead.", "0.5");
dojo.animation.AnimationEvent = function(
/*dojo.animation.Animation*/ animation,
/*String*/type,
/*int[] */ coords,
/*int*/ startTime,
/*int*/ currentTime,
/*int*/ endTime,
/*int*/ duration,
/*int*/ percent,
/*int?*/ fps) {
// summary: Event sent at various points during an Animation.
// animation: Animation throwing the event.
// type: One of: "animate", "begin", "end", "play", "pause" or "stop".
// coords: Current coordinates of the animation.
// startTime: Time the animation was started, as milliseconds.
// currentTime: Time the event was thrown, as milliseconds.
// endTime: Time the animation is expected to complete, as milliseconds.
// duration: Duration of the animation, in milliseconds.
// percent: Percent of the animation that has completed, between 0 and 100.
// fps: Frames currently shown per second. (Only sent for "animate" event).
// description: The AnimationEvent has public properties of the same name as
// all constructor arguments, plus "x", "y" and "z".
this.type = type; // "animate", "begin", "end", "play", "pause", "stop"
this.animation = animation;
this.coords = coords;
this.x = coords[0];
this.y = coords[1];
this.z = coords[2];
this.startTime = startTime;
this.currentTime = currentTime;
this.endTime = endTime;
this.duration = duration;
this.percent = percent;
this.fps = fps;
};
dojo.extend(dojo.animation.AnimationEvent, {
coordsAsInts: function() {
// summary: Coerce the coordinates into integers.
var cints = new Array(this.coords.length);
for(var i = 0; i < this.coords.length; i++) {
cints[i] = Math.round(this.coords[i]);
}
return cints;
}
});