qcodo._objTimers=new Object();qcodo.clearTimeout=function(strTimerId){if(qcodo._objTimers[strTimerId]){clearTimeout(qcodo._objTimers[strTimerId]);qcodo._objTimers[strTimerId]=null}};qcodo.setTimeout=function(strTimerId,strAction,intDelay){qcodo.clearTimeout(strTimerId);qcodo._objTimers[strTimerId]=setTimeout(strAction,intDelay)};qcodo.handleEvent=function(objEvent){objEvent=(objEvent)?objEvent:((typeof(event)=="object")?event:null);if(objEvent){if(typeof(objEvent.clientX)!="undefined"){if(qcodo.isBrowser(qcodo.SAFARI)){qcodo.mouse.x=objEvent.clientX-window.document.body.scrollLeft;qcodo.mouse.y=objEvent.clientY-window.document.body.scrollTop;qcodo.client.x=objEvent.clientX-window.document.body.scrollLeft;qcodo.client.y=objEvent.clientY-window.document.body.scrollTop}else{qcodo.mouse.x=objEvent.clientX;qcodo.mouse.y=objEvent.clientY;qcodo.client.x=objEvent.clientX;qcodo.client.y=objEvent.clientY}}if(qcodo.isBrowser(qcodo.IE)){qcodo.mouse.left=((objEvent.button&1)?true:false);qcodo.mouse.right=((objEvent.button&2)?true:false);qcodo.mouse.middle=((objEvent.button&4)?true:false)}else if(qcodo.isBrowser(qcodo.SAFARI)){qcodo.mouse.left=((objEvent.button&&!objEvent.ctrlKey)?true:false);qcodo.mouse.right=((objEvent.button&&objEvent.ctrlKey)?true:false);qcodo.mouse.middle=false}else{qcodo.mouse.left=(objEvent.button==0);qcodo.mouse.right=(objEvent.button==2);qcodo.mouse.middle=(objEvent.button==1)}qcodo.key.alt=(objEvent.altKey)?true:false;qcodo.key.control=(objEvent.ctrlKey)?true:false;qcodo.key.shift=(objEvent.shiftKey)?true:false;qcodo.key.code=(objEvent.keyCode)?(objEvent.keyCode):0;if(objEvent.originalTarget)qcodo.target=objEvent.originalTarget;else if(objEvent.srcElement)qcodo.target=objEvent.srcElement;else qcodo.target=null}if(window.document.compatMode=="BackCompat"){qcodo.client.width=(qcodo.isBrowser(qcodo.SAFARI))?window.innerWidth:window.document.body.clientWidth;qcodo.client.height=(qcodo.isBrowser(qcodo.SAFARI))?window.innerHeight:window.document.body.clientHeight;qcodo.page.width=Math.max(window.document.body.scrollWidth,qcodo.client.width);qcodo.page.height=Math.max(window.document.body.scrollHeight,qcodo.client.height);qcodo.scroll.x=window.scrollX||window.document.body.scrollLeft;qcodo.scroll.y=window.scrollY||window.document.body.scrollTop}else if(qcodo.isBrowser(qcodo.SAFARI)){qcodo.client.width=window.innerWidth;qcodo.client.height=window.innerHeight;qcodo.page.width=Math.max(window.document.body.scrollWidth,qcodo.client.width);qcodo.page.height=Math.max(window.document.body.scrollHeight,qcodo.client.height);qcodo.scroll.x=window.scrollX||window.document.body.scrollLeft;qcodo.scroll.y=window.scrollY||window.document.body.scrollTop}else if(qcodo.isBrowser(qcodo.IE)){qcodo.client.width=window.document.documentElement.offsetWidth;qcodo.client.height=window.document.documentElement.offsetHeight;qcodo.page.width=Math.max(window.document.documentElement.scrollWidth,qcodo.client.width);qcodo.page.height=Math.max(window.document.documentElement.scrollHeight,qcodo.client.height);qcodo.scroll.x=window.document.documentElement.scrollLeft;qcodo.scroll.y=window.document.documentElement.scrollTop}else{qcodo.client.width=window.document.body.clientWidth;if(window.scrollMaxX)qcodo.client.height=window.document.body.clientHeight-window.scrollMaxY;else qcodo.client.height=window.innerHeight;qcodo.page.width=window.scrollMaxX+qcodo.client.width;qcodo.page.height=window.scrollMaxY+qcodo.client.height;qcodo.scroll.x=window.scrollX||window.document.body.scrollLeft;qcodo.scroll.y=window.scrollY||window.document.body.scrollTop}qcodo.page.x=qcodo.mouse.x+qcodo.scroll.x;qcodo.page.y=qcodo.mouse.y+qcodo.scroll.y;qcodo.scroll.width=qcodo.page.width-qcodo.client.width;qcodo.scroll.height=qcodo.page.height-qcodo.client.height;return objEvent};qcodo.terminateEvent=function(objEvent){objEvent=qcodo.handleEvent(objEvent);if(objEvent){if(objEvent.preventDefault)objEvent.preventDefault();if(objEvent.stopPropagation)objEvent.stopPropagation();objEvent.cancelBubble=true;objEvent.returnValue=false}return false};qcodo.key={control:false,alt:false,shift:false,code:null};qcodo.mouse={x:0,y:0,left:false,middle:false,right:false};qcodo.client={x:null,y:null,width:null,height:null};qcodo.page={x:null,y:null,width:null,height:null};qcodo.scroll={x:window.scrollX||window.document.body.scrollLeft,y:window.scrollY||window.document.body.scrollTop,width:window.document.body.scrollWidth-qcodo.client.width,height:window.document.body.scrollHeight-qcodo.client.height};