var Inknal_enter_menu_time = Array();
var Inknal_leave_menu_time = Array();

function getParentMenu(name)
{
	var obj = document.getElementById('toolbar-'+name);
	while(obj != null && obj.parentNode.id == '')
		obj = obj.parentNode;
	if (obj == null)
		return null; 
	return obj.parentNode.id.replace('menu-', '');
}

function ShowMenu(name, where)
{
	var tool_object = document.getElementById('toolbar-'+name);
	var menu_object = document.getElementById('menu-'+name);
	
	if(where == 'under')
	{
		menu_object.style.left = getLeft(tool_object);
		menu_object.style.top = getTop(tool_object)+getHeight(tool_object);
	} else if(where == 'right') {
		menu_object.style.left = getLeft(tool_object)+getWidth(tool_object);
		menu_object.style.top = getTop(tool_object);
	}
	menu_object.style.visibility = 'visible';
}

function TestOverMenu(name, force)
{
	if(force || Inknal_leave_menu_time[name] > Inknal_enter_menu_time[name])
	{
		var parent = getParentMenu(name);
		var menu_object = document.getElementById('menu-'+name);
		
		if(menu_object != null)
			menu_object.style.visibility = 'hidden';
		if(parent != null)
			TestOverMenu(parent, true);
	}
}

function OverMenu(name)
{
	var parent = getParentMenu(name);
	var d = new Date();
	
	Inknal_enter_menu_time[name] = d.getTime();
	if(parent != null)
		OverMenu(parent); /* Do not close parent menus */
	OverToolbar(); /* Do not close the toolbar either */
}

function LeaveMenu(name)
{
	var d = new Date();
	
	Inknal_leave_menu_time[name] = d.getTime();
	setTimeout("TestOverMenu('"+name+"',false);", 300);
	LeaveToolbar(); /* Also close the toolbar */
}

