var curDD = null;
var Menus = new Object();
var openTimer = null;
var closeTimer = null;

function newImage(src) {
  img = new Image();
  img.src = src;
  return img;
}

function imageSwap(img, obj, div) {
  document.images[img].src = eval(obj + '.src');
}

function createDD(name, rollover) {
  Menus[name] = new DD(name, rollover);
}

function hideDD() {
  if (curDD != null) Menus[curDD].hideIt();
}

DD = function(name, rollover) {
  this.name = name;
  this.rollover = rollover;
  this.obj = name + 'Object'; 
  eval(this.obj + '=this');
}

DD.prototype.show = function() { 
  clearTimeout(closeTimer);  
  if (curDD != null) {
    Menus[curDD].hideIt();
    this.showIt();
  }
  else openTimer = setTimeout(this.obj + '.showIt()', 200);
}

DD.prototype.hide = function() {
  clearTimeout(openTimer);
  closeTimer = setTimeout(this.obj + '.hideIt()', 500);
}

DD.prototype.hideIt = function() {
  document.getElementById(this.name).style.display = 'none';
  imageSwap(this.rollover, this.rollover + '_off');
  curDD = null;
}

DD.prototype.showIt = function() {  
  document.getElementById(this.name).style.display = 'block';
  imageSwap(this.rollover, this.rollover + '_on');
  curDD = this.name;
}
