Roo/bootstrap/Navbar.js
[roojs1] / Roo / bootstrap / Navbar.js
1 /*
2  * - LGPL
3  *
4  * navbar
5  * 
6  */
7
8 /**
9  * @class Roo.bootstrap.Navbar
10  * @extends Roo.bootstrap.Component
11  * Bootstrap Navbar class
12
13  * @constructor
14  * Create a new Navbar
15  * @param {Object} config The config object
16  */
17
18
19 Roo.bootstrap.Navbar = function(config){
20     Roo.bootstrap.Navbar.superclass.constructor.call(this, config);
21     this.addEvents({
22         // raw events
23         /**
24          * @event beforetoggle
25          * Fire before toggle the menu
26          * @param {Roo.EventObject} e
27          */
28         "beforetoggle" : true
29     });
30 };
31
32 Roo.extend(Roo.bootstrap.Navbar, Roo.bootstrap.Component,  {
33     
34     
35    
36     // private
37     navItems : false,
38     loadMask : false,
39     
40     
41     getAutoCreate : function(){
42         
43         
44         throw { message : "nav bar is now a abstract base class - use NavSimplebar / NavHeaderbar / NavSidebar etc..."};
45         
46     },
47     
48     initEvents :function ()
49     {
50         //Roo.log(this.el.select('.navbar-toggle',true));
51         this.el.select('.navbar-toggle',true).on('click', function() {
52            // Roo.log('click');
53             this.el.select('.navbar-collapse',true).toggleClass('in');                                 
54         }, this);
55         
56         var mark = {
57             tag: "div",
58             cls:"x-dlg-mask"
59         };
60         
61         this.maskEl = Roo.DomHelper.append(this.el, mark, true);
62         
63         var size = this.el.getSize();
64         this.maskEl.setSize(size.width, size.height);
65         this.maskEl.enableDisplayMode("block");
66         this.maskEl.hide();
67         
68         if(this.loadMask){
69             this.maskEl.show();
70         }
71     },
72     
73     
74     getChildContainer : function()
75     {
76         if (this.el.select('.collapse').getCount()) {
77             return this.el.select('.collapse',true).first();
78         }
79         
80         return this.el;
81     },
82     
83     mask : function()
84     {
85         this.maskEl.show();
86     },
87     
88     unmask : function()
89     {
90         this.maskEl.hide();
91     } 
92     
93     
94     
95     
96 });
97
98
99
100  
101
102