org.eclipse.jpt.utility.model.value
Interface TreeNodeValueModel<T>

All Superinterfaces:
Model, PropertyValueModel<T>, WritablePropertyValueModel<T>

public interface TreeNodeValueModel<T>
extends WritablePropertyValueModel<T>

Extend WritablePropertyValueModel to better support TreeModelAdapter. Implementors of this interface should fire a "state change" event whenever the node's internal state changes in a way that the tree listeners should be notified. Implementors of this interface should also fire a "value property change" event whenever the node's value changes. Typically, only nodes that hold "primitive" data will fire this event.

See Also:
Provisional API: This interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.

Field Summary
 
Fields inherited from interface org.eclipse.jpt.utility.model.value.PropertyValueModel
VALUE
 
Method Summary
 TreeNodeValueModel<T> child(int index)
          Return the node's child at the specified index.
 ListValueModel<TreeNodeValueModel<T>> childrenModel()
          Return a list value model of the node's child nodes.
 int childrenSize()
          Return the size of the node's list of children.
 int indexOfChild(TreeNodeValueModel<T> child)
          Return the index in the node's list of children of the specified child.
 boolean isLeaf()
          Return whether the node is a leaf (i.e.
 TreeNodeValueModel<T> parent()
          Return the node's parent node; null if the node is the root.
 TreeNodeValueModel<T>[] path()
          Return the path to the node.
 
Methods inherited from interface org.eclipse.jpt.utility.model.value.WritablePropertyValueModel
setValue
 
Methods inherited from interface org.eclipse.jpt.utility.model.value.PropertyValueModel
getValue
 
Methods inherited from interface org.eclipse.jpt.utility.model.Model
addCollectionChangeListener, addCollectionChangeListener, addListChangeListener, addListChangeListener, addPropertyChangeListener, addPropertyChangeListener, addStateChangeListener, addTreeChangeListener, addTreeChangeListener, removeCollectionChangeListener, removeCollectionChangeListener, removeListChangeListener, removeListChangeListener, removePropertyChangeListener, removePropertyChangeListener, removeStateChangeListener, removeTreeChangeListener, removeTreeChangeListener
 

Method Detail

parent

TreeNodeValueModel<T> parent()
Return the node's parent node; null if the node is the root.


path

TreeNodeValueModel<T>[] path()
Return the path to the node.


childrenModel

ListValueModel<TreeNodeValueModel<T>> childrenModel()
Return a list value model of the node's child nodes.


child

TreeNodeValueModel<T> child(int index)
Return the node's child at the specified index.


childrenSize

int childrenSize()
Return the size of the node's list of children.


indexOfChild

int indexOfChild(TreeNodeValueModel<T> child)
Return the index in the node's list of children of the specified child.


isLeaf

boolean isLeaf()
Return whether the node is a leaf (i.e. it has no children)