jQuery.noConflict();
 
MenuWin = function(p)
{
 	if(!isString(p.parent)) return;
	else p.parent = document.getElementById(p.parent); // objeto que será o container do menu
    if(!isString(p.id)) return;
	if(!isString(p.title)) p.title = "";
	if(!isBoolean(p.state)) p.state = false;
	var menu = jQuery.create("div",{"id":p.id,"class":"menuWin"},[]); // o menu
	var header = jQuery.create("span",{"class":"menuWin-header"},[p.title]); // cabeçalho do menu
	var headerText = null;
	var private = new Object();
	
	var images = new Array(new Image(),new Image());
	images[0].src = "images/arrow_up.jpg";
	images[1].src = "images/arrow_down.jpg";
	
	var arrow = jQuery.create("img",{"id":"arrow-"+p.id,"alt":"","title":"","src":images[0].src,"class":"imgSeta"},[]); // imagem para retrair e extender o menu
	arrow.onclick = function()
	{
		if(this.getAttribute("src").indexOf("up") > -1)
		{
			this.setAttribute("src",images[1].src);
			jQuery("#"+body.getAttribute("id")).animate({height: "hide"},"fast");
		}
		else
		{
			this.setAttribute("src",images[0].src);
			jQuery("#"+body.getAttribute("id")).animate({height: "show"},"slow");
		}
		

	}
	
	var arrowContainer = jQuery.create("span",{"class":"menuWin-arrow"},[]); // container da imagem que retrai e extende o menu
	jQuery(arrowContainer).append(arrow);
	
	var body = jQuery.create("ul",{"id":"menuWin-body-"+p.id,"class":"menuWin-body"},[]); // corpo do menu
	
	jQuery(p.parent).append(menu);
	jQuery(menu).append(arrowContainer);
	jQuery(menu).append(header);
	jQuery(menu).append(body);
	
	// função para setar os itens do menu
	// recebe como parâmetros o texto, o link, o target e a imagem do item
	this.setItens = function(t,a,tg,i)
	{
		var li = document.createElement("li");
		var link = jQuery.create("a",{"href":a},[t]);
		var img = document.createElement("img");
		var imgContainer = document.createElement("div");
			
		if(i != null)
		{
			jQuery(img).attr({alt:"",title:"",src:i});
			jQuery(imgContainer).append(img);
		}
		
		jQuery(link).prepend(imgContainer);
		
		if(tg != null) jQuery(link).attr({target:tg});
		
		li.appendChild(link);
		
		body.appendChild(li);
	};
 
	// esta função extende o container da image,
	// para manter alinhado o texto dos itens do menu.
	private.heightLine = function()
	{
		var linhas = jQuery("li",body).each(function(){while(jQuery("div:first",this).get(0).offsetHeight < this.offsetHeight) jQuery("div:first",this).css({"height":this.offsetHeight+"px"});});
	};
	
	this.draw = function()
	{
		private.heightLine();
		
		if(p.state)
		{
			jQuery(body).css({display : "none"});
			jQuery(arrow).attr({src : images[1].src});
		}
	};
};


