	var initMouseX, initMouseY;
	var panning=false;
	function initDrag()
	{
		if (event.button == 1)
		{
			initMouseX = window.event.x;
			initMouseY = window.event.y;
        }
	}
	
	function ignoreDragDrop()
	{
		event.returnValue = false;
	}
	
	function doDrag()
	{
		if (event.button == 1 || panning)
		{
            var dX = event.x - initMouseX;
            var dY = event.y - initMouseY;
            
            if (!panning && 
                (Math.abs(dX) > 0 || Math.abs(dY) > 0))
            {
    			panning = true;
            }
            
            window.scrollBy(-dX, -dY);

			initMouseX = window.event.x;
			initMouseY = window.event.y;
		}
	}
	
	function endDrag()
	{
		if (panning)
		{
			panning = false;
			event.returnValue = false;
		}
	}
