// Copyright (C) 1999 Richard Goode
// Email <bigfat1@hotmail.com>
// If you use this code, please let me know.
// Please leave these comment lines intact.

var local = false;

function initLayers(n) {
	for (var i = 1; i <= n; i++) {
	if (n4) {
	div[i] = eval("document.div" + i);
	div[i].xpos = div[i].left;
	div[i].ypos = div[i].top;
	div[i].w = div[i].clip.width;
	div[i].h = div[i].clip.height;
	}
	if (ie4) {
	div[i] = eval("div" + i);
	div[i].xpos = div[i].style.pixelLeft;
	div[i].ypos = div[i].style.pixelTop;
	div[i].w = div[i].style.pixelWidth;
	div[i].h = div[i].style.pixelHeight;
	}
	if (ie5) {
	div[i] = eval("div" + i);
	div[i].xpos = div[i].offsetLeft;
	div[i].ypos = div[i].offsetTop;
	div[i].w = div[i].offsetWidth;
	div[i].h = div[i].offsetHeight;
	}
	if (n5) {
	div[i] = document.getElementById("div" + i);
	div[i].xpos = parseInt(div[i].style.left)
	div[i].ypos = parseInt(div[i].style.top)
	div[i].w = parseInt(div[i].style.width)
	div[i].h = parseInt(div[i].style.height)
//	div[i].style.x = parseInt(div[i].style.left)
//	div[i].style.y = parseInt(div[i].style.top)
//	div[i].style.w = parseInt(div[i].style.width)
//	div[i].style.h = parseInt(div[i].style.height)
}}}

function shiftTo(object,x,y) {
	object.xpos = x;
	object.ypos = y;

	if (ie) {
	object.style.pixelLeft = object.xpos;
	object.style.pixelTop = object.ypos;
	}
	if (n4) {
	object.left = object.xpos;
	object.top = object.ypos;
	}
	if (n5) {
	object.style.left = object.xpos;
	object.style.top = object.ypos;
	}}

function clipBy(object,t,r,b,l) {
	if (n4) {
	object.clip.top = t;
	object.clip.right = r;
	object.clip.bottom = b;
	object.clip.left = l;
	}
	if (ie) {
	object.style.clip = "rect(" + t + "px "+ r + "px " + b + "px " + l + "px)";
	}
	}

function showObject(object) {
	if (n4) object.visibility = "show";
	if (ie) object.style.visibility = "visible";
	}

function hideObject(object) {
	if (n4) object.visibility = "hide";
	if (ie) object.style.visibility = "hidden";
	}

function showNestedLayer(id,parent) {
	if (n4) document.layers[parent].document.layers[id].visibility = "show"
	else if (ie) document.all[id].style.visibility = "visible"
	}

function hideNestedLayer(id,parent) {
	if (n4) document.layers[parent].document.layers[id].visibility = "hide"
	else if (ie) document.all[id].style.visibility = "hidden"
	}

function eventXcoord(e) {
	if (n4) { var x = e.pageX }
	if (ie) { var x = event.x + document.body.scrollLeft }
	return x;
	}

function eventYcoord(e) {
	if (n4) { var y = e.pageY }
	if (ie) { var y = event.y + document.body.scrollTop }
	return y;
	}

function canvasWidth() {
	if (n4) { x = innerWidth; }
	if (n5) x = 800;
	if (ie) { x = document.body.clientWidth; }
	return x;
	}

function canvasHeight() {
	if (n4) {
	x = innerHeight;
	}
	if (ie) {
	x = document.body.clientHeight;
	}
	if (n5) x = 500;
	return x;
	}

function layerWrite(object,content) {
	if (n4) {
	var lyr = object.document;
	lyr.open();
	lyr.write(content);
	lyr.close();
	}
	else if (ie) object.innerHTML = content;
	}

function setZIndex(object,z) {
	if (ie) {object.style.zIndex = z;}
	if (n4) {object.zIndex = z;}
	}

function getZIndex(object) {
	var z;
	if (ie) {z = object.style.zIndex;}
	if (n4) {z = object.zIndex;}
	return z;
	}
	
function ddMouseDown(e) {
	if (interactive) {
	currentObj = whichObj(e);
	if (currentObj != null) {
	dragObj = div[currentObj]
	dragActive = true;
	x = eventXcoord(e);
	y = eventYcoord(e);
	dragClickX = x - dragObj.xpos
	dragClickY = y - dragObj.ypos
	return false;
	}
	else return true;
	}}

function ddMouseMove(e) {
	if (interactive) {
	if (dragActive) {
	x = eventXcoord(e);
	y = eventYcoord(e);
	dragObj.xpos = x - dragClickX
	dragObj.ypos = y - dragClickY
	shiftTo(dragObj,dragObj.xpos,dragObj.ypos)
	return false
	}
	else return true;
	}}

function ddMouseUp(e) {
	if (interactive) {
	x = eventXcoord(e);
	y = eventYcoord(e);
	dragActive = false;
	return true;
	}}

function whichObj(e) {
	var hit= null;
	x = eventXcoord(e);
	y = eventYcoord(e);
	for (var i= 1; i < div.length; i++) {
	if ((x>=div[i].xpos && x<=div[i].xpos+div[i].w && y>=div[i].ypos && y<=div[i].ypos+div[i].h)) {
	hit= i;
	break;
	}
	}
	return hit;
	}


