var tt_supported = false;
var tt_tooltipEl = null;
var tt_maxWidth  = 0;

function tt_init(maxWidth) {
  if (!document.getElementById) return;
  tt_supported = true;
  tt_maxWidth = maxWidth;
  tt_tooltipEl = document.createElement("div");
  tt_tooltipEl.style.position   = "absolute";
  tt_tooltipEl.style.visibility = "hidden";
  tt_tooltipEl.className        = "tooltip";
//neu
  tt_tooltipElFG = document.createElement("div");
  tt_tooltipElFG.className        = "tooltipFG";


//  
  if (typeof(tt_tooltipEl.style.maxWidth) != "undefined") 
//neu
{
//    tt_tooltipEl.style.maxWidth = maxWidth + "px";
    tt_tooltipElFG.style.maxWidth = maxWidth + "px";
}
//
  document.getElementsByTagName("body")[0].appendChild(tt_tooltipEl);
//neu
//  tt_tooltipEl.appendChild(tt_tooltipElBG);
  tt_tooltipEl.appendChild(tt_tooltipElFG);
//
  if(document.captureEvents) 
    document.captureEvents(Event.MOUSEMOVE);

  document.onmousemove = tt_mouseMove;
}

function tt(msg) {
  if (!tt_supported) return;
  if (!msg) { tt_hideTooltip(); return; }
//neu
//  tt_tooltipEl.innerHTML = msg;
  tt_tooltipElFG.innerHTML = msg;
//  tt_tooltipEl.style.width = "auto";
  tt_tooltipElFG.style.width = "auto";

//  if (!tt_tooltipEl.style.maxWidth && tt_tooltipEl.clientWidth > tt_maxWidth)
//    tt_tooltipEl.style.width = tt_maxWidth + "px";
  if (!tt_tooltipElFG.style.maxWidth && tt_tooltipElFG.clientWidth > tt_maxWidth)
    tt_tooltipElFG.style.width = tt_maxWidth + "px";
  tt_tooltipEl.style.visibility = "visible";
//
//neu
//    tt_tooltipElBG.style.height = tt_tooltipElFG.style.height;
//
}

function tt_mouseMove(e) {
  
  var x = (e ? e.pageX : event.x + document.body.scrollLeft) - 60;
  var y = (e ? e.pageY : event.y + document.body.scrollTop) + 20;
  if (x < 0) x = 0;
  if (y > document.height) y = document.height;
  tt_tooltipEl.style.left = x + "px";
  tt_tooltipEl.style.top  = y + "px";
}

function tt_hideTooltip() {
  if (!tt_supported) return;
  tt_tooltipEl.style.visibility = "hidden";
}
