var ttList = new Object;
var ttDelay = 500;  // one half second, used to be 1500;
var ttWidth = 250;
var ttOver = new Object;
var ttEditLink = null;
var ttEditLinkTimerFor = null;
var ttEditLinkTimer = null;
function ttCancelTimer()
{
if (ttEditLinkTimer)
{
clearTimeout(ttEditLinkTimer);
ttEditLinkTimer = null;
}
}
function ttDumpLinkFade()
{
ttCancelTimer()
if (ttEditLink)
{
stopObserving(ttEditLink,'mouseover',ttCancelTimer);
stopObserving(ttEditLink,'mouseout',ttEditLinkMouseOut);
var dumpLink = ttEditLink;
ttEditLink = null;
ttEditLinkTimerFor = null;
Effect.Fade(dumpLink, { duration:0.5, afterFinish: function(element) { document.body.removeChild(dumpLink); } } );
}
}
function ttDumpLink()
{
ttCancelTimer()
if (ttEditLink)
{
stopObserving(ttEditLink,'mouseover',ttCancelTimer);
stopObserving(ttEditLink,'mouseout',ttEditLinkMouseOut);
document.body.removeChild(ttEditLink);
ttEditLink = null;
ttEditLinkTimerFor = null;
}
}
function ttEditLinkMouseOver(e)
{
ttCancelTimer()
}
function ttEditLinkMouseOut(e)
{
if (!ttEditLinkTimer)
{
ttEditLinkTimer = setTimeout("ttDumpLinkFade()", ttDelay);
}
}
function ttMouseOver(e)
{
if (!ttOver[this.id])
{
ttOver[this.id] = 1;
}
if (ttEditLinkTimer && (this.id != ttEditLinkTimerFor))
{
ttDumpLink()
}
else if (ttEditLinkTimer)
{
ttCancelTimer()
}
if (! ttEditLink )
{
var ecoords = getMouseCoords(e);
var left = ecoords.x + 10;
if (left + ttWidth + 40 >= document.body.offsetWidth)
{
left = document.body.offsetWidth - (ttWidth + 40);
}
ttEditLink = document.createElement("div");
ttEditLink.className = 'tooltip';
ttEditLink.style.top = (ecoords.y + 7) + 'px';
ttEditLink.style.left = left + 'px';
ttEditLink.style.width = ttWidth + 'px';
ttEditLink.innerHTML = ttList[this.id]
document.body.appendChild(ttEditLink);
observe(ttEditLink,'mouseover',ttCancelTimer);
observe(ttEditLink,'mouseout',ttEditLinkMouseOut);
ttEditLinkTimerFor = this.id;
}
}
function ttMouseOut()
{
if (ttOver[this.id])
{
if (!ttEditLinkTimer)
{
ttEditLinkTimer = setTimeout("ttDumpLinkFade()", ttDelay);
ttEditLinkTimerFor = this.id;
}
ttOver[this.id] = 0;
}
}
function addToolTip(id,tip)
{
if (document.getElementById)
{
var obj = document.getElementById(id);
if (obj)
{
ttList[id] = tip;
ttOver[id] = 0;
observe(obj,'mouseover',ttMouseOver);
observe(obj,'mouseout',ttMouseOut);
}
}
}
