Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.pdfbox.pdfviewer
Class PDFTreeModel

    java.lang.Object
      org.pdfbox.pdfviewer.PDFTreeModel

All Implemented Interfaces:
  TreeModel

public class PDFTreeModel
extends Object
implements TreeModel

A class to model a PDF document as a tree structure.

Version:
  $Revision: 1.9 $
Author:
  Ben Litchfield

Constructor Summary
`PDFTreeModel()` constructor.
`PDFTreeModel(PDDocument doc)` Constructor to take a document.

Method Summary
`void` | `addTreeModelListener(TreeModelListener l)` Adds a listener for the `TreeModelEvent` posted after the tree changes.
`Object` | `getChild(Object parent, int index)` Returns the child of `parent` at index `index` in the parent's child array.
`int` | `getChildCount(Object parent)` Returns the number of children of `parent`.
`int` | `getIndexOfChild(Object parent, Object child)` Returns the index of child in parent.
`Object` | `getRoot()` Returns the root of the tree.
`boolean` | `isLeaf(Object node)` Returns `true` if `node` is a leaf.
`void` | `removeTreeModelListener(TreeModelListener l)` Removes a listener previously added with `addTreeModelListener`.
`void` | `setDocument(PDDocument doc)` Set the document to display in the tree.
`void` | `valueForPathChanged(TreePath path, Object newValue)` Messaged when the user has altered the value for the item identified by `path` to `newValue`.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### PDFTreeModel

    public PDFTreeModel()

  constructor.

### PDFTreeModel

    public PDFTreeModel(PDDocument doc)

  Constructor to take a document.

Parameters:
  `doc` - The document to display in the tree.

Method Detail

### setDocument

    public void setDocument(PDDocument doc)

  Set the document to display in the tree.

  Parameters:
    `doc` - The document to display in the tree.

### addTreeModelListener

    public void addTreeModelListener(TreeModelListener l)

  Adds a listener for the `TreeModelEvent` posted after the tree changes.

  Specified by:
    `addTreeModelListener` in interface `TreeModel`
  Parameters:
    `l` - the listener to add
  See Also:
    `removeTreeModelListener(javax.swing.event.TreeModelListener)`

### getChild

    public Object getChild(Object parent,
                           int index)

  Returns the child of `parent` at index `index` in the parent's child array. `parent` must be a node previously obtained from this data source. This should not return `null` if `index` is a valid index for `parent` (that is `index >= 0 && index < getChildCount(parent`)).

  Specified by:
    `getChild` in interface `TreeModel`
  Parameters:
    `parent` - a node in the tree, obtained from this data source
    `index` - The index into the parent object to location the child object.
  Returns:
    the child of `parent` at index `index`

### getChildCount

    public int getChildCount(Object parent)

  Returns the number of children of `parent`. Returns 0 if the node is a leaf or if it has no children. `parent` must be a node previously obtained from this data source.

  Specified by:
    `getChildCount` in interface `TreeModel`
  Parameters:
    `parent` - a node in the tree, obtained from this data source
  Returns:
    the number of children of the node `parent`

### getIndexOfChild

    public int getIndexOfChild(Object parent,
                               Object child)

  Returns the index of child in parent. If `parent` is `null` or `child` is `null`, returns -1.

  Specified by:
    `getIndexOfChild` in interface `TreeModel`
  Parameters:
    `parent` - a note in the tree, obtained from this data source
    `child` - the node we are interested in
  Returns:
    the index of the child in the parent, or -1 if either `child` or `parent` are `null`

### getRoot

    public Object getRoot()

  Returns the root of the tree. Returns `null` only if the tree has no nodes.

  Specified by:
    `getRoot` in interface `TreeModel`
  Returns:
    the root of the tree

### isLeaf

    public boolean isLeaf(Object node)

  Returns `true` if `node` is a leaf. It is possible for this method to return `false` even if `node` has no children. A directory in a filesystem, for example, may contain no files; the node representing the directory is not a leaf, but it also has no children.

  Specified by:
    `isLeaf` in interface `TreeModel`
  Parameters:
    `node` - a node in the tree, obtained from this data source
  Returns:
    true if `node` is a leaf

### removeTreeModelListener

    public void removeTreeModelListener(TreeModelListener l)

  Removes a listener previously added with `addTreeModelListener`.

  Specified by:
    `removeTreeModelListener` in interface `TreeModel`
  Parameters:
    `l` - the listener to remove
  See Also:
    `addTreeModelListener(javax.swing.event.TreeModelListener)`

### valueForPathChanged

    public void valueForPathChanged(TreePath path,
                                    Object newValue)

  Messaged when the user has altered the value for the item identified by `path` to `newValue`. If `newValue` signifies a truly new value the model should post a `treeNodesChanged` event.

  Specified by:
    `valueForPathChanged` in interface `TreeModel`
  Parameters:
    `path` - path to the node that the user has altered
    `newValue` - the new value from the TreeCellEditor

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD