|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.enhydra.apache.xerces.dom.RangeImpl
The RangeImpl class implements the org.w3c.dom.range.Range interface.
Please see the API documentation for the interface classes and use the interfaces in your client programs.
Field Summary | |
(package private) static int |
CLONE_CONTENTS
|
(package private) static int |
DELETE_CONTENTS
|
(package private) static int |
EXTRACT_CONTENTS
|
(package private) Node |
fDeleteNode
|
(package private) boolean |
fDetach
|
(package private) DocumentImpl |
fDocument
|
(package private) Node |
fEndContainer
|
(package private) int |
fEndOffset
|
(package private) Node |
fInsertNode
|
(package private) boolean |
fIsCollapsed
|
(package private) Node |
fRemoveChild
This function is called within Range instead of Node.removeChild, so that the range can remember that it is actively removing this child. |
(package private) Node |
fSplitNode
|
(package private) Node |
fStartContainer
|
(package private) int |
fStartOffset
|
Fields inherited from interface org.w3c.dom.ranges.Range |
END_TO_END, END_TO_START, START_TO_END, START_TO_START |
Constructor Summary | |
RangeImpl(DocumentImpl document)
The constructor. |
Method Summary | |
(package private) void |
checkIndex(Node refNode,
int offset)
|
DocumentFragment |
cloneContents()
Duplicates the contents of a Range |
Range |
cloneRange()
Produces a new Range whose boundary-points are equal to the boundary-points of the Range. |
void |
collapse(boolean toStart)
Collapse a Range onto one of its boundary-points |
short |
compareBoundaryPoints(short how,
Range sourceRange)
Compare the boundary-points of two Ranges in a document. |
void |
deleteContents()
Removes the contents of a Range from the containing document or document fragment without returning a reference to the removed content. |
(package private) void |
deleteData(CharacterData node,
int offset,
int count)
This function inserts text into a Node and invokes a method to fix-up all other Ranges. |
void |
detach()
Called to indicate that the Range is no longer in use and that the implementation may relinquish any resources associated with this Range. |
DocumentFragment |
extractContents()
Moves the contents of a Range from the containing document or document fragment to a new DocumentFragment. |
boolean |
getCollapsed()
TRUE if the Range is collapsed |
Node |
getCommonAncestorContainer()
The deepest common ancestor container of the Range's two boundary-points. |
Node |
getEndContainer()
Node within which the Range ends |
int |
getEndOffset()
Offset within the ending node of the Range. |
Node |
getStartContainer()
Node within which the Range begins |
int |
getStartOffset()
Offset within the starting node of the Range. |
(package private) int |
indexOf(Node child,
Node parent)
what is the index of the child in the parent |
(package private) void |
insertData(CharacterData node,
int index,
java.lang.String insert)
This function inserts text into a Node and invokes a method to fix-up all other Ranges. |
void |
insertedNodeFromDOM(Node node)
This function is called from the DOM. |
void |
insertNode(Node newNode)
Inserts a node into the Document or DocumentFragment at the start of the Range. |
(package private) boolean |
isAncestorOf(Node a,
Node b)
is a an ancestor of b ? |
(package private) Node |
nextNode(Node node,
boolean visitChildren)
|
(package private) void |
receiveDeletedText(Node node,
int offset,
int count)
This function is called from DOM. |
(package private) void |
receiveInsertedText(Node node,
int index,
int len)
This function is called from DOM. |
(package private) void |
receiveReplacedText(Node node)
This function is called from DOM. |
(package private) void |
receiveSplitData(Node node,
Node newNode,
int offset)
Fix up this Range if another Range has split a Text Node into 2 Nodes. |
(package private) Node |
removeChild(Node parent,
Node child)
|
(package private) void |
removeNode(Node node)
This function must be called by the DOM _BEFORE_ a node is deleted, because at that time it is connected in the DOM tree, which we depend on. |
void |
selectNode(Node refNode)
Select a node and its contents |
void |
selectNodeContents(Node refNode)
Select the contents within a node |
void |
setEnd(Node refNode,
int offset)
Sets the attributes describing the end of a Range. |
void |
setEndAfter(Node refNode)
Sets the end of a Range to be after a node |
void |
setEndBefore(Node refNode)
Sets the end position to be before a node. |
void |
setStart(Node refNode,
int offset)
Sets the attributes describing the start of the Range. |
void |
setStartAfter(Node refNode)
Sets the start position to be after a node |
void |
setStartBefore(Node refNode)
Sets the start position to be before a node |
(package private) void |
signalSplitData(Node node,
Node newNode,
int offset)
Signal other Ranges to update their start/end containers/offsets. |
void |
surroundContents(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. |
java.lang.String |
toString()
Returns the contents of a Range as a string. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
DocumentImpl fDocument
Node fStartContainer
Node fEndContainer
int fStartOffset
int fEndOffset
boolean fIsCollapsed
boolean fDetach
Node fInsertNode
Node fDeleteNode
Node fSplitNode
Node fRemoveChild
static final int EXTRACT_CONTENTS
static final int CLONE_CONTENTS
static final int DELETE_CONTENTS
Constructor Detail |
public RangeImpl(DocumentImpl document)
Method Detail |
public Node getStartContainer()
Range
getStartContainer
in interface Range
public int getStartOffset()
Range
getStartOffset
in interface Range
public Node getEndContainer()
Range
getEndContainer
in interface Range
public int getEndOffset()
Range
getEndOffset
in interface Range
public boolean getCollapsed()
Range
getCollapsed
in interface Range
public Node getCommonAncestorContainer()
Range
getCommonAncestorContainer
in interface Range
public void setStart(Node refNode, int offset) throws RangeException, DOMException
Range
setStart
in interface Range
DOMException
- INDEX_SIZE_ERR: Raised if offset
is negative or greater
than the number of child units in refNode
. Child units
are 16-bit units if refNode
is a type of CharacterData
node (e.g., a Text or Comment node) or a ProcessingInstruction
node. Child units are Nodes in all other cases.
detach()
has already
been invoked on this object.
RangeException
- INVALID_NODE_TYPE_ERR: Raised if refNode
or an ancestor
of refNode
is an Entity, Notation, or DocumentType
node.public void setEnd(Node refNode, int offset) throws RangeException, DOMException
Range
setEnd
in interface Range
DOMException
- INDEX_SIZE_ERR: Raised if offset
is negative or greater
than the number of child units in refNode
. Child units
are 16-bit units if refNode
is a type of CharacterData
node (e.g., a Text or Comment node) or a ProcessingInstruction
node. Child units are Nodes in all other cases.
detach()
has already
been invoked on this object.
RangeException
- INVALID_NODE_TYPE_ERR: Raised if refNode
or an ancestor
of refNode
is an Entity, Notation, or DocumentType
node.public void setStartBefore(Node refNode) throws RangeException
Range
setStartBefore
in interface Range
RangeException
- INVALID_NODE_TYPE_ERR: Raised if the root container of
refNode
is not an Attr, Document, or DocumentFragment
node or if refNode
is a Document, DocumentFragment,
Attr, Entity, or Notation node.public void setStartAfter(Node refNode) throws RangeException
Range
setStartAfter
in interface Range
RangeException
- INVALID_NODE_TYPE_ERR: Raised if the root container of
refNode
is not an Attr, Document, or DocumentFragment
node or if refNode
is a Document, DocumentFragment,
Attr, Entity, or Notation node.public void setEndBefore(Node refNode) throws RangeException
Range
setEndBefore
in interface Range
RangeException
- INVALID_NODE_TYPE_ERR: Raised if the root container of
refNode
is not an Attr, Document, or DocumentFragment
node or if refNode
is a Document, DocumentFragment,
Attr, Entity, or Notation node.public void setEndAfter(Node refNode) throws RangeException
Range
setEndAfter
in interface Range
RangeException
- INVALID_NODE_TYPE_ERR: Raised if the root container of
refNode
is not an Attr, Document or DocumentFragment
node or if refNode
is a Document, DocumentFragment,
Attr, Entity, or Notation node.public void collapse(boolean toStart)
Range
collapse
in interface Range
public void selectNode(Node refNode) throws RangeException
Range
selectNode
in interface Range
RangeException
- INVALID_NODE_TYPE_ERR: Raised if an ancestor of refNode
is an Entity, Notation or DocumentType node or if
refNode
is a Document, DocumentFragment, Attr, Entity,
or Notation node.public void selectNodeContents(Node refNode) throws RangeException
Range
selectNodeContents
in interface Range
RangeException
- INVALID_NODE_TYPE_ERR: Raised if refNode
or an ancestor
of refNode
is an Entity, Notation or DocumentType node.public short compareBoundaryPoints(short how, Range sourceRange) throws DOMException
Range
compareBoundaryPoints
in interface Range
sourceRange
.
DOMException
- WRONG_DOCUMENT_ERR: Raised if the two Ranges are not in the same
Document or DocumentFragment.
detach()
has already
been invoked on this object.public void deleteContents() throws DOMException
Range
deleteContents
in interface Range
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.
detach()
has already
been invoked on this object.public DocumentFragment extractContents() throws DOMException
Range
extractContents
in interface Range
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.
detach()
has already
been invoked on this object.public DocumentFragment cloneContents() throws DOMException
Range
cloneContents
in interface Range
DOMException
- HIERARCHY_REQUEST_ERR: Raised if a DocumentType node would be
extracted into the new DocumentFragment.
detach()
has already
been invoked on this object.public void insertNode(Node newNode) throws DOMException, RangeException
Range
insertNode
in interface Range
RangeException
- INVALID_NODE_TYPE_ERR: Raised if newNode
is an Attr,
Entity, Notation, or Document node.
DOMException
- NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor container of the
start of the Range is read-only.
newNode
and the
container of the start of the Range were not created from the same
document.
newNode
or if newNode
is an ancestor of
the container.
detach()
has already
been invoked on this object.public void surroundContents(Node newParent) throws DOMException, RangeException
Range
surroundContents
in interface Range
RangeException
- BAD_BOUNDARYPOINTS_ERR: Raised if the Range partially selects a
non-text node.
node
is an Attr,
Entity, DocumentType, Notation, Document, or DocumentFragment node.
DOMException
- NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor container of
either boundary-point of the Range is read-only.
newParent
and the
container of the start of the Range were not created from the same
document.
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
.
detach()
has already
been invoked on this object.public Range cloneRange()
Range
cloneRange
in interface Range
public java.lang.String toString()
Range
toString
in interface Range
toString
in class java.lang.Object
public void detach()
Range
DOMException
being thrown with an
error code of INVALID_STATE_ERR
.
detach
in interface Range
void signalSplitData(Node node, Node newNode, int offset)
void receiveSplitData(Node node, Node newNode, int offset)
void deleteData(CharacterData node, int offset, int count)
void receiveDeletedText(Node node, int offset, int count)
void insertData(CharacterData node, int index, java.lang.String insert)
void receiveInsertedText(Node node, int index, int len)
void receiveReplacedText(Node node)
public void insertedNodeFromDOM(Node node)
Node removeChild(Node parent, Node child)
void removeNode(Node node)
void checkIndex(Node refNode, int offset) throws DOMException
DOMException
Node nextNode(Node node, boolean visitChildren)
boolean isAncestorOf(Node a, Node b)
int indexOf(Node child, Node parent)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |