{ "type": "class",
  "qname": "mx.collections.Grouping",
  "baseClassname": ""
  ,
    "description": "The Grouping class defines the fields in the data provider of the AdvancedDataGrid control used to group data. You use this class to create groups when the input data to the AdvancedDataGrid control has a flat structure.  <p>To populate the AdvancedDataGrid control with grouped data, you create an instance of the GroupingCollection class from your flat data, and then pass that GroupingCollection instance to the data provider of the AdvancedDataGrid control. To specify the grouping fields of your flat data, you pass a Grouping instance to the <code>GroupingCollection.grouping</code> property. The Grouping instance contains an Array of GroupingField instances, one per grouping field. </p>  <p>The following example uses the Grouping class to define two grouping fields: Region and Territory.</p>  <pre>\\n &lt;mx:AdvancedDataGrid id=&quot;myADG&quot;\\n &lt;mx:dataProvider&gt;\\n &lt;mx:GroupingCollection id=&quot;gc&quot; source=&quot;{dpFlat}&quot;&gt;\\n &lt;mx:grouping&gt;\\n &lt;mx:Grouping&gt;\\n &lt;mx:GroupingField name=&quot;Region&quot;/&gt;\\n &lt;mx:GroupingField name=&quot;Territory&quot;/&gt;\\n &lt;/mx:Grouping&gt;\\n &lt;/mx:grouping&gt;\\n &lt;/mx:GroupingCollection&gt;\\n &lt;/mx:dataProvider&gt;\\n \\n &lt;mx:columns&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Region&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory_Rep&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Estimate&quot;/&gt;\\n &lt;/mx:columns&gt;\\n &lt;/mx:AdvancedDataGrid&gt;\\n </pre>   The <code>&lt;mx.Grouping&gt;</code> tag defines the following tag attributes:</p>  <pre>\\n &lt;mx:Grouping\\n <b>Properties </b>\\n compareFunction=&quot;<i>No default</i>&quot;\\n fields=&quot;null&quot;\\n groupingObjectFunction=&quot;<i>No default</i>&quot;\\n label=&quot;GroupLabel&quot;\\n /&gt;\\n </pre>",
  "tags": [
  {  "tagName": "see",
         "values": ["mx.controls.AdvancedDataGrid", "mx.collections.GroupingCollection", "mx.collections.GroupingField"]},
      {  "tagName": "mxml",
         "values": []},
      {  "tagName": "playerversion",
         "values": ["Flash 9", "AIR 1.1"]},
      {  "tagName": "productversion",
         "values": ["Flex 3"]},
      {  "tagName": "langversion",
         "values": ["3.0"]},
      {  "tagName": "royalesuppresspublicvarwarning",
         "values": []}  ],
  "members": [
  { "type": "method",
        "qname": "mx.collections.Grouping",
        "namespace": "",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Constructor.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "void",
          "params": []}
      ,
      { "type": "field",
        "qname": "label",
        "return": "String",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "The name of the field added to the flat data to create the hierarchy. The value of the top nodes (nodes representing the group fields) in every group will be represented by this property. Use this property to specify a different name.",
        "tags": [
        {  "tagName": "default",
               "values": ["GroupLabel"]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "Function",
        "qname": "compareFunction",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "The method used to compare items when sorting. If you specify this property, Flex ignores any <code>compareFunction</code> properties that you specify in the SortField objects that you use in this class.  <p>The compare function must have the following signature:</p> <pre>\\n function [name](a:Object, b:Object, fields:Array=null):int</pre>  <p>This function must return the following:</p> <ul> <li>-1, if <code>a</code> should appear before <code>b</code> in the sorted sequence.</li> <li>0, if <code>a</code> equals <code>b</code>.</li> <li>1, if <code>a</code> should appear after <code>b</code> in the sorted sequence.</li> </ul>  <p>To return to the internal comparison function, set this value to <code>null</code>.</p>  <p>The <code>fields</code> Array specifies the object fields to compare. Typically, the algorithm will compare properties until the field list is exhausted or a non-zero value can be returned. For example:</p>  <pre>\\n function myCompare(a:Object, b:Object, fields:Array=null):int\\n {\\n var result:int = 0;\\n var i:int = 0;\\n var propList:Array = fields ? fields : internalPropList;\\n var len:int = propList.length;\\n var propName:String;\\n while (result == 0 &amp;&amp; (i &lt; len))\\n {\\n propName = propList[i];\\n result = compareValues(a[propName], b[propName]);\\n i++;\\n }\\n return result;\\n }\\n \\n function compareValues(a:Object, b:Object):int\\n {\\n if (a == null &amp;&amp; b == null)\\n return 0;\\n \\n if (a == null)\\n return 1;\\n \\n if (b == null)\\n return -1;\\n \\n if (a &lt; b)\\n return -1;\\n \\n if (a &gt; b)\\n return 1;\\n \\n return 0;\\n }</pre>  <p>The default value is an internal compare function that can perform a string, numeric, or date comparison in ascending or descending order, with case-sensitive or case-insensitive string comparisons. Specify your own function only if you need a custom comparison algorithm. This is normally only the case if a calculated field is used in a display.</p>  <p>Alternatively, you can specify separate compare functions for each sort field by using the SortField class <code>compare</code> property. This way you can use the default comparison for some fields and a custom comparison for others.</p>",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "Array",
        "qname": "fields",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "An Array of GroupingField objects that specifies the fields used to group the data. The order of the GroupingField objects in the Array determines field priority order when sorting.",
        "tags": [
        {  "tagName": "default",
               "values": ["null"]},
            {  "tagName": "see",
               "values": ["GroupingField"]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "field",
        "qname": "groupingObjectFunction",
        "return": "Function",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "A callback function to run on each group node to determine the grouping object. By default, a new Object will be created for group nodes.  <p>You can supply a <code>groupingObjectFunction</code> that provides the appropriate Object for group nodes.</p>  <p>The method signature is:</p> <pre>\\n myGroupObjectFunction(label:String):Object</pre>  <p>Where <code>label</code> contains the value that will be shown for that group node. The function returns an Object which will be used for group nodes. </p>  For example, a <code>groupingObjectFunction</code> which returns an Object containing a &quot;name&quot; property with value as &quot;Bob&quot; can be written as - <pre>\\n private function groupObjFunction(label:String):Object\\n {\\n var obj:Object = {};\\n obj.name = &quot;Bob&quot;;\\n \\n return obj;\\n }\\n </pre>",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]}]
  }
