1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- /**
- * This is the base class for {@link Ext.ux.event.Recorder} and {@link Ext.ux.event.Player}.
- */
- Ext.define('Ext.ux.event.Driver', {
- active: null,
- mixins: {
- observable: 'Ext.util.Observable'
- },
- constructor: function (config) {
- var me = this;
- me.mixins.observable.constructor.apply(this, arguments);
- me.addEvents(
- /**
- * @event start
- * Fires when this object is started.
- * @param {Ext.ux.event.Driver} this
- */
- 'start',
- /**
- * @event stop
- * Fires when this object is stopped.
- * @param {Ext.ux.event.Driver} this
- */
- 'stop'
- );
- },
- getTime: function () {
- return new Date().getTime();
- },
- /**
- * Returns the number of milliseconds since start was called.
- */
- getTimestamp: function () {
- var d = this.getTime();
- return d - this.startTime;
- },
- onStart: function () {},
- onStop: function () {},
- /**
- * Starts this object. If this object is already started, nothing happens.
- */
- start: function () {
- var me = this;
- if (!me.active) {
- me.active = new Date();
- me.startTime = me.getTime();
- me.onStart();
- me.fireEvent('start', me);
- }
- },
- /**
- * Stops this object. If this object is not started, nothing happens.
- */
- stop: function () {
- var me = this;
- if (me.active) {
- me.active = null;
- me.onStop();
- me.fireEvent('stop', me);
- }
- }
- });
|