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

KHTML

DOM::DocumentFragment

DOM::DocumentFragment Class Reference

DocumentFragment is a "lightweight" or "minimal" Document object. More...

#include <dom_doc.h>

Inheritance diagram for DOM::DocumentFragment:

Inheritance graph
[legend]

List of all members.


Public Member Functions

 DocumentFragment (const Node &other)
 DocumentFragment (const DocumentFragment &other)
 DocumentFragment ()
DocumentFragment & operator= (const DocumentFragment &other)
DocumentFragment & operator= (const Node &other)
 ~DocumentFragment ()

Protected Member Functions

 DocumentFragment (DocumentFragmentImpl *i)

Detailed Description

DocumentFragment is a "lightweight" or "minimal" Document object.

It is very common to want to be able to extract a portion of a document's tree or to create a new fragment of a document. Imagine implementing a user command like cut or rearranging a document by moving fragments around. It is desirable to have an object which can hold such fragments and it is quite natural to use a Node for this purpose. While it is true that a Document object could fulfil this role, a Document object can potentially be a heavyweight object, depending on the underlying implementation. What is really needed for this is a very lightweight object. DocumentFragment is such an object.

Furthermore, various operations -- such as inserting nodes as children of another Node -- may take DocumentFragment objects as arguments; this results in all the child nodes of the DocumentFragment being moved to the child list of this node.

The children of a DocumentFragment node are zero or more nodes representing the tops of any sub-trees defining the structure of the document. DocumentFragment nodes do not need to be well-formed XML documents (although they do need to follow the rules imposed upon well-formed XML parsed entities, which can have multiple top nodes). For example, a DocumentFragment might have only one child and that child node could be a Text node. Such a structure model represents neither an HTML document nor a well-formed XML document.

When a DocumentFragment is inserted into a Document (or indeed any other Node that may take children) the children of the DocumentFragment and not the DocumentFragment itself are inserted into the Node . This makes the DocumentFragment very useful when the user wishes to create nodes that are siblings; the DocumentFragment acts as the parent of these nodes so that the user can use the standard methods from the Node interface, such as insertBefore() and appendChild() .

Definition at line 991 of file dom_doc.h.


Constructor & Destructor Documentation

DOM::DocumentFragment::DocumentFragment (  ) 

Definition at line 560 of file dom_doc.cpp.

DOM::DocumentFragment::DocumentFragment ( const DocumentFragment &  other  ) 

Definition at line 564 of file dom_doc.cpp.

DOM::DocumentFragment::DocumentFragment ( const Node &  other  )  [inline]

Definition at line 1000 of file dom_doc.h.

DOM::DocumentFragment::~DocumentFragment (  ) 

Definition at line 588 of file dom_doc.cpp.

DOM::DocumentFragment::DocumentFragment ( DocumentFragmentImpl *  i  )  [protected]

Definition at line 592 of file dom_doc.cpp.


Member Function Documentation

DocumentFragment & DOM::DocumentFragment::operator= ( const DocumentFragment &  other  ) 

Definition at line 582 of file dom_doc.cpp.

DocumentFragment & DOM::DocumentFragment::operator= ( const Node &  other  ) 

Reimplemented from DOM::Node.

Definition at line 568 of file dom_doc.cpp.


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

KHTML

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

API Reference

Skip menu "API Reference"
  • dcop
  • DNSSD
  • interfaces
  • Kate
  • kconf_update
  • KDECore
  • KDED
  • kdefx
  • KDEsu
  • kdeui
  • KDocTools
  • KHTML
  • KImgIO
  • KInit
  • kio
  • kioslave
  • KJS
  • KNewStuff
  • KParts
  • KUtils
Generated for API Reference by doxygen 1.5.9
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