//* FICHIER *******************************************************************
//*                                                                          **
//* Nom: ttip.js                                                             **
//*                                                                          **
//* But: Création d'un objet layer ttipObj, qui sert de ToolTip dynamic      **
//*                                                                          **
//*****************************************************************************

// Constantes
xBump = yBump = 10;
MSIE = document.all;
NS6 = document.getElementById&&!document.all;

// Variables globales utilisables par n'importe quelle fonction, pour renseigner sur la position du curseur dans le document
gCursorX = gCursorY = 0;
var xPos = yPos = 0;

// Detect if the browser is IE or not.
// If it is not IE, we assume that the browser is NS.
var IE = document.all?true:false
// If NS -- that is, !IE -- then set up for mouse capture
if (!IE) document.captureEvents(Event.MOUSEMOVE)



// Set-up to use getMouseXY function onMouseMove
document.onmousemove = getMouseXY;

// Temporary variables to hold mouse x-y pos.s
var tempX = 0
var tempY = 0

function getMouseXY(e) {
  if (IE) { // grab the x-y pos.s if browser is IE
    tempX = event.clientX + MSIEBodyReturn().scrollLeft
    tempY = event.clientY + MSIEBodyReturn().scrollTop
  } else {  // grab the x-y pos.s if browser is NS
    tempX = e.pageX
    tempY = e.pageY
  }  
  // catch possible negative values in NS4
  if (tempX < 0){tempX = 0}
  if (tempY < 0){tempY = 0}  
  xPos = tempX
  yPos = tempY
  return true
}

// Fonction à appeler au début du body, pour Printer le Layer et initialiser la variable ttipObj
function initToolTip()
{
	document.write("<div id=\"ttip\" class=\"ttip\"><\/div>");

	if(MSIE||NS6)
	{
		ttipObj=document.all?document.all["ttip"]:document.getElementById?document.getElementById("ttip"):"";
	}
}

function MSIEBodyReturn()
{
	return(document.compatMode&&document.compatMode!="BackCompat")?document.documentElement:document.body;
}

function ShowTip(ttipText)
{
  if (ttipText != '')
  {
  	ttipObj.innerHTML=ttipText;
  	ttipObj.style.display="block";
		document.onmousemove=MoveTip;
  }
	return false;
}

function MoveTip(e)
{
	if(IE) getMouseXY();
	xPos=(NS6)?e.pageX:event.clientX + MSIEBodyReturn().scrollLeft;
	yPos=(NS6)?e.pageY:event.clientY + MSIEBodyReturn().scrollTop;
	
	gCursorX = xPos;
	gCursorY = yPos;

	// window.status = 'curseur en ('+gCursorX +','+gCursorY+')';

	lEdge=(xBump<0)?xBump*(-1):-1000;
	rEdge=MSIE&&!window.opera?MSIEBodyReturn().clientWidth-event.clientX-xBump:window.innerWidth-e.clientX-xBump-20;
	bEdge=MSIE&&!window.opera?MSIEBodyReturn().clientHeight-event.clientY-yBump:window.innerHeight-e.clientY-yBump-20;
	if(rEdge<ttipObj.offsetWidth)
	{
		ttipObj.style.left=MSIE?MSIEBodyReturn().scrollLeft+event.clientX-ttipObj.offsetWidth+"px":window.pageXOffset+e.clientX-ttipObj.offsetWidth+"px";
	}
	else if(xPos<lEdge)
	{
		ttipObj.style.left=xBump+"px";
	}
	else
	{
		ttipObj.style.left=xPos+xBump+"px";
	}
	if(bEdge<ttipObj.offsetHeight)
	{
		ttipObj.style.top=MSIE?MSIEBodyReturn().scrollTop+event.clientY-ttipObj.offsetHeight-yBump+"px":window.pageYOffset+e.clientY-ttipObj.offsetHeight-yBump+"px";
	}
	else
	{
		ttipObj.style.top=yPos+yBump+"px";
	}
}

function HideTip()
{
	if(MSIE||NS6)
	{
		ttipObj.style.display="none";
		ttipObj.innerText="";
		document.onmousemove='';
	}
}

//document.onmousemove=MoveTip;
