/**
* @author:liyong
* @用途:注册事件进行传递参数的代理类
* @date:2008.8.26
* @盗版
* @example:
* import com.ultra.sla.topology.util
stage.addEventListener(MouseEvent.MOUSE_DOWN,EventDelegate.create(mouseDownHandler,"a","b"));
function mouseDownHandler(e:MouseEvent,...arg) {
trace(e)
trace(arg)
}
*/
package com.ultra.sla.util
{
public class EventDelegate
{
public function EventDelegate():void{
}
public static function create(f:Function,... arg):Function {
var F:Boolean=false;
var _f:Function=function(e:*,..._arg):void{
_arg=arg
!F?(F=true,_arg.unshift(e)):_arg[0]=e
f.apply(null,_arg)
};
return _f;
}
public static function toString():String {
return "Class EventDelegate";
}
}
}