123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- if (!dojo._hasResource["dojox.timing._base"]) { // _hasResource checks added by
- // build. Do not use
- // _hasResource directly in your
- // code.
- dojo._hasResource["dojox.timing._base"] = true;
- dojo.provide("dojox.timing._base");
- dojo.experimental("dojox.timing");
- dojox.timing.Timer = function(/* int */interval) {
- // summary: Timer object executes an "onTick()" method repeatedly at a
- // specified interval.
- // repeatedly at a given interval.
- // interval: Interval between function calls, in milliseconds.
- this.timer = null;
- this.isRunning = false;
- this.interval = interval;
- this.onStart = null;
- this.onStop = null;
- };
- dojo.extend(dojox.timing.Timer, {
- onTick : function() {
- // summary: Method called every time the interval passes.
- // Override to do something useful.
- },
- setInterval : function(interval) {
- // summary: Reset the interval of a timer, whether running
- // or not.
- // interval: New interval, in milliseconds.
- if (this.isRunning) {
- window.clearInterval(this.timer);
- }
- this.interval = interval;
- if (this.isRunning) {
- this.timer = window.setInterval(dojo.hitch(this,
- "onTick"), this.interval);
- }
- },
- start : function() {
- // summary: Start the timer ticking.
- // description: Calls the "onStart()" handler, if defined.
- // Note that the onTick() function is not called right away,
- // only after first interval passes.
- if (typeof this.onStart == "function") {
- this.onStart();
- }
- this.isRunning = true;
- this.timer = window.setInterval(dojo.hitch(this, "onTick"),
- this.interval);
- },
- stop : function() {
- // summary: Stop the timer.
- // description: Calls the "onStop()" handler, if defined.
- if (typeof this.onStop == "function") {
- this.onStop();
- }
- this.isRunning = false;
- window.clearInterval(this.timer);
- }
- });
- }
|