public/ckeditor/_source/core/tools.js
function( func, milliseconds, scope, args, ownerWindow )
		{
			if ( !ownerWindow )
				ownerWindow = window;

			if ( !scope )
				scope = ownerWindow;

			return ownerWindow.setTimeout(
				function()
				{
					if ( args )
						func.apply( scope, [].concat( args ) ) ;
					else
						func.apply( scope ) ;
				},
				milliseconds || 0 );
		}
function( func, milliseconds, scope, args, ownerWindow )
		{
			if ( !ownerWindow )
				ownerWindow = window;

			if ( !scope )
				scope = ownerWindow;

			return ownerWindow.setTimeout(
				function()
				{
					if ( args )
						func.apply( scope, [].concat( args ) ) ;
					else
						func.apply( scope ) ;
				},
				milliseconds || 0 );
		}
function ( func , milliseconds , scope , args , ownerWindow ) { if ( ! ownerWindow ) ownerWindow = window ; if ( ! scope ) scope = ownerWindow ; return ownerWindow . setTimeout ( function ( ) { if ( args ) func . apply ( scope , [ ] . concat ( args ) ) ; else func . apply ( scope ) ; } , milliseconds || 0 ) ; }
Executes a function after specified delay.
@param {Function} func The function to be executed.
@param {Number} [milliseconds] The amount of time (millisecods) to wait
to fire the function execution. Defaults to zero.
@param {Object} [scope] The object to hold the function execution scope
(the "this" object). By default the "window" object.
@param {Object|Array} [args] A single object, or an array of objects, to
pass as arguments to the function.
@param {Object} [ownerWindow] The window that will be used to set the
timeout. By default the current "window".
@returns {Object} A value that can be used to cancel the function execution.
@example
CKEDITOR.tools.<b>setTimeout(
function()
{
alert( 'Executed after 2 seconds' );
},
2000 )</b>;
Executes a function after specified delay .