
var ActiveTD = null;

var OpenMenus = new Array();
var thetime=400;

function MouseIn(theTD, menuId)
{
	if (ActiveTD)
		MouseOut(ActiveTD);

	ActiveTD = theTD;

	// show the menu:
	if (menuId)
	{
		var PopupMenu = document.getElementById(menuId);
		PopupMenu.style.display="block";

		var bAlreadyOpen = false;

		for (var i = 0; i < OpenMenus.length; i++)
		{
			if (OpenMenus[i][0] == menuId)
			{
				if (OpenMenus[i][1])
				{
					clearTimeout(OpenMenus[i][1]);
					OpenMenus[i][1] = null;
				}

				bAlreadyOpen = true;
			}
			else
			{
				if (OpenMenus[i][1])
				{
					clearTimeout(OpenMenus[i][1]);
					OpenMenus[i][1] = null;
				}

				var PopupMenu = document.getElementById(OpenMenus[i][0]);
				PopupMenu.style.display="none";
			}
		}

		if (!bAlreadyOpen)
			OpenMenus[OpenMenus.length] = new Array(menuId, null);
	}
}

function MouseOut(theTD, menuId)
{
	ActiveTD = null;

	// Set a timeout to hide the menu
	if (menuId)
	{
		var newTimeOut = setTimeout("document.getElementById('"+menuId+"').style.display='none'", thetime);

		for (var i = 0; i < OpenMenus.length; i++)
		{
			if (OpenMenus[i][0] == menuId)
			{
				if (OpenMenus[i][1])
				{
					clearTimeout(OpenMenus[i][1]);
					OpenMenus[i][1] = null;
				}

				OpenMenus[i][1] = newTimeOut;

				return;
			}
		}

		OpenMenus[OpenMenus.length] = new Array(menuId, newTimeOut);
	}
}


