Class PdfObjectTreeNode
- java.lang.Object
-
- javax.swing.tree.DefaultMutableTreeNode
-
- com.lowagie.rups.view.icons.IconTreeNode
-
- com.lowagie.rups.view.itext.treenodes.PdfObjectTreeNode
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,javax.swing.tree.MutableTreeNode
,javax.swing.tree.TreeNode
- Direct Known Subclasses:
PdfPagesTreeNode
,PdfPageTreeNode
,PdfTrailerTreeNode
public class PdfObjectTreeNode extends IconTreeNode
Every node in our tree corresponds with a PDF object. This class is the superclass of all tree nodes used.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected PdfName
key
the key if the parent of this node is a dictionary.protected int
number
if the object is indirect, the number of the PDF object.protected PdfObject
object
the PDF object corresponding with this node.protected boolean
recursive
indicates if the object is indirect and recursive.private static long
serialVersionUID
a serial version UID.-
Fields inherited from class com.lowagie.rups.view.icons.IconTreeNode
icon
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
PdfObjectTreeNode(PdfObject object)
Creates a tree node for a PDF object.protected
PdfObjectTreeNode(java.lang.String icon, PdfObject object)
Creates a tree node for a PDF object.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description PdfObjectTreeNode
getAncestor()
Gets the tree path of an ancestor.static java.lang.String
getCaption(PdfObject object)
Creates the caption for a PDF object.static java.lang.String
getDictionaryEntryCaption(PdfDictionary dict, PdfName key)
Creates the caption for an object that is a dictionary entry.static PdfObjectTreeNode
getInstance(PdfDictionary dict, PdfName key)
Creates an instance of a tree node for the object corresponding with a key in a dictionary.static PdfObjectTreeNode
getInstance(PdfObject object)
Creates an instance of a tree node for a PDF object.static PdfObjectTreeNode
getInstance(PdfObject object, int number)
Creates an instance of a tree node for an indirect object.int
getNumber()
Getter for the object number in case the object is indirect.PdfObject
getPdfObject()
Getter for the PDF Object.boolean
isArray()
Tells you if the node contains an array.boolean
isDictionary()
Tells you if the node contains a dictionary.boolean
isDictionaryNode(PdfName key)
Checks if this node is a dictionary item with a specific key.boolean
isIndirect()
Tells you if the object is indirect.boolean
isIndirectReference()
Tells you if the node contains an indirect reference.boolean
isRecursive()
Tells you if the object is a reference to a node higher up in the tree.boolean
isStream()
Tells you if the node contains a stream.void
setRecursive(boolean recursive)
Set this to true if the object is a reference to a node higher up in the tree.-
Methods inherited from class com.lowagie.rups.view.icons.IconTreeNode
getIcon
-
Methods inherited from class javax.swing.tree.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 Detail
-
serialVersionUID
private static final long serialVersionUID
a serial version UID.- See Also:
- Constant Field Values
-
object
protected PdfObject object
the PDF object corresponding with this node.
-
key
protected PdfName key
the key if the parent of this node is a dictionary.
-
number
protected int number
if the object is indirect, the number of the PDF object.
-
recursive
protected boolean recursive
indicates if the object is indirect and recursive.
-
-
Constructor Detail
-
PdfObjectTreeNode
protected PdfObjectTreeNode(PdfObject object)
Creates a tree node for a PDF object.- Parameters:
object
- the PDF object represented by this tree node.
-
PdfObjectTreeNode
protected PdfObjectTreeNode(java.lang.String icon, PdfObject object)
Creates a tree node for a PDF object.- Parameters:
icon
- the file with the iconobject
- the PDF object represented by this tree node.
-
-
Method Detail
-
getInstance
public static PdfObjectTreeNode getInstance(PdfObject object)
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
public static PdfObjectTreeNode getInstance(PdfObject object, int number)
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
public static PdfObjectTreeNode getInstance(PdfDictionary dict, PdfName key)
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
public static java.lang.String getCaption(PdfObject object)
Creates the caption for a PDF object.- Parameters:
object
- the object for which a caption has to be created.- Returns:
- a caption for a PDF object
-
getDictionaryEntryCaption
public static java.lang.String getDictionaryEntryCaption(PdfDictionary dict, PdfName key)
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
public PdfObject 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
public boolean isDictionaryNode(PdfName key)
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
public PdfObjectTreeNode getAncestor()
Gets the tree path of an ancestor. This only works with recursive references- Returns:
- the treepath to an ancestor
-
-