9 * @class Roo.bootstrap.NavGroup
10 * @extends Roo.bootstrap.Component
11 * Bootstrap NavGroup class
12 * @cfg {String} align left | right
13 * @cfg {Boolean} inverse false | true
14 * @cfg {String} type (nav|pills|tab) default nav
15 * @cfg {String} navId - reference Id for navbar.
19 * Create a new nav group
20 * @param {Object} config The config object
23 Roo.bootstrap.NavGroup = function(config){
24 Roo.bootstrap.NavGroup.superclass.constructor.call(this, config);
26 Roo.bootstrap.NavGroup.register(this);
29 Roo.extend(Roo.bootstrap.NavGroup, Roo.bootstrap.Component, {
40 getAutoCreate : function()
42 var cfg = Roo.apply({}, Roo.bootstrap.NavGroup.superclass.getAutoCreate.call(this));
49 if (['tabs','pills'].indexOf(this.type)!==-1) {
50 cfg.cls += ' nav-' + this.type
52 if (this.type!=='nav') {
53 Roo.log('nav type must be nav/tabs/pills')
55 cfg.cls += ' navbar-nav'
58 if (this.parent().sidebar === true) {
67 if (this.form === true) {
73 if (this.align === 'right') {
74 cfg.cls += ' navbar-right';
76 cfg.cls += ' navbar-left';
80 if (this.align === 'right') {
81 cfg.cls += ' navbar-right';
85 cfg.cls += ' navbar-inverse';
93 setActiveItem : function(item)
96 Roo.each(this.navItems, function(v){
98 v.setActive(false, false);
103 item.el.setActive('active', false);
104 this.fireEvent('item-activate', this, item);
110 register : function(item)
112 this.navItems.push( item);
113 item.navId = this.navId;
120 Roo.apply(Roo.bootstrap.NavGroup, {
124 register : function(navgrp)
126 this.groups[navgrp.navId] = navgrp;