if(!gBrowserDetector)
var gBrowserDetector=new RBrowserDetector();function Mixin_HandlesEvents(onClick,onMouseOver,onMouseDown,onMouseOut)
{this.SetOnClick(onClick);this.SetOnMouseOver(onMouseOver);this.SetOnMouseDown(onMouseDown);this.SetOnMouseOut(onMouseOut);}
Mixin_HandlesEvents.prototype.SetEventHandler=function(handler,jsToExecute)
{var ourNode=this.GetDomNode();if('function'==typeof(jsToExecute))
{if(gBrowserDetector.gecko||gBrowserDetector.khtml)
{handler=handler.substr(2);ourNode.addEventListener(handler,jsToExecute,false);}
else
{var toEval="ourNode."+handler+" = jsToExecute;";eval(toEval);}}
else
{if(gBrowserDetector.gecko||gBrowserDetector.khtml)
{handler=handler.substr(2);ourNode.addEventListener(handler,function(event){eval(jsToExecute);},false);}
else
{var toEval="ourNode."+handler+" = function(){eval(jsToExecute); };";eval(toEval);}}}
Mixin_HandlesEvents.prototype.SetOnClick=function(onClick)
{this.SetEventHandler("onclick",onClick);}
Mixin_HandlesEvents.prototype.SetOnMouseOver=function(onMouseOver)
{this.SetEventHandler("onmouseover",onMouseOver);}
Mixin_HandlesEvents.prototype.SetOnMouseDown=function(onMouseDown)
{this.SetEventHandler("onmousedown",onMouseDown);}
Mixin_HandlesEvents.prototype.SetOnMouseOut=function(onMouseOut)
{this.SetEventHandler("onmouseout",onMouseOut);}
Mixin_HandlesEvents.prototype.SetOnMouseUp=function(onMouseUp)
{this.SetEventHandler("onmouseup",onMouseUp);}