SetaPDF_Core_Document_OutlinesItem Class representing an outline item
File: /SetaPDF v2/Core/Document/OutlinesItem.php
Class hierarchy
Implements
Summary
Methods
- __construct()
- __clone()
- _isFlagSet()
- _setFlag()
- _updateParentCount()
- append()
- appendChild()
- appendChildCopy()
- appendCopy()
- close()
- contains()
- current()
- getAction()
- getChildren()
- getColor()
- getCount()
- getDestination()
- getDictionary()
- getFirstItem()
- getLastItem()
- getNext()
- getParent()
- getPrevious()
- getReferenceTo()
- getTitle()
- hasChildren()
- hasFirstItem()
- isBold()
- isItalic()
- isOpen()
- key()
- move()
- next()
- offsetExists()
- offsetGet()
- offsetSet()
- offsetUnset()
- open()
- prepend()
- prependCopy()
- remove()
- rewind()
- setAction()
- setBold()
- setColor()
- setDestination()
- setItalic()
- setOpen()
- setTitle()
- valid()
Constants
ACTION
Configuration key
APPEND_MODE_COPY
Append mode value
APPEND_MODE_MOVE
Append mode value
APPEND_MODE_NONE
Append mode value
BOLD
Configuration key
COLOR
Configuration key
DEST
Configuration key
ITALIC
Configuration key
MOVE_MODE_APPEND
Move mode value
MOVE_MODE_APPEND_CHILD
Move mode value
MOVE_MODE_PREPEND
Move mode value
TITLE
Configuration key
Properties
$_indirectReference
The indirect reference for this item (if available)
Static Methods
_getHash()
Get a hash of an outline item.
Used for checking cyclic references.
Parameters
See
copyItem()
Copies an item.
This method internally removes all relations to its parents or neighboring items.
Parameters
- $document : SetaPDF_Core_Document
The document instance in which context the item will be copied
- $item : SetaPDF_Core_Document_OutlinesItem
The item to copy
Exceptions
Throws SetaPDF_Core_Type_Exception
create()
Creates an outline item.
The configuration array could hold keyed values:
$config = array( SetaPDF_Core_Document_OutlinesItem::TITLE => string, SetaPDF_Core_Document_OutlinesItem::DEST => SetaPDF_Core_Document_Destination|SetaPDF_Core_Type_Array|string, SetaPDF_Core_Document_OutlinesItem::ACTION => SetaPDF_Core_Document_Action|SetaPDF_Core_Type_Dictionary, SetaPDF_Core_Document_OutlinesItem::COLOR => SetaPDF_Core_DataStructure_Color_Rgb|array SetaPDF_Core_Document_OutlinesItem::BOLD => boolean, SetaPDF_Core_Document_OutlinesItem::ITALIC => boolean, );
Parameters
- $document : SetaPDF_Core_Document
The document instance in which context the item will be used
- $titleOrConfig : string|array
The title or a configuration array
- $config : array
A configuration array
Exceptions
Throws SetaPDF_Core_Type_Exception
Methods
__construct()
The constructor.
Parameters
- $indirectReference : SetaPDF_Core_Type_IndirectObjectInterface
Exceptions
Throws SetaPDF_Core_Type_Exception
__clone()
_updateParentCount()
Increases or decreases the count value in the parent items.
Parameters
- $parentPdfDict : SetaPDF_Core_Type_Dictionary|false
Exceptions
Throws SetaPDF_Core_Type_Exception
append()
Append another item to this item.
The $mode parameter can be used to specify the way the item will be appended: moved or copied.
Parameters
- $item : SetaPDF_Core_Document_OutlinesItem
The item to append
- $document : SetaPDF_Core_Document
The document instance in which context the item will be used
- $mode : string
The append mode. See
SetaPDF_Core_Document_OutlinesItem::APPEND_MODE_XXX
constants for details.
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem
object for method
chaining.
Exceptions
Throws LogicException
Throws InvalidArgumentException
Throws SetaPDF_Core_Type_Exception
appendChild()
Append another item as a child of this item.
The $mode parameter can be used to specify the way the item will be appended: moved or copied.
Parameters
- $item : SetaPDF_Core_Document_OutlinesItem
The item to append
- $document : SetaPDF_Core_Document
The document instance in which context the item will be used
- $mode : string
The append mode. See
SetaPDF_Core_Document_OutlinesItem::APPEND_MODE_XXX
constants for details.
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem
object for method
chaining.
Exceptions
Throws InvalidArgumentException
Throws SetaPDF_Core_Type_Exception
appendChildCopy()
Appends a copy of another item or outline as a child to this item.
Parameters
- $originalItem : SetaPDF_Core_Document_Catalog_Outlines|SetaPDF_Core_Document_OutlinesItem
- $document : SetaPDF_Core_Document
The document instance in which context the item will be used
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
appendCopy()
Appends a copy of another item to this item.
Parameters
- $originalItem : SetaPDF_Core_Document_OutlinesItem
The original item
- $document : SetaPDF_Core_Document
The document instance in which context the item will be used
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem
object for method
chaining.
Exceptions
Throws SetaPDF_Core_Type_Exception
close()
Close the item.
Alias for SetaPDF_Core_Document_OutlinesItem::setOpen()
with false as its argument.
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem
object for method chaining.
Exceptions
Throws SetaPDF_Core_Type_Exception
contains()
Checks if an item is specified in any descendants of this item.
Parameters
- $item : SetaPDF_Core_Document_OutlinesItem
The item to check for
- $checkAgainstThis : boolean
True to check this instance against the item
Return Values
Whether the item is specified in any descendants of this item.
Exceptions
Throws SetaPDF_Core_Type_Exception
getAction()
Get the action of the item.
Return Values
The action instance or false if no action is defined.
Exceptions
Throws SetaPDF_Core_Type_Exception
getChildren()
Get the first descendant item.
Exceptions
Throws SetaPDF_Core_Type_Exception
See
getColor()
Get the color of the item.
Return Values
A color object or false if no color is defined.
getCount()
Get the number of visible outline items (value of the Count key).
Total number of visible outline items at all levels of the outline.
getDestination()
Get the destination of the item.
Parameters
- $document : SetaPDF_Core_Document
The main document is needed to automatically resolve the destination
Return Values
A destination instance or false if none was defined.
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
getFirstItem()
Get an item instance of the item referenced in the First key.
Exceptions
Throws SetaPDF_Core_Type_Exception
getLastItem()
Get an item instance of the item referenced in the 'Last' key.
Exceptions
Throws SetaPDF_Core_Type_Exception
getNext()
Get an item instance of the item referenced in the Next key.
Exceptions
Throws SetaPDF_Core_Type_Exception
getParent()
Get an item instance of the item referenced in the Parent key.
Exceptions
Throws SetaPDF_Core_Type_Exception
getPrevious()
Get an item instance of the item referenced in the Prev key.
Exceptions
Throws SetaPDF_Core_Type_Exception
getReferenceTo()
Get the reference to this item.
getTitle()
Get the item title.
Parameters
- $encoding : string
The output encoding
Exceptions
Throws SetaPDF_Core_Type_Exception
hasFirstItem()
Checks if this item has a 'First' value set.
The first item is the first item structured under this item. With this method you can check if the item has child items.
Return Values
True if a child item exists - false otherwise.
isOpen()
Checks whether the item is open or not or if the item does not holds any descendants.
Return Values
Returns true if the item is open, false if it is closed or null if the item does not holds any descendants.
move()
Move this item to another item or root outline.
The $mode parameter can be used to specify how the item will be moved.
Parameters
- $target : SetaPDF_Core_Document_Catalog_Outlines|SetaPDF_Core_Document_OutlinesItem
The target item
- $document : SetaPDF_Core_Document
The document instance in which context the item will be used
- $mode : string
The move mode. See
SetaPDF_Core_Document_OutlinesItem::MOVE_MODE_XXX
constants for details.
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem
object for method
chaining.
Exceptions
Throws InvalidArgumentException
offsetExists()
Checks if an item exists at a specific position.
Parameters
- $offset : string|integer
The index being checked
See
offsetGet()
Get an item by a specific position.
Parameters
- $offset : string|integer
The index with the value
Return Values
The value at the specified index.
Exceptions
Throws InvalidArgumentException if no item is at the offset.
See
offsetSet()
Set an item at a specific position.
Parameters
- $offset : null|string|integer
The index being set
- $value : mixed
The new value for the index
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
See
offsetUnset()
Removes an item at a specific position.
Parameters
- $offset : string|integer
The index being unset
Exceptions
Throws SetaPDF_Core_Type_Exception
See
open()
Open the item.
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem
object for method chaining.
Exceptions
Throws SetaPDF_Core_Type_Exception
prepend()
Prepend another item to this item.
The $mode parameter can be used to specify the way the item will be prepended: moved or copied.
Parameters
- $item : SetaPDF_Core_Document_OutlinesItem
The item to prepend
- $document : SetaPDF_Core_Document
The document instance in which context the item will be used
- $mode : string
The append mode. See
SetaPDF_Core_Document_OutlinesItem::APPEND_MODE_XXX
constants for details.
Return Values
Returns the passed item or the last node in the item structure.
Exceptions
Throws LogicException
Throws InvalidArgumentException
Throws SetaPDF_Core_Type_Exception
prependCopy()
Prepends a copy of another item to this item.
Parameters
- $originalItem : SetaPDF_Core_Document_OutlinesItem
The original item
- $document : SetaPDF_Core_Document
The document instance in which context the item will be used
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem
object for method
chaining.
Exceptions
Throws SetaPDF_Core_Type_Exception
remove()
Remove the item from the outline.
Return Values
The removed item
Exceptions
Throws SetaPDF_Core_Type_Exception
setAction()
Set the action of the item.
The action could be an instance of SetaPDF_Core_Document_Action
, a dictionary or a reference to a
dictionary representing the action.
Parameters
- $action : SetaPDF_Core_Document_Action|SetaPDF_Core_Type_IndirectObject|SetaPDF_Core_Type_IndirectReference|SetaPDF_Core_Type_Dictionary|null
The action to execute
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem
object for method chaining.
Exceptions
Throws InvalidArgumentException
Throws SetaPDF_Core_Type_Exception
setBold()
Sets whether the item should be displayed bold or not.
Parameters
- $bold : boolean
True to display the item bold
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem object for method chaining.
setColor()
Set the color of the item.
Parameters
- $colorOrR : array|SetaPDF_Core_DataStructure_Color_Rgb|float
An array of 3 integer values representing the rgb components (between 0 and 1), an instance of
SetaPDF_Core_DataStructure_Color_Rgb
or the red component value (between 0 and 1).- $g : float
The green component value (between 0 and 1)
- $b : float
The blue component value (between 0 and 1)
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem
object for method chaining.
setDestination()
Set the destination of the item.
Parameters
- $destination : SetaPDF_Core_Type_IndirectObjectInterface|SetaPDF_Core_Document_Destination|SetaPDF_Core_Type_Array|SetaPDF_Core_Type_StringValue|SetaPDF_Core_Type_Name|string|null
The destination
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem
object for method chaining.
Exceptions
Throws InvalidArgumentException
setItalic()
Sets whether the item should be displayed italic or not.
Parameters
- $italic : boolean
True to display the item italic
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem object for method chaining.
setOpen()
Open or close the item.
Parameters
- $open : boolean
A boolean value specifying if the item is opened or not
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem
object for method chaining.
Exceptions
Throws SetaPDF_Core_Type_Exception
setTitle()
Set the item title.
Parameters
- $title : string
The item title
- $encoding : string
The input encoding
Return Values
Returns the SetaPDF_Core_Document_OutlinesItem object for method chaining.