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.pdmodel.interactive.documentnavigation.outline
Class PDOutlineNode

    java.lang.Object
      org.pdfbox.pdmodel.interactive.documentnavigation.outline.PDOutlineNode

All Implemented Interfaces:
  COSObjectable

Direct Known Subclasses:
  PDDocumentOutline, PDOutlineItem

public class PDOutlineNode
extends Object
implements COSObjectable

This represents an node in an outline in a pdf document.

Version:
  $Revision: 1.3 $
Author:
  Ben Litchfield

Field Summary
`protected COSDictionary` | `node` The dictionary for this node.

Constructor Summary
`PDOutlineNode()` Default Constructor.
`PDOutlineNode(COSDictionary dict)` Default Constructor.

Method Summary
`void` | `appendChild(PDOutlineItem outlineNode)` append a child node to this node.
`void` | `closeNode()` Close this node.
`COSDictionary` | `getCOSDictionary()` Convert this standard java object to a COS object.
`COSBase` | `getCOSObject()` Convert this standard java object to a COS object.
`PDOutlineItem` | `getFirstChild()` Return the first child or null if there is no child.
`PDOutlineItem` | `getLastChild()` Return the last child or null if there is no child.
`int` | `getOpenCount()` Get the number of open nodes.
`PDOutlineNode` | `getParent()` Get the parent of this object.
`boolean` | `isNodeOpen()` Node is open if the open count is greater than zero.
`void` | `openNode()` This will set this node to be open when it is shown in the viewer.
`protected void` | `setFirstChild(PDOutlineNode outlineNode)` Set the first child, this will be maintained by this class.
`protected void` | `setLastChild(PDOutlineNode outlineNode)` Set the last child, this will be maintained by this class.
`protected void` | `setOpenCount(int openCount)` Set the open count.
`protected void` | `setParent(PDOutlineNode parent)` Set the parent of this object, this is maintained by these objects and should not be called by any clients of PDFBox code.
`protected void` | `updateParentOpenCount(int amount)` The count parameter needs to be updated when you add or remove elements to the outline.

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

Field Detail

### node

    protected COSDictionary node

  The dictionary for this node.

Constructor Detail

### PDOutlineNode

    public PDOutlineNode()

  Default Constructor.

### PDOutlineNode

    public PDOutlineNode(COSDictionary dict)

  Default Constructor.

Parameters:
  `dict` - The dictionary storage.

Method Detail

### getCOSObject

    public COSBase getCOSObject()

  Convert this standard java object to a COS object.

  Specified by:
    `getCOSObject` in interface `COSObjectable`
  Returns:
    The cos object that matches this Java object.

### getCOSDictionary

    public COSDictionary getCOSDictionary()

  Convert this standard java object to a COS object.

  Returns:
    The cos object that matches this Java object.

### getParent

    public PDOutlineNode getParent()

  Get the parent of this object. This will either be a DocumentOutline or an OutlineItem.

  Returns:
    The parent of this object, or null if this is the document outline and there is no parent.

### setParent

    protected void setParent(PDOutlineNode parent)

  Set the parent of this object, this is maintained by these objects and should not be called by any clients of PDFBox code.

  Parameters:
    `parent` - The parent of this object.

### appendChild

    public void appendChild(PDOutlineItem outlineNode)

  append a child node to this node.

  Parameters:
    `outlineNode` - The node to add.

### getFirstChild

    public PDOutlineItem getFirstChild()

  Return the first child or null if there is no child.

  Returns:
    The first child.

### setFirstChild

    protected void setFirstChild(PDOutlineNode outlineNode)

  Set the first child, this will be maintained by this class.

  Parameters:
    `outlineNode` - The new first child.

### getLastChild

    public PDOutlineItem getLastChild()

  Return the last child or null if there is no child.

  Returns:
    The last child.

### setLastChild

    protected void setLastChild(PDOutlineNode outlineNode)

  Set the last child, this will be maintained by this class.

  Parameters:
    `outlineNode` - The new last child.

### getOpenCount

    public int getOpenCount()

  Get the number of open nodes. Or a negative number if this node is closed. See PDF Reference for more details. This value is updated as you append children and siblings.

  Returns:
    The Count attribute of the outline dictionary.

### setOpenCount

    protected void setOpenCount(int openCount)

  Set the open count. This number is automatically managed for you when you add items to the outline.

  Parameters:
    `openCount` - The new open cound.

### openNode

    public void openNode()

  This will set this node to be open when it is shown in the viewer. By default, when a new node is created it will be closed. This will do nothing if the node is already open.

### closeNode

    public void closeNode()

  Close this node.

### isNodeOpen

    public boolean isNodeOpen()

  Node is open if the open count is greater than zero.

  Returns:
    true if this node is open.

### updateParentOpenCount

    protected void updateParentOpenCount(int amount)

  The count parameter needs to be updated when you add or remove elements to the outline. When you add an element at a lower level then you need to increase all of the parents.

  Parameters:
    `amount` - The amount to update by.

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