/**
 * StartBar JavaScript Class
 *
 * Copyright Peter M. Laurina 2008
 * The use or modification of this property
 * is strictly prohibited unless with written
 * permission from myself, the author.  For
 * questions, please contact me via email at
 * pete at zionvier dot com 
 */


function StartBar() {}

StartBar = function (iconPath)
{  
    this.menuShadowDivClass = "zv_startShadowDiv";
    this.menuOutterDivClass = "zv_startOutterDiv";
    this.menuInnerDivClass = "zv_startInnerDiv";
    this.menuItemClass = "zv_startItem";
    this.menuAlinkClass = "zv_startBarAlink";
    this.menuAlinkCommonClass = "zv_startBarAlinkCommon";
    this.menuSelectedAlinkClass = "zv_startBarSelectedAlink";
    this.menuImgClass = "zv_startImg";
    this.menuCapSpanClass = "zv_startCaption";
    this.menuDownArrow = "zv_startDownArrow";
    
    if (iconPath != null)
      this.iconPath = iconPath;
    else
      this.iconPath = Utils.iconPath;
  
    this.parentDiv = document.body;
    this.menuItems = new Array();
    
    this.outterDiv = document.createElement('div');
    this.innerDiv = document.createElement('div');
    this.outterDiv.style.width = "100%";
    this.innerDiv.style.width = "100%";
    Utils.addClassName(this.outterDiv, "zv_startBarOutterDiv");
    Utils.addClassName(this.innerDiv, "zv_startBarInnerDiv");
    
    this.innerDiv.innerHTML = "<img src='xeno/images/start.gif' alt='Start'>";
    this.outterDiv.appendChild(this.innerDiv);
    this.parentDiv.appendChild(this.outterDiv);
    
  
    this.outterDiv.style.position = "fixed";
    this.outterDiv.style.bottom = "0px";
    this.parentDiv.style.marginBottom = this.outterDiv.offsetHeight + "px";
  
}

StartBar.prototype.addMenu = function(cmd, caption, icon, submenu)
{
    var item = new StartBarItem(this, cmd,  icon, caption, submenu);
    this.menuItems[cmd] = item;
    
    this.innerDiv.appendChild(item.alink); //put that item into the control for real
    return item;
}


function StartBarItem(menuBar, cmd, icon, caption, submenu)
{  
    this.menuBar = menuBar;
    this.cmd = cmd;
    this.icon = icon;
    this.capion = caption;
    this.submenu = submenu;
    this.alink = null; //contains the entire link
    
    this.iconImg = document.createElement('img');
    this.iconImg.src = Strings.makeUrlPath( this.menuBar.iconPath, (icon==null)?"ico-none.gif" : icon );
    Utils.addClassName(this.iconImg, this.menuBar.menuImgClass );
    if (icon==null)
       this.iconImg.style.width = "1px";
   
    this.capSpan = document.createElement('span');
    this.capSpan.innerHTML = caption;
    Utils.addClassName(this.capSpan, this.menuBar.menuCapSpanClass);
    if (icon==null)
       this.capSpan.style.marginLeft = "1px";
       
    if (this.submenu != null)
    {
        this.arrow = document.createElement('img');
        this.arrow.src = Strings.makeUrlPath( this.menuBar.iconPath, "arrow_down.gif");
        Utils.addClassName(this.arrow, this.menuBar.menuDownArrow);
    }
    
    this.alink = document.createElement("A");
    this.alink.href = "#";  
    this.alink.className = this.menuBar.menuAlinkCommonClass;
    Utils.addClassName(this.alink, this.menuBar.menuAlinkClass)
    this.alink.appendChild(this.iconImg);
    this.alink.appendChild(this.capSpan);
    if (this.arrow != null)
      this.alink.appendChild(this.arrow);
    
    this.alink.menuItem = this; //look at myself so I can find me later
/*
    if ( isIE )                                  
      this.alink.attachEvent("onclick", StartBar.onPopupMenuClick );            
    else
      this.alink.addEventListener("click", StartBar.onPopupMenuClick, false);
  
    if ( isIE )                                  
      this.alink.attachEvent("onmouseover", StartBar.onPopupMouseOver );            
    else
      this.alink.addEventListener("mouseover", StartBar.onPopupMouseOver, false);
  */
    MenuControl.addItem(this);
}