function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

Location = function(x, y)
{
    this.x = x;
    this.y = y;
}

function getMousePos(e)
{
    var posx;
    var posy;
    var loc;
    
    posx = 0;
    posy = 0;
    if (!e)
    {
        e = window.event;
    }
    if (e.pageX || e.pageY)
    {
        posx = e.pageX;
        posy = e.pageY;
    }
    else
    {
        if (e.clientX || e.clientY)
        {
            posx = e.clientX + document.body.scrollLeft
                + document.documentElement.scrollLeft;
            posy = e.clientY + document.body.scrollTop
                + document.documentElement.scrollTop;
        }
    }
    loc = new Location(posx, posy);
    return loc;
}
