X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=Roo%2FToolbar.js;h=b6ecbd6f3ecfb2283aa1fd0dfde82ed62365b83d;hb=0b69a11b1055a6d3a3fd0719bdd58b5a235de0e4;hp=d42921953f216259ff60b128a760e19d5682a098;hpb=452f0b556182f9448214a4be4822af3af13fdaf9;p=roojs1 diff --git a/Roo/Toolbar.js b/Roo/Toolbar.js index d42921953f..b6ecbd6f3e 100644 --- a/Roo/Toolbar.js +++ b/Roo/Toolbar.js @@ -356,12 +356,28 @@ Roo.Toolbar.prototype = { * @param {HTMLElement} el */ Roo.Toolbar.Item = function(el){ + var cfg = {}; + if (typeof (el.xtype) != 'undefined') { + cfg = el; + el = cfg.el; + } + this.el = Roo.getDom(el); this.id = Roo.id(this.el); this.hidden = false; + + this.addEvents({ + /** + * @event render + * Fires when the button is rendered + * @param {Button} this + */ + 'render': true + }); + Roo.Toolbar.Item.superclass.constructor.call(this,cfg); }; - -Roo.Toolbar.Item.prototype = { +Roo.extend(Roo.Toolbar.Item, Roo.util.Observable, { +//Roo.Toolbar.Item.prototype = { /** * Get this item's HTML Element @@ -373,8 +389,11 @@ Roo.Toolbar.Item.prototype = { // private render : function(td){ - this.td = td; + + this.td = td; td.appendChild(this.el); + + this.fireEvent('render', this); }, /** @@ -436,7 +455,7 @@ Roo.Toolbar.Item.prototype = { this.disabled = false; this.el.disabled = false; } -}; +}); /** @@ -446,10 +465,15 @@ Roo.Toolbar.Item.prototype = { * @constructor * Creates a new Separator */ -Roo.Toolbar.Separator = function(){ +Roo.Toolbar.Separator = function(cfg){ + var s = document.createElement("span"); s.className = "ytb-sep"; - Roo.Toolbar.Separator.superclass.constructor.call(this, s); + if (cfg) { + cfg.el = s; + } + + Roo.Toolbar.Separator.superclass.constructor.call(this, cfg || s); }; Roo.extend(Roo.Toolbar.Separator, Roo.Toolbar.Item, { enable:Roo.emptyFn, @@ -464,10 +488,13 @@ Roo.extend(Roo.Toolbar.Separator, Roo.Toolbar.Item, { * @constructor * Creates a new Spacer */ -Roo.Toolbar.Spacer = function(){ +Roo.Toolbar.Spacer = function(cfg){ var s = document.createElement("div"); s.className = "ytb-spacer"; - Roo.Toolbar.Spacer.superclass.constructor.call(this, s); + if (cfg) { + cfg.el = s; + } + Roo.Toolbar.Spacer.superclass.constructor.call(this, cfg || s); }; Roo.extend(Roo.Toolbar.Spacer, Roo.Toolbar.Item, { enable:Roo.emptyFn, @@ -498,16 +525,25 @@ Roo.Toolbar.Fill = Roo.extend(Roo.Toolbar.Spacer, { * Creates a new TextItem * @param {String} text */ -Roo.Toolbar.TextItem = function(text){ - if (typeof(text) == 'object') { - text = text.text; +Roo.Toolbar.TextItem = function(cfg){ + var text = cfg || ""; + if (typeof(cfg) == 'object') { + text = cfg.text || ""; + } else { + cfg = null; } var s = document.createElement("span"); s.className = "ytb-text"; s.innerHTML = text; - Roo.Toolbar.TextItem.superclass.constructor.call(this, s); + if (cfg) { + cfg.el = s; + } + + Roo.Toolbar.TextItem.superclass.constructor.call(this, cfg || s); }; Roo.extend(Roo.Toolbar.TextItem, Roo.Toolbar.Item, { + + enable:Roo.emptyFn, disable:Roo.emptyFn, focus:Roo.emptyFn