function TopMenuHandler(){
	var menuHeight = 25;

	this.menuLayout = function(spanArray){
		var table = document.getElementById("menuTable");
		var tablebody = document.createElement("tbody");
		table.appendChild(tablebody);
		
		for(var i = 0; i < spanArray.length;i++){
			var tr = document.createElement("tr");	
			tr.height = menuHeight;
			tablebody.appendChild(tr);
			var td = document.createElement("td");
			td.setAttribute("className", "menu");
			td.setAttribute("width", "100");
			tr.appendChild(td);
			td.appendChild(spanArray[i]);
		}
	}
	this.acceptCategory = function(menu){
		return (menu.order > -1);
	}
	this.createCategoryArray = function (menu){
		var span = document.createElement("span");
		var img = document.createElement("img");
		img.src = "gui/tag_purple.gif";
		img.align = "absMiddle";
		span.image = img;
		span.appendChild(img);
		span.title = menu.title;
		return span;
	}
	this.fireCategorySelected = function(categorySpan,menuCategory){
	}
	this.menuMouseOver = function(){
		this.style.color = "red";
		this.style.cursor = "pointer";
		this.image.src = "gui/tag_red.gif";
	}
	this.menuMouseOut = function(){
		this.style.color = "black";
		this.style.cursor = "default";
		this.image.src = "gui/tag_purple.gif";
	}
	this.createMenuItemMenu = function(){
	}
	this.createMenuItem = function(menuCategory){
		setEnebleBackGround(false);
	
		var table = document.getElementById("menuItemTable");
		table.style.visibility = "visible";
		
		table.style.top = menuHeight * menuCategory.order - 20;
		table.style.left = 90;
		var tableBody = table.firstChild;
		while(tableBody.firstChild){
			tableBody.removeChild(tableBody.firstChild);
		}
		var titletr = document.createElement("tr");
		titletr.className = "subBar";
		var titletd = document.createElement("td");
		{
			var titletable = document.createElement("table");
			titletable.width = "100%";
			titletable.border = "0";
			titletable.cellSpacing = "0";
			titletable.cellPadding = "0";
			{
				var titletablebody = document.createElement("tbody");
				{
					var titletabletr = document.createElement("tr");
					{
						var titletabletd1 = document.createElement("td");
						titletabletd1.className = "subTtl";
						var titletabletxt = document.createTextNode(menuCategory.caption);
						titletabletd1.appendChild(titletabletxt);
						titletabletr.appendChild(titletabletd1);
					}
					{
						var titletabletd2 = document.createElement("td");
						titletabletd2.className = "subCls";
						titletabletr.appendChild(titletabletd2);
						
						var titletabletd2close = document.createElement("a");
						titletabletd2close.title = "CLOSE";
						titletabletd2close.href = "";
						titletabletd2close.onclick=closeMenu;
						{
							var titletabletd2closeimg = document.createElement("img");
							titletabletd2closeimg.height = 10;
							titletabletd2closeimg.alt = "CLOSE";
							titletabletd2closeimg.src = "gui/close.gif";
							titletabletd2closeimg.width = 46;
							titletabletd2close.appendChild(titletabletd2closeimg);
						}
						titletabletd2.appendChild(titletabletd2close);
						
						
					}
					titletablebody.appendChild(titletabletr);
				}
				titletable.appendChild(titletablebody);
			}
			titletd.appendChild(titletable);
		}

		titletr.appendChild(titletd);
		tableBody.appendChild(titletr);
		for(var i = 0;i < menuCategory.children.length;i++){
			var tr = createMenuItem(menuCategory.children[i]);//Global...
			tr.firstChild.firstChild.onclick = this.menuItemSelected;
			tableBody.appendChild(tr);
		}
		return false;
	}
	this.menuItemSelected = function(){
		//debugger;
		//openPage(this.menuItem.link);
		var item = this.menuItem;
		var funcHandler = eval(item.handler)
		new funcHandler().fireTopMenuItemSelected(item);
		closeMenu();
	}
	
	function closeMenu(){
		var table = document.getElementById("menuItemTable");
		table.style.visibility = "hidden";
		setEnebleBackGround(true);
		return false;
	}
	
	this.menuModelLoaded = function(){
	
	}
	
	function setEnebleBackGround(enable){//temporary
		var destZIndex = 0;
		if(enable){
			destZIndex = 0;
		}else{
			destZIndex = -1;
		}
		document.getElementById("announceSection").style.zIndex=destZIndex;
		document.getElementById("informationSection").style.zIndex=destZIndex;
		document.getElementById("cautionSection").style.zIndex=destZIndex;
	}
	
	
	
}