var intMargin = 5;
var intLocationY = 0;
var intLocationX = 0;
var intPageY = 0;
var intPageX = 0;
var intToolDelay = 500; // milliseconds (.5 seconds)
var bolMouseDown = false;

var intToolTipTimerID = 0;
var strToolTipObjectName = "divSuperToolTip";
var strToolTipContentObjectName = "divSuperToolTipContent";
var strToolTipContents = "";
var strToolTipLocation = "";
var intToolTipOffsetY = 0;
var intToolTipOffsetX = 0;
var intToolTipHeight = 0;
var intToolTipWidth = 0;
var bolToolTipPersist = false;

function show_SuperToolTip() {
  objTemp = document.getElementById(strToolTipObjectName)
  
  if (intToolTipHeight > 0) {
    objTemp.style.height = intToolTipHeight + "px"
    }
  else {
    objTemp.style.height = "";
  }
  
  if (intToolTipWidth > 0) {
    objTemp.style.width = intToolTipWidth + "px"
    }
  else {
    objTemp.style.width = "";
  }
    
  //document.getElementById(strToolTipObjectName).style.height = "";
  //document.getElementById(strToolTipObjectName).style.width = "";
  document.getElementById(strToolTipContentObjectName).innerHTML = strToolTipContents;

  var intHeight = document.getElementById(strToolTipObjectName).offsetHeight;
  var intWidth = document.getElementById(strToolTipObjectName).offsetWidth;
  
  set_location(strToolTipLocation, intHeight, intWidth);
  show_layer(strToolTipObjectName, intLocationY, intLocationX);
  return false;
  }
  
function set_SuperToolTip(_objEvent, _strMessage, _strLocation, _intHeight, _intWidth, _bolPersist){
  clearTimeout(intToolTipTimerID);
  bolToolTipPersist = _bolPersist;
  
  if (document.all) { // IE (is stupid)
    intPageY = _objEvent.clientY;
    intPageX = _objEvent.clientX;
    }
  else {
    intPageY = _objEvent.pageY;
    intPageX = _objEvent.pageX;
    }

  strToolTipLocation = _strLocation;
  strToolTipContents = _strMessage;

  if (!isNaN(_intHeight)) {
    intToolTipHeight = _intHeight;
    if (document.all) { // IE (is stupid)
      intToolTipHeight -= 3;
      }
    }
  else {
    intToolTipHeight = 0;
    }
  
  if (!isNaN(_intWidth)) {
    intToolTipWidth = _intWidth;
    }
  else {
    intToolTipWidth = 0;
    }

  intToolTipTimerID = setTimeout('show_SuperToolTip()', intToolDelay);
  }  

function hide_SuperToolTip() {
  if (!bolToolTipPersist) {
    clearTimeout(intToolTipTimerID);
    intToolTipTimerID = setTimeout('close_SuperToolTip();', intToolDelay);
    }
  }

function reset_SuperToolTip() {
  close_SuperToolTip();
  show_SuperToolTip();
  }
  
function keep_SuperToolTip() {
  clearTimeout(intToolTipTimerID);
  }

function close_SuperToolTip() {
  clearTimeout(intToolTipTimerID);
  //document.getElementById(strToolTipObjectName).style.visibility = "hidden"
  hide_layer(strToolTipObjectName);
  }

function pickup_SuperToolTip(_objEvent) {
  keep_SuperToolTip();
  //objCurrentToolBox = _objToolBox;
  var bolTemp = true;

  if (document.all) { // IE (is stupid)
    intToolTipOffsetY = _objEvent.offsetY + 4;
    intToolTipOffsetX = _objEvent.offsetX + 4;
    
    if (document.getElementById(strToolTipObjectName).style.visibility == "hidden") {
      bolTemp = false
      }
    }
  else {
    intToolTipOffsetY = _objEvent.layerY - 1;
    intToolTipOffsetX = _objEvent.layerX - 1;
    }

  if (bolTemp) {
    document.onmousemove = move_SuperToolTip;
    document.onmouseup = release_SuperToolTip;
    }
  }
  
function move_SuperToolTip(_objEvent) {
  if (document.getElementById(strToolTipObjectName)) {
    if (document.all) { // IE (is stupid)
      intPageY = event.clientY;
      intPageX = event.clientX;
      }
    else {
      intPageY = _objEvent.pageY;
      intPageX = _objEvent.pageX;
      }

    var intYPos = intPageY - intToolTipOffsetY;
    var intXPos = intPageX - intToolTipOffsetX;
    
    document.getElementById(strToolTipObjectName).style.top = intYPos + "px";
    document.getElementById(strToolTipObjectName).style.left = intXPos + "px";
    }
  }
  
function release_SuperToolTip(_objEvent) {
  document.onmousemove = null;
  document.onmouseup = null;
  }
  




//-------------------------------------------------




