Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   Related Pages  

DOM::Range Class Reference

#include <dom2_range.h>

List of all members.

Public Types

enum  CompareHow { START_TO_START = 0, START_TO_END = 1, END_TO_END = 2, END_TO_START = 3 }

Public Methods

 Range ()
 Range (const Document rootContainer)
 Range (const Range &other)
 Range (const Node startContainer, const long startOffset, const Node endContainer, const long endOffset)
Range & operator= (const Range &other)
 ~Range ()
Node startContainer () const
long startOffset () const
Node endContainer () const
long endOffset () const
bool collapsed () const
Node commonAncestorContainer ()
void setStart (const Node &refNode, long offset)
void setEnd (const Node &refNode, long offset)
void setStartBefore (const Node &refNode)
void setStartAfter (const Node &refNode)
void setEndBefore (const Node &refNode)
void setEndAfter (const Node &refNode)
void collapse (bool toStart)
void selectNode (const Node &refNode)
void selectNodeContents (const Node &refNode)
short compareBoundaryPoints (CompareHow how, const Range &sourceRange)
bool boundaryPointsValid ()
void deleteContents ()
DocumentFragment extractContents ()
DocumentFragment cloneContents ()
void insertNode (const Node &newNode)
void surroundContents (const Node &newParent)
Range cloneRange ()
DOMString toString ()
DOMString toHTML ()
DocumentFragment createContextualFragment (const DOMString &html)
void detach ()
bool isDetached () const
RangeImpl * handle () const
bool isNull () const

Protected Methods

 Range (RangeImpl *i)

Protected Attributes

RangeImpl * impl

Friends

class DocumentImpl
class Document
class RangeImpl


Member Enumeration Documentation

enum DOM::Range::CompareHow
 

Enumeration values:
START_TO_START 
START_TO_END 
END_TO_END 
END_TO_START 


Constructor & Destructor Documentation

DOM::Range::Range  
 

DOM::Range::Range const Document    rootContainer
 

DOM::Range::Range const Range &    other
 

DOM::Range::Range const Node    startContainer,
const long    startOffset,
const Node    endContainer,
const long    endOffset
 

DOM::Range::~Range  
 

DOM::Range::Range RangeImpl *    i [protected]
 


Member Function Documentation

Range& DOM::Range::operator= const Range &    other
 

Node DOM::Range::startContainer  
 

Node within which the range begins.

long DOM::Range::startOffset  
 

Offset within the starting node of the range.

Node DOM::Range::endContainer  
 

Node within which the range ends.

long DOM::Range::endOffset  
 

Offset within the ending node of the range.

bool DOM::Range::collapsed  
 

true if the range is collapsed

Node DOM::Range::commonAncestorContainer  
 

Gets the common ancestor container of the range's two end-points.

Also sets it.

void DOM::Range::setStart const Node   refNode,
long    offset
 

Sets the attributes describing the start of the range.

Parameters:
refNode  The refNode value. This parameter must be different from null .
offset  The startOffset value.
Returns:
Exceptions:
RangeException  NULL_NODE_ERR: Raised if refNode is null .
INVALID_NODE_TYPE_ERR: Raised if refNode or an ancestor of refNode is an Attr, Entity, Notation, or DocumentType node.

If an offset is out-of-bounds, should it just be fixed up or should an exception be raised.

void DOM::Range::setEnd const Node   refNode,
long    offset
 

Sets the attributes describing the end of a range.

Parameters:
refNode  The refNode value. This parameter must be different from null .
offset  The endOffset value.
Returns:
Exceptions:
RangeException  NULL_NODE_ERR: Raised if refNode is null .
INVALID_NODE_TYPE_ERR: Raised if refNode or an ancestor of refNode is an Attr, Entity, Notation, or DocumentType node.

void DOM::Range::setStartBefore const Node   refNode
 

Sets the start position to be before a node.

Parameters:
refNode  Range starts before refNode
Returns:
Exceptions:
RangeException  INVALID_NODE_TYPE_ERR: Raised if an ancestor of refNode is an Attr, Entity, Notation, or DocumentType node or if refNode is a Document, DocumentFragment, Attr, Entity, or Notation node.

void DOM::Range::setStartAfter const Node   refNode
 

Sets the start position to be after a node.

Parameters:
refNode  Range starts after refNode
Returns:
Exceptions:
RangeException  INVALID_NODE_TYPE_ERR: Raised if an ancestor of refNode is an Attr, Entity, Notation, or DocumentType node or if refNode is a Document, DocumentFragment, Attr, Entity, or Notation node.

void DOM::Range::setEndBefore const Node   refNode
 

Sets the end position to be before a node.

Parameters:
refNode  Range ends before refNode
Returns:
Exceptions:
RangeException  INVALID_NODE_TYPE_ERR: Raised if an ancestor of refNode is an Attr, Entity, Notation, or DocumentType node or if refNode is a Document, DocumentFragment, Attr, Entity, or Notation node.

void DOM::Range::setEndAfter const Node   refNode
 

Sets the end of a range to be after a node.

Parameters:
refNode  Range ends after refNode .
Returns:
Exceptions:
RangeException  INVALID_NODE_TYPE_ERR: Raised if an ancestor of refNode is an Attr, Entity, Notation or DocumentType node or if refNode is a Document, DocumentFragment, Attr, Entity, or Notation node.

