// create namespace
Core.createNamespace('nl.code.fx');

/**
 * Custum Chain Fx Class
 *
 * Events 'onComplete'
 */
nl.code.fx.Pause = new Class({
    /**
     * @implements Options, Events
     */
    Implements: [Options, Events],

    /**
     * @var Number
     */
    interval: null,

    /**
     * @var Object
     */
    options: {
        milliseconds: 100
    },

    /**
     * Constructor
     *
     * @param Object
     */
    initialize: function(options) {
        this.setOptions(options);
    },

    /**
     * @return void
     */
    start: function() {
        this.interval = this.onComplete.delay(this.options.milliseconds, this);
    },

    /**
     * @return void
     */
    cancel: function() {
        $clear(this.interval);
    },

    /**
     * @return void
     */
    onComplete: function() {
        this.fireEvent('onComplete');
    }
});