1 <html><head><title>../roojs1/Roo/bootstrap/Toolbar.js</title><link rel="stylesheet" type="text/css" href="../../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">/*
4 * Copyright(c) 2006-2007, Ext JS, LLC.
6 * Originally Released Under LGPL - original licence link has changed is not relivant.
9 * <script type="text/javascript">
13 * @class Roo.bootstrap.Toolbar
14 * Basic Toolbar class.
16 * Creates a new Toolbar
17 * @param {Object} container The config object
19 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">container</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">buttons</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">)
21 </span><span class="jsdoc-comment">/// old consturctor format still supported..
22 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">container </span><span class="jsdoc-keyword">instanceof </span><span class="jsdoc-var">Array</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// omit the container for later rendering
23 </span><span class="jsdoc-var">buttons </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">container</span><span class="jsdoc-syntax">;
24 </span><span class="jsdoc-var">config </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">buttons</span><span class="jsdoc-syntax">;
25 </span><span class="jsdoc-var">container </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">;
27 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">container</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'object' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">container.xtype</span><span class="jsdoc-syntax">) {
28 </span><span class="jsdoc-var">config </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">container</span><span class="jsdoc-syntax">;
29 </span><span class="jsdoc-var">container </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">config.container</span><span class="jsdoc-syntax">;
30 </span><span class="jsdoc-var">buttons </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">config.buttons </span><span class="jsdoc-syntax">|| []; </span><span class="jsdoc-comment">// not really - use items!!
31 </span><span class="jsdoc-syntax">}
32 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">xitems </span><span class="jsdoc-syntax">= [];
33 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">config.items</span><span class="jsdoc-syntax">) {
34 </span><span class="jsdoc-var">xitems </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">config.items</span><span class="jsdoc-syntax">;
35 </span><span class="jsdoc-keyword">delete </span><span class="jsdoc-var">config.items</span><span class="jsdoc-syntax">;
37 </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
38 </span><span class="jsdoc-var">this.buttons </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">buttons</span><span class="jsdoc-syntax">;
40 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">container</span><span class="jsdoc-syntax">){
41 </span><span class="jsdoc-var">this.render</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">container</span><span class="jsdoc-syntax">);
43 </span><span class="jsdoc-var">this.xitems </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">xitems</span><span class="jsdoc-syntax">;
44 </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">xitems</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">) {
45 </span><span class="jsdoc-var">this.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">);
46 }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
50 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.prototype </span><span class="jsdoc-syntax">= {
51 </span><span class="jsdoc-comment">/**
53 * array of button configs or elements to add (will be converted to a MixedCollection)
57 * @cfg {String/HTMLElement/Element} container
58 * The id or element that will contain the toolbar
61 </span><span class="jsdoc-var">render </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">){
62 </span><span class="jsdoc-var">this.el </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">);
63 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.cls</span><span class="jsdoc-syntax">){
64 </span><span class="jsdoc-var">this.el.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.cls</span><span class="jsdoc-syntax">);
66 </span><span class="jsdoc-comment">// using a table allows for vertical alignment
67 // 100% width is needed by Safari...
68 </span><span class="jsdoc-var">this.el.update</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'<div class="x-toolbar x-small-editor"><table cellspacing="0"><tr></tr></table></div>'</span><span class="jsdoc-syntax">);
69 </span><span class="jsdoc-var">this.tr </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.child</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"tr"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
70 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">autoId </span><span class="jsdoc-syntax">= 0;
71 </span><span class="jsdoc-var">this.items </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.util.MixedCollection</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">){
72 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">o.id </span><span class="jsdoc-syntax">|| (</span><span class="jsdoc-string">"item" </span><span class="jsdoc-syntax">+ (++</span><span class="jsdoc-var">autoId</span><span class="jsdoc-syntax">));
74 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.buttons</span><span class="jsdoc-syntax">){
75 </span><span class="jsdoc-var">this.add.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.buttons</span><span class="jsdoc-syntax">);
76 </span><span class="jsdoc-keyword">delete </span><span class="jsdoc-var">this.buttons</span><span class="jsdoc-syntax">;
80 </span><span class="jsdoc-comment">/**
81 * Adds element(s) to the toolbar -- this function takes a variable number of
82 * arguments of mixed type and adds them to the toolbar.
83 * @param {Mixed} arg1 The following types of arguments are all valid:<br />
85 * <li>{@link Roo.bootstrap.Toolbar.Button} config: A valid button config object (equivalent to {@link #addButton})</li>
86 * <li>HtmlElement: Any standard HTML element (equivalent to {@link #addElement})</li>
87 * <li>Field: Any form field (equivalent to {@link #addField})</li>
88 * <li>Item: Any subclass of {@link Roo.bootstrap.Toolbar.Item} (equivalent to {@link #addItem})</li>
89 * <li>String: Any generic string (gets wrapped in a {@link Roo.bootstrap.Toolbar.TextItem}, equivalent to {@link #addText}).
90 * Note that there are a few special strings that are treated differently as explained nRoo.</li>
91 * <li>'separator' or '-': Creates a separator element (equivalent to {@link #addSeparator})</li>
92 * <li>' ': Creates a spacer element (equivalent to {@link #addSpacer})</li>
93 * <li>'->': Creates a fill element (equivalent to {@link #addFill})</li>
98 </span><span class="jsdoc-var">add </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
99 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">a </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">l </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">a.length</span><span class="jsdoc-syntax">;
100 </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">l</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++){
101 </span><span class="jsdoc-var">this._add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]);
104 </span><span class="jsdoc-comment">// private..
105 </span><span class="jsdoc-var">_add </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">) {
107 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el.xtype</span><span class="jsdoc-syntax">) {
108 </span><span class="jsdoc-var">el </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.factory</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.Toolbar</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">el.xtype</span><span class="jsdoc-syntax">]) == </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">Roo.bootstrap.form </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.bootstrap.Toolbar</span><span class="jsdoc-syntax">);
111 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el.applyTo</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// some kind of form field
112 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addField</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">);
114 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el.render</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// some kind of Toolbar.Item
115 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">);
117 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">el </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">"string"</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// string
118 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">"separator" </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">el </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">"-"</span><span class="jsdoc-syntax">){
119 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addSeparator</span><span class="jsdoc-syntax">();
121 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">" "</span><span class="jsdoc-syntax">){
122 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addSpacer</span><span class="jsdoc-syntax">();
124 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">"->"</span><span class="jsdoc-syntax">){
125 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addFill</span><span class="jsdoc-syntax">();
127 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addText</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">);
130 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el.tagName</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// element
131 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addElement</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">);
133 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">el </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">"object"</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// must be button config?
134 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addButton</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">);
136 </span><span class="jsdoc-comment">// and now what?!?!
137 </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
141 </span><span class="jsdoc-comment">/**
142 * Add an Xtype element
143 * @param {Object} xtype Xtype Object
144 * @return {Object} created Object
146 </span><span class="jsdoc-var">addxtype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
147 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
150 </span><span class="jsdoc-comment">/**
151 * Returns the Element for this toolbar.
152 * @return {Roo.bootstrap.Element}
154 </span><span class="jsdoc-var">getEl </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
155 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">;
158 </span><span class="jsdoc-comment">/**
160 * @return {Roo.bootstrap.Toolbar.Item} The separator item
162 </span><span class="jsdoc-var">addSeparator </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
163 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Separator</span><span class="jsdoc-syntax">());
166 </span><span class="jsdoc-comment">/**
167 * Adds a spacer element
168 * @return {Roo.bootstrap.Toolbar.Spacer} The spacer item
170 </span><span class="jsdoc-var">addSpacer </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
171 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Spacer</span><span class="jsdoc-syntax">());
174 </span><span class="jsdoc-comment">/**
175 * Adds a fill element that forces subsequent additions to the right side of the toolbar
176 * @return {Roo.bootstrap.Toolbar.Fill} The fill item
178 </span><span class="jsdoc-var">addFill </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
179 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Fill</span><span class="jsdoc-syntax">());
182 </span><span class="jsdoc-comment">/**
183 * Adds any standard HTML element to the toolbar
184 * @param {String/HTMLElement/Element} el The element or id of the element to add
185 * @return {Roo.bootstrap.Toolbar.Item} The element's item
187 </span><span class="jsdoc-var">addElement </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">){
188 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Item</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">));
190 </span><span class="jsdoc-comment">/**
191 * Collection of items on the toolbar.. (only Toolbar Items, so use fields to retrieve fields)
192 * @type Roo.util.MixedCollection
194 </span><span class="jsdoc-var">items </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
196 </span><span class="jsdoc-comment">/**
197 * Adds any Toolbar.Item or subclass
198 * @param {Roo.bootstrap.Toolbar.Item} item
199 * @return {Roo.bootstrap.Toolbar.Item} The item
201 </span><span class="jsdoc-var">addItem </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">){
202 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">td </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.nextBlock</span><span class="jsdoc-syntax">();
203 </span><span class="jsdoc-var">item.render</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">);
204 </span><span class="jsdoc-var">this.items.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">);
205 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">;
208 </span><span class="jsdoc-comment">/**
209 * Adds a button (or buttons). See {@link Roo.Toolbar.Button} for more info on the config.
210 * @param {Object/Array} config A button config or array of configs
211 * @return {Roo.bootstrap.Toolbar.Button/Array}
213 </span><span class="jsdoc-var">addButton </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
214 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config </span><span class="jsdoc-keyword">instanceof </span><span class="jsdoc-var">Array</span><span class="jsdoc-syntax">){
215 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">buttons </span><span class="jsdoc-syntax">= [];
216 </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0, </span><span class="jsdoc-var">len </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">config.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">len</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
217 </span><span class="jsdoc-var">buttons.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.addButton</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]));
219 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">buttons</span><span class="jsdoc-syntax">;
221 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">b </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">;
222 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!(</span><span class="jsdoc-var">config </span><span class="jsdoc-keyword">instanceof </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Button</span><span class="jsdoc-syntax">)){
223 </span><span class="jsdoc-var">b </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">config.split </span><span class="jsdoc-syntax">?
224 </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.SplitButton</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">) :
225 </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Button</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
227 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">td </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.nextBlock</span><span class="jsdoc-syntax">();
228 </span><span class="jsdoc-var">b.render</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">);
229 </span><span class="jsdoc-var">this.items.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">);
230 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">b</span><span class="jsdoc-syntax">;
233 </span><span class="jsdoc-comment">/**
234 * Adds text to the toolbar
235 * @param {String} text The text to add
236 * @return {Roo.bootstrap.Toolbar.Item} The element's item
238 </span><span class="jsdoc-var">addText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">){
239 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.TextItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">));
242 </span><span class="jsdoc-comment">/**
243 * Inserts any {@link Roo.Toolbar.Item}/{@link Roo.Toolbar.Button} at the specified index.
244 * @param {Number} index The index where the item is to be inserted
245 * @param {Object/Roo.bootstrap.Toolbar.Item/Roo.bootstrap.Toolbar.Button (may be Array)} item The button, or button config object to be inserted.
246 * @return {Roo.bootstrap.Toolbar.Button/Item}
248 </span><span class="jsdoc-var">insertButton </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">){
249 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item </span><span class="jsdoc-keyword">instanceof </span><span class="jsdoc-var">Array</span><span class="jsdoc-syntax">){
250 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">buttons </span><span class="jsdoc-syntax">= [];
251 </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0, </span><span class="jsdoc-var">len </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">item.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">len</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
252 </span><span class="jsdoc-var">buttons.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.insertButton</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]));
254 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">buttons</span><span class="jsdoc-syntax">;
256 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!(</span><span class="jsdoc-var">item </span><span class="jsdoc-keyword">instanceof </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Button</span><span class="jsdoc-syntax">)){
257 </span><span class="jsdoc-var">item </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Button</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">);
259 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">td </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">document.createElement</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"td"</span><span class="jsdoc-syntax">);
260 </span><span class="jsdoc-var">this.tr.insertBefore</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.tr.childNodes</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">]);
261 </span><span class="jsdoc-var">item.render</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">);
262 </span><span class="jsdoc-var">this.items.insert</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">);
263 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">;
266 </span><span class="jsdoc-comment">/**
267 * Adds a new element to the toolbar from the passed {@link Roo.DomHelper} config.
268 * @param {Object} config
269 * @return {Roo.bootstrap.Toolbar.Item} The element's item
271 </span><span class="jsdoc-var">addDom </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">returnEl</span><span class="jsdoc-syntax">){
272 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">td </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.nextBlock</span><span class="jsdoc-syntax">();
273 </span><span class="jsdoc-var">Roo.DomHelper.overwrite</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
274 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ti </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Item</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td.firstChild</span><span class="jsdoc-syntax">);
275 </span><span class="jsdoc-var">ti.render</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">);
276 </span><span class="jsdoc-var">this.items.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ti</span><span class="jsdoc-syntax">);
277 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">ti</span><span class="jsdoc-syntax">;
280 </span><span class="jsdoc-comment">/**
281 * Collection of fields on the toolbar.. usefull for quering (value is false if there are no fields)
282 * @type Roo.util.MixedCollection
284 </span><span class="jsdoc-var">fields </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
286 </span><span class="jsdoc-comment">/**
287 * Adds a dynamically rendered Roo.form field (TextField, ComboBox, etc).
288 * Note: the field should not have been rendered yet. For a field that has already been
289 * rendered, use {@link #addElement}.
290 * @param {Roo.bootstrap.form.Field} field
291 * @return {Roo.bootstrap.ToolbarItem}
295 </span><span class="jsdoc-var">addField </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">field</span><span class="jsdoc-syntax">) {
296 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.fields</span><span class="jsdoc-syntax">) {
297 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">autoId </span><span class="jsdoc-syntax">= 0;
298 </span><span class="jsdoc-var">this.fields </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.util.MixedCollection</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">){
299 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">o.id </span><span class="jsdoc-syntax">|| (</span><span class="jsdoc-string">"item" </span><span class="jsdoc-syntax">+ (++</span><span class="jsdoc-var">autoId</span><span class="jsdoc-syntax">));
304 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">td </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.nextBlock</span><span class="jsdoc-syntax">();
305 </span><span class="jsdoc-var">field.render</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">);
306 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ti </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Item</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td.firstChild</span><span class="jsdoc-syntax">);
307 </span><span class="jsdoc-var">ti.render</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">);
308 </span><span class="jsdoc-var">this.items.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ti</span><span class="jsdoc-syntax">);
309 </span><span class="jsdoc-var">this.fields.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">field</span><span class="jsdoc-syntax">);
310 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">ti</span><span class="jsdoc-syntax">;
312 </span><span class="jsdoc-comment">/**
318 </span><span class="jsdoc-var">hide </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
320 </span><span class="jsdoc-var">this.el.child</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">);
321 </span><span class="jsdoc-var">this.el.child</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.hide</span><span class="jsdoc-syntax">();
323 </span><span class="jsdoc-comment">/**
327 </span><span class="jsdoc-var">show </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
329 </span><span class="jsdoc-var">this.el.child</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.show</span><span class="jsdoc-syntax">();
332 </span><span class="jsdoc-comment">// private
333 </span><span class="jsdoc-var">nextBlock </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
334 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">td </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">document.createElement</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"td"</span><span class="jsdoc-syntax">);
335 </span><span class="jsdoc-var">this.tr.appendChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">);
336 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">;
339 </span><span class="jsdoc-comment">// private
340 </span><span class="jsdoc-var">destroy </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
341 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.items</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// rendered?
342 </span><span class="jsdoc-var">Roo.destroy.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.items.items</span><span class="jsdoc-syntax">);
344 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fields</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// rendered?
345 </span><span class="jsdoc-var">Roo.destroy.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.fields.items</span><span class="jsdoc-syntax">);
347 </span><span class="jsdoc-var">Roo.Element.uncache</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.tr</span><span class="jsdoc-syntax">);
351 </span><span class="jsdoc-comment">/**
352 * @class Roo.Toolbar.Item
353 * The base class that other classes should extend in order to get some basic common toolbar item functionality.
356 * @param {HTMLElement} el
358 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Item </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">){
359 </span><span class="jsdoc-var">this.el </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.getDom</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">);
360 </span><span class="jsdoc-var">this.id </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.id</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">);
361 </span><span class="jsdoc-var">this.hidden </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
364 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Item.prototype </span><span class="jsdoc-syntax">= {
366 </span><span class="jsdoc-comment">/**
367 * Get this item's HTML Element
368 * @return {HTMLElement}
370 </span><span class="jsdoc-var">getEl </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
371 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">;
374 </span><span class="jsdoc-comment">// private
375 </span><span class="jsdoc-var">render </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">){
376 </span><span class="jsdoc-var">this.td </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">;
377 </span><span class="jsdoc-var">td.appendChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">);
380 </span><span class="jsdoc-comment">/**
381 * Removes and destroys this item.
383 </span><span class="jsdoc-var">destroy </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
384 </span><span class="jsdoc-var">this.td.parentNode.removeChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.td</span><span class="jsdoc-syntax">);
387 </span><span class="jsdoc-comment">/**
390 </span><span class="jsdoc-var">show</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
391 </span><span class="jsdoc-var">this.hidden </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
392 </span><span class="jsdoc-var">this.td.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">""</span><span class="jsdoc-syntax">;
395 </span><span class="jsdoc-comment">/**
398 </span><span class="jsdoc-var">hide</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
399 </span><span class="jsdoc-var">this.hidden </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
400 </span><span class="jsdoc-var">this.td.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"none"</span><span class="jsdoc-syntax">;
403 </span><span class="jsdoc-comment">/**
404 * Convenience function for boolean show/hide.
405 * @param {Boolean} visible true to show/false to hide
407 </span><span class="jsdoc-var">setVisible</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">visible</span><span class="jsdoc-syntax">){
408 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">visible</span><span class="jsdoc-syntax">) {
409 </span><span class="jsdoc-var">this.show</span><span class="jsdoc-syntax">();
410 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
411 </span><span class="jsdoc-var">this.hide</span><span class="jsdoc-syntax">();
415 </span><span class="jsdoc-comment">/**
416 * Try to focus this item.
418 </span><span class="jsdoc-var">focus </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
419 </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.focus</span><span class="jsdoc-syntax">();
422 </span><span class="jsdoc-comment">/**
423 * Disables this item.
425 </span><span class="jsdoc-var">disable </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
426 </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.td</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"x-item-disabled"</span><span class="jsdoc-syntax">);
427 </span><span class="jsdoc-var">this.disabled </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
428 </span><span class="jsdoc-var">this.el.disabled </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
431 </span><span class="jsdoc-comment">/**
434 </span><span class="jsdoc-var">enable </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
435 </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.td</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"x-item-disabled"</span><span class="jsdoc-syntax">);
436 </span><span class="jsdoc-var">this.disabled </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
437 </span><span class="jsdoc-var">this.el.disabled </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
442 </span><span class="jsdoc-comment">/**
443 * @class Roo.bootstrap.Toolbar.Separator
444 * @extends Roo.bootstrap.Toolbar.Item
445 * A simple toolbar separator class
447 * Creates a new Separator
449 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Separator </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
450 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">s </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">document.createElement</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"span"</span><span class="jsdoc-syntax">);
451 </span><span class="jsdoc-var">s.className </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"ytb-sep"</span><span class="jsdoc-syntax">;
452 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Separator.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">s</span><span class="jsdoc-syntax">);
454 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Separator</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Item</span><span class="jsdoc-syntax">, {
455 </span><span class="jsdoc-var">enable</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">Roo.emptyFn</span><span class="jsdoc-syntax">,
456 </span><span class="jsdoc-var">disable</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">Roo.emptyFn</span><span class="jsdoc-syntax">,
457 </span><span class="jsdoc-var">focus</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">Roo.emptyFn
458 </span><span class="jsdoc-syntax">});
460 </span><span class="jsdoc-comment">/**
461 * @class Roo.bootstrap.Toolbar.Spacer
462 * @extends Roo.bootstrap.Toolbar.Item
463 * A simple element that adds extra horizontal space to a toolbar.
465 * Creates a new Spacer
467 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Spacer </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
468 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">s </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">document.createElement</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"div"</span><span class="jsdoc-syntax">);
469 </span><span class="jsdoc-var">s.className </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"ytb-spacer"</span><span class="jsdoc-syntax">;
470 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Spacer.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">s</span><span class="jsdoc-syntax">);
472 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Spacer</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Item</span><span class="jsdoc-syntax">, {
473 </span><span class="jsdoc-var">enable</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">Roo.emptyFn</span><span class="jsdoc-syntax">,
474 </span><span class="jsdoc-var">disable</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">Roo.emptyFn</span><span class="jsdoc-syntax">,
475 </span><span class="jsdoc-var">focus</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">Roo.emptyFn
476 </span><span class="jsdoc-syntax">});
478 </span><span class="jsdoc-comment">/**
479 * @class Roo.bootstrap.Toolbar.Fill
480 * @extends Roo.bootstrap.Toolbar.Spacer
481 * A simple element that adds a greedy (100% width) horizontal space to a toolbar.
483 * Creates a new Spacer
485 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Fill </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Spacer</span><span class="jsdoc-syntax">, {
486 </span><span class="jsdoc-comment">// private
487 </span><span class="jsdoc-var">render </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">){
488 </span><span class="jsdoc-var">td.style.width </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'100%'</span><span class="jsdoc-syntax">;
489 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Fill.superclass.render.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">);
493 </span><span class="jsdoc-comment">/**
494 * @class Roo.bootstrap.Toolbar.TextItem
495 * @extends Roo.bootstrap.Toolbar.Item
496 * A simple class that renders text directly into a toolbar.
498 * Creates a new TextItem
499 * @param {String} text
501 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.TextItem </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">){
502 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'object'</span><span class="jsdoc-syntax">) {
503 </span><span class="jsdoc-var">text </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">text.text</span><span class="jsdoc-syntax">;
505 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">s </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">document.createElement</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"span"</span><span class="jsdoc-syntax">);
506 </span><span class="jsdoc-var">s.className </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"ytb-text"</span><span class="jsdoc-syntax">;
507 </span><span class="jsdoc-var">s.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">;
508 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.TextItem.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">s</span><span class="jsdoc-syntax">);
510 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.Toolbar.TextItem</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Item</span><span class="jsdoc-syntax">, {
511 </span><span class="jsdoc-var">enable</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">Roo.emptyFn</span><span class="jsdoc-syntax">,
512 </span><span class="jsdoc-var">disable</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">Roo.emptyFn</span><span class="jsdoc-syntax">,
513 </span><span class="jsdoc-var">focus</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">Roo.emptyFn
514 </span><span class="jsdoc-syntax">});
516 </span><span class="jsdoc-comment">/**
517 * @class Roo.bootstrap.Toolbar.Button
518 * @extends Roo.Button
519 * A button that renders into a toolbar.
521 * Creates a new Button
522 * @param {Object} config A standard {@link Roo.Button} config object
524 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Button </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
525 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Button.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
527 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Button</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.bootstrap.Button</span><span class="jsdoc-syntax">, {
528 </span><span class="jsdoc-var">render </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">){
529 </span><span class="jsdoc-var">this.td </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">;
530 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Button.superclass.render.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">);
533 </span><span class="jsdoc-comment">/**
534 * Removes and destroys this button
536 </span><span class="jsdoc-var">destroy </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
537 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Button.superclass.destroy.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
538 </span><span class="jsdoc-var">this.td.parentNode.removeChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.td</span><span class="jsdoc-syntax">);
541 </span><span class="jsdoc-comment">/**
544 </span><span class="jsdoc-var">show</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
545 </span><span class="jsdoc-var">this.hidden </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
546 </span><span class="jsdoc-var">this.td.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">""</span><span class="jsdoc-syntax">;
549 </span><span class="jsdoc-comment">/**
552 </span><span class="jsdoc-var">hide</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
553 </span><span class="jsdoc-var">this.hidden </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
554 </span><span class="jsdoc-var">this.td.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"none"</span><span class="jsdoc-syntax">;
557 </span><span class="jsdoc-comment">/**
560 </span><span class="jsdoc-var">disable </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
561 </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.td</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"x-item-disabled"</span><span class="jsdoc-syntax">);
562 </span><span class="jsdoc-var">this.disabled </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
565 </span><span class="jsdoc-comment">/**
568 </span><span class="jsdoc-var">enable </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
569 </span><span class="jsdoc-var">Roo.fly</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.td</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"x-item-disabled"</span><span class="jsdoc-syntax">);
570 </span><span class="jsdoc-var">this.disabled </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
573 </span><span class="jsdoc-comment">// backwards compat
574 </span><span class="jsdoc-var">Roo.bootstrap.ToolbarButton </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.Button</span><span class="jsdoc-syntax">;
576 </span><span class="jsdoc-comment">/**
577 * @class Roo.bootstrap.Toolbar.SplitButton
578 * @extends Roo.bootstrap.SplitButton
579 * A menu button that renders into a toolbar.
581 * Creates a new SplitButton
582 * @param {Object} config A standard {@link Roo.bootstrap.SplitButton} config object
584 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.SplitButton </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
585 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.SplitButton.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
587 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.Toolbar.SplitButton</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.bootstrap.SplitButton</span><span class="jsdoc-syntax">, {
588 </span><span class="jsdoc-var">render </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">){
589 </span><span class="jsdoc-var">this.td </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">;
590 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.SplitButton.superclass.render.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">td</span><span class="jsdoc-syntax">);
593 </span><span class="jsdoc-comment">/**
594 * Removes and destroys this button
596 </span><span class="jsdoc-var">destroy </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
597 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.SplitButton.superclass.destroy.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
598 </span><span class="jsdoc-var">this.td.parentNode.removeChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.td</span><span class="jsdoc-syntax">);
601 </span><span class="jsdoc-comment">/**
604 </span><span class="jsdoc-var">show</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
605 </span><span class="jsdoc-var">this.hidden </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
606 </span><span class="jsdoc-var">this.td.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">""</span><span class="jsdoc-syntax">;
609 </span><span class="jsdoc-comment">/**
612 </span><span class="jsdoc-var">hide</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
613 </span><span class="jsdoc-var">this.hidden </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
614 </span><span class="jsdoc-var">this.td.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"none"</span><span class="jsdoc-syntax">;
618 </span><span class="jsdoc-comment">// backwards compat
619 </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.MenuButton </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.bootstrap.Toolbar.SplitButton</span><span class="jsdoc-syntax">;</span></code></body></html>