X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/6e39d509471fe9b4e2660e0d1631b350d0c66f40..c8256059947f3aa8f5b0a9a2acf55e2142bb4742:/docs/source/Form.html?ds=inline diff --git a/docs/source/Form.html b/docs/source/Form.html index 320d8e50..9edc9778 100644 --- a/docs/source/Form.html +++ b/docs/source/Form.html @@ -1,12 +1,18 @@ - -
- -/** + + + ++ \ No newline at end of fileThe source code + + + + +/*! + * Ext JS Library 3.2.1 + * Copyright(c) 2006-2010 Ext JS, Inc. + * licensing@extjs.com + * http://www.extjs.com/license + */ +/** * @class Ext.form.FormPanel * @extends Ext.Panel *- +Standard form container.
@@ -203,12 +209,7 @@ Ext.FormPanel = Ext.extend(Ext.Panel, { // private beforeDestroy : function(){ this.stopMonitoring(); - /* - * Don't move this behaviour to BasicForm because it can be used - * on it's own. - */ - Ext.destroy(this.form); - this.form.items.clear(); + this.form.destroy(true); Ext.FormPanel.superclass.beforeDestroy.call(this); }, @@ -269,16 +270,18 @@ Ext.FormPanel = Ext.extend(Ext.Panel, { }, // private - processRemove : function(c){ - // If a single form Field, remove it - if(this.isField(c)){ - this.form.remove(c); - // If a Container, its already destroyed by the time it gets here. Remove any references to destroyed fields. - }else if(c.findBy){ - var isDestroyed = function(o) { - return !!o.isDestroyed; + processRemove: function(c){ + if(!this.destroying){ + // If a single form Field, remove it + if(this.isField(c)){ + this.form.remove(c); + // If a Container, its already destroyed by the time it gets here. Remove any references to destroyed fields. + }else if (c.findBy){ + Ext.each(c.findBy(this.isField), this.form.remove, this.form); + if (c.isDestroyed) { + this.form.cleanDestroyed(); + } } - this.form.items.filterBy(isDestroyed, this.form).each(this.form.remove, this.form); } }, @@ -359,6 +362,6 @@ Ext.FormPanel = Ext.extend(Ext.Panel, { Ext.reg('form', Ext.FormPanel); Ext.form.FormPanel = Ext.FormPanel; -