// If the caption is hidden then make it 'leap' out of hiding.
// Once velocity becomes negative from gravitational pull,
// increase gravity to make it 'plop' down.
// For now we will snap back to closed position.

var time_handle = null;
var interval    = 25; // ms
var caption     = null;
var hidden      = true;
var target      = 0;
var state       = 0;  // 0 = stopped, 1 = extending, 2 = slowing up
var close_pos   = 0;
var grav        = -2;
var pos         = close_pos;
var vel         = 0;

    
function show_hide_menu() {  

  caption = document.getElementById('caption');    

  if(state == 0) {

    if(hidden) {
      pos = close_pos;
    	grav  = -3;
      vel   = 50;
      state = 1;  
      }
    else {    	
    	vel = 0;
  	  state = 1;
      }
      
    }
  
  setTimeout('slide()', interval);

  }
    
function slide() {  

  pos = pos + vel;
      
  if(hidden) {  
  	
  	vel = vel + grav;   	    
  
    if(state == 1) {
  
      if(vel < 0) {
        state =  2;
        grav  = grav * 2;      
        }
      
      } // ends if state == 1

    if(state == 2) {
  	
    	if(pos < 0) {
    		hidden = false;  	    		
  	    state = 0;
  	    pos = 0;  	  
  	    }
  	
      } // ends if state == 2
      
    } // if hidden
  else {  
  	
  	vel = (close_pos - pos) * .2;
  	
  	if(Math.floor(pos) == close_pos) {
  		hidden = true;
  		pos = close_pos;
  		state = 0;
  	  }
  	
    } // ends else if not hidden
  
  caption.style.left = pos + 'px';
  
  if(state == 1 || state == 2) setTimeout('slide()', interval);

  } // ends function slide
