{ "type": "class",
  "qname": "spark.collections.SortField",
  "baseClassname": "mx.collections.SortField"
  ,
    "description": "Provides the sorting information required to establish a sort on a field or property in a collection view.  The SortField class is meant to be used with the Sort class.  Typically the sort is defined for collections of complex items, that is items in which the sort is performed on properties of those objects. As in the following example:  <pre><code>\\n var col:ICollectionView = new ArrayCollection();\\n col.addItem({first:&quot;Anders&quot;, last:&quot;Dickerson&quot;});\\n var sort:Sort = new Sort();\\n var sortfield:SortField = new SortField(&quot;first&quot;, true);\\n sortfield.setStyle(&quot;locale&quot;, &quot;en-US&quot;);\\n sort.fields = [sortfield];\\n col.sort = sort;\\n </code></pre>  There are situations in which the collection contains simple items, like <code>String</code>, <code>Date</code>, <code>Boolean</code>, etc. In this case, sorting should be applied to the simple type directly. When constructing a sort for this situation only a single sort field is required and should not have a <code>name</code> specified. For example:  <pre><code>\\n var col:ICollectionView = new ArrayCollection();\\n col.addItem(&quot;California&quot;);\\n col.addItem(&quot;Arizona&quot;);\\n var sort:Sort = new Sort();\\n var sortfield:SortField = new SortField(null, true);\\n sortfield.setStyle(&quot;locale&quot;, &quot;en-US&quot;);\\n sort.fields = [sortfield];\\n col.sort = sort;\\n </code></pre>  <p>The default comparison provided by the <code>SortField</code> class provides correct language specific sorting for strings. The language is selected by the setting the locale style on an instance of the class in one of the following ways: </p> <ul> <li> By using the class in an MXML declaration and inheriting the locale from the document that contains the declaration. </li> Example: <pre>\\n &lt;fx:Declarations&gt; <br>\\n &lt;s:SortField id=&quot;sf&quot; /&gt; <br>\\n &lt;/fx:Declarations&gt;\\n </pre> <li> By using an MXML declaration and specifying the locale value in the list of assignments. </li> Example: <pre>\\n &lt;fx:Declarations&gt; <br>\\n &lt;s:SortField id=&quot;sf_SimplifiedChinese&quot; locale=&quot;zh-Hans-CN&quot; /&gt; <br>\\n &lt;/fx:Declarations&gt;\\n </pre> <li> Calling the <code>setStyle</code> method, e.g. <code>sf.setStyle(&quot;locale&quot;, &quot;zh-Hans-CN&quot;)</code> </li> <li> Inheriting the style from a <code>UIComponent</code> by calling the UIComponent's <code>addStyleClient()</code> method. </li> </ul>  Note: to prevent problems like <a href=&quot;https://issues.apache.org/jira/browse/FLEX-34853&quot;>FLEX-34853</a> it is recommended to use SortField instances as immutable objects (by not changing their state).   <p>The <code>&lt;s:SortField&gt;</code> tag has the following attributes:</p>  <pre>\\n &lt;s:SortField\\n <b>Properties</b>\\n compareFunction=&quot;<em>Internal compare function</em>&quot;\\n descending=&quot;false&quot;\\n name=&quot;null&quot;\\n numeric=&quot;null&quot;\\n /&gt;\\n </pre>",
  "tags": [
  {  "tagName": "includeExample",
         "values": ["examples/SortExample1.mxml", "examples/SortExample2.mxml"]},
      {  "tagName": "see",
         "values": ["mx.collections.ICollectionView", "spark.collections.Sort"]},
      {  "tagName": "mxml",
         "values": []},
      {  "tagName": "playerversion",
         "values": ["Flash 10.1", "AIR 2.5"]},
      {  "tagName": "productversion",
         "values": ["Flex 4.5"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "accessor",
        "access": "read-write",
        "return": "Object",
        "qname": "styleName",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {}},
      { "type": "method",
        "qname": "spark.collections.SortField",
        "namespace": "",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Constructor.  comparison. If the object is a simple type, pass <code>null</code>. descending order. numbers, instead of alphabetically. default compare functions to use. objects based on this SortField.",
        "tags": [
        {  "tagName": "param",
               "values": ["name The name of the property that this field uses for", "descending Tells the comparator whether to arrange items in", "numeric Tells the comparator whether to compare sort items as", "sortCompareType Gives an indication to SortField which of the", "customCompareFunction Use a custom function to compare the"]},
            {  "tagName": "playerversion",
               "values": ["Flash 10.1", "AIR 2.5"]},
            {  "tagName": "productversion",
               "values": ["Flex 4.5"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "",
          "params": [{ "name": "name", "type": "String"},
        { "name": "descending", "type": "Boolean"},
        { "name": "numeric", "type": "Object"},
        { "name": "sortCompareType", "type": "String"},
        { "name": "customCompareFunction", "type": "Function"}]}
      ,
      { "type": "accessor",
        "access": "read-write",
        "return": "Function",
        "qname": "compareFunction",
        "namespace": "public",
        "bindable": [],
        "details": ["override"],
        "deprecated": {},
          "description": "The function that compares two items during a sort of items for the associated collection. If you specify a <code>compareFunction</code> property in an <code>ISort</code> object, Flex ignores any <code>compareFunction</code> properties of the ISort's <code>SortField</code> objects.  <p>The compare function must have the following signature:</p>  <p><code>function myCompare(a:Object, b:Object):int</code></p>  <p>This function must return the following values:</p>  <ul> <li>-1, if the <code>Object a</code> should appear before the <code>Object b</code> in the sorted sequence</li> <li>0, if the <code>Object a</code> equals the <code>Object b</code></li> <li>1, if the <code>Object a</code> should appear after the <code>Object b</code> in the sorted sequence</li> </ul>  <p>The default value is an internal compare function that can perform a string, numeric, or date comparison in ascending or descending order. The string comparison is performed using the locale (language, region and script) specific comparison method from the <code>SortingCollator</code> class. This class uses the locale style to determine a locale. Specify your own function only if you need a need a custom comparison algorithm. This is normally only the case if a calculated field is used in a display.</p>",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 10.1", "AIR 2.5"]},
            {  "tagName": "productversion",
               "values": ["Flex 4.5"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "method",
        "qname": "stringCompare",
        "namespace": "protected",
        "bindable": [],
        "details": ["override"],
        "deprecated": {},
          "description": "Pull the strings from the objects and call the implementation.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 10.1", "AIR 2.5"]},
            {  "tagName": "productversion",
               "values": ["Flex 4.5"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "int",
          "params": [{ "name": "a", "type": "Object"},
        { "name": "b", "type": "Object"}]}
      ,
      { "type": "method",
        "qname": "xmlCompare",
        "namespace": "protected",
        "bindable": [],
        "details": ["override"],
        "deprecated": {},
          "description": "Pull the values out fo the XML object, then compare using the string or numeric comparator depending on the numeric flag.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 10.1", "AIR 2.5"]},
            {  "tagName": "productversion",
               "values": ["Flex 4.5"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "int",
          "params": [{ "name": "a", "type": "Object"},
        { "name": "b", "type": "Object"}]}
      ,
      { "type": "method",
        "qname": "initialized",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "return": "void",
          "params": [{ "name": "document", "type": "Object"},
        { "name": "id", "type": "String"}]}
      ,
      { "type": "accessor",
        "access": "read-only",
        "return": "String",
        "qname": "className",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {}},
      { "type": "method",
        "qname": "getStyle",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "return": "*",
          "params": [{ "name": "styleProp", "type": "String"}]}
      ,
      { "type": "accessor",
        "access": "read-only",
        "return": "String",
        "qname": "id",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {}},
      { "type": "accessor",
        "access": "read-write",
        "return": "mx.styles.IAdvancedStyleClient",
        "qname": "styleParent",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {}},
      { "type": "method",
        "qname": "stylesInitialized",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "return": "void",
          "params": []}
      ,
      { "type": "method",
        "qname": "matchesCSSState",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "return": "Boolean",
          "params": [{ "name": "cssState", "type": "String"}]}
      ,
      { "type": "method",
        "qname": "matchesCSSType",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "return": "Boolean",
          "params": [{ "name": "cssType", "type": "String"}]}
      ,
      { "type": "method",
        "qname": "hasCSSState",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "return": "Boolean",
          "params": []}
      ,
      { "type": "accessor",
        "access": "read-write",
        "return": "mx.core.IFlexModuleFactory",
        "qname": "moduleFactory",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {}}]
  }
