// backwards compat
Ext.toolbar.Toolbar.Button = Ext.extend(Ext.button.Button, {});
Ext.toolbar.Toolbar.SplitButton = Ext.extend(Ext.SplitButton, {});
Ext.reg('tbbutton', Ext.toolbar.Toolbar.Button);
Ext.reg('tbsplit', Ext.toolbar.Toolbar.SplitButton);

Ext.toolbar.Toolbar.override({
    
/** * Adds text to the toolbar *

Note: See the notes within {@link Ext.container.Container#add}.

* @param {String} text The text to add * @return {Ext.toolbar.Toolbar.Item} The element's item */ addText : function(text){ return this.addItem(new Ext.toolbar.Toolbar.TextItem(text)); },
/** * Adds a new element to the toolbar from the passed {@link Ext.core.DomHelper} config *

Note: See the notes within {@link Ext.container.Container#add}.

* @param {Object} config * @return {Ext.toolbar.Toolbar.Item} The element's item */ addDom : function(config){ return this.add(new Ext.toolbar.Toolbar.Item({autoEl: config})); },
/** * Adds a dynamically rendered Ext.form field (Text, ComboBox, etc). Note: the field should not have * been rendered yet. For a field that has already been rendered, use {@link #addElement}. *

Note: See the notes within {@link Ext.container.Container#add}.

* @param {Ext.form.Field} field * @return {Ext.toolbar.Toolbar.Item} */ addField : function(field){ return this.add(field); },
/** * Inserts any {@link Ext.toolbar.Toolbar.Item}/{@link Ext.button.Button} at the specified index. *

Note: See the notes within {@link Ext.container.Container#add}.

* @param {Number} index The index where the item is to be inserted * @param {Object/Ext.toolbar.Toolbar.Item/Ext.button.Button/Array} item The button, or button config object to be * inserted, or an array of buttons/configs. * @return {Ext.button.Button/Item} */ insertButton : function(index, item){ if(Ext.isArray(item)){ var buttons = []; for(var i = 0, len = item.length; i < len; i++) { buttons.push(this.insertButton(index + i, item[i])); } return buttons; } return Ext.toolbar.Toolbar.superclass.insert.call(this, index, item); },
/** * Adds a separator *

Note: See the notes within {@link Ext.container.Container#add}.

* @return {Ext.toolbar.Toolbar.Item} The separator {@link Ext.toolbar.Toolbar.Item item} */ addSeparator : function(){ return this.add(new Ext.toolbar.Separator()); },
/** * Adds a spacer element *

Note: See the notes within {@link Ext.container.Container#add}.

* @return {Ext.toolbar.Toolbar.Spacer} The spacer item */ addSpacer : function(){ return this.add(new Ext.toolbar.Toolbar.Spacer()); },
/** * Forces subsequent additions into the float:right toolbar *

Note: See the notes within {@link Ext.container.Container#add}.

*/ addFill : function(){ this.add(new Ext.toolbar.Toolbar.Fill()); },
/** * Adds any standard HTML element to the toolbar *

Note: See the notes within {@link Ext.container.Container#add}.

* @param {Mixed} el The element or id of the element to add * @return {Ext.toolbar.Toolbar.Item} The element's item */ addElement : function(el){ return this.addItem(new Ext.toolbar.Toolbar.Item({el:el})); },
/** * Adds any Toolbar.Item or subclass *

Note: See the notes within {@link Ext.container.Container#add}.

* @param {Ext.toolbar.Toolbar.Item} item * @return {Ext.toolbar.Toolbar.Item} The item */ addItem : function(item){ return this.add.apply(this, arguments); },
/** * Adds a button (or buttons). See {@link Ext.button.Button} for more info on the config. *

Note: See the notes within {@link Ext.container.Container#add}.

* @param {Object/Array} config A button config or array of configs * @return {Ext.button.Button/Array} */ addButton : function(config){ if(Ext.isArray(config)){ var buttons = []; for(var i = 0, len = config.length; i < len; i++) { buttons.push(this.addButton(config[i])); } return buttons; } return this.add(this.constructButton(config)); } });