var lp = null,
    rp = null,
    divider = null,
    mouseDown = false;

function Divider_MouseDown() 
{
  if (mouseDown)
    return;
    
  document.onmousemove = Divider_MouseMove;
  document.onmouseup = Divider_MouseUp;
 
  document.body.style.cursor = "w-resize"; 
  util.SetCapture(dividerId, "onmousemove", Divider_MouseMove);
  mouseDown = true;
}
function Divider_MouseUp() 
{
  if (!mouseDown)
    return;
    
  document.onmousemove = null;
  document.onmouseup = null;
  
  document.body.style.cursor = "auto";
  util.ReleaseCapture(dividerId);
  
  Divider_SaveToCookie();
  mouseDown = false;
}
function Divider_MouseMoveOnTree(e)
{
  var tocFrame = document.getElementById("tocFrame");
  Divider_MouseMoveOnFrame(e, tocFrame);
}
function Divider_MouseMoveOnContent(e)
{
  var contentFrame = document.getElementById("contentFrame");
  Divider_MouseMoveOnFrame(e, contentFrame);
}
function Divider_MouseMoveOnSearch(e)
{
  var searchFrame = document.getElementById("searchFrame");
  Divider_MouseMoveOnFrame(e, searchFrame);
}
function Divider_MouseMoveOnFrame(e, frame)
{
  if (!mouseDown)
    return;
  var x = e ? e.screenX : frame.offsetLeft+window.event.clientX;
  Divider_MouseMoveTo(x);
}
function Divider_MouseMove(e)
{
  var newX;
  if (isNetscape) {
    newX = e.pageX;
  }
  else {
     newX = window.event.clientX-6;
  }
  Divider_MouseMoveTo(newX);
}
function Divider_MouseMoveTo(newX) 
{
  if (newX<236)
    newX=236;
    
  SetSizes(newX);  
}
function SetSizes(newX)
{
  if (lp==null) lp = document.getElementById(leftPaneId);
  if (rp==null) rp = document.getElementById(rightPaneId);
  if (divider==null) divider = document.getElementById(dividerId);
  divider.style.left = newX;
  lp.style.width = newX-1;
  rp.style.left = newX+divider.style.width+1;
}
function Divider_SaveToCookie()
{
  if (window.navigator.cookieEnabled) {
    var cookieDate = new Date(2010,0,1);
    document.cookie = "dividerX="+divider.style.left+";expires="+cookieDate.toGMTString();
  }
}
function Divider_LoadFromCookie()
{
  if (!window.navigator.cookieEnabled)
    return;
    
  var cookie = document.cookie;
  var i = cookie.indexOf("dividerX=");
  if (i!=-1) {
    var endIndex = cookie.indexOf(";", i+9);
    var dividerX;
    if (endIndex == -1){
      dividerX = cookie.substring(i+9);
    }
    else {
      dividerX = cookie.substring(i+9, endIndex);
    }
    dividerX = parseInt(dividerX);
    SetSizes(dividerX);
  }
}