void DOM::Range::collapse bool    toStart
 

Collapse a range onto one of its end-points.

Parameters:
toStart  If true, collapses the Range onto its start; if false, collapses it onto its end.
Returns:

void DOM::Range::selectNode const Node   refNode
 

Select a node and its contents.

Parameters:
refNode  The node to select.
Returns:
Exceptions:
RangeException  INVALID_NODE_TYPE_ERR: Raised if an ancestor of refNode is an Attr, Entity, Notation or DocumentType node or if refNode is a Document, DocumentFragment, Attr, Entity, or Notation node.

void DOM::Range::selectNodeContents const Node   refNode
 

Select the contents within a node.

Parameters:
refNode  Node to select from
Returns:
Exceptions:
RangeException  INVALID_NODE_TYPE_ERR: Raised if refNode or an ancestor of refNode is an Attr, Entity, Notation or DocumentType node.

short DOM::Range::compareBoundaryPoints CompareHow    how,
const Range &    sourceRange
 

Compare the end-points of two ranges in a document.

Parameters:
how 
sourceRange 
Returns:
-1, 0 or 1 depending on whether the corresponding end-point of the Range is before, equal to, or after the corresponding end-point of sourceRange .
Exceptions:
DOMException  WRONG_DOCUMENT_ERR: Raised if the two Ranges are not in the same document or document fragment.

bool DOM::Range::boundaryPointsValid  
 

void DOM::Range::deleteContents  
 

Removes the contents of a range from the containing document or document fragment without returning a reference to the removed content.

Returns:
Exceptions:
DOMException  NO_MODIFICATION_ALLOWED_ERR: Raised if any portion of the content of the range is read-only or any of the nodes that contain any of the content of the range are read-only.

DocumentFragment DOM::Range::extractContents  
 

Moves the contents of a range from the containing document or document fragment to a new DocumentFragment.

Returns:
A DocumentFragment containing the extracted contents.
Exceptions:
DOMException  NO_MODIFICATION_ALLOWED_ERR: Raised if any portion of the content of the range is read-only or any of the nodes which contain any of the content of the range are read-only.
HIERARCHY_REQUEST_ERR: Raised if a DocumentType node would be extracted into the new DocumentFragment.

DocumentFragment DOM::Range::cloneContents  
 

Duplicates the contents of a range.

Returns:
A DocumentFragment containing contents equivalent to those of this range.
Exceptions:
DOMException  HIERARCHY_REQUEST_ERR: Raised if a DocumentType node would be extracted into the new DocumentFragment.

void DOM::Range::insertNode const Node   newNode
 

Inserts a node into the document or document fragment at the start of the range.

Parameters:
newNode  The node to insert at the start of the range
Returns:
Exceptions:
DOMException  NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor container of the start of the range is read-only.
WRONG_DOCUMENT_ERR: Raised if newNode and the container of the start of the Range were not created from the same document.

HIERARCHY_REQUEST_ERR: Raised if the container of the start of the Range is of a type that does not allow children of the type of newNode or if newNode is an ancestor of the container .

Exceptions:
RangeException  INVALID_NODE_TYPE_ERR: Raised if node is an Attr, Entity, Notation, DocumentFragment, or Document node.

void DOM::Range::surroundContents const Node   newParent
 

Reparents the contents of the range to the given node and inserts the node at the position of the start of the range.

Parameters:
newParent  The node to surround the contents with.
Returns:
Exceptions:
DOMException  NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor container of either end-point of the range is read-only.
WRONG_DOCUMENT_ERR: Raised if newParent and the container of the start of the Range were not created from the same document.

HIERARCHY_REQUEST_ERR: Raised if the container of the start of the Range is of a type that does not allow children of the type of newParent or if newParent is an ancestor of the container or if node would end up with a child node of a type not allowed by the type of node .

Exceptions:
RangeException  BAD_ENDPOINTS_ERR: Raised if the range partially selects a non-text node.
INVALID_NODE_TYPE_ERR: Raised if node is an Attr, Entity, DocumentType, Notation, Document, or DocumentFragment node.

Range DOM::Range::cloneRange  
 

Produces a new range whose end-points are equal to the end-points of the range.

Returns:
The duplicated range.

DOMString DOM::Range::toString  
 

Returns the contents of a range as a string.

Returns:
The contents of the range.

DOMString DOM::Range::toHTML  
 

DocumentFragment DOM::Range::createContextualFragment const DOMString   html
 

void DOM::Range::detach  
 

Called to indicate that the range is no longer in use and that the implementation may relinquish any resources associated with this range.

Subsequent calls to any methods or attribute getters on this range will result in a DOMException being thrown with an error code of INVALID_STATE_ERR.

bool DOM::Range::isDetached  
 

not part of the DOM true if the range is detached

RangeImpl* DOM::Range::handle  
 

bool DOM::Range::isNull  
 


Friends And Related Function Documentation

friend class DocumentImpl [friend]
 

friend class Document [friend]
 

friend class RangeImpl [friend]
 


Member Data Documentation

RangeImpl* DOM::Range::impl [protected]
 


The documentation for this class was generated from the following file:
Generated on Sat Jan 31 23:28:24 2004 for XPath by doxygen1.2.18