Upgrade to ExtJS 4.0.2 - Released 06/09/2011
[extjs.git] / docs / source / ComponentQuery.html
index 14c7c56..5742159 100644 (file)
   <pre class="prettyprint lang-js"><span id='Ext-ComponentQuery'>/**
 </span> * @class Ext.ComponentQuery
  * @extends Object
+ * @singleton
  *
  * Provides searching of Components within Ext.ComponentManager (globally) or a specific
  * Ext.container.Container on the document with a similar syntax to a CSS selector.
  *
  * Components can be retrieved by using their {@link Ext.Component xtype} with an optional . prefix
-&lt;ul&gt;
-    &lt;li&gt;component or .component&lt;/li&gt;
-    &lt;li&gt;gridpanel or .gridpanel&lt;/li&gt;
-&lt;/ul&gt;
+ *
+ * - `component` or `.component`
+ * - `gridpanel` or `.gridpanel`
  *
  * An itemId or id must be prefixed with a #
-&lt;ul&gt;
-    &lt;li&gt;#myContainer&lt;/li&gt;
-&lt;/ul&gt;
  *
+ * - `#myContainer`
  *
  * Attributes must be wrapped in brackets
-&lt;ul&gt;
-    &lt;li&gt;component[autoScroll]&lt;/li&gt;
-    &lt;li&gt;panel[title=&quot;Test&quot;]&lt;/li&gt;
-&lt;/ul&gt;
  *
- * Member expressions from candidate Components may be tested. If the expression returns a &lt;i&gt;truthy&lt;/i&gt; value,
- * the candidate Component will be included in the query:&lt;pre&gt;&lt;code&gt;
-var disabledFields = myFormPanel.query(&quot;{isDisabled()}&quot;);
-&lt;/code&gt;&lt;/pre&gt;
+ * - `component[autoScroll]`
+ * - `panel[title=&quot;Test&quot;]`
+ *
+ * Member expressions from candidate Components may be tested. If the expression returns a *truthy* value,
+ * the candidate Component will be included in the query:
+ *
+ *     var disabledFields = myFormPanel.query(&quot;{isDisabled()}&quot;);
+ *
+ * Pseudo classes may be used to filter results in the same way as in {@link Ext.DomQuery DomQuery}:
+ *
+ *     // Function receives array and returns a filtered array.
+ *     Ext.ComponentQuery.pseudos.invalid = function(items) {
+ *         var i = 0, l = items.length, c, result = [];
+ *         for (; i &lt; l; i++) {
+ *             if (!(c = items[i]).isValid()) {
+ *                 result.push(c);
+ *             }
+ *         }
+ *         return result;
+ *     };
+ *      
+ *     var invalidFields = myFormPanel.query('field:invalid');
+ *     if (invalidFields.length) {
+ *         invalidFields[0].getEl().scrollIntoView(myFormPanel.body);
+ *         for (var i = 0, l = invalidFields.length; i &lt; l; i++) {
+ *             invalidFields[i].getEl().frame(&quot;red&quot;);
+ *         }
+ *     }
+ *
+ * Default pseudos include:
  *
- * Pseudo classes may be used to filter results in the same way as in {@link Ext.DomQuery DomQuery}:&lt;code&gt;&lt;pre&gt;
-// Function receives array and returns a filtered array.
-Ext.ComponentQuery.pseudos.invalid = function(items) {
-    var i = 0, l = items.length, c, result = [];
-    for (; i &lt; l; i++) {
-        if (!(c = items[i]).isValid()) {
-            result.push(c);
-        }
-    }
-    return result;
-};
-
-var invalidFields = myFormPanel.query('field:invalid');
-if (invalidFields.length) {
-    invalidFields[0].getEl().scrollIntoView(myFormPanel.body);
-    for (var i = 0, l = invalidFields.length; i &lt; l; i++) {
-        invalidFields[i].getEl().frame(&quot;red&quot;);
-    }
-}
-&lt;/pre&gt;&lt;/code&gt;
- * &lt;p&gt;
- * Default pseudos include:&lt;br /&gt;
  * - not
- * &lt;/p&gt;
  *
  * Queries return an array of components.
  * Here are some example queries.
-&lt;pre&gt;&lt;code&gt;
-    // retrieve all Ext.Panels in the document by xtype
-    var panelsArray = Ext.ComponentQuery.query('panel');
-
-    // retrieve all Ext.Panels within the container with an id myCt
-    var panelsWithinmyCt = Ext.ComponentQuery.query('#myCt panel');
-
-    // retrieve all direct children which are Ext.Panels within myCt
-    var directChildPanel = Ext.ComponentQuery.query('#myCt &gt; panel');
-
-    // retrieve all gridpanels and listviews
-    var gridsAndLists = Ext.ComponentQuery.query('gridpanel, listview');
-&lt;/code&gt;&lt;/pre&gt;
-
-For easy access to queries based from a particular Container see the {@link Ext.container.Container#query},
-{@link Ext.container.Container#down} and {@link Ext.container.Container#child} methods. Also see
-{@link Ext.Component#up}.
- * @singleton
+ *
+ *     // retrieve all Ext.Panels in the document by xtype
+ *     var panelsArray = Ext.ComponentQuery.query('panel');
+ *
+ *     // retrieve all Ext.Panels within the container with an id myCt
+ *     var panelsWithinmyCt = Ext.ComponentQuery.query('#myCt panel');
+ *
+ *     // retrieve all direct children which are Ext.Panels within myCt
+ *     var directChildPanel = Ext.ComponentQuery.query('#myCt &gt; panel');
+ *
+ *     // retrieve all grids and trees
+ *     var gridsAndTrees = Ext.ComponentQuery.query('gridpanel, treepanel');
+ *
+ * For easy access to queries based from a particular Container see the {@link Ext.container.Container#query},
+ * {@link Ext.container.Container#down} and {@link Ext.container.Container#child} methods. Also see
+ * {@link Ext.Component#up}.
  */
 Ext.define('Ext.ComponentQuery', {
     singleton: true,
@@ -368,15 +363,20 @@ Ext.define('Ext.ComponentQuery', {
         },
 
 <span id='Ext-ComponentQuery-method-query'>        /**
-</span>         * &lt;p&gt;Returns an array of matched Components from within the passed root object.&lt;/p&gt;
-         * &lt;p&gt;This method filters returned Components in a similar way to how CSS selector based DOM
-         * queries work using a textual selector string.&lt;/p&gt;
-         * &lt;p&gt;See class summary for details.&lt;/p&gt;
-         * @param selector The selector string to filter returned Components
-         * @param root &lt;p&gt;The Container within which to perform the query. If omitted, all Components
-         * within the document are included in the search.&lt;/p&gt;
-         * &lt;p&gt;This parameter may also be an array of Components to filter according to the selector.&lt;/p&gt;
-         * @returns {Array} The matched Components.
+</span>         * Returns an array of matched Components from within the passed root object.
+         *
+         * This method filters returned Components in a similar way to how CSS selector based DOM
+         * queries work using a textual selector string.
+         *
+         * See class summary for details.
+         *
+         * @param {String} selector The selector string to filter returned Components
+         * @param {Ext.container.Container} root The Container within which to perform the query.
+         * If omitted, all Components within the document are included in the search.
+         * 
+         * This parameter may also be an array of Components to filter according to the selector.&lt;/p&gt;
+         * @returns {[Ext.Component]} The matched Components.
+         * 
          * @member Ext.ComponentQuery
          */
         query: function(selector, root) {
@@ -415,8 +415,8 @@ Ext.define('Ext.ComponentQuery', {
 
 <span id='Ext-ComponentQuery-method-is'>        /**
 </span>         * Tests whether the passed Component matches the selector string.
-         * @param component The Component to test
-         * @param selector The selector string to test against.
+         * @param {Ext.Component} component The Component to test
+         * @param {String} selector The selector string to test against.
          * @return {Boolean} True if the Component matches the selector.
          * @member Ext.ComponentQuery
          */