
var subMenuID = new Array(1)
subMenuID[0] = "Selection-subMenu";

function mousedOverMenu(elem, parent, displayedVertically)
{
	stopTick();
	// only close the subMenus if we are mousing over a top-level menu
	closeSubMenus(elem);
	if (elem.onclick != null) elem.style.cursor = 'pointer';
	// Display child menu if needed
	var childID = elem.id + "-subMenu";
	if (document.getElementById(childID) != null)
	{
		// make the child menu visible and specify that its position is specified in absolute coordinates
		document.getElementById(childID).style.display = 'block';
		document.getElementById(childID).style.position = 'absolute';	

		if (displayedVertically)
		{
			// Set the child menu's left and top attributes according to the menu's offsets
			document.getElementById(childID).style.left = getAscendingLefts(parent) + parent.offsetWidth - 0;
			document.getElementById(childID).style.top = getAscendingTops(elem) - 0;
		}
		else
		{
		// Set the child menu's left and top attributes according to the menu's offsets
		document.getElementById(childID).style.left = getAscendingLefts(elem);
		document.getElementById(childID).style.top = getAscendingTops(parent) + parent.offsetHeight;
		if (document.getElementById(childID).offsetWidth < elem.offsetWidth)
		document.getElementById(childID).style.width = elem.offsetWidth;
		}
	}
}

function mousedOutMenu(elem)
{
	doTick();
}

function closeSubMenus(parent)
{
	// Hide **all** lower-ordered submenus
	for (var i = 0; i < subMenuID.length; i++)
		if (subMenuID[i].length > parent.id.length)
	document.getElementById(subMenuID[i]).style.display = 'none';
}


function getAscendingLefts(elem)
{
	if (elem == null)
		return 0;
	else
		return elem.offsetLeft + getAscendingLefts(elem.offsetParent);
}


function getAscendingTops(elem)
{
	if (elem == null)
		return 0;
	else
		return elem.offsetTop + getAscendingTops(elem.offsetParent);
}



var clockValue = 0;
var ticker;
var DELAY_BOUND = 1;

function doTick()
{
	if (clockValue > DELAY_BOUND)
	{
		stopTick();
		closeSubMenus(document.getElementById('Selection'));
	}
	else
	{
		clockValue++;
		ticker = setTimeout("doTick();", 50);
	}
}

function stopTick()
{
	clockValue = 0;
	clearTimeout(ticker);
}

