/**
 * A simple class that renders text directly into a toolbar.
 *
 *     @example
 *     Ext.create('Ext.panel.Panel', {
 *         title: 'Panel with TextItem',
 *         width: 300,
 *         height: 200,
 *         tbar: [
 *             { xtype: 'tbtext', text: 'Sample Text Item' }
 *         ],
 *         renderTo: Ext.getBody()
 *     });
 *
 * @constructor
 * Creates a new TextItem
 * @param {Object} text A text string, or a config object containing a #text property
 */
Ext.define('Ext.toolbar.TextItem', {
    extend: 'Ext.toolbar.Item',
    requires: ['Ext.XTemplate'],
    alias: 'widget.tbtext',
    alternateClassName: 'Ext.Toolbar.TextItem',
 
    /**
     * @cfg {String} text 
     * The text to be used as innerHTML (html tags are accepted).
     */
    text: '',
 
    renderTpl: '{text}',
    // 
    baseCls: Ext.baseCSSPrefix + 'toolbar-text',
    
    ariaRole: null,
 
    beforeRender : function() {
        var me = this;
 
        me.callParent();
 
        Ext.apply(me.renderData, {
            text: me.text
        });
    },
 
    /**
     * Updates this item's text, setting the text to be used as innerHTML.
     * @param {String} text The text to display (html accepted).
     */
    setText : function(text) {
        var me = this;
        me.text = text;
        if (me.rendered) {
            me.el.setHtml(text);
            me.updateLayout();
        }
    }
});