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> <a class="inner-link" href="#Ext.util.MixedCollection-methods"><img src="../resources/images/default/s.gif" class="item-icon icon-method">Methods</a> <a class="inner-link" href="#Ext.util.MixedCollection-events"><img src="../resources/images/default/s.gif" class="item-icon icon-event">Events</a> <a class="inner-link" href="#Ext.util.MixedCollection-configs"><img src="../resources/images/default/s.gif" class="item-icon icon-config">Config Options</a> <a class="bookmark" href="../docs/?class=Ext.util.MixedCollection"><img src="../resources/images/default/s.gif" class="item-icon icon-fav">Direct Link</a> </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> <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"><a href="source/MixedCollection.html#cls-Ext.util.MixedCollection">MixedCollection.js</a></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 "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.util.MixedCollection-allowFunctions"></a><b><a href="source/MixedCollection.html#cfg-Ext.util.MixedCollection-allowFunctions">allowFunctions</a></b> : Boolean<div class="mdesc">Specify <tt>true</tt> if the <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-addAll" ext:member="addAll" ext:cls="Ext.util.MixedCollection">addAll</a>
2 function should add function references to the collection. Defaults to
3 <tt>false</tt>.</div></td><td class="msource">MixedCollection</td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi"> </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
4 object during initialization. This should ...</div><div class="long"><p>A config object containing one or more event handlers to be added to this
5 object during initialization. This should be a valid listeners config object as specified in the
6 <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>
7 <br><p><b><u>DOM events from ExtJs <a href="output/Ext.Component.html" ext:cls="Ext.Component">Components</a></u></b></p>
8 <br><p>While <i>some</i> ExtJs Component classes export selected DOM events (e.g. "click", "mouseover" etc), this
9 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
10 <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
11 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
12 has been rendered. A plugin can simplify this step:<pre><code><i>// Plugin is configured <b>with</b> a listeners config object.</i>
13 <i>// The Component is appended to the argument list of all handler functions.</i>
14 Ext.DomObserver = Ext.extend(Object, {
15 constructor: <b>function</b>(config) {
16 this.listeners = config.listeners ? config.listeners : config;
19 <i>// Component passes itself into plugin's init method</i>
20 init: <b>function</b>(c) {
21 <b>var</b> p, l = this.listeners;
22 <b>for</b> (p <b>in</b> l) {
23 <b>if</b> (Ext.isFunction(l[p])) {
24 l[p] = this.createHandler(l[p], c);
26 l[p].fn = this.createHandler(l[p].fn, c);
30 <i>// Add the listeners to the Element immediately following the render call</i>
31 c.render = c.render.<a href="output/Function.html#Function-createSequence" ext:member="createSequence" ext:cls="Function">createSequence</a>(<b>function</b>() {
32 <b>var</b> e = c.getEl();
39 createHandler: <b>function</b>(fn, c) {
40 <b>return</b> <b>function</b>(e) {
46 <b>var</b> combo = <b>new</b> Ext.form.ComboBox({
48 <i>// Collapse combo when its element is clicked on</i>
49 plugins: [ <b>new</b> Ext.DomObserver({
50 click: <b>function</b>(evt, comp) {
56 mode: <em>'local'</em>,
57 triggerAction: <em>'all'</em>
58 });</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"> </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>( <code>Boolean allowFunctions</code>, <code>Function keyFn</code> )
59 <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">Specify <tt>true</tt> if the <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-addAll" ext:member="addAll" ext:cls="Ext.util.MixedCollection">addAll</a>
60 function should add function references to the collection. Defaults to
61 <tt>false</tt>.</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
62 and return the key value for that item. This is used when available to look up the key on items that
63 were passed without an explicit key parameter to a MixedCollection method. Passing this parameter is
64 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"> </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>( <code>String key</code>, <code>Object o</code> )
66 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>
67 <p>If a <a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-getKey" ext:member="getKey" ext:cls="Ext.util.MixedCollection">getKey</a> implementation was specified for this MixedCollection,
68 or if the key of the stored items is in a property called <tt><b>id</b></tt>,
69 the MixedCollection will be able to <i>derive</i> the key for the new item.
70 In this case just pass the new item in 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"> </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>( <code>Object/Array objs</code> )
72 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
73 to the collection, or an Array of values, each of which are added to the collection.
74 Functions references will be added to the collection if <code><a href="output/Ext.util.MixedCollection.html#Ext.util.MixedCollection-allowFunctions" ext:member="allowFunctions" ext:cls="Ext.util.MixedCollection">allowFunctions</a></code>
75 has been set to <tt>true</tt>.</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"> </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>( <code>Object|String o</code>, <code>string Optional.</code> )
77 void<div class="mdesc"><div class="short">Adds the specified events to the list of events which this Observable may fire.</div><div class="long">Adds the specified events to the list of events which this Observable may fire.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>o</code> : Object|String<div class="sub-desc">Either an object with event names as properties with a value of <code>true</code>
78 or the first event name string if multiple event names are being passed as separate parameters.</div></li><li><code>Optional.</code> : string<div class="sub-desc">Event name if multiple event names are being passed as separate parameters.
79 Usage:<pre><code>this.addEvents(<em>'storeloaded'</em>, <em>'storecleared'</em>);</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#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"> </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>( <code>String eventName</code>, <code>Function handler</code>, <span title="Optional" class="optional">[<code>Object scope</code>]</span>, <span title="Optional" class="optional">[<code>Object options</code>]</span> )
81 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.
82 <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.
83 properties. This may contain any of the following properties:<ul>
84 <li><b>scope</b> : Object<div class="sub-desc">The scope (<code><b>this</b></code> reference) in which the handler function is executed.
85 <b>If omitted, defaults to the object which fired the event.</b></div></li>
86 <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>
87 <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>
88 <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
89 by the specified number of milliseconds. If the event fires again within that time, the original
90 handler is <em>not</em> invoked, but the new handler is scheduled in its place.</div></li>
91 <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>
92 if the event was bubbled up from a child Observable.</div></li>
95 <b>Combining Options</b><br>
96 Using the options argument, it is possible to combine different types of listeners:<br>
98 A delayed, one-time listener.
99 <pre><code>myDataView.on(<em>'click'</em>, this.onClick, this, {
104 <b>Attaching multiple handlers in 1 call</b><br>
105 The method also allows for a single argument to be passed which is a config object containing properties
106 which specify multiple handlers.
108 <pre><code>myGridPanel.on({
114 <em>'mouseover'</em> : {
115 fn: this.onMouseOver,
118 <em>'mouseout'</em> : {
124 Or a shorthand syntax:<br>
125 <pre><code>myGridPanel.on({
126 <em>'click'</em> : this.onClick,
127 <em>'mouseover'</em> : this.onMouseOver,
128 <em>'mouseout'</em> : this.onMouseOut,
130 });</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"> </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>()
132 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"> </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>()
134 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"> </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>( <code>Object o</code> )
136 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"> </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>( <code>String key</code> )
138 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"> </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>( <code>Function fn</code>, <span title="Optional" class="optional">[<code>Object scope</code>]</span> )
140 void<div class="mdesc"><div class="short">Executes the specified function once for every item in the collection, passing the following arguments:
141 <div class="m...</div><div class="long">Executes the specified function once for every item in the collection, passing the following arguments:
142 <div class="mdetail-params"><ul>
143 <li><b>item</b> : Mixed<p class="sub-desc">The collection item</p></li>
144 <li><b>index</b> : Number<p class="sub-desc">The item's index</p></li>
145 <li><b>length</b> : Number<p class="sub-desc">The total number of items in the collection</p></li>
147 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 (<code>this</code> reference) in which the function is executed. Defaults to the current item in the iteration.</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"> </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>( <code>Function fn</code>, <span title="Optional" class="optional">[<code>Object scope</code>]</span> )
149 void<div class="mdesc"><div class="short">Executes the specified function once for every key in the collection, passing each
150 key, and its associated item as th...</div><div class="long">Executes the specified function once for every key in the collection, passing each
151 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 (<code>this</code> reference) in which the function is executed. Defaults to the browser window.</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"> </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>( <code>String/Array events</code> )
153 void<div class="mdesc"><div class="short">Enables events fired by this Observable to bubble up an owner hierarchy by calling
154 this.getBubbleTarget() if present....</div><div class="long"><p>Enables events fired by this Observable to bubble up an owner hierarchy by calling
155 <code>this.getBubbleTarget()</code> if present. There is no implementation in the Observable base class.</p>
156 <p>This is commonly used by Ext.Components to bubble events to owner Containers. See <a href="output/Ext.Component.getBubbleTarget.html" ext:cls="Ext.Component.getBubbleTarget">Ext.Component.getBubbleTarget</a>. The default
157 implementation in Ext.Component returns the Component's immediate owner. But if a known target is required, this can be overridden to
158 access the required target more quickly.</p>
159 <p>Example:</p><pre><code>Ext.override(Ext.form.Field, {
160 <i>// Add functionality to Field's initComponent to enable the change event to bubble</i>
161 initComponent : Ext.form.Field.prototype.initComponent.createSequence(<b>function</b>() {
162 this.enableBubble(<em>'change'</em>);
165 <i>// We know that we want Field's events to bubble directly to the FormPanel.</i>
166 getBubbleTarget : <b>function</b>() {
167 <b>if</b> (!this.formPanel) {
168 this.formPanel = this.findParentByType(<em>'form'</em>);
170 <b>return</b> this.formPanel;
174 <b>var</b> myForm = <b>new</b> Ext.formPanel({
175 title: <em>'User Details'</em>,
180 change: <b>function</b>() {
181 <i>// Title goes red <b>if</b> form has been modified.</i>
182 myForm.header.setStyle(<em>'color'</em>, <em>'red'</em>);
185 });</code></pre><div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>events</code> : String/Array<div class="sub-desc">The event name to bubble, or an Array of event names.</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"> </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>( <code>String property</code>, <code>String/RegExp value</code>, <span title="Optional" class="optional">[<code>Boolean anyMatch</code>]</span>, <span title="Optional" class="optional">[<code>Boolean caseSensitive</code>]</span> )
187 MixedCollection<div class="mdesc"><div class="short">Filter the objects in this collection by a specific property.
188 Returns a new collection that has been filtered.</div><div class="long">Filter the <i>objects</i> in this collection by a specific property.
189 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
190 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"> </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>( <code>Function fn</code>, <span title="Optional" class="optional">[<code>Object scope</code>]</span> )
192 MixedCollection<div class="mdesc"><div class="short">Filter by a function. Returns a new collection that has been filtered.
193 The passed function will be called with each o...</div><div class="long">Filter by a function. Returns a <i>new</i> collection that has been filtered.
194 The passed function will be called with each object in the collection.
195 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 (<code>this</code> reference) in which the function is executed. Defaults to this MixedCollection.</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"> </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>( <code>Function fn</code>, <span title="Optional" class="optional">[<code>Object scope</code>]</span> )
197 Object<div class="mdesc"><div class="short">Returns the first item in the collection which elicits a true return value from the
198 passed selection function.</div><div class="long">Returns the first item in the collection which elicits a true return value from the
199 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 (<code>this</code> reference) in which the function is executed. Defaults to the browser window.</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"> </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>( <code>String property</code>, <code>String/RegExp value</code>, <span title="Optional" class="optional">[<code>Number start</code>]</span>, <span title="Optional" class="optional">[<code>Boolean anyMatch</code>]</span>, <span title="Optional" class="optional">[<code>Boolean caseSensitive</code>]</span> )
201 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
202 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"> </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>( <code>Function fn</code>, <span title="Optional" class="optional">[<code>Object scope</code>]</span>, <span title="Optional" class="optional">[<code>Number start</code>]</span> )
204 Number<div class="mdesc"><div class="short">Find the index of the first matching object in this collection by a function.
205 If the function returns true it is cons...</div><div class="long">Find the index of the first matching object in this collection by a function.
206 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 (<code>this</code> reference) in which the function is executed. Defaults to this MixedCollection.</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"> </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>( <code>String eventName</code>, <code>Object... args</code> )
208 Boolean<div class="mdesc"><div class="short">Fires the specified event with the passed parameters (minus the event name).
209 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>
210 <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>)
211 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"> </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>()
213 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"> </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>( <code>String/Number key</code> )
215 Object<div class="mdesc"><div class="short">This method calls item().
216 Returns the item associated with the passed key OR index. Key has priority
217 over index. Thi...</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>.
218 Returns the item associated with the passed key OR index. Key has priority
219 over index. This is the equivalent 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
220 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
221 not found, returns <tt>undefined</tt>. If an item was found, but is a Class,
222 returns <tt>null</tt>.</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"> </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>()
224 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"> </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>( <code>Object item</code> )
226 Object<div class="mdesc"><div class="short">MixedCollection has a generic way to fetch keys if you implement getKey. The default implementation
227 simply returns i...</div><div class="long">MixedCollection has a generic way to fetch keys if you implement getKey. The default implementation
228 simply returns <b><code>item.id</code></b> but you can provide your own implementation
229 to return a different value as in the following examples:<pre><code><i>// normal way</i>
230 <b>var</b> mc = <b>new</b> Ext.util.MixedCollection();
231 mc.add(someEl.dom.id, someEl);
232 mc.add(otherEl.dom.id, otherEl);
235 <i>// using getKey</i>
236 <b>var</b> mc = <b>new</b> Ext.util.MixedCollection();
237 mc.getKey = <b>function</b>(el){
238 <b>return</b> el.dom.id;
243 <i>// or via the constructor</i>
244 <b>var</b> mc = <b>new</b> Ext.util.MixedCollection(false, <b>function</b>(el){
245 <b>return</b> el.dom.id;
248 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"> </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>( <span title="Optional" class="optional">[<code>Number startIndex</code>]</span>, <span title="Optional" class="optional">[<code>Number endIndex</code>]</span> )
250 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) The starting index. Defaults to 0.</div></li><li><code>endIndex</code> : Number<div class="sub-desc">(optional) The ending index. Defaults 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"> </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>( <code>String eventName</code> )
252 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"> </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>( <code>Object o</code> )
254 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"> </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>( <code>String key</code> )
256 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"> </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>( <code>Number index</code>, <code>String key</code>, <span title="Optional" class="optional">[<code>Object o</code>]</span> )
258 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"> </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>( <code>String/Number key</code> )
260 Object<div class="mdesc"><div class="short">Returns the item associated with the passed key OR index.
261 Key has priority over index. This is the equivalent
262 of cal...</div><div class="long">Returns the item associated with the passed key OR index.
263 Key has priority over index. This is the equivalent
264 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 <tt>undefined</tt>.
265 If an item was found, but is a Class, returns <tt>null</tt>.</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"> </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>( <code>Number index</code> )
267 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"> </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>( <code>String/Number key</code> )
269 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"> </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>( <span title="Optional" class="optional">[<code>String direction</code>]</span>, <span title="Optional" class="optional">[<code>Function fn</code>]</span> )
271 void<div class="mdesc"><div class="short">Sorts this collection by keys.</div><div class="long">Sorts this collection by <b>key</b>s.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>direction</code> : String<div class="sub-desc">(optional) 'ASC' or 'DESC'. Defaults to 'ASC'.</div></li><li><code>fn</code> : Function<div class="sub-desc">(optional) Comparison function that defines the sort order.
272 Defaults to sorting by 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"> </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>()
274 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"> </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>( <code>String eventName</code>, <code>Function handler</code>, <span title="Optional" class="optional">[<code>Object scope</code>]</span>, <span title="Optional" class="optional">[<code>Object options</code>]</span> )
276 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.
277 <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"> </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>()
279 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"> </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>( <code>Object o</code>, <code>Array events</code> )
281 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"> </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>( <code>Object o</code> )
283 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"> </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>( <code>Number index</code> )
285 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"> </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>( <code>String key</code> )
287 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"> </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>( <code>String eventName</code>, <code>Function handler</code>, <span title="Optional" class="optional">[<code>Object scope</code>]</span> )
289 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"> </a></td><td class="sig"><a id="Ext.util.MixedCollection-reorder"></a><b><a href="source/MixedCollection.html#method-Ext.util.MixedCollection-reorder">reorder</a></b>( <code>Object mapping</code> )
291 void<div class="mdesc"><div class="short">Reorders each of the items based on a mapping from old index to new index. Internally this
292 just translates into a sor...</div><div class="long">Reorders each of the items based on a mapping from old index to new index. Internally this
293 just translates into a sort. The 'sort' event is fired whenever reordering has occured.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>mapping</code> : Object<div class="sub-desc">Mapping from old item index to new item index</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"> </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>( <code>String key</code>, <code>o {Object}</code> )
295 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>
296 <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
297 of your stored items is in a property called <tt><b>id</b></tt>, then the MixedCollection
298 will be able to <i>derive</i> the key of the replacement item. If you want to replace an item
299 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
300 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"> </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>()
302 void<div class="mdesc"><div class="short">Resume firing events. (see suspendEvents)
303 If events were suspended using the queueSuspended parameter, then all
304 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>)
305 If events were suspended using the <tt><b>queueSuspended</b></tt> parameter, then all
306 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"> </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>( <span title="Optional" class="optional">[<code>String direction</code>]</span>, <span title="Optional" class="optional">[<code>Function fn</code>]</span> )
308 void<div class="mdesc"><div class="short">Sorts this collection by item value with the passed comparison function.</div><div class="long">Sorts this collection by <b>item</b> value 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'. Defaults to 'ASC'.</div></li><li><code>fn</code> : Function<div class="sub-desc">(optional) Comparison function that defines the sort order.
309 Defaults to sorting by numeric value.</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"> </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>( <code>Boolean queueSuspended</code> )
311 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
312 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"> </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>( <code>String eventName</code>, <code>Function handler</code>, <span title="Optional" class="optional">[<code>Object scope</code>]</span> )
314 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"> </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> :
315 ( <code>Number index</code>, <code>Object o</code>, <code>String key</code> )
316 <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"> </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> :
318 <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"> </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> :
319 ( <code>Object o</code>, <span title="Optional" class="optional">[<code>String key</code>]</span> )
320 <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"> </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> :
321 ( <code>String key</code>, <code>Object old</code>, <code>Object new</code> )
322 <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>