com.google.gwt.user.cellview.client

## Class CellTreeNodeView.TreeNodeImpl

- java.lang.Object
- - com.google.gwt.user.cellview.client.CellTreeNodeView.TreeNodeImpl

- All Implemented Interfaces:
    TreeNode
  Enclosing class:
    CellTreeNodeView<T>

      static class CellTreeNodeView.TreeNodeImpl
      extends java.lang.Object
      implements TreeNode

  An implementation of `TreeNode` that delegates to a `CellTreeNodeView`. This class is intentionally static because we might move it to a new `CellTreeNodeView`, and we don't want non-static references to the old `CellTreeNodeView`.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `TreeNodeImpl(CellTreeNodeView<?> nodeView)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `(package private) void` | `flush()` Flush pending changes in the view.
    `int` | `getChildCount()` Get the number of children of the node.
    `java.lang.Object` | `getChildValue(int index)` Get the value associated with a child node.
    `int` | `getIndex()` Get the index of the current node relative to its parent.
    `(package private) CellTreeNodeView<?>` | `getNodeView()`
    `TreeNode` | `getParent()` Get the parent node of this node.
    `java.lang.Object` | `getValue()` Get the value associated with this node.
    `boolean` | `isChildLeaf(int index)` Check whether or not a child node is a leaf node.
    `boolean` | `isChildOpen(int index)` Check whether or not a child node is open.
    `boolean` | `isDestroyed()` Check whether or not the current node is destroyed.
    `TreeNode` | `setChildOpen(int index, boolean open)` Open or close a child node and fire an event.
    `TreeNode` | `setChildOpen(int index, boolean open, boolean fireEvents)` Open or close the node, optionally firing an event.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### TreeNodeImpl

          public TreeNodeImpl(CellTreeNodeView<?> nodeView)

  - ### Method Detail

    - #### getChildCount

          public int getChildCount()

      Description copied from interface: `TreeNode`
      Get the number of children of the node.
      Specified by:
        `getChildCount` in interface `TreeNode`
      Returns:
        the child count

    - #### getChildValue

          public java.lang.Object getChildValue(int index)

      Description copied from interface: `TreeNode`
      Get the value associated with a child node.
      Specified by:
        `getChildValue` in interface `TreeNode`
      Parameters:
        `index` - the child index
      Returns:
        the value

    - #### getIndex

          public int getIndex()

      Description copied from interface: `TreeNode`
      Get the index of the current node relative to its parent.
      Specified by:
        `getIndex` in interface `TreeNode`
      Returns:
        the index of the current node

    - #### getNodeView

          final CellTreeNodeView<?> getNodeView()

    - #### getParent

          public TreeNode getParent()

      Description copied from interface: `TreeNode`
      Get the parent node of this node.
      Specified by:
        `getParent` in interface `TreeNode`
      Returns:
        the parent node, or null if this node is the root node

    - #### getValue

          public java.lang.Object getValue()

      Description copied from interface: `TreeNode`
      Get the value associated with this node. This method can be called on destroyed nodes.
      Specified by:
        `getValue` in interface `TreeNode`
      Returns:
        the value

    - #### isChildLeaf

          public boolean isChildLeaf(int index)

      Description copied from interface: `TreeNode`
      Check whether or not a child node is a leaf node.
      Specified by:
        `isChildLeaf` in interface `TreeNode`
      Parameters:
        `index` - the index of the child
      Returns:
        true if a leaf node, false if not

    - #### isChildOpen

          public boolean isChildOpen(int index)

      Description copied from interface: `TreeNode`
      Check whether or not a child node is open.
      Specified by:
        `isChildOpen` in interface `TreeNode`
      Parameters:
        `index` - the index of the child
      Returns:
        true if open, false if closed

    - #### isDestroyed

          public boolean isDestroyed()

      Description copied from interface: `TreeNode`
      Check whether or not the current node is destroyed. The node is destroyed when it is closed, even if it still appears in the tree as an unopened non-leaf node. Once a node is destroyed, calling most methods on the node results in an `IllegalStateException`.
      Specified by:
        `isDestroyed` in interface `TreeNode`
      Returns:
        true if destroyed, false if active

    - #### setChildOpen

          public TreeNode setChildOpen(int index,
                                       boolean open)

      Description copied from interface: `TreeNode`
      Open or close a child node and fire an event. If `open` is true and the `TreeNode` successfully opens, returns the child `TreeNode`. Delegates to `TreeNode.setChildOpen(int,boolean, boolean)`.
      Specified by:
        `setChildOpen` in interface `TreeNode`
      Parameters:
        `index` - the index of the child
        `open` - true to open, false to close
      Returns:
        the `TreeNode` that was opened, or null if the node was closed or could not be opened

    - #### setChildOpen

          public TreeNode setChildOpen(int index,
                                       boolean open,
                                       boolean fireEvents)

      Description copied from interface: `TreeNode`
      Open or close the node, optionally firing an event. If `open` is true and the `TreeNode` successfully opens, returns the child `TreeNode`.
      Specified by:
        `setChildOpen` in interface `TreeNode`
      Parameters:
        `index` - the index of the child
        `open` - true to open, false to flose
        `fireEvents` - true to fire an event, false not to
      Returns:
        the `TreeNode` that was opened, or null if the node was closed or could not be opened

    - #### flush

          void flush()

      Flush pending changes in the view.