-});
-
-//a new MixedCollection with the 3 names longer than 4 characters
-var longNames = allNames.filter(longNameFilter);
-
-//a new MixedCollection with the 2 people of age 24:
-var youngFolk = allNames.filter(ageFilter);
-</code></pre>
- * @constructor
- * @param {Object} config Config object
+ </script>
+</head>
+<body onload="prettyPrint(); highlight();">
+ <pre class="prettyprint lang-js"><span id='Ext-util-Filter'>/**
+</span> * Represents a filter that can be applied to a {@link Ext.util.MixedCollection MixedCollection}. Can either simply
+ * filter on a property/value pair or pass in a filter function with custom logic. Filters are always used in the
+ * context of MixedCollections, though {@link Ext.data.Store Store}s frequently create them when filtering and searching
+ * on their records. Example usage:
+ *
+ * //set up a fictional MixedCollection containing a few people to filter on
+ * var allNames = new Ext.util.MixedCollection();
+ * allNames.addAll([
+ * {id: 1, name: 'Ed', age: 25},
+ * {id: 2, name: 'Jamie', age: 37},
+ * {id: 3, name: 'Abe', age: 32},
+ * {id: 4, name: 'Aaron', age: 26},
+ * {id: 5, name: 'David', age: 32}
+ * ]);
+ *
+ * var ageFilter = new Ext.util.Filter({
+ * property: 'age',
+ * value : 32
+ * });
+ *
+ * var longNameFilter = new Ext.util.Filter({
+ * filterFn: function(item) {
+ * return item.name.length > 4;
+ * }
+ * });
+ *
+ * //a new MixedCollection with the 3 names longer than 4 characters
+ * var longNames = allNames.filter(longNameFilter);
+ *
+ * //a new MixedCollection with the 2 people of age 24:
+ * var youngFolk = allNames.filter(ageFilter);
+ *