• Skip to content
  • Skip to link menu
KDE 4.1 API Reference
  • KDE API Reference
  • kdelibs
  • Sitemap
  • Contact Us
 

KHTML

DOM::NodeIterator

DOM::NodeIterator Class Reference

#include <dom2_traversal.h>

List of all members.


Detailed Description

NodeIterators are used to step through a set of nodes, e.g.

the set of nodes in a NodeList, the document subtree governed by a particular node, the results of a query, or any other set of nodes. The set of nodes to be iterated is determined by the implementation of the NodeIterator. DOM Level 2 specifies a single NodeIterator implementation for document-order traversal of a document subtree. Instances of these iterators are created by calling DocumentTraversal.createNodeIterator().

Any Iterator that returns nodes may implement the NodeIterator interface. Users and vendor libraries may also choose to create Iterators that implement the NodeIterator interface.

Definition at line 59 of file dom2_traversal.h.


Public Member Functions

void detach ()
bool expandEntityReferences ()
NodeFilter filter ()
NodeIteratorImpl * handle () const
bool isNull () const
Node nextNode ()
 NodeIterator (const NodeIterator &other)
 NodeIterator ()
NodeIterator & operator= (const NodeIterator &other)
Node previousNode ()
Node root ()
unsigned long whatToShow ()
 ~NodeIterator ()

Protected Member Functions

 NodeIterator (NodeIteratorImpl *i)

Protected Attributes

NodeIteratorImpl * impl

Constructor & Destructor Documentation

NodeIterator::NodeIterator (  ) 

Definition at line 31 of file dom2_traversal.cpp.

NodeIterator::NodeIterator ( const NodeIterator &  other  ) 

Definition at line 36 of file dom2_traversal.cpp.

NodeIterator::~NodeIterator (  ) 

Definition at line 58 of file dom2_traversal.cpp.

NodeIterator::NodeIterator ( NodeIteratorImpl *  i  )  [protected]

Definition at line 42 of file dom2_traversal.cpp.


Member Function Documentation

void NodeIterator::detach (  ) 

Detaches the NodeIterator from the set which it iterated over, releasing any computational resources and placing the iterator in the INVALID state.

After detach has been invoked, calls to nextNode or previousNode will raise the exception INVALID_STATE_ERR.

Definition at line 114 of file dom2_traversal.cpp.

bool NodeIterator::expandEntityReferences (  ) 

The value of this flag determines whether the children of entity reference nodes are visible to the iterator.

If false, they and their descendents will be rejected. Note that this rejection takes precedence over whatToShow and the filter. Also note that this is currently the only situation where NodeIterators may reject a complete subtree rather than skipping individual nodes.

To produce a view of the document that has entity references expanded and does not expose the entity reference node itself, use the whatToShow flags to hide the entity reference node and set expandEntityReferences to true when creating the iterator. To produce a view of the document that has entity reference nodes but no entity expansion, use the whatToShow flags to show the entity reference node and set expandEntityReferences to false.

Definition at line 81 of file dom2_traversal.cpp.

NodeFilter NodeIterator::filter (  ) 

The NodeFilter used to screen nodes.

Definition at line 75 of file dom2_traversal.cpp.

NodeIteratorImpl * NodeIterator::handle (  )  const

Definition at line 125 of file dom2_traversal.cpp.

bool NodeIterator::isNull (  )  const

Definition at line 130 of file dom2_traversal.cpp.

Node NodeIterator::nextNode (  ) 

Returns the next node in the set and advances the position of the Iterator in the set.

After a NodeIterator is created, the first call to nextNode() returns the first node in the set.

Returns:
The next Node in the set being iterated over, or null if there are no more members in that set.
Exceptions:
Exceptions from user code Any exceptions raised by a user-written Filter will propagate through.

Definition at line 87 of file dom2_traversal.cpp.

NodeIterator & NodeIterator::operator= ( const NodeIterator &  other  ) 

Definition at line 48 of file dom2_traversal.cpp.

Node NodeIterator::previousNode (  ) 

Returns the previous node in the set and moves the position of the Iterator backwards in the set.

Returns:
The previous Node in the set being iterated over, or null if there are no more members in that set.
Exceptions:
Exceptions from user code Any exceptions raised by a user-written Filter will propagate through.

Definition at line 100 of file dom2_traversal.cpp.

Node NodeIterator::root (  ) 

The root node of the NodeIterator, as specified when it was created.

Definition at line 63 of file dom2_traversal.cpp.

unsigned long NodeIterator::whatToShow (  ) 

This attribute determines which node types are presented via the iterator.

The available set of constants is defined in the NodeFilter interface. Nodes not accepted by whatToShow will be skipped, but their children may still be considered. Note that this skip takes precedence over the filter, if any.

Definition at line 69 of file dom2_traversal.cpp.


Member Data Documentation

NodeIteratorImpl* DOM::NodeIterator::impl [protected]

Definition at line 155 of file dom2_traversal.h.


The documentation for this class was generated from the following files:
  • dom2_traversal.h
  • dom2_traversal.cpp

KHTML

Skip menu "KHTML"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kdelibs

Skip menu "kdelibs"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • Kate
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • KIO
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • Kross
  • KUtils
  • Nepomuk
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal