XML Menu Tutorial help

Hi! I went through the XML Menu tutorial, and now I need to build a menu for a site. The thing is, in the tutorial, the menu is vertical, and the submenus pop out to the side, and then those buttons are stacked vertically. I need to be able to have a horizontal row of buttons, and then have the submenus come down vertically. So far I’ve gotten it, by changing the code slightly, to make the submenus come down below the main row of buttons, but those buttons are all in a row horizontally and that’s not what I want!

I figure I’ll need to make two for loops, one that tells Flash what to do with the main row of buttons (side by side in a row) and then another that tells it what to do with the submenus (stack up on top of each other). I just can’t figure out what I need to change to get that to happen.

What do I need to change? I’m just not sure where to go from here. Here is the code, for reference, sorry its soooo long.

GenerateMenu = function(container, name, x, y, depth, node_xml) {
var curr_node;
var curr_item;
var curr_menu = container.createEmptyMovieClip(name, depth);

// for all items or XML nodes (items and menus)
// within this node_xml passed for this menu
for (var i=0; i<node_xml.childNodes.length; i++) {
    // movieclip for each menu item
    curr_item = curr_menu.attachMovie("menuitem","item"+i+"_mc", i);
    curr_item._x = x+ i*curr_item._width; //CHANGED THIS TO PUT THEM SIDE BY SIDE
    curr_item._y = y;
    curr_item.trackAsMenu = true;
            
    // item properties assigned from XML
    curr_node = node_xml.childNodes*;
    curr_item.action = curr_node.attributes.action;
    curr_item.variables = curr_node.attributes.variables;
    curr_item.name.text = curr_node.attributes.name;
    
    // item submenu behavior for rollover event
    if (node_xml.childNodes*.nodeName == "menu"){
        // open a submenu
        curr_item.node_xml = curr_node;
        curr_item.onRollOver = curr_item.onDragOver = function(){
            var x = this._x + 5; //CHANGED THIS ROW AND THE NEXT TO MAKE THE SUBMENUS WORK
            var y = this._y + this._height - 5;
            GenerateMenu(curr_menu, "submenu_mc", x, y, 1000, this.node_xml);
            // show a hover color
        };
    }else{ // nodeName == "item"
            // close existing submenu
        curr_item.onRollOver = curr_item.onDragOver = function(){
            curr_menu.submenu_mc.removeMovieClip();
         };
    }
            
    // any item, menu opening or not can have actions
    curr_item.onRelease = function(){
        Actions[this.action](this.variables);
        CloseSubmenus();
    };
} // end for loop

};

// create the main menu, this will be constantly visible
CreateMainMenu = function(x, y, depth, menu_xml){
// generate a menu list
GenerateMenu(this, “mainmenu_mc”, x, y, depth, menu_xml.firstChild);
// close only submenus if visible durring a mouseup
// this main menu (mainmenu_mc) will remain
mainmenu_mc.onMouseUp = function(){
if (mainmenu_mc.submenu_mc && !mainmenu_mc.hitTest(_root._xmouse, _root._ymouse, true)){
CloseSubmenus();
}
};
};

// closes all submenus by removing the submenu_mc
// in the main menu (if it exists)
CloseSubmenus = function(){
mainmenu_mc.submenu_mc.removeMovieClip();
};

// This actions object handles methods for actions
// defined by the XML called when a menu item is pressed
Actions = Object();
Actions.gotoURL = function(urlVar){
getURL(urlVar, “_blank”);
};

Actions.newMenu = function(menuxml){
menu_xml.load(menuxml);
};

// load XML, when done, run CreateMainMenu to interpret it
menu_xml = new XML();
menu_xml.ignoreWhite = true;
menu_xml.onLoad = function(ok){
// create main menu after successful loading of XML
if (ok){
CreateMainMenu(10, 10, 0, this);
}
};
// load XML menu
menu_xml.load(“menu.xml”);