
var ie4 = (document.all && !document.getElementById) ? true : false;
var ie5 = (document.all && document.getElementById) ? true : false;
var ns6 = (!document.all && document.getElementById) ? true : false;
var ns4 = (document.layers) ? true : false;

var drawsymbol_mouseDownX = -1, drawsymbol_mouseDownY = -1, drawsymbol_mapLeft = 0, drawsymbol_mapTop = 0;
var drawsymbol_bgLyr;
var drawsymbol_started = false;
var drawsymbol_handlerFunction = null;

function drawsymbolTool (mapLeft, mapTop, mapWidth, mapHeight) {
	drawsymbol_mapLeft = mapLeft+1;
	drawsymbol_mapTop = mapTop+1;
	
	var	drawsymbol_bgLyrContent = '<img border=0  src="images/spacer.gif" vspace="0" hspace="0"' +
				' width=' + mapWidth + ' height=' + mapHeight + 
				' style="POSITON:ABSOLUTE;  LEFT:' + mapLeft + '; TOP: ' + mapTop + 
				'; cursor:crosshair' +
				';">';
	createLayer('drawsymbol_bgLyr', null, mapLeft, mapTop, mapWidth, mapHeight, drawsymbol_bgLyrContent, '', 'hidden');
	
	if (ie4 || ie5) {
		drawsymbol_bgLyr = document.all['drawsymbol_bgLyr'];
	} else if (ns6) {
		drawsymbol_bgLyr = document.getElementById('drawsymbol_bgLyr');
	} else if (ns4) {
		drawsymbol_bgLyr = document.layers['drawsymbol_bgLyr'];	
		drawsymbol_bgLyr.captureEvents(Event.MOUSEUP | Event.MOUSEDOWN);
	}
	drawsymbol_bgLyr.onmousedown = drawsymboltoolMouseDown;
	drawsymbol_bgLyr.onmouseup = drawsymboltoolMouseUp;

	this.addListener = drawsymboltoolAddListener;
	this.start = drawsymboltoolStart;
	this.stop = drawsymboltoolStop;
	this.getPoint = drawsymboltoolGetClickedPoint;
	this.getPointX = drawsymboltoolGetClickedPointX;
	this.getPointY = drawsymboltoolGetClickedPointY;
	
}

function drawsymboltoolStart () {
	drawsymboltoolShowHideDrawingLyr(true);
	drawsymbol_started = true;
}
function drawsymboltoolStop () {
	drawsymboltoolShowHideDrawingLyr(false);
	drawsymbol_started = false;
}
function drawsymboltoolAddListener (handlerFunction) {
	if (handlerFunction != null || handlerFunction != '') {
		drawsymbol_handlerFunction = handlerFunction;
		if (drawsymbol_handlerFunction.lastIndexOf(')') == -1) {
			drawsymbol_handlerFunction += '()';
		} 
	}
}
function drawsymboltoolGetClickedPoint () {
	return new Array(drawsymbol_mouseDownX-drawsymbol_mapLeft, drawsymbol_mouseDownY-drawsymbol_mapTop);
}
function drawsymboltoolGetClickedPointX () {
	return (drawsymbol_mouseDownX-drawsymbol_mapLeft);
}
function drawsymboltoolGetClickedPointY () {
	return (drawsymbol_mouseDownY-drawsymbol_mapTop);
}
function drawsymboltoolShowHideDrawingLyr (show) {
	if (ie4 || ie5 || ns6) {
		drawsymbol_bgLyr.style.visibility = (show)? 'visible' : 'hidden';
	} else if (ns4) {
		drawsymbol_bgLyr.visibility = (show) ? 'show' : 'hide'; 
	} 
}

function drawsymboltoolMouseDown (e) {
	if ((ns4 && e.which == 1) || (ns6 && e.button == 0) || ((ie4 || ie5) && window.event.button == 1)) {
    	var x = (ns4 || ns6)? e.pageX : event.x;
        var y = (ns4 || ns6)? e.pageY : event.y+document.body.scrollTop;
		if (drawsymbol_started) {
			drawsymbol_mouseDownX = x;
			drawsymbol_mouseDownY = y;
		}
		return false;
	}
	return true;
}
function drawsymboltoolMouseUp (e) {
	if ((ns4 && e.which == 1) || (ns6 && e.button == 0) || ((ie4 || ie5) && window.event.button == 1)) {
    	var x = (ns4 || ns6)? e.pageX : event.x;
        var y = (ns4 || ns6)? e.pageY : event.y+document.body.scrollTop;
		if (drawsymbol_started && x == drawsymbol_mouseDownX && y == drawsymbol_mouseDownY) {
			if (drawsymbol_handlerFunction != null) {
				eval (drawsymbol_handlerFunction);
			}
			var reqForm = getReqForm();
			var onloadfilename = reqForm.OnloadGif.value
			var onLoadGifImage = "<table><tr><td><img src='"+ onloadfilename +"' name='OnloadGif' id='OnloadGif' border='0'></td></tr></table>"
			
			document.all['ShowWaitGif'].innerHTML = onLoadGifImage
			reqForm.DrawLines.value = drawsymboltoolGetClickedPointX() + "," + drawsymboltoolGetClickedPointY()
			reqForm.submit();
			
		} else {
			drawsymbol_mouseDownX = -1;
			drawsymbol_mouseDownY = -1;
		}
		return false;
	}
	return true;
}


