Upgrade to ExtJS 3.0.0 - Released 07/06/2009
[extjs.git] / docs / output / Ext.util.MixedCollection.html
1 <div class="body-wrap" xmlns:ext="http://www.extjs.com"><div class="top-tools"><a class="inner-link" href="#Ext.util.MixedCollection-props"><img src="resources/images/default/s.gif" class="item-icon icon-prop">Properties</a>&#13;<a class="inner-link" href="#Ext.util.MixedCollection-methods"><img src="resources/images/default/s.gif" class="item-icon icon-method">Methods</a>&#13;<a class="inner-link" href="#Ext.util.MixedCollection-events"><img src="resources/images/default/s.gif" class="item-icon icon-event">Events</a>&#13;<a class="inner-link" href="#Ext.util.MixedCollection-configs"><img src="resources/images/default/s.gif" class="item-icon icon-config">Config Options</a>&#13;<a class="bookmark" href="../docs/?class=Ext.util.MixedCollection"><img src="resources/images/default/s.gif" class="item-icon icon-fav">Direct Link</a>&#13;</div><div class="inheritance res-block"><pre class="res-block-inner"><a href="output/Ext.util.Observable.html" ext:member="" ext:cls="Ext.util.Observable">Observable</a>&#13;&nbsp;&nbsp;<img src="resources/elbow-end.gif">MixedCollection</pre></div><h1>Class <a href="source/MixedCollection.html#cls-Ext.util.MixedCollection">Ext.util.MixedCollection</a></h1><table cellspacing="0"><tr><td class="label">Package:</td><td class="hd-info">Ext.util</td></tr><tr><td class="label">Defined In:</td><td class="hd-info">MixedCollection.js</td></tr><tr><td class="label">Class:</td><td class="hd-info"><a href="source/MixedCollection.html#cls-Ext.util.MixedCollection">MixedCollection</a></td></tr><tr><td class="label">Subclasses:</td><td class="hd-info"><a href="output/Ext.StoreMgr.html" ext:cls="Ext.StoreMgr">StoreMgr</a></td></tr><tr><td class="label">Extends:</td><td class="hd-info"><a href="output/Ext.util.Observable.html" ext:cls="Ext.util.Observable" ext:member="">Observable</a></td></tr></table><div class="description">A Collection class that maintains both numeric indexes and keys and exposes events.</div><div class="hr"></div><a id="Ext.util.MixedCollection-configs"></a><h2>Config Options</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Config Options</th><th class="msource-header">Defined By</th></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-listeners"></a><b><a href="source/Observable.html#cfg-Ext.util.Observable-listeners">listeners</a></b> : Object<div class="mdesc"><div class="short">A config object containing one or more event handlers to be added to this
2 object during initialization.  This should ...</div><div class="long"><p>A config object containing one or more event handlers to be added to this
3 object during initialization.  This should be a valid listeners config object as specified in the
4 <a href="output/Ext.util.Observable.html#Ext.util.Observable-addListener" ext:member="addListener" ext:cls="Ext.util.Observable">addListener</a> example for attaching multiple handlers at once.</p>
5 <br><p><b><u>DOM events from ExtJs <a href="output/Ext.Component.html" ext:cls="Ext.Component">Components</a></u></b></p>
6 <br><p>While <i>some</i> ExtJs Component classes export selected DOM events (e.g. "click", "mouseover" etc), this
7 is usually only done when extra value can be added. For example the <a href="output/Ext.DataView.html" ext:cls="Ext.DataView">DataView</a>'s
8 <b><code><a href="output/Ext.DataView.html#Ext.DataView-click" ext:member="click" ext:cls="Ext.DataView">click</a></code></b> event passing the node clicked on. To access DOM
9 events directly from a Component's HTMLElement, listeners must be added to the <i><a href="output/Ext.Component.html#Ext.Component-getEl" ext:member="getEl" ext:cls="Ext.Component">Element</a></i> after the Component
10 has been rendered. A plugin can simplify this step:<pre><code><i>// Plugin is configured <b>with</b> a listeners config object.</i>
11 <i>// The Component is appended to the argument list of all handler functions.</i>
12 Ext.DomObserver = Ext.extend(Object, {
13     constructor: <b>function</b>(config) {
14         this.listeners = config.listeners ? config.listeners : config;
15     },
16
17     <i>// Component passes itself into plugin&#39;s init method</i>
18     init: <b>function</b>(c) {
19         <b>var</b> p, l = this.listeners;
20         <b>for</b> (p <b>in</b> l) {
21             <b>if</b> (Ext.isFunction(l[p])) {
22                 l[p] = this.createHandler(l[p], c);
23             } <b>else</b> {
24                 l[p].fn = this.createHandler(l[p].fn, c);
25             }
26         }
27
28         <i>// Add the listeners to the Element immediately following the render call</i>
29         c.render = c.render.<a href="output/Function.html#Function-createSequence" ext:member="createSequence" ext:cls="Function">createSequence</a>(<b>function</b>() {
30             <b>var</b> e = c.getEl();
31             <b>if</b> (e) {
32                 e.on(l);
33             }
34         });
35     },
36
37     createHandler: <b>function</b>(fn, c) {
38         <b>return</b> <b>function</b>(e) {
39             fn.call(this, e, c);
40         };
41     }
42 });
43
44 <b>var</b> combo = <b>new</b> Ext.form.ComboBox({
45
46     <i>// Collapse combo when its element is clicked on</i>
47     plugins: [ <b>new</b> Ext.DomObserver({
48         click: <b>function</b>(evt, comp) {
49             comp.collapse();
50         }
51     })],
52     store: myStore,
53     typeAhead: true,
54     mode: <em>'local'</em>,
55     triggerAction: <em>'all'</em>
56 });</code></pre></p></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#listeners" ext:member="#listeners" ext:cls="Ext.util.Observable">Observable</a></td></tr></tbody></table><a id="Ext.util.MixedCollection-props"></a><h2>Public Properties</h2><div class="no-members">This class has no public properties.</div><a id="Ext.util.MixedCollection-methods"></a><h2>Public Methods</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Method</th><th class="msource-header">Defined By</th></tr><tr class="method-row expandable"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-MixedCollection"></a><b><a href="source/MixedCollection.html#cls-Ext.util.MixedCollection">MixedCollection</a></b>(&nbsp;<code>Boolean&nbsp;allowFunctions</code>,&nbsp;<code>Function&nbsp;keyFn</code>&nbsp;)
57     <div class="mdesc"><div class="short"></div><div class="long"><div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>allowFunctions</code> : Boolean<div class="sub-desc">True if the addAll function should add function references to the\r
58 collection (defaults to false)</div></li><li><code>keyFn</code> : Function<div class="sub-desc">A function that can accept an item of the type(s) stored in this MixedCollection\r
59 and return the key value for that item.  This is used when available to look up the key on items that\r
60 were passed without an explicit key parameter to a MixedCollection method.  Passing this parameter is\r
61 equivalent to providing an implementation for the <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-getKey" ext:member="getKey" ext:cls="Ext.util.MixedCollection">getKey</a> method.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-add"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-add">add</a></b>(&nbsp;<code>String&nbsp;key</code>,&nbsp;<code>Object&nbsp;o</code>&nbsp;)
62     :
63                                         Object<div class="mdesc"><div class="short">Adds an item to the collection. Fires the add event when complete.</div><div class="long">Adds an item to the collection. Fires the <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-add" ext:member="add" ext:cls="Ext.util.MixedCollection">add</a> event when complete.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>key</code> : String<div class="sub-desc"><p>The key to associate with the item, or the new item.</p>\r
64 <p>If you supplied a <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-getKey" ext:member="getKey" ext:cls="Ext.util.MixedCollection">getKey</a> implementation for this MixedCollection, or if the key\r
65 of your stored items is in a property called <tt><b>id</b></tt>, then the MixedCollection\r
66 will be able to <i>derive</i> the key for the new item. In this case just pass the new item in\r
67 this parameter.</p></div></li><li><code>o</code> : Object<div class="sub-desc">The item to add.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">The item added.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-addAll"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-addAll">addAll</a></b>(&nbsp;<code>Object/Array&nbsp;objs</code>&nbsp;)
68     :
69                                         void<div class="mdesc"><div class="short">Adds all elements of an Array or an Object to the collection.</div><div class="long">Adds all elements of an Array or an Object to the collection.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>objs</code> : Object/Array<div class="sub-desc">An Object containing properties which will be added to the collection, or\r
70 an Array of values, each of which are added to the collection.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-addEvents"></a><b><a href="source/Observable.html#method-Ext.util.Observable-addEvents">addEvents</a></b>(&nbsp;<code>Object&nbsp;object</code>&nbsp;)
71     :
72                                         void<div class="mdesc"><div class="short">Used to define events on this Observable</div><div class="long">Used to define events on this Observable<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>object</code> : Object<div class="sub-desc">The object with the events defined</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#addEvents" ext:member="#addEvents" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-addListener"></a><b><a href="source/Observable.html#method-Ext.util.Observable-addListener">addListener</a></b>(&nbsp;<code>String&nbsp;eventName</code>,&nbsp;<code>Function&nbsp;handler</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;options</code>]</span>&nbsp;)
73     :
74                                         void<div class="mdesc"><div class="short">Appends an event handler to this object.</div><div class="long">Appends an event handler to this object.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The name of the event to listen for.</div></li><li><code>handler</code> : Function<div class="sub-desc">The method the event invokes.</div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope (<code><b>this</b></code> reference) in which the handler function is executed.
75 <b>If omitted, defaults to the object which fired the event.</b></div></li><li><code>options</code> : Object<div class="sub-desc">(optional) An object containing handler configuration.
76 properties. This may contain any of the following properties:<ul>
77 <li><b>scope</b> : Object<div class="sub-desc">The scope (<code><b>this</b></code> reference) in which the handler function is executed.
78 <b>If omitted, defaults to the object which fired the event.</b></div></li>
79 <li><b>delay</b> : Number<div class="sub-desc">The number of milliseconds to delay the invocation of the handler after the event fires.</div></li>
80 <li><b>single</b> : Boolean<div class="sub-desc">True to add a handler to handle just the next firing of the event, and then remove itself.</div></li>
81 <li><b>buffer</b> : Number<div class="sub-desc">Causes the handler to be scheduled to run in an <a href="output/Ext.util.DelayedTask.html" ext:cls="Ext.util.DelayedTask">Ext.util.DelayedTask</a> delayed
82 by the specified number of milliseconds. If the event fires again within that time, the original
83 handler is <em>not</em> invoked, but the new handler is scheduled in its place.</div></li>
84 <li><b>target</b> : Observable<div class="sub-desc">Only call the handler if the event was fired on the target Observable, <i>not</i>
85 if the event was bubbled up from a child Observable.</div></li>
86 </ul><br>
87 <p>
88 <b>Combining Options</b><br>
89 Using the options argument, it is possible to combine different types of listeners:<br>
90 <br>
91 A delayed, one-time listener.
92 <pre><code>myDataView.on(<em>'click'</em>, this.onClick, this, {
93     single: true,
94     delay: 100
95 });</code></pre>
96 <p>
97 <b>Attaching multiple handlers in 1 call</b><br>
98 The method also allows for a single argument to be passed which is a config object containing properties
99 which specify multiple handlers.
100 <p>
101 <pre><code>myGridPanel.on({
102     <em>'click'</em> : {
103         fn: this.onClick,
104         scope: this,
105         delay: 100
106     },
107     <em>'mouseover'</em> : {
108         fn: this.onMouseOver,
109         scope: this
110     },
111     <em>'mouseout'</em> : {
112         fn: this.onMouseOut,
113         scope: this
114     }
115 });</code></pre>
116 <p>
117 Or a shorthand syntax:<br>
118 <pre><code>myGridPanel.on({
119     <em>'click'</em> : this.onClick,
120     <em>'mouseover'</em> : this.onMouseOver,
121     <em>'mouseout'</em> : this.onMouseOut,
122      scope: this
123 });</code></pre></div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#addListener" ext:member="#addListener" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-clear"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-clear">clear</a></b>()
124     :
125                                         void<div class="mdesc"><div class="short">Removes all items from the collection.  Fires the clear event when complete.</div><div class="long">Removes all items from the collection.  Fires the <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-clear" ext:member="clear" ext:cls="Ext.util.MixedCollection">clear</a> event when complete.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-clone"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-clone">clone</a></b>()
126     :
127                                         MixedCollection<div class="mdesc"><div class="short">Creates a shallow copy of this collection</div><div class="long">Creates a shallow copy of this collection<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>MixedCollection</code><div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-contains"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-contains">contains</a></b>(&nbsp;<code>Object&nbsp;o</code>&nbsp;)
128     :
129                                         Boolean<div class="mdesc"><div class="short">Returns true if the collection contains the passed Object as an item.</div><div class="long">Returns true if the collection contains the passed Object as an item.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>o</code> : Object<div class="sub-desc">The Object to look for in the collection.</div></li></ul><strong>Returns:</strong><ul><li><code>Boolean</code><div class="sub-desc">True if the collection contains the Object as an item.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-containsKey"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-containsKey">containsKey</a></b>(&nbsp;<code>String&nbsp;key</code>&nbsp;)
130     :
131                                         Boolean<div class="mdesc"><div class="short">Returns true if the collection contains the passed Object as a key.</div><div class="long">Returns true if the collection contains the passed Object as a key.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>key</code> : String<div class="sub-desc">The key to look for in the collection.</div></li></ul><strong>Returns:</strong><ul><li><code>Boolean</code><div class="sub-desc">True if the collection contains the Object as a key.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-each"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-each">each</a></b>(&nbsp;<code>Function&nbsp;fn</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>&nbsp;)
132     :
133                                         void<div class="mdesc"><div class="short">Executes the specified function once for every item in the collection, passing the following arguments:&#13;
134 &lt;div class="...</div><div class="long">Executes the specified function once for every item in the collection, passing the following arguments:\r
135 <div class="mdetail-params"><ul>\r
136 <li><b>item</b> : Mixed<p class="sub-desc">The collection item</p></li>\r
137 <li><b>index</b> : Number<p class="sub-desc">The item's index</p></li>\r
138 <li><b>length</b> : Number<p class="sub-desc">The total number of items in the collection</p></li>\r
139 </ul></div>\r
140 The function should return a boolean value. Returning false from the function will stop the iteration.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>fn</code> : Function<div class="sub-desc">The function to execute for each item.</div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope in which to execute the function.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-eachKey"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-eachKey">eachKey</a></b>(&nbsp;<code>Function&nbsp;fn</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>&nbsp;)
141     :
142                                         void<div class="mdesc"><div class="short">Executes the specified function once for every key in the collection, passing each&#13;
143 key, and its associated item as t...</div><div class="long">Executes the specified function once for every key in the collection, passing each\r
144 key, and its associated item as the first two parameters.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>fn</code> : Function<div class="sub-desc">The function to execute for each item.</div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope in which to execute the function.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-enableBubble"></a><b><a href="source/Observable-more.html#method-Ext.util.Observable-enableBubble">enableBubble</a></b>(&nbsp;<code>Object&nbsp;events</code>&nbsp;)
145     :
146                                         void<div class="mdesc"><div class="short">Used to enable bubbling of events</div><div class="long">Used to enable bubbling of events<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>events</code> : Object<div class="sub-desc"></div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#enableBubble" ext:member="#enableBubble" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-filter"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-filter">filter</a></b>(&nbsp;<code>String&nbsp;property</code>,&nbsp;<code>String/RegExp&nbsp;value</code>,&nbsp;<span title="Optional" class="optional">[<code>Boolean&nbsp;anyMatch</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Boolean&nbsp;caseSensitive</code>]</span>&nbsp;)
147     :
148                                         MixedCollection<div class="mdesc"><div class="short">Filter the objects in this collection by a specific property.&#13;
149 Returns a new collection that has been filtered.</div><div class="long">Filter the <i>objects</i> in this collection by a specific property.\r
150 Returns a new collection that has been filtered.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>property</code> : String<div class="sub-desc">A property on your objects</div></li><li><code>value</code> : String/RegExp<div class="sub-desc">Either string that the property values\r
151 should start with or a RegExp to test against the property</div></li><li><code>anyMatch</code> : Boolean<div class="sub-desc">(optional) True to match any part of the string, not just the beginning</div></li><li><code>caseSensitive</code> : Boolean<div class="sub-desc">(optional) True for case sensitive comparison (defaults to False).</div></li></ul><strong>Returns:</strong><ul><li><code>MixedCollection</code><div class="sub-desc">The new filtered collection</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-filterBy"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-filterBy">filterBy</a></b>(&nbsp;<code>Function&nbsp;fn</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>&nbsp;)
152     :
153                                         MixedCollection<div class="mdesc"><div class="short">Filter by a function. Returns a new collection that has been filtered.&#13;
154 The passed function will be called with each ...</div><div class="long">Filter by a function. Returns a <i>new</i> collection that has been filtered.\r
155 The passed function will be called with each object in the collection.\r
156 If the function returns true, the value is included otherwise it is filtered.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>fn</code> : Function<div class="sub-desc">The function to be called, it will receive the args o (the object), k (the key)</div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope of the function (defaults to this)</div></li></ul><strong>Returns:</strong><ul><li><code>MixedCollection</code><div class="sub-desc">The new filtered collection</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-find"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-find">find</a></b>(&nbsp;<code>Function&nbsp;fn</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>&nbsp;)
157     :
158                                         Object<div class="mdesc"><div class="short">Returns the first item in the collection which elicits a true return value from the&#13;
159 passed selection function.</div><div class="long">Returns the first item in the collection which elicits a true return value from the\r
160 passed selection function.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>fn</code> : Function<div class="sub-desc">The selection function to execute for each item.</div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope in which to execute the function.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">The first item in the collection which returned true from the selection function.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-findIndex"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-findIndex">findIndex</a></b>(&nbsp;<code>String&nbsp;property</code>,&nbsp;<code>String/RegExp&nbsp;value</code>,&nbsp;<span title="Optional" class="optional">[<code>Number&nbsp;start</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Boolean&nbsp;anyMatch</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Boolean&nbsp;caseSensitive</code>]</span>&nbsp;)
161     :
162                                         Number<div class="mdesc"><div class="short">Finds the index of the first matching object in this collection by a specific property/value.</div><div class="long">Finds the index of the first matching object in this collection by a specific property/value.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>property</code> : String<div class="sub-desc">The name of a property on your objects.</div></li><li><code>value</code> : String/RegExp<div class="sub-desc">A string that the property values\r
163 should start with or a RegExp to test against the property.</div></li><li><code>start</code> : Number<div class="sub-desc">(optional) The index to start searching at (defaults to 0).</div></li><li><code>anyMatch</code> : Boolean<div class="sub-desc">(optional) True to match any part of the string, not just the beginning.</div></li><li><code>caseSensitive</code> : Boolean<div class="sub-desc">(optional) True for case sensitive comparison.</div></li></ul><strong>Returns:</strong><ul><li><code>Number</code><div class="sub-desc">The matched index or -1</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-findIndexBy"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-findIndexBy">findIndexBy</a></b>(&nbsp;<code>Function&nbsp;fn</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Number&nbsp;start</code>]</span>&nbsp;)
164     :
165                                         Number<div class="mdesc"><div class="short">Find the index of the first matching object in this collection by a function.&#13;
166 If the function returns true it is con...</div><div class="long">Find the index of the first matching object in this collection by a function.\r
167 If the function returns <i>true</i> it is considered a match.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>fn</code> : Function<div class="sub-desc">The function to be called, it will receive the args o (the object), k (the key).</div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope of the function (defaults to this).</div></li><li><code>start</code> : Number<div class="sub-desc">(optional) The index to start searching at (defaults to 0).</div></li></ul><strong>Returns:</strong><ul><li><code>Number</code><div class="sub-desc">The matched index or -1</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-fireEvent"></a><b><a href="source/Observable.html#method-Ext.util.Observable-fireEvent">fireEvent</a></b>(&nbsp;<code>String&nbsp;eventName</code>,&nbsp;<code>Object...&nbsp;args</code>&nbsp;)
168     :
169                                         Boolean<div class="mdesc"><div class="short">Fires the specified event with the passed parameters (minus the event name).
170 An event may be set to bubble up an Obse...</div><div class="long"><p>Fires the specified event with the passed parameters (minus the event name).</p>
171 <p>An event may be set to bubble up an Observable parent hierarchy (See <a href="output/Ext.Component.html#Ext.Component-getBubbleTarget" ext:member="getBubbleTarget" ext:cls="Ext.Component">Ext.Component.getBubbleTarget</a>)
172 by calling <a href="output/Ext.util.Observable.html#Ext.util.Observable-enableBubble" ext:member="enableBubble" ext:cls="Ext.util.Observable">enableBubble</a>.</p><div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The name of the event to fire.</div></li><li><code>args</code> : Object...<div class="sub-desc">Variable number of parameters are passed to handlers.</div></li></ul><strong>Returns:</strong><ul><li><code>Boolean</code><div class="sub-desc">returns false if any of the handlers return false otherwise it returns true.</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#fireEvent" ext:member="#fireEvent" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-first"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-first">first</a></b>()
173     :
174                                         Object<div class="mdesc"><div class="short">Returns the first item in the collection.</div><div class="long">Returns the first item in the collection.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">the first item in the collection..</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-get"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-get">get</a></b>(&nbsp;<code>String/Number&nbsp;key</code>&nbsp;)
175     :
176                                         Object<div class="mdesc"><div class="short">This method calls item().&#13;
177 Returns the item associated with the passed key OR index. Key has priority over index.  Th...</div><div class="long">This method calls <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-item" ext:member="item" ext:cls="Ext.util.MixedCollection">item()</a>.\r
178 Returns the item associated with the passed key OR index. Key has priority over index.  This is the equivalent\r
179 of calling <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-key" ext:member="key" ext:cls="Ext.util.MixedCollection">key</a> first, then if nothing matched calling <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-itemAt" ext:member="itemAt" ext:cls="Ext.util.MixedCollection">itemAt</a>.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>key</code> : String/Number<div class="sub-desc">The key or index of the item.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">If the item is found, returns the item.  If the item was not found, returns &lt;tt&gt;undefined&lt;/tt&gt;.&#13;
180 If an item was found, but is a Class, returns &lt;tt&gt;null&lt;/tt&gt;.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-getCount"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-getCount">getCount</a></b>()
181     :
182                                         Number<div class="mdesc"><div class="short">Returns the number of items in the collection.</div><div class="long">Returns the number of items in the collection.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Number</code><div class="sub-desc">the number of items in the collection.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-getKey"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-getKey">getKey</a></b>(&nbsp;<code>Object&nbsp;item</code>&nbsp;)
183     :
184                                         Object<div class="mdesc"><div class="short">MixedCollection has a generic way to fetch keys if you implement getKey.  The default implementation&#13;
185 simply returns ...</div><div class="long">MixedCollection has a generic way to fetch keys if you implement getKey.  The default implementation\r
186 simply returns <tt style="font-weight:bold;">item.id</tt> but you can provide your own implementation\r
187 to return a different value as in the following examples:\r
188 <pre><code><i>// normal way\r</i>
189 <b>var</b> mc = <b>new</b> Ext.util.MixedCollection();\r
190 mc.add(someEl.dom.id, someEl);\r
191 mc.add(otherEl.dom.id, otherEl);\r
192 <i>//and so on\r</i>
193 \r
194 <i>// using getKey\r</i>
195 <b>var</b> mc = <b>new</b> Ext.util.MixedCollection();\r
196 mc.getKey = <b>function</b>(el){\r
197    <b>return</b> el.dom.id;\r
198 };\r
199 mc.add(someEl);\r
200 mc.add(otherEl);\r
201 \r
202 <i>// or via the constructor\r</i>
203 <b>var</b> mc = <b>new</b> Ext.util.MixedCollection(false, <b>function</b>(el){\r
204    <b>return</b> el.dom.id;\r
205 });\r
206 mc.add(someEl);\r
207 mc.add(otherEl);</code></pre><div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>item</code> : Object<div class="sub-desc">The item for which to find the key.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">The key for the passed item.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-getRange"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-getRange">getRange</a></b>(&nbsp;<span title="Optional" class="optional">[<code>Number&nbsp;startIndex</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Number&nbsp;endIndex</code>]</span>&nbsp;)
208     :
209                                         Array<div class="mdesc"><div class="short">Returns a range of items in this collection</div><div class="long">Returns a range of items in this collection<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>startIndex</code> : Number<div class="sub-desc">(optional) defaults to 0</div></li><li><code>endIndex</code> : Number<div class="sub-desc">(optional) default to the last item</div></li></ul><strong>Returns:</strong><ul><li><code>Array</code><div class="sub-desc">An array of items</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-hasListener"></a><b><a href="source/Observable.html#method-Ext.util.Observable-hasListener">hasListener</a></b>(&nbsp;<code>String&nbsp;eventName</code>&nbsp;)
210     :
211                                         Boolean<div class="mdesc"><div class="short">Checks to see if this object has any listeners for a specified event</div><div class="long">Checks to see if this object has any listeners for a specified event<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The name of the event to check for</div></li></ul><strong>Returns:</strong><ul><li><code>Boolean</code><div class="sub-desc">True if the event is being listened for, else false</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#hasListener" ext:member="#hasListener" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-indexOf"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-indexOf">indexOf</a></b>(&nbsp;<code>Object&nbsp;o</code>&nbsp;)
212     :
213                                         Number<div class="mdesc"><div class="short">Returns index within the collection of the passed Object.</div><div class="long">Returns index within the collection of the passed Object.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>o</code> : Object<div class="sub-desc">The item to find the index of.</div></li></ul><strong>Returns:</strong><ul><li><code>Number</code><div class="sub-desc">index of the item. Returns -1 if not found.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-indexOfKey"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-indexOfKey">indexOfKey</a></b>(&nbsp;<code>String&nbsp;key</code>&nbsp;)
214     :
215                                         Number<div class="mdesc"><div class="short">Returns index within the collection of the passed key.</div><div class="long">Returns index within the collection of the passed key.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>key</code> : String<div class="sub-desc">The key to find the index of.</div></li></ul><strong>Returns:</strong><ul><li><code>Number</code><div class="sub-desc">index of the key.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-insert"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-insert">insert</a></b>(&nbsp;<code>Number&nbsp;index</code>,&nbsp;<code>String&nbsp;key</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;o</code>]</span>&nbsp;)
216     :
217                                         Object<div class="mdesc"><div class="short">Inserts an item at the specified index in the collection. Fires the add event when complete.</div><div class="long">Inserts an item at the specified index in the collection. Fires the <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-add" ext:member="add" ext:cls="Ext.util.MixedCollection">add</a> event when complete.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>index</code> : Number<div class="sub-desc">The index to insert the item at.</div></li><li><code>key</code> : String<div class="sub-desc">The key to associate with the new item, or the item itself.</div></li><li><code>o</code> : Object<div class="sub-desc">(optional) If the second parameter was a key, the new item.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">The item inserted.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-item"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-item">item</a></b>(&nbsp;<code>String/Number&nbsp;key</code>&nbsp;)
218     :
219                                         Object<div class="mdesc"><div class="short">Returns the item associated with the passed key OR index. Key has priority over index.  This is the equivalent&#13;
220 of ca...</div><div class="long">Returns the item associated with the passed key OR index. Key has priority over index.  This is the equivalent\r
221 of calling <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-key" ext:member="key" ext:cls="Ext.util.MixedCollection">key</a> first, then if nothing matched calling <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-itemAt" ext:member="itemAt" ext:cls="Ext.util.MixedCollection">itemAt</a>.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>key</code> : String/Number<div class="sub-desc">The key or index of the item.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">If the item is found, returns the item.  If the item was not found, returns &lt;tt&gt;undefined&lt;/tt&gt;.&#13;
222 If an item was found, but is a Class, returns &lt;tt&gt;null&lt;/tt&gt;.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-itemAt"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-itemAt">itemAt</a></b>(&nbsp;<code>Number&nbsp;index</code>&nbsp;)
223     :
224                                         Object<div class="mdesc"><div class="short">Returns the item at the specified index.</div><div class="long">Returns the item at the specified index.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>index</code> : Number<div class="sub-desc">The index of the item.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">The item at the specified index.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-key"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-key">key</a></b>(&nbsp;<code>String/Number&nbsp;key</code>&nbsp;)
225     :
226                                         Object<div class="mdesc"><div class="short">Returns the item associated with the passed key.</div><div class="long">Returns the item associated with the passed key.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>key</code> : String/Number<div class="sub-desc">The key of the item.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">The item associated with the passed key.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-keySort"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-keySort">keySort</a></b>(&nbsp;<span title="Optional" class="optional">[<code>String&nbsp;direction</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Function&nbsp;fn</code>]</span>&nbsp;)
227     :
228                                         void<div class="mdesc"><div class="short">Sorts this collection by keys</div><div class="long">Sorts this collection by keys<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>direction</code> : String<div class="sub-desc">(optional) "ASC" or "DESC"</div></li><li><code>fn</code> : Function<div class="sub-desc">(optional) a comparison function (defaults to case insensitive string)</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-last"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-last">last</a></b>()
229     :
230                                         Object<div class="mdesc"><div class="short">Returns the last item in the collection.</div><div class="long">Returns the last item in the collection.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">the last item in the collection..</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-on"></a><b><a href="source/Observable.html#method-Ext.util.Observable-on">on</a></b>(&nbsp;<code>String&nbsp;eventName</code>,&nbsp;<code>Function&nbsp;handler</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;options</code>]</span>&nbsp;)
231     :
232                                         void<div class="mdesc"><div class="short">Appends an event handler to this object (shorthand for addListener.)</div><div class="long">Appends an event handler to this object (shorthand for <a href="output/Ext.util.Observable.html#Ext.util.Observable-addListener" ext:member="addListener" ext:cls="Ext.util.Observable">addListener</a>.)<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The type of event to listen for</div></li><li><code>handler</code> : Function<div class="sub-desc">The method the event invokes</div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope (<code><b>this</b></code> reference) in which the handler function is executed.
233 <b>If omitted, defaults to the object which fired the event.</b></div></li><li><code>options</code> : Object<div class="sub-desc">(optional) An object containing handler configuration.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#on" ext:member="#on" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-purgeListeners"></a><b><a href="source/Observable.html#method-Ext.util.Observable-purgeListeners">purgeListeners</a></b>()
234     :
235                                         void<div class="mdesc"><div class="short">Removes all listeners for this object</div><div class="long">Removes all listeners for this object<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#purgeListeners" ext:member="#purgeListeners" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-relayEvents"></a><b><a href="source/Observable-more.html#method-Ext.util.Observable-relayEvents">relayEvents</a></b>(&nbsp;<code>Object&nbsp;o</code>,&nbsp;<code>Array&nbsp;events</code>&nbsp;)
236     :
237                                         void<div class="mdesc"><div class="short">Relays selected events from the specified Observable as if the events were fired by this.</div><div class="long">Relays selected events from the specified Observable as if the events were fired by <tt><b>this</b></tt>.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>o</code> : Object<div class="sub-desc">The Observable whose events this object is to relay.</div></li><li><code>events</code> : Array<div class="sub-desc">Array of event names to relay.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#relayEvents" ext:member="#relayEvents" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-remove"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-remove">remove</a></b>(&nbsp;<code>Object&nbsp;o</code>&nbsp;)
238     :
239                                         Object<div class="mdesc"><div class="short">Remove an item from the collection.</div><div class="long">Remove an item from the collection.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>o</code> : Object<div class="sub-desc">The item to remove.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">The item removed or false if no item was removed.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-removeAt"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-removeAt">removeAt</a></b>(&nbsp;<code>Number&nbsp;index</code>&nbsp;)
240     :
241                                         Object<div class="mdesc"><div class="short">Remove an item from a specified index in the collection. Fires the remove event when complete.</div><div class="long">Remove an item from a specified index in the collection. Fires the <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-remove" ext:member="remove" ext:cls="Ext.util.MixedCollection">remove</a> event when complete.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>index</code> : Number<div class="sub-desc">The index within the collection of the item to remove.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">The item removed or false if no item was removed.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-removeKey"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-removeKey">removeKey</a></b>(&nbsp;<code>String&nbsp;key</code>&nbsp;)
242     :
243                                         Object<div class="mdesc"><div class="short">Removed an item associated with the passed key fom the collection.</div><div class="long">Removed an item associated with the passed key fom the collection.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>key</code> : String<div class="sub-desc">The key of the item to remove.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">The item removed or false if no item was removed.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-removeListener"></a><b><a href="source/Observable.html#method-Ext.util.Observable-removeListener">removeListener</a></b>(&nbsp;<code>String&nbsp;eventName</code>,&nbsp;<code>Function&nbsp;handler</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>&nbsp;)
244     :
245                                         void<div class="mdesc"><div class="short">Removes an event handler.</div><div class="long">Removes an event handler.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The type of event the handler was associated with.</div></li><li><code>handler</code> : Function<div class="sub-desc">The handler to remove. <b>This must be a reference to the function passed into the <a href="output/Ext.util.Observable.html#Ext.util.Observable-addListener" ext:member="addListener" ext:cls="Ext.util.Observable">addListener</a> call.</b></div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope originally specified for the handler.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#removeListener" ext:member="#removeListener" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-replace"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-replace">replace</a></b>(&nbsp;<code>String&nbsp;key</code>,&nbsp;<code>o&nbsp;{Object}</code>&nbsp;)
246     :
247                                         Object<div class="mdesc"><div class="short">Replaces an item in the collection. Fires the replace event when complete.</div><div class="long">Replaces an item in the collection. Fires the <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-replace" ext:member="replace" ext:cls="Ext.util.MixedCollection">replace</a> event when complete.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>key</code> : String<div class="sub-desc"><p>The key associated with the item to replace, or the replacement item.</p>\r
248 <p>If you supplied a <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-getKey" ext:member="getKey" ext:cls="Ext.util.MixedCollection">getKey</a> implementation for this MixedCollection, or if the key\r
249 of your stored items is in a property called <tt><b>id</b></tt>, then the MixedCollection\r
250 will be able to <i>derive</i> the key of the replacement item. If you want to replace an item\r
251 with one having the same key value, then just pass the replacement item in this parameter.</p></div></li><li><code>{Object}</code> : o<div class="sub-desc">o (optional) If the first parameter passed was a key, the item to associate\r
252 with that key.</div></li></ul><strong>Returns:</strong><ul><li><code>Object</code><div class="sub-desc">The new item.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-resumeEvents"></a><b><a href="source/Observable.html#method-Ext.util.Observable-resumeEvents">resumeEvents</a></b>()
253     :
254                                         void<div class="mdesc"><div class="short">Resume firing events. (see suspendEvents)
255 If events were suspended using the queueSuspended parameter, then all
256 event...</div><div class="long">Resume firing events. (see <a href="output/Ext.util.Observable.html#Ext.util.Observable-suspendEvents" ext:member="suspendEvents" ext:cls="Ext.util.Observable">suspendEvents</a>)
257 If events were suspended using the <tt><b>queueSuspended</b></tt> parameter, then all
258 events fired during event suspension will be sent to any listeners now.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#resumeEvents" ext:member="#resumeEvents" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-sort"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-sort">sort</a></b>(&nbsp;<span title="Optional" class="optional">[<code>String&nbsp;direction</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Function&nbsp;fn</code>]</span>&nbsp;)
259     :
260                                         void<div class="mdesc"><div class="short">Sorts this collection with the passed comparison function</div><div class="long">Sorts this collection with the passed comparison function<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>direction</code> : String<div class="sub-desc">(optional) "ASC" or "DESC"</div></li><li><code>fn</code> : Function<div class="sub-desc">(optional) comparison function</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-suspendEvents"></a><b><a href="source/Observable.html#method-Ext.util.Observable-suspendEvents">suspendEvents</a></b>(&nbsp;<code>Boolean&nbsp;queueSuspended</code>&nbsp;)
261     :
262                                         void<div class="mdesc"><div class="short">Suspend the firing of all events. (see resumeEvents)</div><div class="long">Suspend the firing of all events. (see <a href="output/Ext.util.Observable.html#Ext.util.Observable-resumeEvents" ext:member="resumeEvents" ext:cls="Ext.util.Observable">resumeEvents</a>)<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>queueSuspended</code> : Boolean<div class="sub-desc">Pass as true to queue up suspended events to be fired
263 after the <a href="output/Ext.util.Observable.html#Ext.util.Observable-resumeEvents" ext:member="resumeEvents" ext:cls="Ext.util.Observable">resumeEvents</a> call instead of discarding all suspended events;</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#suspendEvents" ext:member="#suspendEvents" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-un"></a><b><a href="source/Observable.html#method-Ext.util.Observable-un">un</a></b>(&nbsp;<code>String&nbsp;eventName</code>,&nbsp;<code>Function&nbsp;handler</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>&nbsp;)
264     :
265                                         void<div class="mdesc"><div class="short">Removes an event handler (shorthand for removeListener.)</div><div class="long">Removes an event handler (shorthand for <a href="output/Ext.util.Observable.html#Ext.util.Observable-removeListener" ext:member="removeListener" ext:cls="Ext.util.Observable">removeListener</a>.)<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The type of event the handler was associated with.</div></li><li><code>handler</code> : Function<div class="sub-desc">The handler to remove. <b>This must be a reference to the function passed into the <a href="output/Ext.util.Observable.html#Ext.util.Observable-addListener" ext:member="addListener" ext:cls="Ext.util.Observable">addListener</a> call.</b></div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope originally specified for the handler.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#un" ext:member="#un" ext:cls="Ext.util.Observable">Observable</a></td></tr></tbody></table><a id="Ext.util.MixedCollection-events"></a><h2>Public Events</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Event</th><th class="msource-header">Defined By</th></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-add"></a><b><a href="source/MixedCollection.html#event-Ext.util.MixedCollection-add">add</a></b> :
266                                       (&nbsp;<code>Number&nbsp;index</code>,&nbsp;<code>Object&nbsp;o</code>,&nbsp;<code>String&nbsp;key</code>&nbsp;)
267     <div class="mdesc"><div class="short">Fires when an item is added to the collection.</div><div class="long">Fires when an item is added to the collection.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>index</code> : Number<div class="sub-desc">The index at which the item was added.</div></li><li><code>o</code> : Object<div class="sub-desc">The item added.</div></li><li><code>key</code> : String<div class="sub-desc">The key associated with the added item.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-clear"></a><b><a href="source/MixedCollection.html#event-Ext.util.MixedCollection-clear">clear</a></b> :
268                                       ()
269     <div class="mdesc"><div class="short">Fires when the collection is cleared.</div><div class="long">Fires when the collection is cleared.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li>None.</li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-remove"></a><b><a href="source/MixedCollection.html#event-Ext.util.MixedCollection-remove">remove</a></b> :
270                                       (&nbsp;<code>Object&nbsp;o</code>,&nbsp;<span title="Optional" class="optional">[<code>String&nbsp;key</code>]</span>&nbsp;)
271     <div class="mdesc"><div class="short">Fires when an item is removed from the collection.</div><div class="long">Fires when an item is removed from the collection.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>o</code> : Object<div class="sub-desc">The item being removed.</div></li><li><code>key</code> : String<div class="sub-desc">(optional) The key associated with the removed item.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.MixedCollection-replace"></a><b><a href="source/MixedCollection.html#event-Ext.util.MixedCollection-replace">replace</a></b> :
272                                       (&nbsp;<code>String&nbsp;key</code>,&nbsp;<code>Object&nbsp;old</code>,&nbsp;<code>Object&nbsp;new</code>&nbsp;)
273     <div class="mdesc"><div class="short">Fires when an item is replaced in the collection.</div><div class="long">Fires when an item is replaced in the collection.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>key</code> : String<div class="sub-desc">he key associated with the new added.</div></li><li><code>old</code> : Object<div class="sub-desc">The item being replaced.</div></li><li><code>new</code> : Object<div class="sub-desc">The new item.</div></li></ul></div></div></div></td><td class="msource">MixedCollection</td></tr></tbody></table></div>