{ "type": "interface",
  "qname": "mx.collections.IHierarchicalCollectionView",
"baseInterfaceNames": [
"mx.collections.ICollectionView"]
,
    "description": "The IHierarchicalCollectionView interface defines an interface for hierarchical or grouped data. Typically, you use this data with the AdvancedDataGrid control.",
  "tags": [
  {  "tagName": "see",
         "values": ["mx.controls.AdvancedDataGrid"]},
      {  "tagName": "playerversion",
         "values": ["Flash 9", "AIR 1.1"]},
      {  "tagName": "productversion",
         "values": ["Flex 3"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "accessor",
    "access": "read-write",
    "return": "Object",
    "qname": "openNodes",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "An Array of Objects containing the data provider element for all the open branch nodes of the data.",
    "tags": [
    {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-only",
    "return": "Boolean",
    "qname": "hasRoot",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "A flag that, if <code>true</code>, indicates that the current data provider has a root node; for example, a single top-level node in a hierarchical structure. XML and Object are examples of data types that have a root node, while Lists and Arrays do not.",
    "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": "Boolean",
    "qname": "showRoot",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "A Boolean flag that specifies whether to display the data provider's root node. If the source data has a root node, and this property is set to <code>false</code>, the collection will not include the root item. Only the descendants of the root item will be included in the collection.  <p>This property has no effect on a source with no root node, such as List and Array objects.</p>",
    "tags": [
    {  "tagName": "default",
           "values": ["true"]},
        {  "tagName": "see",
           "values": ["#hasRoot"]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "mx.collections.IHierarchicalData",
    "qname": "source",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The source data of the IHierarchicalCollectionView.",
    "tags": [
    {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["the IHierarchicalData instance representing the source"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "method",
    "qname": "openNode",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Opens a node to display its children.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The Object that defines the node."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "void",
      "params": [{ "name": "node", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "closeNode",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Closes a node to hide its children.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The Object that defines the node."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "void",
      "params": [{ "name": "node", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "getChildren",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns a collection of children, if they exist.  If <code>null</code>, return a collection of top level nodes.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The Object that defines the node."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["ICollectionView instance containing the child nodes."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "mx.collections.ICollectionView",
      "params": [{ "name": "node", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "addChild",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Adds a child node to a node of the data.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The Object that defines the parent node.", "child The Object that defines the new node."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["<code>true</code> if the node is added successfully."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Boolean",
      "params": [{ "name": "parent", "type": "Object"},
    { "name": "newChild", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "removeChild",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Removes the child node from the parent node.  and <code>null</code> for top-level nodes.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The Object that defines the parent node,", "child The Object that defines the child node to be removed."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["<code>true</code> if the node is removed successfully."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Boolean",
      "params": [{ "name": "parent", "type": "Object"},
    { "name": "child", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "addChildAt",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Adds a child node to a node of the data at a specific index in the data.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The Object that defines the parent node.", "child The Object that defines the new node.", "index The zero-based index of where to insert the child node."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["<code>true</code> if the node is added successfully."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Boolean",
      "params": [{ "name": "parent", "type": "Object"},
    { "name": "newChild", "type": "Object"},
    { "name": "index", "type": "int"}]}
  ,
  { "type": "method",
    "qname": "removeChildAt",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Removes the child node from a node at the specified index.  Set <code>parent</code> to <code>null</code> for top-level nodes.",
    "tags": [
    {  "tagName": "param",
           "values": ["parent The node object that currently parents the child node.", "index The zero-based index of the child node to remove relative to the parent."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["<code>true</code> if successful, and <code>false</code> if not."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Boolean",
      "params": [{ "name": "parent", "type": "Object"},
    { "name": "index", "type": "int"}]}
  ,
  { "type": "method",
    "qname": "getNodeDepth",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the depth of the node in the collection.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The Object that defines the node."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["The depth of the node."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "int",
      "params": [{ "name": "node", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "getParentItem",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the parent of a node. The parent of a top-level node is <code>null</code>.   <code>null</code> for a top-level node, and <code>undefined</code> if the parent cannot be determined.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The Object that defines the node."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["The parent node containing the node as child,"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "*",
      "params": [{ "name": "node", "type": "Object"}]}
  ]
  }
