Upgrade to ExtJS 4.0.0 - Released 04/26/2011
[extjs.git] / docs / api / Ext.util.AbstractMixedCollection.html
1 <!DOCTYPE html><html><head><title>Ext.util.AbstractMixedCollection | Ext JS 4.0 Documentation</title><script type="text/javascript" src="../ext-all.js"></script><link rel="stylesheet" href="../reset.css" type="text/css"><link rel="stylesheet" href="../scrollbars.css" type="text/css"><link rel="stylesheet" href="../docs.css" type="text/css"><link id="styleCss" rel="stylesheet" href="../style.css" type="text/css"><script type="text/javascript" src="../prettify.js"></script><link rel="stylesheet" href="../prettify.css" type="text/css"><!-- link(rel: 'stylesheet', href: req.baseURL + '/css/ext4.css', type: 'text/css')--><link rel="shortcut icon" type="image/ico" href="../favicon.ico"><!--[if IE]>
2 <style type="text/css">.head-band { display: none; }
3 .header { border: 0; top: 0; left: 0px; background: url(../header.gif) repeat-x; }
4 .doc-tab .members .member a.more { background-color: #efefef; }
5 </style><link rel="stylesheet" href="/new/css/ie.css" type="text/css"><![endif]-->
6 </head><body id="ext-body" class="iScroll"><div id="notice" class="notice">For up to date documentation and features, visit 
7 <a href="http://docs.sencha.com/ext-js/4-0">http://docs.sencha.com/ext-js/4-0</a></div><div class="wrapper"><div class="head-band"></div><div class="header"><h2><a href="../index.html">Sencha Documentation</a></h2></div><div id="search"><form><input type="text" placeholder="Search" id="search-field" autocomplete="off" name="q"></form><div id="search-box"></div></div><div id="treePanel"></div><div id="container"><script type="text/javascript">
8
9     req = {
10         liveURL: '.',
11         standAloneMode: true,
12         origDocClass: 'Ext.util.AbstractMixedCollection',
13         docClass: 'Ext.util.AbstractMixedCollection',
14         docReq: 'Ext.util.AbstractMixedCollection',
15         version: '4.0',
16         baseURL: '.',
17         baseDocURL: '.',
18         baseProdURL: '.'
19     };
20
21     clsInfo = {};
22
23
24
25 </script>
26
27 <script type="text/javascript" src="../search.js"></script>
28 <!--script type="text/javascript" src="/new/javascripts/app/examples.js"></script-->
29 <script type="text/javascript" src="../class_tree.js"></script>
30 <script type="text/javascript" src="../class_doc.js"></script>
31 <script type="text/javascript">
32     req.source = 'AbstractMixedCollection.html#Ext-util.AbstractMixedCollection';
33     clsInfo = {"methods":["add","addAll","addEvents","addListener","addManagedListener","capture","clear","clearListeners","clearManagedListeners","clone","collect","contains","containsKey","each","eachKey","enableBubble","filter","filterBy","findBy","findIndex","findIndexBy","fireEvent","first","get","getAt","getByKey","getCount","getKey","getRange","hasListener","indexOf","indexOfKey","insert","last","observe","on","relayEvents","releaseCapture","remove","removeAll","removeAt","removeAtKey","removeListener","removeManagedListener","replace","resumeEvents","sum","suspendEvents","un"],"cfgs":["allowFunctions","listeners"],"properties":[],"events":["add","clear","remove","replace"],"subclasses":["Ext.util.MixedCollection"]};
34     Ext.onReady(function() {
35         Ext.create('Docs.classPanel');
36     });
37 </script><div id="top-block" class="top-block"><h1 id="clsTitle" class="cls"><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection" target="_blank">Ext.util.AbstractMixedCollection</a></h1></div><div id="docContent"><div id="doc-overview-content"><div class="lft"><pre class="subclasses"><h4>Mixins</h4><div class="mixin"><a href="Ext.util.Observable.html" rel="Ext.util.Observable" class="cls docClass">Ext.util.Observable</a></div></pre>
38 <div class="members"><div class="m-cfgs"><div class="definedBy">Defined By</div><a name="configs"></a><h3 class="cfg p">Config Options</h3><h4 class="cfgGroup">Other Configs</h4><div id="config-allowFunctions" class="member f ni"><a href="Ext.util.AbstractMixedCollection.html#config-allowFunctions" rel="config-allowFunctions" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-cfg-allowFunctions" class="viewSource">view source</a></div><a name="allowFunctions"></a><a name="config-allowFunctions"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="config-allowFunctions" class="cls expand">allowFunctions</a><span> : Boolean</span></div><div class="description"><div class="short"><p>Specify <tt>true</tt> if the <a href="Ext.util.AbstractMixedCollection.html#addAll" rel="Ext.util.AbstractMixedCollection#addAll" class="docClass">addAll</a>
39 function should add function references to the collection. Defaults to
40 <tt>false</tt>.</p>
41 </div><div class="long"><p>Specify <tt>true</tt> if the <a href="Ext.util.AbstractMixedCollection.html#addAll" rel="Ext.util.AbstractMixedCollection#addAll" class="docClass">addAll</a>
42 function should add function references to the collection. Defaults to
43 <tt>false</tt>.</p>
44 </div></div></div><div id="config-listeners" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#config-listeners" rel="config-listeners" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-cfg-listeners" class="viewSource">view source</a></div><a name="listeners"></a><a name="config-listeners"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="config-listeners" class="cls expand">listeners</a><span> : Object</span></div><div class="description"><div class="short">(optional) A config object containing one or more event handlers to be added to this
45 object during initialization.  T...</div><div class="long"><p>(optional) <p>A config object containing one or more event handlers to be added to this
46 object during initialization.  This should be a valid listeners config object as specified in the
47 <a href="Ext.util.AbstractMixedCollection.html#addListener" rel="Ext.util.AbstractMixedCollection#addListener" class="docClass">addListener</a> example for attaching multiple handlers at once.</p></p>
48
49 <br><p><b><u>DOM events from ExtJs <a href="Ext.Component.html" rel="Ext.Component" class="docClass">Components</a></u></b></p>
50
51
52 <br><p>While <i>some</i> ExtJs Component classes export selected DOM events (e.g. "click", "mouseover" etc), this
53
54
55 <p>is usually only done when extra value can be added. For example the <a href="Ext.view.View.html" rel="Ext.view.View" class="docClass">DataView</a>'s
56 <b><code><a href="Ext.view.View.html#click" rel="Ext.view.View#click" class="docClass">click</a></code></b> event passing the node clicked on. To access DOM
57 events directly from a child element of a Component, we need to specify the <code>element</code> option to
58 identify the Component property to add a DOM listener to:</p>
59
60 <pre><code>new Ext.panel.Panel({
61     width: 400,
62     height: 200,
63     dockedItems: [{
64         xtype: 'toolbar'
65     }],
66     listeners: {
67         click: {
68             element: 'el', //bind to the underlying el property on the panel
69             fn: function(){ console.log('click el'); }
70         },
71         dblclick: {
72             element: 'body', //bind to the underlying body property on the panel
73             fn: function(){ console.log('dblclick body'); }
74         }
75     }
76 });
77 </code></pre>
78
79
80 <p></p></p>
81 </div></div></div></div><div class="m-methods"><a name="methods"></a><div class="definedBy">Defined By</div><h3 class="mth p">Methods</h3><div id="method-add" class="member f ni"><a href="Ext.util.AbstractMixedCollection.html#method-add" rel="method-add" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-add" class="viewSource">view source</a></div><a name="add"></a><a name="method-add"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-add" class="cls expand">add</a>(
82 <span class="pre">String key, Object o</span>)
83  : Object</div><div class="description"><div class="short"><p>Adds an item to the collection. Fires the <a href="Ext.util.AbstractMixedCollection.html#add" rel="Ext.util.AbstractMixedCollection#add" class="docClass">add</a> event when complete.</p>
84 </div><div class="long"><p>Adds an item to the collection. Fires the <a href="Ext.util.AbstractMixedCollection.html#add" rel="Ext.util.AbstractMixedCollection#add" class="docClass">add</a> event when complete.</p>
85 <h3 class="pa">Parameters</h3><ul><li><span class="pre">key</span> : String<div class="sub-desc"><p>The key to associate with the item, or the new item.</p>
86
87
88 <p>If a <a href="Ext.util.AbstractMixedCollection.html#getKey" rel="Ext.util.AbstractMixedCollection#getKey" class="docClass">getKey</a> implementation was specified for this MixedCollection,
89 or if the key of the stored items is in a property called <tt><b>id</b></tt>,
90 the MixedCollection will be able to <i>derive</i> the key for the new item.
91 In this case just pass the new item in this parameter.</p>
92
93 </div></li><li><span class="pre">o</span> : Object<div class="sub-desc"><p>The item to add.</p>
94 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>The item added.</p>
95 </li></ul></div></div></div><div id="method-addAll" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-addAll" rel="method-addAll" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-addAll" class="viewSource">view source</a></div><a name="addAll"></a><a name="method-addAll"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-addAll" class="cls expand">addAll</a>(
96 <span class="pre">Object/Array objs</span>)
97  : void</div><div class="description"><div class="short"><p>Adds all elements of an Array or an Object to the collection.</p>
98 </div><div class="long"><p>Adds all elements of an Array or an Object to the collection.</p>
99 <h3 class="pa">Parameters</h3><ul><li><span class="pre">objs</span> : Object/Array<div class="sub-desc"><p>An Object containing properties which will be added
100 to the collection, or an Array of values, each of which are added to the collection.
101 Functions references will be added to the collection if <code><a href="Ext.util.AbstractMixedCollection.html#allowFunctions" rel="Ext.util.AbstractMixedCollection#allowFunctions" class="docClass">allowFunctions</a></code>
102 has been set to <tt>true</tt>.</p>
103 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
104 </li></ul></div></div></div><div id="method-addEvents" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-addEvents" rel="method-addEvents" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-addEvents" class="viewSource">view source</a></div><a name="addEvents"></a><a name="method-addEvents"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-addEvents" class="cls expand">addEvents</a>(
105 <span class="pre">Object/String o, String </span>)
106  : void</div><div class="description"><div class="short"><p>Adds the specified events to the list of events which this Observable may fire.</p>
107 </div><div class="long"><p>Adds the specified events to the list of events which this Observable may fire.</p>
108 <h3 class="pa">Parameters</h3><ul><li><span class="pre">o</span> : Object/String<div class="sub-desc"><p>Either an object with event names as properties with a value of <code>true</code>
109 or the first event name string if multiple event names are being passed as separate parameters.</p>
110 </div></li><li><span class="pre"></span> : String<div class="sub-desc"><p>[additional] Optional additional event names if multiple event names are being passed as separate parameters.
111 Usage:</p>
112
113 <pre><code>this.addEvents('storeloaded', 'storecleared');
114 </code></pre>
115
116 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
117 </li></ul></div></div></div><div id="method-addListener" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-addListener" rel="method-addListener" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-addListener" class="viewSource">view source</a></div><a name="addListener"></a><a name="method-addListener"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-addListener" class="cls expand">addListener</a>(
118 <span class="pre">String eventName, Function handler, [Object scope], [Object options]</span>)
119  : void</div><div class="description"><div class="short"><p>Appends an event handler to this object.</p>
120 </div><div class="long"><p>Appends an event handler to this object.</p>
121 <h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The name of the event to listen for. May also be an object who's property names are event names. See</p>
122 </div></li><li><span class="pre">handler</span> : Function<div class="sub-desc"><p>The method the event invokes.</p>
123 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope (<code><b>this</b></code> reference) in which the handler function is executed.
124 <b>If omitted, defaults to the object which fired the event.</b></p>
125 </div></li><li><span class="pre">options</span> : Object<div class="sub-desc"><p>(optional) An object containing handler configuration.
126 properties. This may contain any of the following properties:<ul>
127 <li><b>scope</b> : Object<div class="sub-desc">The scope (<code><b>this</b></code> reference) in which the handler function is executed.
128 <b>If omitted, defaults to the object which fired the event.</b></div></li>
129 <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>
130 <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>
131 <li><b>buffer</b> : Number<div class="sub-desc">Causes the handler to be scheduled to run in an <a href="Ext.util.DelayedTask.html" rel="Ext.util.DelayedTask" class="docClass">Ext.util.DelayedTask</a> delayed
132 by the specified number of milliseconds. If the event fires again within that time, the original
133 handler is <em>not</em> invoked, but the new handler is scheduled in its place.</div></li>
134 <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>
135 if the event was bubbled up from a child Observable.</div></li>
136 <li><b>element</b> : String<div class="sub-desc"><b>This option is only valid for listeners bound to <a href="Ext.Component.html" rel="Ext.Component" class="docClass">Components</a>.</b>
137 The name of a Component property which references an element to add a listener to.</p>
138
139 <p>This option is useful during Component construction to add DOM event listeners to elements of <a href="Ext.Component.html" rel="Ext.Component" class="docClass">Components</a> which
140 will exist only after the Component is rendered. For example, to add a click listener to a Panel's body:
141 <pre><code>new Ext.panel.Panel({
142     title: 'The title',
143     listeners: {
144         click: this.handlePanelClick,
145         element: 'body'
146     }
147 });
148 </code></pre></p>
149
150
151 <p>When added in this way, the options available are the options applicable to <a href="Ext.core.Element.html#addListener" rel="Ext.core.Element#addListener" class="docClass">Ext.core.Element.addListener</a></p>
152
153
154 <p></div></li>
155 </ul><br></p>
156
157 <p>
158 <b>Combining Options</b><br>
159 Using the options argument, it is possible to combine different types of listeners:<br>
160 <br>
161 A delayed, one-time listener.
162 <pre><code>myPanel.on('hide', this.handleClick, this, {
163 single: true,
164 delay: 100
165 });</code></pre>
166 <p>
167 <b>Attaching multiple handlers in 1 call</b><br>
168 The method also allows for a single argument to be passed which is a config object containing properties
169 which specify multiple events. For example:
170 <pre><code>myGridPanel.on({
171     cellClick: this.onCellClick,
172     mouseover: this.onMouseOver,
173     mouseout: this.onMouseOut,
174     scope: this // Important. Ensure "this" is correct during handler execution
175 });
176 </code></pre>.
177 <p>
178
179 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
180 </li></ul></div></div></div><div id="method-addManagedListener" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-addManagedListener" rel="method-addManagedListener" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-addManagedListener" class="viewSource">view source</a></div><a name="addManagedListener"></a><a name="method-addManagedListener"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-addManagedListener" class="cls expand">addManagedListener</a>(
181 <span class="pre">Observable/Element item, Object/String ename, Function fn, Object scope, Object opt</span>)
182  : void</div><div class="description"><div class="short"><p>Adds listeners to any Observable object (or Element) which are automatically removed when this Component
183 is destroyed.
184
185 </div><div class="long"><p>Adds listeners to any Observable object (or Element) which are automatically removed when this Component
186 is destroyed.
187
188 <h3 class="pa">Parameters</h3><ul><li><span class="pre">item</span> : Observable/Element<div class="sub-desc"><p>The item to which to add a listener/listeners.</p>
189 </div></li><li><span class="pre">ename</span> : Object/String<div class="sub-desc"><p>The event name, or an object containing event name properties.</p>
190 </div></li><li><span class="pre">fn</span> : Function<div class="sub-desc"><p>Optional. If the <code>ename</code> parameter was an event name, this
191 is the handler function.</p>
192 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>Optional. If the <code>ename</code> parameter was an event name, this
193 is the scope (<code>this</code> reference) in which the handler function is executed.</p>
194 </div></li><li><span class="pre">opt</span> : Object<div class="sub-desc"><p>Optional. If the <code>ename</code> parameter was an event name, this
195 is the <a href="Ext.util.Observable.html#addListener" rel="Ext.util.Observable#addListener" class="docClass">addListener</a> options.</p>
196 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
197 </li></ul></div></div></div><div id="method-capture" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-capture" rel="method-capture" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-capture" class="viewSource">view source</a></div><a name="capture"></a><a name="method-capture"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-capture" class="cls expand">capture</a>(
198 <span class="pre">Observable o, Function fn, [Object scope]</span>)
199  : void</div><div class="description"><div class="short">Starts capture on the specified Observable. All events will be passed
200 to the supplied function with the event name + ...</div><div class="long"><p>Starts capture on the specified Observable. All events will be passed
201 to the supplied function with the event name + standard signature of the event
202 <b>before</b> the event is fired. If the supplied function returns false,
203 the event will not fire.</p>
204 <h3 class="pa">Parameters</h3><ul><li><span class="pre">o</span> : Observable<div class="sub-desc"><p>The Observable to capture events from.</p>
205 </div></li><li><span class="pre">fn</span> : Function<div class="sub-desc"><p>The function to call when an event is fired.</p>
206 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope (<code>this</code> reference) in which the function is executed. Defaults to the Observable firing the event.</p>
207 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
208 </li></ul></div></div></div><div id="method-clear" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-clear" rel="method-clear" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-clear" class="viewSource">view source</a></div><a name="clear"></a><a name="method-clear"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-clear" class="cls expand">clear</a> : void</div><div class="description"><div class="short"><p>Removes all items from the collection.  Fires the <a href="Ext.util.AbstractMixedCollection.html#clear" rel="Ext.util.AbstractMixedCollection#clear" class="docClass">clear</a> event when complete.</p>
209 </div><div class="long"><p>Removes all items from the collection.  Fires the <a href="Ext.util.AbstractMixedCollection.html#clear" rel="Ext.util.AbstractMixedCollection#clear" class="docClass">clear</a> event when complete.</p>
210 <h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
211 </li></ul></div></div></div><div id="method-clearListeners" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-clearListeners" rel="method-clearListeners" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-clearListeners" class="viewSource">view source</a></div><a name="clearListeners"></a><a name="method-clearListeners"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-clearListeners" class="cls expand">clearListeners</a> : void</div><div class="description"><div class="short"><p>Removes all listeners for this object including the managed listeners</p>
212 </div><div class="long"><p>Removes all listeners for this object including the managed listeners</p>
213 <h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
214 </li></ul></div></div></div><div id="method-clearManagedListeners" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-clearManagedListeners" rel="method-clearManagedListeners" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-clearManagedListeners" class="viewSource">view source</a></div><a name="clearManagedListeners"></a><a name="method-clearManagedListeners"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-clearManagedListeners" class="cls expand">clearManagedListeners</a> : void</div><div class="description"><div class="short"><p>Removes all managed listeners for this object.</p>
215 </div><div class="long"><p>Removes all managed listeners for this object.</p>
216 <h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
217 </li></ul></div></div></div><div id="method-clone" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-clone" rel="method-clone" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-clone" class="viewSource">view source</a></div><a name="clone"></a><a name="method-clone"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-clone" class="cls expand">clone</a> : MixedCollection</div><div class="description"><div class="short"><p>Creates a shallow copy of this collection</p>
218 </div><div class="long"><p>Creates a shallow copy of this collection</p>
219 <h3 class="pa">Returns</h3><ul><li><span class="pre">MixedCollection</span>&nbsp; &nbsp;
220 </li></ul></div></div></div><div id="method-collect" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-collect" rel="method-collect" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-collect" class="viewSource">view source</a></div><a name="collect"></a><a name="method-collect"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-collect" class="cls expand">collect</a>(
221 <span class="pre">String property, String root, [Boolean allowBlank]</span>)
222  : Array</div><div class="description"><div class="short"><p>Collects unique values of a particular property in this MixedCollection</p>
223 </div><div class="long"><p>Collects unique values of a particular property in this MixedCollection</p>
224 <h3 class="pa">Parameters</h3><ul><li><span class="pre">property</span> : String<div class="sub-desc"><p>The property to collect on</p>
225 </div></li><li><span class="pre">root</span> : String<div class="sub-desc"><p>Optional 'root' property to extract the first argument from. This is used mainly when
226 summing fields in records, where the fields are all stored inside the 'data' object</p>
227 </div></li><li><span class="pre">allowBlank</span> : Boolean<div class="sub-desc"><p>(optional) Pass true to allow null, undefined or empty string values</p>
228 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Array</span>&nbsp; &nbsp;<p>The unique values</p>
229 </li></ul></div></div></div><div id="method-contains" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-contains" rel="method-contains" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-contains" class="viewSource">view source</a></div><a name="contains"></a><a name="method-contains"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-contains" class="cls expand">contains</a>(
230 <span class="pre">Object o</span>)
231  : Boolean</div><div class="description"><div class="short"><p>Returns true if the collection contains the passed Object as an item.</p>
232 </div><div class="long"><p>Returns true if the collection contains the passed Object as an item.</p>
233 <h3 class="pa">Parameters</h3><ul><li><span class="pre">o</span> : Object<div class="sub-desc"><p>The Object to look for in the collection.</p>
234 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Boolean</span>&nbsp; &nbsp;<p>True if the collection contains the Object as an item.</p>
235 </li></ul></div></div></div><div id="method-containsKey" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-containsKey" rel="method-containsKey" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-containsKey" class="viewSource">view source</a></div><a name="containsKey"></a><a name="method-containsKey"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-containsKey" class="cls expand">containsKey</a>(
236 <span class="pre">String key</span>)
237  : Boolean</div><div class="description"><div class="short"><p>Returns true if the collection contains the passed Object as a key.</p>
238 </div><div class="long"><p>Returns true if the collection contains the passed Object as a key.</p>
239 <h3 class="pa">Parameters</h3><ul><li><span class="pre">key</span> : String<div class="sub-desc"><p>The key to look for in the collection.</p>
240 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Boolean</span>&nbsp; &nbsp;<p>True if the collection contains the Object as a key.</p>
241 </li></ul></div></div></div><div id="method-each" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-each" rel="method-each" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-each" class="viewSource">view source</a></div><a name="each"></a><a name="method-each"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-each" class="cls expand">each</a>(
242 <span class="pre">Function fn, [Object scope]</span>)
243  : void</div><div class="description"><div class="short">Executes the specified function once for every item in the collection, passing the following arguments:
244
245
246 item : Mixe...</div><div class="long"><p>Executes the specified function once for every item in the collection, passing the following arguments:</p>
247
248 <div class="mdetail-params"><ul>
249 <li><b>item</b> : Mixed<p class="sub-desc">The collection item</p></li>
250 <li><b>index</b> : Number<p class="sub-desc">The item's index</p></li>
251 <li><b>length</b> : Number<p class="sub-desc">The total number of items in the collection</p></li>
252 </ul></div>
253
254
255 <p>The function should return a boolean value. Returning false from the function will stop the iteration.</p>
256 <h3 class="pa">Parameters</h3><ul><li><span class="pre">fn</span> : Function<div class="sub-desc"><p>The function to execute for each item.</p>
257 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope (<code>this</code> reference) in which the function is executed. Defaults to the current item in the iteration.</p>
258 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
259 </li></ul></div></div></div><div id="method-eachKey" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-eachKey" rel="method-eachKey" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-eachKey" class="viewSource">view source</a></div><a name="eachKey"></a><a name="method-eachKey"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-eachKey" class="cls expand">eachKey</a>(
260 <span class="pre">Function fn, [Object scope]</span>)
261  : void</div><div class="description"><div class="short">Executes the specified function once for every key in the collection, passing each
262 key, and its associated item as th...</div><div class="long"><p>Executes the specified function once for every key in the collection, passing each
263 key, and its associated item as the first two parameters.</p>
264 <h3 class="pa">Parameters</h3><ul><li><span class="pre">fn</span> : Function<div class="sub-desc"><p>The function to execute for each item.</p>
265 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope (<code>this</code> reference) in which the function is executed. Defaults to the browser window.</p>
266 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
267 </li></ul></div></div></div><div id="method-enableBubble" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-enableBubble" rel="method-enableBubble" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-enableBubble" class="viewSource">view source</a></div><a name="enableBubble"></a><a name="method-enableBubble"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-enableBubble" class="cls expand">enableBubble</a>(
268 <span class="pre">String/Array events</span>)
269  : void</div><div class="description"><div class="short">Enables events fired by this Observable to bubble up an owner hierarchy by calling
270 this.getBubbleTarget() if present....</div><div class="long"><p>Enables events fired by this Observable to bubble up an owner hierarchy by calling
271 <code>this.getBubbleTarget()</code> if present. There is no implementation in the Observable base class.</p>
272
273
274 <p>This is commonly used by Ext.Components to bubble events to owner Containers. See <a href="Ext.Component.html#getBubbleTarget" rel="Ext.Component#getBubbleTarget" class="docClass">Ext.Component.getBubbleTarget</a>. The default
275 implementation in <a href="Ext.Component.html" rel="Ext.Component" class="docClass">Ext.Component</a> returns the Component's immediate owner. But if a known target is required, this can be overridden to
276 access the required target more quickly.</p>
277
278
279 <p>Example:</p>
280
281
282 <pre><code>Ext.override(Ext.form.field.Base, {
283 //  Add functionality to Field&#39;s initComponent to enable the change event to bubble
284 initComponent : Ext.Function.createSequence(Ext.form.field.Base.prototype.initComponent, function() {
285     this.enableBubble('change');
286 }),
287
288 //  We know that we want Field&#39;s events to bubble directly to the FormPanel.
289 getBubbleTarget : function() {
290     if (!this.formPanel) {
291         this.formPanel = this.findParentByType('form');
292     }
293     return this.formPanel;
294 }
295 });
296
297 var myForm = new Ext.formPanel({
298 title: 'User Details',
299 items: [{
300     ...
301 }],
302 listeners: {
303     change: function() {
304         // Title goes red if form has been modified.
305         myForm.header.setStyle('color', 'red');
306     }
307 }
308 });
309 </code></pre>
310
311 <h3 class="pa">Parameters</h3><ul><li><span class="pre">events</span> : String/Array<div class="sub-desc"><p>The event name to bubble, or an Array of event names.</p>
312 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
313 </li></ul></div></div></div><div id="method-filter" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-filter" rel="method-filter" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-filter" class="viewSource">view source</a></div><a name="filter"></a><a name="method-filter"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-filter" class="cls expand">filter</a>(
314 <span class="pre">Array/String property, String/RegExp value, [Boolean anyMatch], [Boolean caseSensitive]</span>)
315  : MixedCollection</div><div class="description"><div class="short">Filters the objects in this collection by a set of Filters, or by a single
316 property/value pair with optional paramete...</div><div class="long"><p>Filters the objects in this collection by a set of <a href="Ext.util.Filter.html" rel="Ext.util.Filter" class="docClass">Filter</a>s, or by a single
317 property/value pair with optional parameters for substring matching and case sensitivity. See
318 <a href="Ext.util.Filter.html" rel="Ext.util.Filter" class="docClass">Filter</a> for an example of using Filter objects (preferred). Alternatively,
319 MixedCollection can be easily filtered by property like this:</p>
320
321
322 <pre><code>//create a simple store with a few people defined
323 var people = new Ext.util.MixedCollection();
324 people.addAll([
325     {id: 1, age: 25, name: 'Ed'},
326     {id: 2, age: 24, name: 'Tommy'},
327     {id: 3, age: 24, name: 'Arne'},
328     {id: 4, age: 26, name: 'Aaron'}
329 ]);
330
331 //a new MixedCollection containing only the items where age == 24
332 var middleAged = people.filter('age', 24);
333 </code></pre>
334
335 <h3 class="pa">Parameters</h3><ul><li><span class="pre">property</span> : Array/String<div class="sub-desc"><p>A property on your objects, or an array of <a href="Ext.util.Filter.html" rel="Ext.util.Filter" class="docClass">Filter</a> objects</p>
336 </div></li><li><span class="pre">value</span> : String/RegExp<div class="sub-desc"><p>Either string that the property values
337 should start with or a RegExp to test against the property</p>
338 </div></li><li><span class="pre">anyMatch</span> : Boolean<div class="sub-desc"><p>(optional) True to match any part of the string, not just the beginning</p>
339 </div></li><li><span class="pre">caseSensitive</span> : Boolean<div class="sub-desc"><p>(optional) True for case sensitive comparison (defaults to False).</p>
340 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">MixedCollection</span>&nbsp; &nbsp;<p>The new filtered collection</p>
341 </li></ul></div></div></div><div id="method-filterBy" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-filterBy" rel="method-filterBy" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-filterBy" class="viewSource">view source</a></div><a name="filterBy"></a><a name="method-filterBy"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-filterBy" class="cls expand">filterBy</a>(
342 <span class="pre">Function fn, [Object scope]</span>)
343  : MixedCollection</div><div class="description"><div class="short">Filter by a function. Returns a new collection that has been filtered.
344 The passed function will be called with each o...</div><div class="long"><p>Filter by a function. Returns a <i>new</i> collection that has been filtered.
345 The passed function will be called with each object in the collection.
346 If the function returns true, the value is included otherwise it is filtered.</p>
347 <h3 class="pa">Parameters</h3><ul><li><span class="pre">fn</span> : Function<div class="sub-desc"><p>The function to be called, it will receive the args o (the object), k (the key)</p>
348 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope (<code>this</code> reference) in which the function is executed. Defaults to this MixedCollection.</p>
349 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">MixedCollection</span>&nbsp; &nbsp;<p>The new filtered collection</p>
350 </li></ul></div></div></div><div id="method-findBy" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-findBy" rel="method-findBy" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-findBy" class="viewSource">view source</a></div><a name="findBy"></a><a name="method-findBy"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-findBy" class="cls expand">findBy</a>(
351 <span class="pre">Function fn, [Object scope]</span>)
352  : Object</div><div class="description"><div class="short"><p>Returns the first item in the collection which elicits a true return value from the
353 passed selection function.</p>
354 </div><div class="long"><p>Returns the first item in the collection which elicits a true return value from the
355 passed selection function.</p>
356 <h3 class="pa">Parameters</h3><ul><li><span class="pre">fn</span> : Function<div class="sub-desc"><p>The selection function to execute for each item.</p>
357 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope (<code>this</code> reference) in which the function is executed. Defaults to the browser window.</p>
358 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>The first item in the collection which returned true from the selection function.</p>
359 </li></ul></div></div></div><div id="method-findIndex" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-findIndex" rel="method-findIndex" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-findIndex" class="viewSource">view source</a></div><a name="findIndex"></a><a name="method-findIndex"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-findIndex" class="cls expand">findIndex</a>(
360 <span class="pre">String property, String/RegExp value, [Number start], [Boolean anyMatch], [Boolean caseSensitive]</span>)
361  : Number</div><div class="description"><div class="short"><p>Finds the index of the first matching object in this collection by a specific property/value.</p>
362 </div><div class="long"><p>Finds the index of the first matching object in this collection by a specific property/value.</p>
363 <h3 class="pa">Parameters</h3><ul><li><span class="pre">property</span> : String<div class="sub-desc"><p>The name of a property on your objects.</p>
364 </div></li><li><span class="pre">value</span> : String/RegExp<div class="sub-desc"><p>A string that the property values
365 should start with or a RegExp to test against the property.</p>
366 </div></li><li><span class="pre">start</span> : Number<div class="sub-desc"><p>(optional) The index to start searching at (defaults to 0).</p>
367 </div></li><li><span class="pre">anyMatch</span> : Boolean<div class="sub-desc"><p>(optional) True to match any part of the string, not just the beginning.</p>
368 </div></li><li><span class="pre">caseSensitive</span> : Boolean<div class="sub-desc"><p>(optional) True for case sensitive comparison.</p>
369 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Number</span>&nbsp; &nbsp;<p>The matched index or -1</p>
370 </li></ul></div></div></div><div id="method-findIndexBy" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-findIndexBy" rel="method-findIndexBy" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-findIndexBy" class="viewSource">view source</a></div><a name="findIndexBy"></a><a name="method-findIndexBy"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-findIndexBy" class="cls expand">findIndexBy</a>(
371 <span class="pre">Function fn, [Object scope], [Number start]</span>)
372  : Number</div><div class="description"><div class="short">Find the index of the first matching object in this collection by a function.
373 If the function returns true it is cons...</div><div class="long"><p>Find the index of the first matching object in this collection by a function.
374 If the function returns <i>true</i> it is considered a match.</p>
375 <h3 class="pa">Parameters</h3><ul><li><span class="pre">fn</span> : Function<div class="sub-desc"><p>The function to be called, it will receive the args o (the object), k (the key).</p>
376 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope (<code>this</code> reference) in which the function is executed. Defaults to this MixedCollection.</p>
377 </div></li><li><span class="pre">start</span> : Number<div class="sub-desc"><p>(optional) The index to start searching at (defaults to 0).</p>
378 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Number</span>&nbsp; &nbsp;<p>The matched index or -1</p>
379 </li></ul></div></div></div><div id="method-fireEvent" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-fireEvent" rel="method-fireEvent" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-fireEvent" class="viewSource">view source</a></div><a name="fireEvent"></a><a name="method-fireEvent"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-fireEvent" class="cls expand">fireEvent</a>(
380 <span class="pre">String eventName, Object... args</span>)
381  : Boolean</div><div class="description"><div class="short">Fires the specified event with the passed parameters (minus the event name).
382
383
384 An event may be set to bubble up an Ob...</div><div class="long"><p>Fires the specified event with the passed parameters (minus the event name).</p>
385
386
387 <p>An event may be set to bubble up an Observable parent hierarchy (See <a href="Ext.Component.html#getBubbleTarget" rel="Ext.Component#getBubbleTarget" class="docClass">Ext.Component.getBubbleTarget</a>)
388 by calling <a href="Ext.util.AbstractMixedCollection.html#enableBubble" rel="Ext.util.AbstractMixedCollection#enableBubble" class="docClass">enableBubble</a>.</p>
389
390 <h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The name of the event to fire.</p>
391 </div></li><li><span class="pre">args</span> : Object...<div class="sub-desc"><p>Variable number of parameters are passed to handlers.</p>
392 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Boolean</span>&nbsp; &nbsp;<p>returns false if any of the handlers return false otherwise it returns true.</p>
393 </li></ul></div></div></div><div id="method-first" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-first" rel="method-first" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-first" class="viewSource">view source</a></div><a name="first"></a><a name="method-first"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-first" class="cls expand">first</a> : Object</div><div class="description"><div class="short"><p>Returns the first item in the collection.</p>
394 </div><div class="long"><p>Returns the first item in the collection.</p>
395 <h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>the first item in the collection..</p>
396 </li></ul></div></div></div><div id="method-get" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-get" rel="method-get" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-get" class="viewSource">view source</a></div><a name="get"></a><a name="method-get"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-get" class="cls expand">get</a>(
397 <span class="pre">String/Number key</span>)
398  : Object</div><div class="description"><div class="short">Returns the item associated with the passed key OR index.
399 Key has priority over index.  This is the equivalent
400 of cal...</div><div class="long"><p>Returns the item associated with the passed key OR index.
401 Key has priority over index.  This is the equivalent
402 of calling <a href="Ext.util.AbstractMixedCollection.html#key" rel="Ext.util.AbstractMixedCollection#key" class="docClass">key</a> first, then if nothing matched calling <a href="Ext.util.AbstractMixedCollection.html#getAt" rel="Ext.util.AbstractMixedCollection#getAt" class="docClass">getAt</a>.</p>
403 <h3 class="pa">Parameters</h3><ul><li><span class="pre">key</span> : String/Number<div class="sub-desc"><p>The key or index of the item.</p>
404 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>If the item is found, returns the item.  If the item was not found, returns <tt>undefined</tt>.
405 If an item was found, but is a Class, returns <tt>null</tt>.</p>
406 </li></ul></div></div></div><div id="method-getAt" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-getAt" rel="method-getAt" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-getAt" class="viewSource">view source</a></div><a name="getAt"></a><a name="method-getAt"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-getAt" class="cls expand">getAt</a>(
407 <span class="pre">Number index</span>)
408  : Object</div><div class="description"><div class="short"><p>Returns the item at the specified index.</p>
409 </div><div class="long"><p>Returns the item at the specified index.</p>
410 <h3 class="pa">Parameters</h3><ul><li><span class="pre">index</span> : Number<div class="sub-desc"><p>The index of the item.</p>
411 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>The item at the specified index.</p>
412 </li></ul></div></div></div><div id="method-getByKey" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-getByKey" rel="method-getByKey" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-getByKey" class="viewSource">view source</a></div><a name="getByKey"></a><a name="method-getByKey"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-getByKey" class="cls expand">getByKey</a>(
413 <span class="pre">String/Number key</span>)
414  : Object</div><div class="description"><div class="short"><p>Returns the item associated with the passed key.</p>
415 </div><div class="long"><p>Returns the item associated with the passed key.</p>
416 <h3 class="pa">Parameters</h3><ul><li><span class="pre">key</span> : String/Number<div class="sub-desc"><p>The key of the item.</p>
417 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>The item associated with the passed key.</p>
418 </li></ul></div></div></div><div id="method-getCount" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-getCount" rel="method-getCount" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-getCount" class="viewSource">view source</a></div><a name="getCount"></a><a name="method-getCount"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-getCount" class="cls expand">getCount</a> : Number</div><div class="description"><div class="short"><p>Returns the number of items in the collection.</p>
419 </div><div class="long"><p>Returns the number of items in the collection.</p>
420 <h3 class="pa">Returns</h3><ul><li><span class="pre">Number</span>&nbsp; &nbsp;<p>the number of items in the collection.</p>
421 </li></ul></div></div></div><div id="method-getKey" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-getKey" rel="method-getKey" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-getKey" class="viewSource">view source</a></div><a name="getKey"></a><a name="method-getKey"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-getKey" class="cls expand">getKey</a>(
422 <span class="pre">Object item</span>)
423  : Object</div><div class="description"><div class="short">MixedCollection has a generic way to fetch keys if you implement getKey.  The default implementation
424 simply returns i...</div><div class="long"><p>MixedCollection has a generic way to fetch keys if you implement getKey.  The default implementation
425 simply returns <b><code>item.id</code></b> but you can provide your own implementation
426 to return a different value as in the following examples:</p>
427
428 <pre><code>// normal way
429 var mc = new Ext.util.MixedCollection();
430 mc.add(someEl.dom.id, someEl);
431 mc.add(otherEl.dom.id, otherEl);
432 //and so on
433
434 // using getKey
435 var mc = new Ext.util.MixedCollection();
436 mc.getKey = function(el){
437    return el.dom.id;
438 };
439 mc.add(someEl);
440 mc.add(otherEl);
441
442 // or via the constructor
443 var mc = new Ext.util.MixedCollection(false, function(el){
444    return el.dom.id;
445 });
446 mc.add(someEl);
447 mc.add(otherEl);
448 </code></pre>
449
450 <h3 class="pa">Parameters</h3><ul><li><span class="pre">item</span> : Object<div class="sub-desc"><p>The item for which to find the key.</p>
451 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>The key for the passed item.</p>
452 </li></ul></div></div></div><div id="method-getRange" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-getRange" rel="method-getRange" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-getRange" class="viewSource">view source</a></div><a name="getRange"></a><a name="method-getRange"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-getRange" class="cls expand">getRange</a>(
453 <span class="pre">[Number startIndex], [Number endIndex]</span>)
454  : Array</div><div class="description"><div class="short"><p>Returns a range of items in this collection</p>
455 </div><div class="long"><p>Returns a range of items in this collection</p>
456 <h3 class="pa">Parameters</h3><ul><li><span class="pre">startIndex</span> : Number<div class="sub-desc"><p>(optional) The starting index. Defaults to 0.</p>
457 </div></li><li><span class="pre">endIndex</span> : Number<div class="sub-desc"><p>(optional) The ending index. Defaults to the last item.</p>
458 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Array</span>&nbsp; &nbsp;<p>An array of items</p>
459 </li></ul></div></div></div><div id="method-hasListener" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-hasListener" rel="method-hasListener" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-hasListener" class="viewSource">view source</a></div><a name="hasListener"></a><a name="method-hasListener"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-hasListener" class="cls expand">hasListener</a>(
460 <span class="pre">String eventName</span>)
461  : Boolean</div><div class="description"><div class="short"><p>Checks to see if this object has any listeners for a specified event</p>
462 </div><div class="long"><p>Checks to see if this object has any listeners for a specified event</p>
463 <h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The name of the event to check for</p>
464 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Boolean</span>&nbsp; &nbsp;<p>True if the event is being listened for, else false</p>
465 </li></ul></div></div></div><div id="method-indexOf" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-indexOf" rel="method-indexOf" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-indexOf" class="viewSource">view source</a></div><a name="indexOf"></a><a name="method-indexOf"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-indexOf" class="cls expand">indexOf</a>(
466 <span class="pre">Object o</span>)
467  : Number</div><div class="description"><div class="short"><p>Returns index within the collection of the passed Object.</p>
468 </div><div class="long"><p>Returns index within the collection of the passed Object.</p>
469 <h3 class="pa">Parameters</h3><ul><li><span class="pre">o</span> : Object<div class="sub-desc"><p>The item to find the index of.</p>
470 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Number</span>&nbsp; &nbsp;<p>index of the item. Returns -1 if not found.</p>
471 </li></ul></div></div></div><div id="method-indexOfKey" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-indexOfKey" rel="method-indexOfKey" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-indexOfKey" class="viewSource">view source</a></div><a name="indexOfKey"></a><a name="method-indexOfKey"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-indexOfKey" class="cls expand">indexOfKey</a>(
472 <span class="pre">String key</span>)
473  : Number</div><div class="description"><div class="short"><p>Returns index within the collection of the passed key.</p>
474 </div><div class="long"><p>Returns index within the collection of the passed key.</p>
475 <h3 class="pa">Parameters</h3><ul><li><span class="pre">key</span> : String<div class="sub-desc"><p>The key to find the index of.</p>
476 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Number</span>&nbsp; &nbsp;<p>index of the key.</p>
477 </li></ul></div></div></div><div id="method-insert" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-insert" rel="method-insert" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-insert" class="viewSource">view source</a></div><a name="insert"></a><a name="method-insert"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-insert" class="cls expand">insert</a>(
478 <span class="pre">Number index, String key, [Object o]</span>)
479  : Object</div><div class="description"><div class="short"><p>Inserts an item at the specified index in the collection. Fires the <a href="Ext.util.AbstractMixedCollection.html#add" rel="Ext.util.AbstractMixedCollection#add" class="docClass">add</a> event when complete.</p>
480 </div><div class="long"><p>Inserts an item at the specified index in the collection. Fires the <a href="Ext.util.AbstractMixedCollection.html#add" rel="Ext.util.AbstractMixedCollection#add" class="docClass">add</a> event when complete.</p>
481 <h3 class="pa">Parameters</h3><ul><li><span class="pre">index</span> : Number<div class="sub-desc"><p>The index to insert the item at.</p>
482 </div></li><li><span class="pre">key</span> : String<div class="sub-desc"><p>The key to associate with the new item, or the item itself.</p>
483 </div></li><li><span class="pre">o</span> : Object<div class="sub-desc"><p>(optional) If the second parameter was a key, the new item.</p>
484 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>The item inserted.</p>
485 </li></ul></div></div></div><div id="method-last" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-last" rel="method-last" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-last" class="viewSource">view source</a></div><a name="last"></a><a name="method-last"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-last" class="cls expand">last</a> : Object</div><div class="description"><div class="short"><p>Returns the last item in the collection.</p>
486 </div><div class="long"><p>Returns the last item in the collection.</p>
487 <h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>the last item in the collection..</p>
488 </li></ul></div></div></div><div id="method-observe" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-observe" rel="method-observe" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-observe" class="viewSource">view source</a></div><a name="observe"></a><a name="method-observe"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-observe" class="cls expand">observe</a>(
489 <span class="pre">Function c, Object listeners</span>)
490  : void</div><div class="description"><div class="short">Sets observability on the passed class constructor.
491
492 This makes any event fired on any instance of the passed class a...</div><div class="long"><p>Sets observability on the passed class constructor.</p>
493
494 <p>This makes any event fired on any instance of the passed class also fire a single event through
495 the <strong>class</strong> allowing for central handling of events on many instances at once.</p>
496
497 <p>Usage:</p>
498
499 <pre><code>Ext.util.Observable.observe(Ext.data.Connection);
500 Ext.data.Connection.on('beforerequest', function(con, options) {
501     console.log('Ajax request made to ' + options.url);
502 });
503 </code></pre>
504 <h3 class="pa">Parameters</h3><ul><li><span class="pre">c</span> : Function<div class="sub-desc"><p>The class constructor to make observable.</p>
505 </div></li><li><span class="pre">listeners</span> : Object<div class="sub-desc"><p>An object containing a series of listeners to add. See <a href="Ext.util.AbstractMixedCollection.html#addListener" rel="Ext.util.AbstractMixedCollection#addListener" class="docClass">addListener</a>.</p>
506 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
507 </li></ul></div></div></div><div id="method-on" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-on" rel="method-on" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-on" class="viewSource">view source</a></div><a name="on"></a><a name="method-on"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-on" class="cls expand">on</a>(
508 <span class="pre">String eventName, Function handler, [Object scope], [Object options]</span>)
509  : void</div><div class="description"><div class="short"><p>Appends an event handler to this object (shorthand for <a href="Ext.util.AbstractMixedCollection.html#addListener" rel="Ext.util.AbstractMixedCollection#addListener" class="docClass">addListener</a>.)</p>
510 </div><div class="long"><p>Appends an event handler to this object (shorthand for <a href="Ext.util.AbstractMixedCollection.html#addListener" rel="Ext.util.AbstractMixedCollection#addListener" class="docClass">addListener</a>.)</p>
511 <h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The type of event to listen for</p>
512 </div></li><li><span class="pre">handler</span> : Function<div class="sub-desc"><p>The method the event invokes</p>
513 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope (<code><b>this</b></code> reference) in which the handler function is executed.
514 <b>If omitted, defaults to the object which fired the event.</b></p>
515 </div></li><li><span class="pre">options</span> : Object<div class="sub-desc"><p>(optional) An object containing handler configuration.</p>
516 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
517 </li></ul></div></div></div><div id="method-relayEvents" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-relayEvents" rel="method-relayEvents" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-relayEvents" class="viewSource">view source</a></div><a name="relayEvents"></a><a name="method-relayEvents"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-relayEvents" class="cls expand">relayEvents</a>(
518 <span class="pre">Object origin, Array events, Object prefix</span>)
519  : void</div><div class="description"><div class="short"><p>Relays selected events from the specified Observable as if the events were fired by <code><b>this</b></code>.</p>
520 </div><div class="long"><p>Relays selected events from the specified Observable as if the events were fired by <code><b>this</b></code>.</p>
521 <h3 class="pa">Parameters</h3><ul><li><span class="pre">origin</span> : Object<div class="sub-desc"><p>The Observable whose events this object is to relay.</p>
522 </div></li><li><span class="pre">events</span> : Array<div class="sub-desc"><p>Array of event names to relay.</p>
523 </div></li><li><span class="pre">prefix</span> : Object<div class="sub-desc">
524 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
525 </li></ul></div></div></div><div id="method-releaseCapture" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-releaseCapture" rel="method-releaseCapture" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-releaseCapture" class="viewSource">view source</a></div><a name="releaseCapture"></a><a name="method-releaseCapture"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-releaseCapture" class="cls expand">releaseCapture</a>(
526 <span class="pre">Observable o</span>)
527  : void</div><div class="description"><div class="short"><p>Removes <b>all</b> added captures from the Observable.</p>
528 </div><div class="long"><p>Removes <b>all</b> added captures from the Observable.</p>
529 <h3 class="pa">Parameters</h3><ul><li><span class="pre">o</span> : Observable<div class="sub-desc"><p>The Observable to release</p>
530 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
531 </li></ul></div></div></div><div id="method-remove" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-remove" rel="method-remove" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-remove" class="viewSource">view source</a></div><a name="remove"></a><a name="method-remove"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-remove" class="cls expand">remove</a>(
532 <span class="pre">Object o</span>)
533  : Object</div><div class="description"><div class="short"><p>Remove an item from the collection.</p>
534 </div><div class="long"><p>Remove an item from the collection.</p>
535 <h3 class="pa">Parameters</h3><ul><li><span class="pre">o</span> : Object<div class="sub-desc"><p>The item to remove.</p>
536 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>The item removed or false if no item was removed.</p>
537 </li></ul></div></div></div><div id="method-removeAll" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-removeAll" rel="method-removeAll" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-removeAll" class="viewSource">view source</a></div><a name="removeAll"></a><a name="method-removeAll"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-removeAll" class="cls expand">removeAll</a>(
538 <span class="pre">Array items</span>)
539  : Ext.util.MixedCollection</div><div class="description"><div class="short"><p>Remove all items in the passed array from the collection.</p>
540 </div><div class="long"><p>Remove all items in the passed array from the collection.</p>
541 <h3 class="pa">Parameters</h3><ul><li><span class="pre">items</span> : Array<div class="sub-desc"><p>An array of items to be removed.</p>
542 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Ext.util.MixedCollection</span>&nbsp; &nbsp;<p>this object</p>
543 </li></ul></div></div></div><div id="method-removeAt" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-removeAt" rel="method-removeAt" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-removeAt" class="viewSource">view source</a></div><a name="removeAt"></a><a name="method-removeAt"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-removeAt" class="cls expand">removeAt</a>(
544 <span class="pre">Number index</span>)
545  : Object</div><div class="description"><div class="short"><p>Remove an item from a specified index in the collection. Fires the <a href="Ext.util.AbstractMixedCollection.html#remove" rel="Ext.util.AbstractMixedCollection#remove" class="docClass">remove</a> event when complete.</p>
546 </div><div class="long"><p>Remove an item from a specified index in the collection. Fires the <a href="Ext.util.AbstractMixedCollection.html#remove" rel="Ext.util.AbstractMixedCollection#remove" class="docClass">remove</a> event when complete.</p>
547 <h3 class="pa">Parameters</h3><ul><li><span class="pre">index</span> : Number<div class="sub-desc"><p>The index within the collection of the item to remove.</p>
548 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>The item removed or false if no item was removed.</p>
549 </li></ul></div></div></div><div id="method-removeAtKey" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-removeAtKey" rel="method-removeAtKey" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-removeAtKey" class="viewSource">view source</a></div><a name="removeAtKey"></a><a name="method-removeAtKey"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-removeAtKey" class="cls expand">removeAtKey</a>(
550 <span class="pre">String key</span>)
551  : Object</div><div class="description"><div class="short"><p>Removed an item associated with the passed key fom the collection.</p>
552 </div><div class="long"><p>Removed an item associated with the passed key fom the collection.</p>
553 <h3 class="pa">Parameters</h3><ul><li><span class="pre">key</span> : String<div class="sub-desc"><p>The key of the item to remove.</p>
554 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>The item removed or false if no item was removed.</p>
555 </li></ul></div></div></div><div id="method-removeListener" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-removeListener" rel="method-removeListener" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-removeListener" class="viewSource">view source</a></div><a name="removeListener"></a><a name="method-removeListener"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-removeListener" class="cls expand">removeListener</a>(
556 <span class="pre">String eventName, Function handler, [Object scope]</span>)
557  : void</div><div class="description"><div class="short"><p>Removes an event handler.</p>
558 </div><div class="long"><p>Removes an event handler.</p>
559 <h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The type of event the handler was associated with.</p>
560 </div></li><li><span class="pre">handler</span> : Function<div class="sub-desc"><p>The handler to remove. <b>This must be a reference to the function passed into the <a href="Ext.util.AbstractMixedCollection.html#addListener" rel="Ext.util.AbstractMixedCollection#addListener" class="docClass">addListener</a> call.</b></p>
561 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope originally specified for the handler.</p>
562 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
563 </li></ul></div></div></div><div id="method-removeManagedListener" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-removeManagedListener" rel="method-removeManagedListener" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-removeManagedListener" class="viewSource">view source</a></div><a name="removeManagedListener"></a><a name="method-removeManagedListener"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-removeManagedListener" class="cls expand">removeManagedListener</a>(
564 <span class="pre">Observable|Element item, Object|String ename, Function fn, Object scope</span>)
565  : void</div><div class="description"><div class="short"><p>Removes listeners that were added by the <a href="Ext.util.AbstractMixedCollection.html#mon" rel="Ext.util.AbstractMixedCollection#mon" class="docClass">mon</a> method.</p>
566 </div><div class="long"><p>Removes listeners that were added by the <a href="Ext.util.AbstractMixedCollection.html#mon" rel="Ext.util.AbstractMixedCollection#mon" class="docClass">mon</a> method.</p>
567 <h3 class="pa">Parameters</h3><ul><li><span class="pre">item</span> : Observable|Element<div class="sub-desc"><p>The item from which to remove a listener/listeners.</p>
568 </div></li><li><span class="pre">ename</span> : Object|String<div class="sub-desc"><p>The event name, or an object containing event name properties.</p>
569 </div></li><li><span class="pre">fn</span> : Function<div class="sub-desc"><p>Optional. If the <code>ename</code> parameter was an event name, this
570 is the handler function.</p>
571 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>Optional. If the <code>ename</code> parameter was an event name, this
572 is the scope (<code>this</code> reference) in which the handler function is executed.</p>
573 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
574 </li></ul></div></div></div><div id="method-replace" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-replace" rel="method-replace" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-replace" class="viewSource">view source</a></div><a name="replace"></a><a name="method-replace"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-replace" class="cls expand">replace</a>(
575 <span class="pre">String key, [Object o]</span>)
576  : Object</div><div class="description"><div class="short"><p>Replaces an item in the collection. Fires the <a href="Ext.util.AbstractMixedCollection.html#replace" rel="Ext.util.AbstractMixedCollection#replace" class="docClass">replace</a> event when complete.</p>
577 </div><div class="long"><p>Replaces an item in the collection. Fires the <a href="Ext.util.AbstractMixedCollection.html#replace" rel="Ext.util.AbstractMixedCollection#replace" class="docClass">replace</a> event when complete.</p>
578 <h3 class="pa">Parameters</h3><ul><li><span class="pre">key</span> : String<div class="sub-desc"><p>The key associated with the item to replace, or the replacement item.</p>
579
580
581 <p>If you supplied a <a href="Ext.util.AbstractMixedCollection.html#getKey" rel="Ext.util.AbstractMixedCollection#getKey" class="docClass">getKey</a> implementation for this MixedCollection, or if the key
582 of your stored items is in a property called <tt><b>id</b></tt>, then the MixedCollection
583 will be able to <i>derive</i> the key of the replacement item. If you want to replace an item
584 with one having the same key value, then just pass the replacement item in this parameter.</p>
585
586 </div></li><li><span class="pre">o</span> : Object<div class="sub-desc"><p>{Object} o (optional) If the first parameter passed was a key, the item to associate
587 with that key.</p>
588 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Object</span>&nbsp; &nbsp;<p>The new item.</p>
589 </li></ul></div></div></div><div id="method-resumeEvents" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-resumeEvents" rel="method-resumeEvents" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-resumeEvents" class="viewSource">view source</a></div><a name="resumeEvents"></a><a name="method-resumeEvents"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-resumeEvents" class="cls expand">resumeEvents</a> : void</div><div class="description"><div class="short">Resume firing events. (see suspendEvents)
590 If events were suspended using the queueSuspended parameter, then all
591 event...</div><div class="long"><p>Resume firing events. (see <a href="Ext.util.AbstractMixedCollection.html#suspendEvents" rel="Ext.util.AbstractMixedCollection#suspendEvents" class="docClass">suspendEvents</a>)
592 If events were suspended using the <code><b>queueSuspended</b></code> parameter, then all
593 events fired during event suspension will be sent to any listeners now.</p>
594 <h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
595 </li></ul></div></div></div><div id="method-sum" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#method-sum" rel="method-sum" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-method-sum" class="viewSource">view source</a></div><a name="sum"></a><a name="method-sum"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-sum" class="cls expand">sum</a>(
596 <span class="pre">String property, String root, [Number start], [Number end]</span>)
597  : Number</div><div class="description"><div class="short"><p>Collects all of the values of the given property and returns their sum</p>
598 </div><div class="long"><p>Collects all of the values of the given property and returns their sum</p>
599 <h3 class="pa">Parameters</h3><ul><li><span class="pre">property</span> : String<div class="sub-desc"><p>The property to sum by</p>
600 </div></li><li><span class="pre">root</span> : String<div class="sub-desc"><p>Optional 'root' property to extract the first argument from. This is used mainly when
601 summing fields in records, where the fields are all stored inside the 'data' object</p>
602 </div></li><li><span class="pre">start</span> : Number<div class="sub-desc"><p>(optional) The record index to start at (defaults to <tt>0</tt>)</p>
603 </div></li><li><span class="pre">end</span> : Number<div class="sub-desc"><p>(optional) The record index to end at (defaults to <tt>-1</tt>)</p>
604 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Number</span>&nbsp; &nbsp;<p>The total</p>
605 </li></ul></div></div></div><div id="method-suspendEvents" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-suspendEvents" rel="method-suspendEvents" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-suspendEvents" class="viewSource">view source</a></div><a name="suspendEvents"></a><a name="method-suspendEvents"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-suspendEvents" class="cls expand">suspendEvents</a>(
606 <span class="pre">Boolean queueSuspended</span>)
607  : void</div><div class="description"><div class="short"><p>Suspend the firing of all events. (see <a href="Ext.util.AbstractMixedCollection.html#resumeEvents" rel="Ext.util.AbstractMixedCollection#resumeEvents" class="docClass">resumeEvents</a>)</p>
608 </div><div class="long"><p>Suspend the firing of all events. (see <a href="Ext.util.AbstractMixedCollection.html#resumeEvents" rel="Ext.util.AbstractMixedCollection#resumeEvents" class="docClass">resumeEvents</a>)</p>
609 <h3 class="pa">Parameters</h3><ul><li><span class="pre">queueSuspended</span> : Boolean<div class="sub-desc"><p>Pass as true to queue up suspended events to be fired
610 after the <a href="Ext.util.AbstractMixedCollection.html#resumeEvents" rel="Ext.util.AbstractMixedCollection#resumeEvents" class="docClass">resumeEvents</a> call instead of discarding all suspended events;</p>
611 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
612 </li></ul></div></div></div><div id="method-un" class="member inherited"><a href="Ext.util.AbstractMixedCollection.html#method-un" rel="method-un" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-un" class="viewSource">view source</a></div><a name="un"></a><a name="method-un"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="method-un" class="cls expand">un</a>(
613 <span class="pre">String eventName, Function handler, [Object scope]</span>)
614  : void</div><div class="description"><div class="short"><p>Removes an event handler (shorthand for <a href="Ext.util.AbstractMixedCollection.html#removeListener" rel="Ext.util.AbstractMixedCollection#removeListener" class="docClass">removeListener</a>.)</p>
615 </div><div class="long"><p>Removes an event handler (shorthand for <a href="Ext.util.AbstractMixedCollection.html#removeListener" rel="Ext.util.AbstractMixedCollection#removeListener" class="docClass">removeListener</a>.)</p>
616 <h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The type of event the handler was associated with.</p>
617 </div></li><li><span class="pre">handler</span> : Function<div class="sub-desc"><p>The handler to remove. <b>This must be a reference to the function passed into the <a href="Ext.util.AbstractMixedCollection.html#addListener" rel="Ext.util.AbstractMixedCollection#addListener" class="docClass">addListener</a> call.</b></p>
618 </div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope originally specified for the handler.</p>
619 </div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
620 </li></ul></div></div></div></div><div class="m-events"><a name="events"></a><div class="definedBy">Defined By</div><h3 class="evt p">Events</h3><div id="event-add" class="member f ni"><a href="Ext.util.AbstractMixedCollection.html#event-add" rel="event-add" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-event-add" class="viewSource">view source</a></div><a name="add"></a><a name="event-add"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="event-add" class="cls expand">add</a>(
621 <span class="pre">Number index, Object o, String key</span>)
622 </div><div class="description"><div class="short"><p>Fires when an item is added to the collection.</p>
623 </div><div class="long"><p>Fires when an item is added to the collection.</p>
624 <h3 class="pa">Parameters</h3><ul><li><span class="pre">index</span> : Number<div class="sub-desc"><p>The index at which the item was added.</p>
625 </div></li><li><span class="pre">o</span> : Object<div class="sub-desc"><p>The item added.</p>
626 </div></li><li><span class="pre">key</span> : String<div class="sub-desc"><p>The key associated with the added item.</p>
627 </div></li></ul></div></div></div><div id="event-clear" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#event-clear" rel="event-clear" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-event-clear" class="viewSource">view source</a></div><a name="clear"></a><a name="event-clear"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="event-clear" class="cls expand">clear</a></div><div class="description"><div class="short"><p>Fires when the collection is cleared.</p>
628 </div><div class="long"><p>Fires when the collection is cleared.</p>
629 </div></div></div><div id="event-remove" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#event-remove" rel="event-remove" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-event-remove" class="viewSource">view source</a></div><a name="remove"></a><a name="event-remove"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="event-remove" class="cls expand">remove</a>(
630 <span class="pre">Object o, [String key]</span>)
631 </div><div class="description"><div class="short"><p>Fires when an item is removed from the collection.</p>
632 </div><div class="long"><p>Fires when an item is removed from the collection.</p>
633 <h3 class="pa">Parameters</h3><ul><li><span class="pre">o</span> : Object<div class="sub-desc"><p>The item being removed.</p>
634 </div></li><li><span class="pre">key</span> : String<div class="sub-desc"><p>(optional) The key associated with the removed item.</p>
635 </div></li></ul></div></div></div><div id="event-replace" class="member ni"><a href="Ext.util.AbstractMixedCollection.html#event-replace" rel="event-replace" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.AbstractMixedCollection.html" class="definedIn docClass">Ext.util.AbstractMixedCollection</a><br/><a href="../source/AbstractMixedCollection.html#Ext-util.AbstractMixedCollection-event-replace" class="viewSource">view source</a></div><a name="replace"></a><a name="event-replace"></a><a href="Ext.util.AbstractMixedCollection.html#" rel="event-replace" class="cls expand">replace</a>(
636 <span class="pre">String key, Object old, Object new</span>)
637 </div><div class="description"><div class="short"><p>Fires when an item is replaced in the collection.</p>
638 </div><div class="long"><p>Fires when an item is replaced in the collection.</p>
639 <h3 class="pa">Parameters</h3><ul><li><span class="pre">key</span> : String<div class="sub-desc"><p>he key associated with the new added.</p>
640 </div></li><li><span class="pre">old</span> : Object<div class="sub-desc"><p>The item being replaced.</p>
641 </div></li><li><span class="pre">new</span> : Object<div class="sub-desc"><p>The new item.</p>
642 </div></li></ul></div></div></div></div></div></div></div><div id="pageContent"></div></div></div></div></body></html>