// keep track of the current active menu
var activeMainMenuItemID = 0;

// main menu onmouseover
function DevMenu2MainMenuItemOnMouseOver(menuID, mainMenuItemID, bActive, cssActive, offsetX, offsetY)
{
    // if this is not the active submenu item
    if (!bActive)
    {
        var oTD = getObject('DevMenu2_mainmenuitem_' + menuID + '_' + mainMenuItemID + '_td');    
        var oLink = getObject('DevMenu2_mainmenuitem_' + menuID + '_' + mainMenuItemID + '_link');
        oTD.className = cssActive;
        oLink.className = cssActive;
    }
    
    // update currently active menu
    activeMainMenuItemID = mainMenuItemID;

    // show submenu
    DevMenu2ShowSubMenu(menuID, mainMenuItemID, offsetX, offsetY);
}

// main menu onmouseout
function DevMenu2MainMenuItemOnMouseOut(menuID, mainMenuItemID, bActive, cssInactive)
{
    // if this is not the active submenu item
    if (!bActive)
    {
        var oTD = getObject('DevMenu2_mainmenuitem_' + menuID + '_' + mainMenuItemID + '_td');    
        var oLink = getObject('DevMenu2_mainmenuitem_' + menuID + '_' + mainMenuItemID + '_link');
        oTD.className = cssInactive;
        oLink.className = cssInactive;
    }
    
    // update currently active menu
    activeMainMenuItemID = 0;

    // hide submenu
    setTimeout("DevMenu2HideSubMenu('" + menuID + "','" + mainMenuItemID + "')", 0);
}

// submenu onmouseover
function DevMenu2SubMenuOnMouseOver(menuID, mainMenuItemID)
{
    // update currently active menu
    activeMainMenuItemID = mainMenuItemID;
}

// submenu onmouseout
function DevMenu2SubMenuOnMouseOut(menuID, mainMenuItemID)
{
    // update currently active menu
    activeMainMenuItemID = 0;

    // hide submenu
    setTimeout("DevMenu2HideSubMenu('" + menuID + "','" + mainMenuItemID + "')", 0);
}

// show submenu
function DevMenu2ShowSubMenu(menuID, mainMenuItemID, offsetX, offsetY)
{
    // position the submenu
    moveXY('DevMenu2_subMenu_' + menuID + '_' + mainMenuItemID, getElementLeft('DevMenu2_mainMenu_' + menuID + '_' + mainMenuItemID) + offsetX, getElementTop('DevMenu2_mainMenu_' + menuID + '_' + mainMenuItemID) + getElementHeight('DevMenu2_mainMenu_' + menuID + '_' + mainMenuItemID) + offsetY);
    
    // change visibility
    changeObjectVisibility('DevMenu2_subMenu_' + menuID + '_' + mainMenuItemID, 'visible');
}

// hide submenu
function DevMenu2HideSubMenu(menuID, mainMenuItemID)
{
    if (mainMenuItemID != activeMainMenuItemID)
    {
        // change visibility
        changeObjectVisibility('DevMenu2_subMenu_' + menuID + '_' + mainMenuItemID, 'hidden');
    }
}

// submenu item onmouseover
function DevMenu2SubMenuItemOnMouseOver(menuID, subMenuItemID, bActive, cssActive)
{
    // if this is not the active submenu item
    if (!bActive)
    {
        var oTD = getObject('DevMenu2_submenuitem_' + menuID + '_' + subMenuItemID + '_td');    
        var oLink = getObject('DevMenu2_submenuitem_' + menuID + '_' + subMenuItemID + '_link');
        oTD.className = cssActive;
        oLink.className = cssActive;
    }
}

// submenu item onmouseout
function DevMenu2SubMenuItemOnMouseOut(menuID, subMenuItemID, bActive, cssInactive)
{
    // if this is not the active submenu item
    if (!bActive)
    {
        var oTD = getObject('DevMenu2_submenuitem_' + menuID + '_' + subMenuItemID + '_td');    
        var oLink = getObject('DevMenu2_submenuitem_' + menuID + '_' + subMenuItemID + '_link');
        oTD.className = cssInactive;
        oLink.className = cssInactive;
    }
}

// persistent submenu item onmouseover
function DevMenu2PersistentSubMenuItemOnMouseOver(menuID, subMenuItemID, bActive, cssActive)
{
    // if this is not the active submenu item
    if (!bActive)
    {
        var oTD = getObject('DevMenu2_persistent_submenuitem_' + menuID + '_' + subMenuItemID + '_td');    
        var oLink = getObject('DevMenu2_persistent_submenuitem_' + menuID + '_' + subMenuItemID + '_link');
        oTD.className = cssActive;
        oLink.className = cssActive;
    }
}

// persistent submenu item onmouseout
function DevMenu2PersistentSubMenuItemOnMouseOut(menuID, subMenuItemID, bActive, cssInactive)
{
    // if this is not the active submenu item
    if (!bActive)
    {
        var oTD = getObject('DevMenu2_persistent_submenuitem_' + menuID + '_' + subMenuItemID + '_td');    
        var oLink = getObject('DevMenu2_persistent_submenuitem_' + menuID + '_' + subMenuItemID + '_link');
        oTD.className = cssInactive;
        oLink.className = cssInactive;
    }
}
