Using a filter to modify Genesis wp_nav_menu

This new updated version of Evan’s Code works with Genesis 1.9 and fixes the bug of displaying all navigation items.

/*
 * Add classes to Genesis Navigation
 * Tested with Genesis 1.9 (Beta)
 * 29.12.2012
 */
add_filter( 'genesis_do_nav', 'override_do_nav', 10, 3 );
function override_do_nav($nav_output, $nav, $args) {

    $args['menu_id'] = 'the_id_you_want';
    $args['menu_class'] = 'class1 class2'; // replace what was there 
    $args['menu_class'] .= ' nav-bar'; // or append to it

    if ( genesis_get_option( 'nav' ) ) {
        if ( has_nav_menu( 'primary' ) ) {          
            $nav = wp_nav_menu( $args );            
        } elseif ( 'nav-menu' != genesis_get_option( 'nav_type', 'genesis-vestige' ) ) {
            $nav = genesis_nav( $args );
        }
    }

    return sprintf( '<div id="nav">%2$s%1$s%3$s</div>', $nav, genesis_structural_wrap( 'nav', 'open', 0 ), genesis_structural_wrap( 'nav', 'close', 0 ) ); 
}

Cheers
Daniel