Class PdfObjectTreeNode
java.lang.Object
javax.swing.tree.DefaultMutableTreeNode
org.openpdf.rups.view.icons.IconTreeNode
org.openpdf.rups.view.itext.treenodes.PdfObjectTreeNode
- All Implemented Interfaces:
Serializable, Cloneable, MutableTreeNode, TreeNode
- Direct Known Subclasses:
PdfPagesTreeNode, PdfPageTreeNode, PdfTrailerTreeNode
Every node in our tree corresponds with a PDF object. This class is the superclass of all tree nodes used.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected PdfNamethe key if the parent of this node is a dictionary.protected intif the object is indirect, the number of the PDF object.protected PdfObjectthe PDF object corresponding with this node.protected booleanindicates if the object is indirect and recursive.private static final longa serial version UID.Fields inherited from class IconTreeNode
iconFields inherited from class DefaultMutableTreeNode
allowsChildren, children, EMPTY_ENUMERATION, parent, userObject -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedPdfObjectTreeNode(String icon, PdfObject object) Creates a tree node for a PDF object.protectedPdfObjectTreeNode(PdfObject object) Creates a tree node for a PDF object. -
Method Summary
Modifier and TypeMethodDescriptionGets the tree path of an ancestor.static StringgetCaption(PdfObject object) Creates the caption for a PDF object.static StringgetDictionaryEntryCaption(PdfDictionary dict, PdfName key) Creates the caption for an object that is a dictionary entry.static PdfObjectTreeNodegetInstance(PdfDictionary dict, PdfName key) Creates an instance of a tree node for the object corresponding with a key in a dictionary.static PdfObjectTreeNodegetInstance(PdfObject object) Creates an instance of a tree node for a PDF object.static PdfObjectTreeNodegetInstance(PdfObject object, int number) Creates an instance of a tree node for an indirect object.intGetter for the object number in case the object is indirect.Getter for the PDF Object.booleanisArray()Tells you if the node contains an array.booleanTells you if the node contains a dictionary.booleanisDictionaryNode(PdfName key) Checks if this node is a dictionary item with a specific key.booleanTells you if the object is indirect.booleanTells you if the node contains an indirect reference.booleanTells you if the object is a reference to a node higher up in the tree.booleanisStream()Tells you if the node contains a stream.voidsetRecursive(boolean recursive) Set this to true if the object is a reference to a node higher up in the tree.Methods inherited from class IconTreeNode
getIconMethods inherited from class DefaultMutableTreeNode
add, breadthFirstEnumeration, children, clone, depthFirstEnumeration, getAllowsChildren, getChildAfter, getChildAt, getChildBefore, getChildCount, getDepth, getFirstChild, getFirstLeaf, getIndex, getLastChild, getLastLeaf, getLeafCount, getLevel, getNextLeaf, getNextNode, getNextSibling, getParent, getPath, getPathToRoot, getPreviousLeaf, getPreviousNode, getPreviousSibling, getRoot, getSharedAncestor, getSiblingCount, getUserObject, getUserObjectPath, insert, isLeaf, isNodeAncestor, isNodeChild, isNodeDescendant, isNodeRelated, isNodeSibling, isRoot, pathFromAncestorEnumeration, postorderEnumeration, preorderEnumeration, remove, remove, removeAllChildren, removeFromParent, setAllowsChildren, setParent, setUserObject, toString
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDa serial version UID.- See Also:
-
object
the PDF object corresponding with this node. -
key
the key if the parent of this node is a dictionary. -
number
protected int numberif the object is indirect, the number of the PDF object. -
recursive
protected boolean recursiveindicates if the object is indirect and recursive.
-
-
Constructor Details
-
PdfObjectTreeNode
Creates a tree node for a PDF object.- Parameters:
object- the PDF object represented by this tree node.
-
PdfObjectTreeNode
-
-
Method Details
-
getInstance
Creates an instance of a tree node for a PDF object.- Parameters:
object- the PDF object represented by this tree node.- Returns:
- a PdfObjectTreeNode
-
getInstance
Creates an instance of a tree node for an indirect object.- Parameters:
object- the PDF object represented by this tree node.number- the xref number of the indirect object- Returns:
- a PdfObjectTreeNode
-
getInstance
Creates an instance of a tree node for the object corresponding with a key in a dictionary.- Parameters:
dict- the dictionary that is the parent of this tree node.key- the dictionary key corresponding with the PDF object in this tree node.- Returns:
- a PdfObjectTreeNode
-
getCaption
-
getDictionaryEntryCaption
Creates the caption for an object that is a dictionary entry.- Parameters:
dict- a dictionarykey- a key in the dictionary- Returns:
- a caption for the object corresponding with the key in the dictionary.
-
getPdfObject
Getter for the PDF Object.- Returns:
- the PDF object represented by this tree node.
-
getNumber
public int getNumber()Getter for the object number in case the object is indirect.- Returns:
- -1 for direct objects; the object number for indirect objects
-
isIndirectReference
public boolean isIndirectReference()Tells you if the node contains an indirect reference.- Returns:
- true if the object is an indirect reference
-
isIndirect
public boolean isIndirect()Tells you if the object is indirect.- Returns:
- true for indirect objects; false for direct objects.
-
isArray
public boolean isArray()Tells you if the node contains an array.- Returns:
- true if the object is a PdfArray
-
isDictionaryNode
Checks if this node is a dictionary item with a specific key.- Parameters:
key- the key of the node we're looking for- Returns:
- true if the node is a dictionary item with the specified key, false otherwise
-
isDictionary
public boolean isDictionary()Tells you if the node contains a dictionary.- Returns:
- true if the object is a PdfDictionary
-
isStream
public boolean isStream()Tells you if the node contains a stream.- Returns:
- true if the object is a PRStream
-
isRecursive
public boolean isRecursive()Tells you if the object is a reference to a node higher up in the tree.- Returns:
- true if the node is used recursively.
-
setRecursive
public void setRecursive(boolean recursive) Set this to true if the object is a reference to a node higher up in the tree.- Parameters:
recursive- true if the object is indirect and recursive
-
getAncestor
Gets the tree path of an ancestor. This only works with recursive references- Returns:
- the treepath to an ancestor
-