// Copyright Mihai Bazon, 2002.  All rights reserved.

function navBarEnterObj(ev) {
	navBarEnter(this, ev);
};

function navBarEnter(el, ev) {
	if (!isOutside(el, ev)) {
		addClass(el, "navsechl");
		el.onmouseout = navBarExit;
		el.onmouseover = null;
	}
};

function navBarExit(ev) {
	if (isOutside(this, ev)) {
		this.onmouseover = navBarEnterObj;
		removeClass(this, "navsechl");
	}
};

function changeClass(ev, el, cl) {
	el.className = cl;
};

var currentMenu = null;

function showNavMenu(caller, ev, nbid) {
	if (caller.id == relatedId(ev)) return;
	if (caller.className != 'menutitledisabled')
		addClass(caller, 'menutitlehl');
	var id = 'nm' + caller.id.substr(3);
	var menu = document.getElementById(id);
	var style = menu.style;
	var pos = getAbsolutePos(caller);
	style.left = pos.x - 20 + caller.offsetWidth + 'px';
	style.top  = pos.y + 'px';
	menu.onmouseout = outMenu;
	menu.onmouseover = inMenu;
	caller.onmouseout = hideNavMenu;
	if (currentMenu) {
		currentMenu.style.visibility = 'hidden';
		currentMenu.className = 'navmenu';
	}
	currentMenu = menu;
	style.visibility = 'visible';
	return false;
};

function hideNavMenu(ev) {
	if (isOutside(this, ev) && this.className != 'menutitledisabled')
		removeClass(this, 'menutitlehl');
	if (currentMenu && isOutside(currentMenu, ev)) {
		currentMenu.className = 'navmenu';
		currentMenu.style.visibility = 'hidden';
		currentMenu = null;
	}
};

function inMenu(ev) {
	addClass(this, 'navmenuhl');
	this.style.visibility = 'visible';
	currentMenu = this;
};

function outMenu(ev) {
	if (isOutside(this, ev)) {
		removeClass(this, 'navmenuhl');
		this.style.visibility = 'hidden';
		currentMenu = null;
	}
};
