/**
* @fileoverview Fun??es para controle de caixas dhtml, janelas e eventos de teclado.
* @author Ricardo Machado Poffo - 03/2006.
* @version 0.1
*/

/**
 * Desabilita menu de contexto - mostrado no clique com botão direito do mouse
 */
function desabilitar(){
    //alert ("Esta função está desabilitada.")
    //return false
}

document.oncontextmenu=desabilitar 
/**
* Fun??o para abrir nova janela com resolu??o passada por par?metro.
* @param {string} Url Localiza??o(link) para abrir na nova janela.
* @param {string} WindowName Nome do objeto janela.
* @param {integer} Width Largura da janela.
* @param {integer} Height Altura da janela.
* @param {boolean} Resizable Flag redimensionar janela (yes | no).
* @param {boolean} Scrollbar Flag janela com barra de rolagem (yes | no).
*/
function Window(Url, WindowName, Width, Height, Resizable, Scrollbar){
	l_tela = screen.width;//largura da tela.
	a_tela = screen.availHeight;//altura da tela.
	//Calcula coordenadas para centralizar a janela na tela.
	x = ((l_tela - Width)/2) - 2;
	y = (a_tela - Height)/2;
	WindowName = window.open(Url, WindowName,'top='+y+',left='+x+',toolbar=no,scrollbars='+Scrollbar+',height='+Height+',width='+Width+',resizable='+Resizable);
	if(WindowName == null){
		alert("Janela bloqueada pelo navegador!");
		document.write("Seu navegador bloqueou a abertura de uma janela do sistema!<br>clique <a href=\"#\" onClick=\"janela('"+Url+"','"+WindowName+"','"+Width+"','"+ Height+"','"+Resizable+"','"+Scrollbar+"');\">aqui</a> para abrir!");
	}else{
		WindowName.focus();
	}
}
/**
* Fun??o para controle de eventos a partir da tecla pressionada.
* Ex. coloque o evento: onKeyPress="tecla(event,1,nome_elemento)" no objeto que desejar controlar os eventos.
* @param {event} evt Evento.
* @param {integer} functionCode Identificador da fun??o a ser executada.
* @param {string} elemento Elemento da p?gina que ser? controlado.
*/
function tecla(evt, functionCode, elemento) {
 	//Tecla enter = keyCode 13
 	//Tecla esc = keyCode 27
 	//Teclad espa?o = keyCode 32

  if (document.all){
    var charCode = evt.keyCode;// ? event.keyCode : event.charCode;
  }
  else{
    var charCode = evt.keyCode ? evt.keyCode : evt.which;
  }
  //alert("Tecla "+charCode);
  if (charCode==27) { //TECLA ESC
		   if(functionCode == 1) {//code 1 para ocultar um elemento
       //elemento.style.display="none";//oculta elemento passado por parametro
       document.getElementById(elemento).style.visibility="hidden";
       document.getElementById('DNDModal').style.visibility="hidden";
		   }
  }
  if (charCode==45) { //TECLA INSERT
		   SubmitOptionsEdition(document.FormButtonsEdition, "1" );
  }
 	if (charCode==13) { //TECLA ENTER
 		SubmitOptionsEdition(document.FormButtonsEdition, "2" );
 	}
 	if (charCode==46) { //TECLA DELETE
 		showDNDW("delete_box");
 	}
}
/**
* Captura tecla pressionada.
* @param {event} evt
*/
function OnPressKeyBody(evt){
  if (document.all){
       var charCode = event.keyCode ? event.keyCode : event.charCode;
  }
  else{
    var charCode = evt.keyCode ? evt.keyCode : evt.which;
  }
  if (charCode==62) { //TECLA ">"
 		MainMenuCall();
  }
  if (charCode==60) { //TECLA "<"
 		MainMenuCall();
  }
}
/**
* funcao q oculta o div da caixa de mensagem
* @param {string} nome_caixa Nome do objeto div.
*/
function fechar_caixa(nome_caixa){
	document.getElementById(nome_caixa).style.display="none";
}
/**
* funcao q exibe o div da caixa de mensagem
* @param {string} nome_caixa Nome do objeto div.
*/
function exibir_caixa(nome_caixa){
	document.getElementById(nome_caixa).style.display="";
	document.getElementById(nome_caixa+'divFoco').focus();
}
/**
* funcao q maximiza e miniminiza a caixa.
* @param {string} nome_caixa nome do objeto div.
* @param {string} img_barra caminho para arquivo de imagem da barra da caixa.
* @param {integer} l_ini largura inicial da caixa.
* @param {integer} a_ini altura inicial da caixa.
* @param {integer} largura largura da caixa.
* @param {integer} altura altura da caixa.
* @param {integer} x_ini posi??o inicial da caixa em rela??o a lateral.
* @param {integer} y_ini posi??o inicial da caixa em rela??o ao topo.
* @param {integer} x posi??o da caixa em rela??o a lateral.
* @param {integer} y posi??o da caixa em rela??o ao topo.
*/
function max_min(nome_caixa, img_barra, l_ini, a_ini, largura, altura, x_ini, y_ini, x, y){
	var a_atual, i;
	a_atual = document.getElementById(nome_caixa).style.height;
	if(a_atual == a_ini+'px'){
		//maximiza
		document.getElementById(nome_caixa).style.height = altura+'px';
		document.getElementById(nome_caixa).style.width = largura+'px';
		document.getElementById(nome_caixa).style.left = x+'px';
		document.getElementById(nome_caixa).style.top = y+'px';
		document.getElementById('corpo').style.display="none";
		document.getElementById('max_min').src=img_barra+'/min.gif';
	}else{
		//minimiza
		document.getElementById(nome_caixa).style.height = a_ini+'px';
		document.getElementById(nome_caixa).style.width = l_ini+'px';
		document.getElementById(nome_caixa).style.left = x_ini+'px';
		document.getElementById(nome_caixa).style.top = y_ini+'px';
		document.getElementById('corpo').style.display="";
		document.getElementById('max_min').src=img_barra+'/max.gif';
	}
}

