
var buts = new Array();
var dirPrefix = "";

function setPrefix(loc) {
  dirPrefix = loc;
}

function newButton(name,img1,img2,img3,selected) {
  var newidx = buts.length;
  buts[newidx] = {name:name, selected:selected, armed:false};
  buts[newidx].img_off = new Image();
  buts[newidx].img_off.src = dirPrefix + img1;
  buts[newidx].img_armed = new Image();
  if(img2 != "") {
    buts[newidx].img_armed.src = dirPrefix + img2;
    buts[newidx].armed_img = true;
  } else {
    buts[newidx].armed_img = false;
  }
  buts[newidx].img_selected = new Image();
  if(img3 != "") {
    buts[newidx].img_selected.src = dirPrefix + img3;
    buts[newidx].selected_img = true;
  } else {
    buts[newidx].selected_img = false;
  }
}

function nameToIdx(name) {
  for (var i=0; i < buts.length; i++) {
    if(buts[i].name == name) {
      return i;
    }
  }
  return -1;
}

function clearSelected() {
  for (i=0; i < buts.length; i++) {
    if(buts[i].selected) {
      document.images[buts[i].name].src = buts[i].img_off.src;
      buts[i].selected = false;
    }
  }
}

function doMouseOver(name) {
  var i = nameToIdx(name);
  if(i>-1) {
    if(!buts[i].selected && !buts[i].armed && buts[i].armed_img) {
      document.images[buts[i].name].src = buts[i].img_armed.src;
      buts[i].armed = true;
    }
  }
}

function doMouseOut(name) {
  var i = nameToIdx(name);
  if(i>-1) {
    if(!buts[i].selected) {
      document.images[buts[i].name].src = buts[i].img_off.src;
      buts[i].armed = false;
    }
  }
}

function doMouseUp(name) {
  var i = nameToIdx(name);
  if(i>-1) {
    clearSelected();
    if(buts[i].selected_img) {
      document.images[buts[i].name].src = buts[i].img_selected.src;
      buts[i].selected = true;
    }
  }
}
