sync
[roojs1] / docs2 / src / Roo_util_Observable.js.html
diff --git a/docs2/src/Roo_util_Observable.js.html b/docs2/src/Roo_util_Observable.js.html
deleted file mode 100644 (file)
index b3f51de..0000000
+++ /dev/null
@@ -1,372 +0,0 @@
-<html><head><title>/home/alan/gitlive/roojs1/Roo/util/Observable.js</title><link rel="stylesheet" type="text/css" href="../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">/*
- * Based on:
- * Ext JS Library 1.1.1
- * Copyright(c) 2006-2007, Ext JS, LLC.
- *
- * Originally Released Under LGPL - original licence link has changed is not relivant.
- *
- * Fork - LGPL
- * &lt;script type=&quot;text/javascript&quot;&gt;
- */
-
-/**
- * @class Roo.util.Observable
- * Base class that provides a common interface for publishing events. Subclasses are expected to
- * to have a property &quot;events&quot; with all the events defined.&lt;br&gt;
- * For example:
- * &lt;pre&gt;&lt;code&gt;
- Employee = function(name){
-    this.name = name;
-    this.addEvents({
-        &quot;fired&quot; : true,
-        &quot;quit&quot; : true
-    });
- }
- Roo.extend(Employee, Roo.util.Observable);
-&lt;/code&gt;&lt;/pre&gt;
- * @param {Object} config properties to use (incuding events / listeners)
- */
-
-</span><span class="jsdoc-var">Roo.util.Observable </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">){
-
-    </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">|| {};
-    </span><span class="jsdoc-var">this.addEvents</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cfg.events </span><span class="jsdoc-syntax">|| {});
-    </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cfg.events</span><span class="jsdoc-syntax">) {
-        </span><span class="jsdoc-keyword">delete </span><span class="jsdoc-var">cfg.events</span><span class="jsdoc-syntax">; </span><span class="jsdoc-comment">// make sure
-    </span><span class="jsdoc-syntax">}
-
-    </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">);
-
-    </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.listeners</span><span class="jsdoc-syntax">){
-        </span><span class="jsdoc-var">this.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.listeners</span><span class="jsdoc-syntax">);
-        </span><span class="jsdoc-keyword">delete </span><span class="jsdoc-var">this.listeners</span><span class="jsdoc-syntax">;
-    }
-};
-</span><span class="jsdoc-var">Roo.util.Observable.prototype </span><span class="jsdoc-syntax">= {
-    </span><span class="jsdoc-comment">/** 
- * @cfg {Object} listeners  list of events and functions to call for this object, 
- * For example :
- * &lt;pre&gt;&lt;code&gt;
-    listeners :  { 
-       'click' : function(e) {
-           ..... 
-        } ,
-        .... 
-    } 
-  &lt;/code&gt;&lt;/pre&gt;
- */
-
-
-    /**
-     * Fires the specified event with the passed parameters (minus the event name).
-     * @param {String} eventName
-     * @param {Object...} args Variable number of parameters are passed to handlers
-     * @return {Boolean} returns false if any of the handlers return false otherwise it returns true
-     */
-    </span><span class="jsdoc-var">fireEvent </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
-        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ce </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">[0]</span><span class="jsdoc-var">.toLowerCase</span><span class="jsdoc-syntax">()];
-        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">ce </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">&quot;object&quot;</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">ce.fire.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ce</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Array.prototype.slice.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">, 1));
-        }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
-            </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
-        }
-    },
-
-    </span><span class="jsdoc-comment">// private
-    </span><span class="jsdoc-var">filterOptRe </span><span class="jsdoc-syntax">: /^(?:scope|delay|buffer|single)$/,
-
-    </span><span class="jsdoc-comment">/**
-     * Appends an event handler to this component
-     * @param {String}   eventName The type of event to listen for
-     * @param {Function} handler The method the event invokes
-     * @param {Object}   scope (optional) The scope in which to execute the handler
-     * function. The handler function's &quot;this&quot; context.
-     * @param {Object}   options (optional) An object containing handler configuration
-     * properties. This may contain any of the following properties:&lt;ul&gt;
-     * &lt;li&gt;scope {Object} The scope in which to execute the handler function. The handler function's &quot;this&quot; context.&lt;/li&gt;
-     * &lt;li&gt;delay {Number} The number of milliseconds to delay the invocation of the handler after te event fires.&lt;/li&gt;
-     * &lt;li&gt;single {Boolean} True to add a handler to handle just the next firing of the event, and then remove itself.&lt;/li&gt;
-     * &lt;li&gt;buffer {Number} Causes the handler to be scheduled to run in an {@link Roo.util.DelayedTask} delayed
-     * by the specified number of milliseconds. If the event fires again within that time, the original
-     * handler is &lt;em&gt;not&lt;/em&gt; invoked, but the new handler is scheduled in its place.&lt;/li&gt;
-     * &lt;/ul&gt;&lt;br&gt;
-     * &lt;p&gt;
-     * &lt;b&gt;Combining Options&lt;/b&gt;&lt;br&gt;
-     * Using the options argument, it is possible to combine different types of listeners:&lt;br&gt;
-     * &lt;br&gt;
-     * A normalized, delayed, one-time listener that auto stops the event and passes a custom argument (forumId)
-               &lt;pre&gt;&lt;code&gt;
-               el.on('click', this.onClick, this, {
-                       single: true,
-               delay: 100,
-               forumId: 4
-               });
-               &lt;/code&gt;&lt;/pre&gt;
-     * &lt;p&gt;
-     * &lt;b&gt;Attaching multiple handlers in 1 call&lt;/b&gt;&lt;br&gt;
-     * The method also allows for a single argument to be passed which is a config object containing properties
-     * which specify multiple handlers.
-     * &lt;pre&gt;&lt;code&gt;
-               el.on({
-                       'click': {
-                       fn: this.onClick,
-                       scope: this,
-                       delay: 100
-               }, 
-               'mouseover': {
-                       fn: this.onMouseOver,
-                       scope: this
-               },
-               'mouseout': {
-                       fn: this.onMouseOut,
-                       scope: this
-               }
-               });
-               &lt;/code&gt;&lt;/pre&gt;
-     * &lt;p&gt;
-     * Or a shorthand syntax which passes the same scope object to all handlers:
-       &lt;pre&gt;&lt;code&gt;
-               el.on({
-                       'click': this.onClick,
-               'mouseover': this.onMouseOver,
-               'mouseout': this.onMouseOut,
-               scope: this
-               });
-               &lt;/code&gt;&lt;/pre&gt;
-     */
-    </span><span class="jsdoc-var">addListener </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">eventName</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">){
-        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">eventName </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">&quot;object&quot;</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">eventName</span><span class="jsdoc-syntax">;
-            </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">e </span><span class="jsdoc-keyword">in </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">){
-                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.filterOptRe.test</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)){
-                    </span><span class="jsdoc-keyword">continue</span><span class="jsdoc-syntax">;
-                }
-                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">] == </span><span class="jsdoc-string">&quot;function&quot;</span><span class="jsdoc-syntax">){
-                    </span><span class="jsdoc-comment">// shared options
-                    </span><span class="jsdoc-var">this.addListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">], </span><span class="jsdoc-var">o.scope</span><span class="jsdoc-syntax">,  </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">);
-                }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
-                    </span><span class="jsdoc-comment">// individual options
-                    </span><span class="jsdoc-var">this.addListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.scope</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">]);
-                }
-            }
-            </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
-        }
-        </span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">= (!</span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">&quot;boolean&quot;</span><span class="jsdoc-syntax">) ? {} : </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">;
-        </span><span class="jsdoc-var">eventName </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">eventName.toLowerCase</span><span class="jsdoc-syntax">();
-        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ce </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">eventName</span><span class="jsdoc-syntax">] || </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
-        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">ce </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">&quot;boolean&quot;</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-var">ce </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.util.Event</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">eventName</span><span class="jsdoc-syntax">);
-            </span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">eventName</span><span class="jsdoc-syntax">] = </span><span class="jsdoc-var">ce</span><span class="jsdoc-syntax">;
-        }
-        </span><span class="jsdoc-var">ce.addListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">);
-    },
-
-    </span><span class="jsdoc-comment">/**
-     * Removes a listener
-     * @param {String}   eventName     The type of event to listen for
-     * @param {Function} handler        The handler to remove
-     * @param {Object}   scope  (optional) The scope (this object) for the handler
-     */
-    </span><span class="jsdoc-var">removeListener </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">eventName</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">){
-        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ce </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">eventName.toLowerCase</span><span class="jsdoc-syntax">()];
-        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">ce </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">&quot;object&quot;</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-var">ce.removeListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">);
-        }
-    },
-
-    </span><span class="jsdoc-comment">/**
-     * Removes all listeners for this object
-     */
-    </span><span class="jsdoc-var">purgeListeners </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
-        </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">evt </span><span class="jsdoc-keyword">in </span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">evt</span><span class="jsdoc-syntax">] == </span><span class="jsdoc-string">&quot;object&quot;</span><span class="jsdoc-syntax">){
-                 </span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">evt</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.clearListeners</span><span class="jsdoc-syntax">();
-            }
-        }
-    },
-
-    </span><span class="jsdoc-var">relayEvents </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">events</span><span class="jsdoc-syntax">){
-        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">createHandler </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ename</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-keyword">return function</span><span class="jsdoc-syntax">(){
-                </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.fireEvent.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.combine</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ename</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Array.prototype.slice.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">, 0)));
-            };
-        };
-        </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0, </span><span class="jsdoc-var">len </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">events.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">&lt; </span><span class="jsdoc-var">len</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++){
-            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ename </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">events</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">];
-            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">ename</span><span class="jsdoc-syntax">]){ </span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">ename</span><span class="jsdoc-syntax">] = </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">; };
-            </span><span class="jsdoc-var">o.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ename</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">createHandler</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ename</span><span class="jsdoc-syntax">), </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
-        }
-    },
-
-    </span><span class="jsdoc-comment">/**
-     * Used to define events on this Observable
-     * @param {Object} object The object with the events defined
-     */
-    </span><span class="jsdoc-var">addEvents </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">){
-        </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-var">this.events </span><span class="jsdoc-syntax">= {};
-        }
-        </span><span class="jsdoc-var">Roo.applyIf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">);
-    },
-
-    </span><span class="jsdoc-comment">/**
-     * Checks to see if this object has any listeners for a specified event
-     * @param {String} eventName The name of the event to check for
-     * @return {Boolean} True if the event is being listened for, else false
-     */
-    </span><span class="jsdoc-var">hasListener </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">eventName</span><span class="jsdoc-syntax">){
-        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">e </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.events</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">eventName</span><span class="jsdoc-syntax">];
-        </span><span class="jsdoc-keyword">return typeof </span><span class="jsdoc-var">e </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">&quot;object&quot; </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.listeners.length </span><span class="jsdoc-syntax">&gt; 0;
-    }
-};
-</span><span class="jsdoc-comment">/**
- * Appends an event handler to this element (shorthand for addListener)
- * @param {String}   eventName     The type of event to listen for
- * @param {Function} handler        The method the event invokes
- * @param {Object}   scope (optional) The scope in which to execute the handler
- * function. The handler function's &quot;this&quot; context.
- * @param {Object}   options  (optional)
- * @method
- */
-</span><span class="jsdoc-var">Roo.util.Observable.prototype.on </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.util.Observable.prototype.addListener</span><span class="jsdoc-syntax">;
-</span><span class="jsdoc-comment">/**
- * Removes a listener (shorthand for removeListener)
- * @param {String}   eventName     The type of event to listen for
- * @param {Function} handler        The handler to remove
- * @param {Object}   scope  (optional) The scope (this object) for the handler
- * @method
- */
-</span><span class="jsdoc-var">Roo.util.Observable.prototype.un </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.util.Observable.prototype.removeListener</span><span class="jsdoc-syntax">;
-
-</span><span class="jsdoc-comment">/**
- * Starts capture on the specified Observable. All events will be passed
- * to the supplied function with the event name + standard signature of the event
- * &lt;b&gt;before&lt;/b&gt; the event is fired. If the supplied function returns false,
- * the event will not fire.
- * @param {Observable} o The Observable to capture
- * @param {Function} fn The function to call
- * @param {Object} scope (optional) The scope (this object) for the fn
- * @static
- */
-</span><span class="jsdoc-var">Roo.util.Observable.capture </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">){
-    </span><span class="jsdoc-var">o.fireEvent </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">o.fireEvent.createInterceptor</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">);
-};
-
-</span><span class="jsdoc-comment">/**
- * Removes &lt;b&gt;all&lt;/b&gt; added captures from the Observable.
- * @param {Observable} o The Observable to release
- * @static
- */
-</span><span class="jsdoc-var">Roo.util.Observable.releaseCapture </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">){
-    </span><span class="jsdoc-var">o.fireEvent </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.util.Observable.prototype.fireEvent</span><span class="jsdoc-syntax">;
-};
-
-(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
-
-    </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">createBuffered </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">){
-        </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">task </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.util.DelayedTask</span><span class="jsdoc-syntax">();
-        </span><span class="jsdoc-keyword">return function</span><span class="jsdoc-syntax">(){
-            </span><span class="jsdoc-var">task.delay</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.buffer</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Array.prototype.slice.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">, 0));
-        };
-    };
-
-    </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">createSingle </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">){
-        </span><span class="jsdoc-keyword">return function</span><span class="jsdoc-syntax">(){
-            </span><span class="jsdoc-var">e.removeListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">);
-            </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">h.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">);
-        };
-    };
-
-    </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">createDelayed </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">){
-        </span><span class="jsdoc-keyword">return function</span><span class="jsdoc-syntax">(){
-            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">args </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Array.prototype.slice.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">, 0);
-            </span><span class="jsdoc-var">setTimeout</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
-                </span><span class="jsdoc-var">h.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">args</span><span class="jsdoc-syntax">);
-            }, </span><span class="jsdoc-var">o.delay </span><span class="jsdoc-syntax">|| 10);
-        };
-    };
-
-    </span><span class="jsdoc-var">Roo.util.Event </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">obj</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">name</span><span class="jsdoc-syntax">){
-        </span><span class="jsdoc-var">this.name </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">name</span><span class="jsdoc-syntax">;
-        </span><span class="jsdoc-var">this.obj </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">obj</span><span class="jsdoc-syntax">;
-        </span><span class="jsdoc-var">this.listeners </span><span class="jsdoc-syntax">= [];
-    };
-
-    </span><span class="jsdoc-var">Roo.util.Event.prototype </span><span class="jsdoc-syntax">= {
-        </span><span class="jsdoc-var">addListener </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">options</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">options </span><span class="jsdoc-syntax">|| {};
-            </span><span class="jsdoc-var">scope </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">scope </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.obj</span><span class="jsdoc-syntax">;
-            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.isListening</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">)){
-                </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">l </span><span class="jsdoc-syntax">= {</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">options</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">};
-                </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">h </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">;
-                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.delay</span><span class="jsdoc-syntax">){
-                    </span><span class="jsdoc-var">h </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">createDelayed</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">);
-                }
-                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.single</span><span class="jsdoc-syntax">){
-                    </span><span class="jsdoc-var">h </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">createSingle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">);
-                }
-                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.buffer</span><span class="jsdoc-syntax">){
-                    </span><span class="jsdoc-var">h </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">createBuffered</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">);
-                }
-                </span><span class="jsdoc-var">l.fireFn </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">;
-                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.firing</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// if we are currently firing this event, don't disturb the listener loop
-                    </span><span class="jsdoc-var">this.listeners.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">l</span><span class="jsdoc-syntax">);
-                }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
-                    </span><span class="jsdoc-var">this.listeners </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.listeners.slice</span><span class="jsdoc-syntax">(0);
-                    </span><span class="jsdoc-var">this.listeners.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">l</span><span class="jsdoc-syntax">);
-                }
-            }
-        },
-
-        </span><span class="jsdoc-var">findListener </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-var">scope </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">scope </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.obj</span><span class="jsdoc-syntax">;
-            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ls </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.listeners</span><span class="jsdoc-syntax">;
-            </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0, </span><span class="jsdoc-var">len </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ls.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">&lt; </span><span class="jsdoc-var">len</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++){
-                </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">l </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ls</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">];
-                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">l.fn </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">fn </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">l.scope </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">){
-                    </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">;
-                }
-            }
-            </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">-1;
-        },
-
-        </span><span class="jsdoc-var">isListening </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.findListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">) != -1;
-        },
-
-        </span><span class="jsdoc-var">removeListener </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">){
-            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">;
-            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">((</span><span class="jsdoc-var">index </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.findListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">)) != -1){
-                </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.firing</span><span class="jsdoc-syntax">){
-                    </span><span class="jsdoc-var">this.listeners.splice</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, 1);
-                }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
-                    </span><span class="jsdoc-var">this.listeners </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.listeners.slice</span><span class="jsdoc-syntax">(0);
-                    </span><span class="jsdoc-var">this.listeners.splice</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, 1);
-                }
-                </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
-            }
-            </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
-        },
-
-        </span><span class="jsdoc-var">clearListeners </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
-            </span><span class="jsdoc-var">this.listeners </span><span class="jsdoc-syntax">= [];
-        },
-
-        </span><span class="jsdoc-var">fire </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
-            </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ls </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.listeners</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scope</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">len </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ls.length</span><span class="jsdoc-syntax">;
-            </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">len </span><span class="jsdoc-syntax">&gt; 0){
-                </span><span class="jsdoc-var">this.firing </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
-                </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">args </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Array.prototype.slice.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">, 0);
-                </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">&lt; </span><span class="jsdoc-var">len</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++){
-                    </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">l </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ls</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">];
-                    </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">l.fireFn.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">l.scope</span><span class="jsdoc-syntax">||</span><span class="jsdoc-var">this.obj</span><span class="jsdoc-syntax">||</span><span class="jsdoc-var">window</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">) === </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
-                        </span><span class="jsdoc-var">this.firing </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
-                        </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
-                    }
-                }
-                </span><span class="jsdoc-var">this.firing </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
-            }
-            </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
-        }
-    };
-})();</span></code></body></html>
\ No newline at end of file