




function blockbodyrclick(msg) {
	if(document.layers) document.captureEvents(Event.MOUSEDOWN);
	eleaddevent('mousedown',function(e){bodyrclick(e,msg);},document);
	//document.oncontextmenu=new Function("alert('Welcome');return false")
	document.oncontextmenu=new Function("return false")
}
function bodyrclick(e,msg) {
	if(navigator.appName=='Microsoft Internet Explorer'){ if(e.button==2||e.button==3){
		if(msg) alert(msg);
		//return false;
	}} else if(document.layers||document.getElementById&&!document.all){ if(e.which==2||e.which==3){
		if(msg) alert(msg);
		return false;
	}}
}
function blockimgrclick(msg) {	
	if(document.images) {
		for(var i=0;i<document.images.length;i++) {
			eleaddevent('mousedown',function(e){imgrclick(e,msg);},document.images[i]);
			eleaddevent('mouseup',function(e){imgrclick(e,msg);},document.images[i]);
		}
	}
}
function imgrclick(e,msg) {
	if(navigator.appName=='Netscape'){ if(e.which==3){
		//window.location.reload(false);
		if(msg) alert(msg);
		return false;
	}} else if(navigator.appName=='Microsoft Internet Explorer'){ if(e.button==2){
		//window.location.reload(false);
		if(msg) alert(msg);
		return false;
	}} else return true;
}





function blockbodywheel() {
	if(isff()) eleaddevent('DOMMouseScroll',function(e){if(!e)e=window.event;if(e.preventDefault)e.preventDefault();e.returnValue=false;},window);
	else eleaddevent('mousewheel',function(e){if(!e)e=window.event;if(e.preventDefault)e.preventDefault();e.returnValue=false;},document);
	var sct=document.body.scrollTop; var scl=document.body.scrollLeft;
	eleaddevent('scroll',function(){window.scrollTo(scl,sct);},window);
}
function unblockbodywheel() {
	if(isff()) eleremoveevent('DOMMouseScroll',function(e){if(!e)e=window.event;if(e.preventDefault)e.preventDefault();e.returnValue=false;},window);
	else eleremoveevent('mousewheel',function(e){if(!e)e=window.event;if(e.preventDefault)e.preventDefault();e.returnValue=false;},document);
	var sct=document.body.scrollTop; var scl=document.body.scrollLeft;
	eleremoveevent('scroll',function(){window.scrollTo(scl,sct);},window);
}





/** Initialization code. 
 * If you use your own event management code, change it as required.
 */
function mwheelinit() {
    if(window.addEventListener) window.addEventListener('DOMMouseScroll',mwheel,false); // DOMMouseScroll is for mozilla.
    window.onmousewheel=document.onmousewheel=mwheel; // IE/Opera
}
/** Event handler for mouse wheel event.
 */
function mwheel(event) {
    var delta=0;
    if(!event) event=window.event;/* For IE. */
    if(event.wheelDelta) { /* IE/Opera. */
        delta=event.wheelDelta/120;
        /** In Opera 9, delta differs in sign as compared to IE.
        */
        if(window.opera) delta=-delta;
    } else if(event.detail) { /** Mozilla case. */
        /** In Mozilla, sign of delta is different than in IE.
        * Also, delta is multiple of 3.
        */
        delta=-event.detail/3;
    }
    /** If delta is nonzero, handle it.
    * Basically, delta is now positive if wheel was scrolled up,
    * and negative, if wheel was scrolled down.
    */
    if(delta) mwheelhandle(delta);
    /** Prevent default actions caused by mouse wheel.
    * That might be ugly, but we handle scrolls somehow
    * anyway, so don't bother here..
    */
    if(event.preventDefault) event.preventDefault();
	event.returnValue=false;
}
/** This is high-level function; REPLACE IT WITH YOUR CODE.
* It must react to delta being more/less than zero.
*/
function mwheelhandle(delta) {
	if(delta<0) { // wheel down
		/* something. */;
	} else { // wheel up
		/* something. */;
	}
}





var mabsx=0;
function updatemouseabsx(e) {
    if(document.all&&document.body&&event.clientX){ mabsx=event.clientX+document.body.scrollLeft; } // IE
    else{ e=e||window.event; mabsx=e.pageX; }
    if(mabsx<0) mabsx=0; // prevent any negative values
}
var mabsy=0;
function updatemouseabsy(e) {
    if(document.all&&document.body&&event.clientY){ mabsy=event.clientY+document.body.scrollTop; } // IE
    else{ e=e||window.event; mabsy=e.pageY; }
    if(mabsy<0) mabsy=0; // prevent any negative values
}
function mabsposinit() {
	eleaddevent('mousemove',updatemouseabsx,document);
	eleaddevent('mousemove',updatemouseabsy,document);
}
function getmouseabsx() {
	return mabsx;
}
function getmouseabsy() {
	return mabsy;
}
function getmouserelx(ele) {
	return getmouseabsx()-velegetabsx(ele);
}
function getmouserely(ele) {
	return getmouseabsy()-velegetabsy(ele);
}