var objCurrentToolBox;
var strToolBoxLocation = "";
var strToolBoxObjectName = "";
var intToolBoxTimerID = 0;
var intToolBoxOffsetY = 0;
var intToolBoxOffsetX = 0;


function show_SuperToolBox(_objToolBox){
  clearTimeout(_objToolBox.intTimerID);

  if (!_objToolBox.bolVisible) {
    var intHeight = 0;
    var intWidth = 0;
    var objTemp = document.getElementById(_objToolBox.strName);
    
    objTemp.style.height = "";
    objTemp.style.width = strSuperToolBoxWidth;
    
    //objTemp.style.position = "absolute";

    intHeight = objTemp.offsetHeight;
    intWidth = objTemp.offsetWidth;
  
    set_location(strToolBoxLocation, intHeight, intWidth);
    show_layer(_objToolBox.strName, intLocationY, intLocationX);
    _objToolBox.bolVisible = true;
    }
    
  return false;
  }

function reset_SuperToolBox(_objToolBox) {
  close_SuperToolBox(_objToolBox);
  show_SuperToolBox(_objToolBox);
  }
  
function set_SuperToolBox(_objEvent, _objToolBox, _strLocation){
    var bolNoDelay = false;
    
    if (objCurrentToolBox) {
      bolNoDelay = objCurrentToolBox.bolVisible && !objCurrentToolBox.bolKeep;
      if (!objCurrentToolBox.bolKeep) {
        close_SuperToolBox(objCurrentToolBox);
        }
      }
      
    hide_SuperToolTip();
    
    if (document.all) { // IE (is stupid)
      intPageY = _objEvent.clientY;
      intPageX = _objEvent.clientX;
      document.getElementById(_objToolBox.strName).style.width = "100px";
      }
    else {
      intPageY = _objEvent.pageY;
      intPageX = _objEvent.pageX;
      }
  
    strToolBoxLocation = _strLocation;
  
    if (bolNoDelay) {
      show_SuperToolBox(_objToolBox);
      }
    else {
      _objToolBox.intTimerID = setTimeout('show_SuperToolBox(objCurrentToolBox);', intToolDelay);
      }
      
    objCurrentToolBox = _objToolBox;
  }  

function close_SuperToolBox(_objToolBox) {
  if (_objToolBox) {
    clearTimeout(_objToolBox.intTimerID);
    _objToolBox.bolVisible = false;
    _objToolBox.bolKeep = false;
    //document.getElementById(_objToolBox.strName).style.visibility = "hidden";
    hide_layer(_objToolBox.strName);
    }
  }

function hide_SuperToolBox(_objToolBox) {
  if (_objToolBox) {
    clearTimeout(_objToolBox.intTimerID);
    if (!_objToolBox.bolKeep) {
      _objToolBox.intTimerID = setTimeout('close_SuperToolBox(objCurrentToolBox);', intToolDelay);
      objCurrentToolBox = _objToolBox;
      }
    }
  }
  
function keep_SuperToolBox(_objToolBox) {
  if (_objToolBox) {
    clearTimeout(_objToolBox.intTimerID);
    //_objToolBox.bolKeep = _objToolBox.bolVisible;
    }
  }

function stick_SuperToolBox(_objToolBox) {
  if (_objToolBox) {
    clearTimeout(_objToolBox.intTimerID);
    _objToolBox.bolKeep = _objToolBox.bolVisible;
    }
  }

function pickup_SuperToolBox(_objEvent, _objToolBox) {
  keep_SuperToolBox(_objToolBox);
  objCurrentToolBox = _objToolBox;
  var bolTemp = true;

  if (document.all) { // IE (is stupid)
    intToolBoxOffsetY = _objEvent.offsetY + 4;
    intToolBoxOffsetX = _objEvent.offsetX + 4;
    
    if (!_objToolBox.bolVisible) {
      bolTemp = false;
      }
    //alert(intToolBoxOffsetY + " " + intToolBoxOffsetX);
    }
  else {
    intToolBoxOffsetY = _objEvent.layerY - 1;
    intToolBoxOffsetX = _objEvent.layerX - 1;
    }

  if (bolTemp) {
    document.onmousemove = move_SuperToolBox;
    document.onmouseup = release_SuperToolBox;
    }
  }
  
function move_SuperToolBox(_objEvent) {
  if (objCurrentToolBox) {
    if (document.all) { // IE (is stupid)
      intPageY = event.clientY;
      intPageX = event.clientX;
      }
    else {
      intPageY = _objEvent.pageY;
      intPageX = _objEvent.pageX;
      }

    var intYPos = intPageY - intToolBoxOffsetY;
    var intXPos = intPageX - intToolBoxOffsetX;
    
    document.getElementById(objCurrentToolBox.strName).style.top = intYPos + "px";
    document.getElementById(objCurrentToolBox.strName).style.left = intXPos + "px";
    }
  }
  
function release_SuperToolBox(_objEvent) {
  //objCurrentToolBox = null;
  document.onmousemove = null;
  document.onmouseup = null;
  }
  