/**
* Fun??o para setar conte?do da caixa de mensagens de FeedBack Padr?o.
* @param {string} Value Conte?do da caixa.
* @param {string} FeedBack Fun??o para executar no clique do bot?o OK da caixa de mensagem.
*/
function SetMsgContent(Value, FeedBack){
  document.getElementById('msg_content').innerHTML = Value+"<br><button class='btn' type='button' onClick='closeDNDW(msg_box);"+FeedBack+"'>OK</button>";
}
/**
* Fun??o para setar conte?do da caixa de mensagens de confirma??o Padr?o.
* @param {string} Value Conte?do da caixa.
* @param {string} BtnOkAction Fun??o para executar no clique do bot?o OK da caixa de mensagem.
* @param {string} BtnCancelAction Fun??o para executar no clique do bot?o Cancelar da caixa de mensagem.
*/
function SetConfirmMsgContent(Value, BtnOkAction, BtnCancelAction){
  document.getElementById('msg_content').innerHTML = Value+"<br><button class='btn' type='button' onClick='closeDNDW(msg_box);"+BtnOkAction+"'>OK</button>"+
  "<button class='btn' type='button' onClick='closeDNDW(msg_box);"+BtnCancelAction+"'>Cancelar</button>";
}
/**
* Seta a largura da caixa de mensagem
* @param {string} ObjBox nome do objeto da caixa
* @param {integer} Width Largura
*/
function SetWidth(ObjBox, Width){
	document.getElementById(ObjBox).style.width = Width;
}
/**
* Seta a altura da caixa de mensagem
* @param {string} ObjBox nome do objeto da caixa
* @param {integer} Height Altura
*/
function SetWidth(ObjBox, Height){
	document.getElementById(ObjBox).style.height = Height;
}
/**
* Seta a visibilidade do bot?o fechar
* @param {string} ObjBox nome do objeto da caixa
* @param {boolean} Visible visibilidade do bot?o fechar
*/
function SetCloseButtonVisibility(ObjBox, Visible){
	if(Visible){
		document.getElementById(ObjBox+'Close').style.display="";
	}else{
		document.getElementById(ObjBox+'Close').style.display="none";
	}
}