var _panelVisible = false;
var _slideInProgress = false;
var _slidePanelDiv = null;
var _slidePanelFullHeight = 13; //measured in ems
var _slideHeightStep = 0.25;   //measured in ems
var _slideTimeStep = 1; //measured in millisecs between redraws
var _slideCurrHeight = 0;
var _slideFromBottomOf = 'controlbar';
var _slideTarget       = 'controlpanel';

function ToggleSlide()
{
   if(_slideInProgress) {
      return;
   }
   
   _slideInProgress = true;

   _slidePanelDiv = document.createElement('DIV');
   _slidePanelDiv.style.position='absolute';
   _slidePanelDiv.style.zIndex='100';
   _slidePanelDiv.style.width='100%';
   _slidePanelDiv.style.top=document.getElementById(_slideFromBottomOf).offsetHeight+'px';
    _slidePanelDiv.style.backgroundColor='#F0F0F0';
   _slidePanelDiv.style.borderStyle='solid';
   _slidePanelDiv.style.borderWidth='1px';
   
   
   if(!_panelVisible) {
      _slidePanelDiv.style.height='0px';      
      _slideCurrHeight = 0;
      
      document.body.appendChild(_slidePanelDiv);
      
      window.setTimeout('SlideDown()', _slideTimeStep);
   } else {
      var controlpanel = document.getElementById(_slideTarget);
      controlpanel.style.display='none';
      
      _slidePanelDiv.style.height=_slidePanelFullHeight+'em';     
      _slideCurrHeight = _slidePanelFullHeight;
      
      document.body.appendChild(_slidePanelDiv);
      
      window.setTimeout('SlideUp()', _slideTimeStep);
   
   }
}

function SlideDown() 
{
   _slideCurrHeight += _slideHeightStep;
   _slidePanelDiv.style.height=_slideCurrHeight+'em';

   if(_slideCurrHeight < _slidePanelFullHeight) {
      window.setTimeout('SlideDown()', _slideTimeStep);
   } else {
      var controlpanel = document.getElementById(_slideTarget);

      controlpanel.style.top=_slidePanelDiv.offsetTop+'px';
      controlpanel.style.height=_slidePanelDiv.offsetHeight+'px';
      
      controlpanel.style.display='block';
      document.body.removeChild(_slidePanelDiv);
      _slidePanelDiv = null;
      _slideInProgress = false;
      _panelVisible = true;
   }
}
function SlideUp() 
{
   _slideCurrHeight -= _slideHeightStep;
   _slidePanelDiv.style.height=_slideCurrHeight+'em';

   if(_slideCurrHeight >= _slideHeightStep) {
      window.setTimeout('SlideUp()', _slideTimeStep);
   } else {
      document.body.removeChild(_slidePanelDiv);
      _slidePanelDiv = null;
      _slideInProgress = false;
      _panelVisible = false;
   }
}
