X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/7a654f8d43fdb43d78b63d90528bed6e86b608cc..3789b528d8dd8aad4558e38e22d775bcab1cbd36:/docs/source/AbstractComponent.html diff --git a/docs/source/AbstractComponent.html b/docs/source/AbstractComponent.html index a36fbdf3..a34d2526 100644 --- a/docs/source/AbstractComponent.html +++ b/docs/source/AbstractComponent.html @@ -1,4 +1,21 @@ -
\ No newline at end of file + + +/** + + + + +The source code + + + + + + +/** * @class Ext.AbstractComponent * <p>An abstract base class which provides shared methods for Components across the Sencha product line.</p> * <p>Please refer to sub class's documentation</p> @@ -425,7 +442,7 @@ and a property `descEl` referencing the `div` Element which contains the descrip */ /** - * @cfg {String} styleHtmlContent +* @cfg {Boolean} styleHtmlContent * True to automatically style the html inside the content target of this component (body for panels). * Defaults to false. */ @@ -697,6 +714,9 @@ and a property `descEl` referencing the `div` Element which contains the descrip if (me.renderTo) { me.render(me.renderTo); + // EXTJSIV-1935 - should be a way to do afterShow or something, but that + // won't work. Likewise, rendering hidden and then showing (w/autoShow) has + // implications to afterRender so we cannot do that. } if (me.autoShow) { @@ -803,7 +823,6 @@ and a property `descEl` referencing the `div` Element which contains the descrip return plugin; }, - // @private initPlugin : function(plugin) { plugin.init(this); @@ -1681,13 +1700,17 @@ and a property `descEl` referencing the `div` Element which contains the descrip initEvents : function() { var me = this, afterRenderEvents = me.afterRenderEvents, - property, listeners; + el, + property, + fn = function(listeners){ + me.mon(el, listeners); + }; if (afterRenderEvents) { for (property in afterRenderEvents) { if (afterRenderEvents.hasOwnProperty(property)) { - listeners = afterRenderEvents[property]; - if (me[property] && me[property].on) { - me.mon(me[property], listeners); + el = me[property]; + if (el && el.on) { + Ext.each(afterRenderEvents[property], fn); } } } @@ -2153,7 +2176,7 @@ alert(t.getXTypes()); // alerts 'component/field/textfield' }, /** - * @deprecated 4.0 Replaced by {link:#addCls} + * @deprecated 4.0 Replaced by {@link #addCls} * Adds a CSS class to the top level element representing this component. * @param {String} cls The CSS class name to add * @return {Ext.Component} Returns the Component to allow method chaining. @@ -2237,14 +2260,35 @@ alert(t.getXTypes()); // alerts 'component/field/textfield' me.mon(me[element], listeners); } else { me.afterRenderEvents = me.afterRenderEvents || {}; - me.afterRenderEvents[element] = listeners; + if (!me.afterRenderEvents[element]) { + me.afterRenderEvents[element] = []; + } + me.afterRenderEvents[element].push(listeners); } } return me.mixins.observable.addListener.apply(me, arguments); }, - - // @TODO: implement removelistener to support the dom event stuff + + // inherit docs + removeManagedListenerItem: function(isClear, managedListener, item, ename, fn, scope){ + var me = this, + element = managedListener.options ? managedListener.options.element : null; + + if (element) { + element = me[element]; + if (element && element.un) { + if (isClear || (managedListener.item === item && managedListener.ename === ename && (!fn || managedListener.fn === fn) && (!scope || managedListener.scope === scope))) { + element.un(managedListener.ename, managedListener.fn, managedListener.scope); + if (!isClear) { + Ext.Array.remove(me.managedListeners, managedListener); + } + } + } + } else { + return me.mixins.observable.removeManagedListenerItem.apply(me, arguments); + } + }, /** * Provides the link for Observable's fireEvent method to bubble up the ownership hierarchy. @@ -2718,4 +2762,6 @@ alert(t.getXTypes()); // alerts 'component/field/textfield' next: 'nextSibling' }); }); -