
DG_CF.DG_hMenu=function(){return new DG_hMenu();}
function DG_hMenu()
{
	DG_Object.call(this);
	var myself=this;
	var m_div;
	var m_panels=new Array();
	var m_items=new Array();
	this.PP=new Array(4);
	this.PPN=["bgColor","color","imgUrl",""];

	var m_state="out";
	function OnLeave(e)
	{
		var n=InPanel(e);
//		DG_Trace("leave "+n);
		ShowPanel(n);
	}
	this.ApplyPP=function()
	{
		var m=myself;
		if(typeof(m.PP[0])!="undefined")m_div.SS(0,m.PP[0]);
		if(typeof(m.PP[1])!="undefined")for(var i=0;i<m_panels.length;i++)
		{
			var it=m_panels[i];
			it.SS(4,m.PP[1]);
		}
		if(typeof(m.PP[2])!="undefined")m_div.SS(42,m.PP[2]);
	}
	this.SetDiv=function(div)
	{
		m_div=div;
	
		m_div.onmousemove=function(e){m_state="in";var o=DG_EventPos(e,m_div);}// DG_Trace(o.X);}
		m_div.onmouseleave=OnLeave;
		m_div.onmouseout=OnLeave;
		var divs=m_div.getElementsByTagName("DIV");
		if(divs!=null)
		for(var i=0;i<divs.length;i++)
		{			var c=divs[i];
			var t=c.getAttributeNode("dgType"); t=(t)?t.value:null;
			if(t=="DG_vMenu"){var idx=m_panels.length;m_panels[idx]=c;c.Index=idx;}
			if(t=="DG_hMenuItem"){var idx=m_items.length;m_items[idx]=c;c.Index=idx;}
		}
		for(var i=0;i<m_panels.length;i++)
		{
			var it=m_panels[i];
			var idx=it.Index;
//			it.onclick=function(e){var o=DG_Target(e);if(o.tagName=="SPAN")o=o.parentNode.parentNode;alert(o.Index);}
		}
		for(var i=0;i<m_items.length;i++)
		{
			var it=m_items[i];
			var idx=it.Index;
			it.onmousemove=function(e){var o=DG_Target(e);while(o.tagName!="DIV"){o=o.parentNode;}if(o)ShowPanel(o.Index);}
//			it.onmouseout=function(e){ShowPanel(-1);}
//			it.onclick=function(e){var o=DG_Target(e);if(o.tagName=="SPAN")o=o.parentNode.parentNode;alert(o.Index);m_panels[o.Index].SS(11,0);}
		}
	}
	function ShowPanel(n)
	{
		if(typeof(n)=="undefined")n=-1;
		for(var i=0;i<m_panels.length;i++)
		{
			var ind=m_panels[i].Index;
			m_panels[i].SS(11,(i==n)?1:0);
		}
	}
	function InPanel(e)
	{
		for(var i=m_panels.length-1;i>=0;i--)
		{
			var p=m_panels[i];
			e=DG_EventPos(e,p);
			var pt={x:e.X,y:e.Y}
//			DG_Trace("x:"+pt.x+"y:"+pt.y);
			var r={l:0,t:0,w:p.W,h:p.H};
			if(Contains(r,pt))return i;
		}
		return -1;
	}
	function Contains(r,pt)
	{
		return((pt.x>r.l)&&(pt.x<(r.l+r.w))&&(pt.y>r.t)&&(pt.y<(r.t+r.h)));
	}
}

DG_CF.DG_vMenu=function(){return new DG_vMenu();}
function DG_vMenu()
{
	DG_Object.call(this);
	var myself=this;
	var m_items=new Array();
	this.SetDiv=function(div)
	{
		m_div=div;
	}
}

DG_CF.DG_hMenuItem=function(){return new DG_hMenuItem();}
function DG_hMenuItem()
{
	DG_Object.call(this);
	var myself=this;
	this.SetDiv=function(div)
	{
		m_div=div;
	}
}

DG_CF.DG_vMenuItem=function(){return new DG_vMenuItem();}
function DG_vMenuItem()
{
	DG_Object.call(this);
	var myself=this;
	this.SetDiv=function(div)
	{
		m_div=div;
	}
}