var oh=0;sh=0;

function SetPosition(obj,limiter)
{
dx = 0;dy = 0;
lx = 0;ly = 0;
lw = 0;
if (limiter)
	{ lw = limiter.offsetWidth; }
lfound = 0;
cobj = obj;
do
   {
	dx = dx + cobj.offsetLeft;
	dy = dy + cobj.offsetTop;
	if (cobj == limiter)
	   { lfound = 1; }
	if (lfound)
	   { 
		lx = lx + cobj.offsetLeft;
		ly = ly + cobj.offsetTop;
		}
	}
while ((cobj=cobj.offsetParent).tagName != 'BODY');
dw = obj.offsetWidth;
dh = obj.offsetHeight;
st = document.body.scrollTop;
sh = document.body.clientHeight;
sw = document.body.clientWidth;
fw = GetDirVal('floater',"offsetWidth");
if (dx-lx+dw-fw > 0)
  	{ dx = dx+dw-fw; }
else
	{
	if (dx + fw > lx + lw)
		{
		if (dx + fw - lx - lw > lx + fw - dw - dx)
			{ 
			SetVal('floater','width', dw + dx - lx - 5); 
			dx = lx + 5;
			}
		else
			{ SetVal('floater','width', lx + lw - dx - 5); }
		}
	}
SetVal('floater',"left",dx);
fh = GetDirVal('floater',"offsetHeight");
if (dy-st-fh > 0)
  { SetVal('floater',"top",dy-fh); }
else
  { SetVal('floater',"top",dy+dh); }
}

function ShowHint(objvar,obj)
{
SetVal('floater','width','""');
SetDirVal('floater',"innerHTML",'"'+objvar+'"');
SetPosition(obj,document.getElementById('limiter'));
var flobj = eval(PrefGet+'floater'+PostGet);
if (document.body.filters)
	{ flobj.filters[0].Apply(); }
flobj.style.visibility = 'visible';
if (document.body.filters)
	{ flobj.filters[0].Play(); }
}

function HideHint()
{
sh=0;
setTimeout("FHide()" , 100);
}

function HintOver()
{
oh=1;
}

function HintOut()
{
oh=0;
setTimeout("FHide()" , 100);
}

function FHide()
{
if (oh==0 && sh==0)
   { SetVal('floater',"visibility",'"hidden"'); }
}


