GdomeCharacterData

Name

GdomeCharacterData -- Interface CharacterData implementation.

Synopsis



struct      GdomeCharacterData;
GdomeDOMString* gdome_cd_data               (GdomeCharacterData *self,
                                             GdomeException *exc);
void        gdome_cd_set_data               (GdomeCharacterData *self,
                                             GdomeDOMString *data,
                                             GdomeException *exc);
gulong      gdome_cd_length                 (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeDOMString* gdome_cd_substringData      (GdomeCharacterData *self,
                                             gulong offset,
                                             gulong count,
                                             GdomeException *exc);
void        gdome_cd_appendData             (GdomeCharacterData *self,
                                             GdomeDOMString *arg,
                                             GdomeException *exc);
void        gdome_cd_insertData             (GdomeCharacterData *self,
                                             gulong offset,
                                             GdomeDOMString *arg,
                                             GdomeException *exc);
void        gdome_cd_deleteData             (GdomeCharacterData *self,
                                             gulong offset,
                                             gulong count,
                                             GdomeException *exc);
void        gdome_cd_replaceData            (GdomeCharacterData *self,
                                             gulong offset,
                                             gulong count,
                                             GdomeDOMString *arg,
                                             GdomeException *exc);
void        gdome_cd_ref                    (GdomeCharacterData *self,
                                             GdomeException *exc);
void        gdome_cd_unref                  (GdomeCharacterData *self,
                                             GdomeException *exc);
gpointer    gdome_cd_query_interface        (GdomeCharacterData *self,
                                             const char *interface,
                                             GdomeException *exc);
GdomeDOMString* gdome_cd_nodeName           (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeDOMString* gdome_cd_nodeValue          (GdomeCharacterData *self,
                                             GdomeException *exc);
void        gdome_cd_set_nodeValue          (GdomeCharacterData *self,
                                             GdomeDOMString *nodeValue,
                                             GdomeException *exc);
unsigned short gdome_cd_nodeType            (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeNode*  gdome_cd_parentNode             (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeNodeList* gdome_cd_childNodes          (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeNode*  gdome_cd_firstChild             (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeNode*  gdome_cd_lastChild              (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeNode*  gdome_cd_previousSibling        (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeNode*  gdome_cd_nextSibling            (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeNamedNodeMap* gdome_cd_attributes      (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeDocument* gdome_cd_ownerDocument       (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeNode*  gdome_cd_insertBefore           (GdomeCharacterData *self,
                                             GdomeNode *newChild,
                                             GdomeNode *refChild,
                                             GdomeException *exc);
GdomeNode*  gdome_cd_replaceChild           (GdomeCharacterData *self,
                                             GdomeNode *newChild,
                                             GdomeNode *oldChild,
                                             GdomeException *exc);
GdomeNode*  gdome_cd_removeChild            (GdomeCharacterData *self,
                                             GdomeNode *oldChild,
                                             GdomeException *exc);
GdomeNode*  gdome_cd_appendChild            (GdomeCharacterData *self,
                                             GdomeNode *newChild,
                                             GdomeException *exc);
GdomeBoolean gdome_cd_hasChildNodes         (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeNode*  gdome_cd_cloneNode              (GdomeCharacterData *self,
                                             GdomeBoolean deep,
                                             GdomeException *exc);
void        gdome_cd_normalize              (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeBoolean gdome_cd_isSupported           (GdomeCharacterData *self,
                                             GdomeDOMString *feature,
                                             GdomeDOMString *version,
                                             GdomeException *exc);
GdomeDOMString* gdome_cd_namespaceURI       (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeDOMString* gdome_cd_prefix             (GdomeCharacterData *self,
                                             GdomeException *exc);
void        gdome_cd_set_prefix             (GdomeCharacterData *self,
                                             GdomeDOMString *prefix,
                                             GdomeException *exc);
GdomeDOMString* gdome_cd_localName          (GdomeCharacterData *self,
                                             GdomeException *exc);
GdomeBoolean gdome_cd_hasAttributes         (GdomeCharacterData *self,
                                             GdomeException *exc);
void        gdome_cd_addEventListener       (GdomeCharacterData *self,
                                             GdomeDOMString *type,
                                             GdomeEventListener *listener,
                                             GdomeBoolean useCapture,
                                             GdomeException *exc);
void        gdome_cd_removeEventListener    (GdomeCharacterData *self,
                                             GdomeDOMString *type,
                                             GdomeEventListener *listener,
                                             GdomeBoolean useCapture,
                                             GdomeException *exc);
GdomeBoolean gdome_cd_dispatchEvent         (GdomeCharacterData *self,
                                             GdomeEvent *evt,
                                             GdomeException *exc);
void        gdome_cd_subTreeDispatchEvent   (GdomeCharacterData *self,
                                             GdomeEvent *evt,
                                             GdomeException *exc);
GdomeBoolean gdome_cd_canAppend             (GdomeCharacterData *self,
                                             GdomeNode *newChild,
                                             GdomeException *exc);

Description

The GdomeCharacterData interface extends GdomeNode with a set of methods for accessing character data in the DOM. For clarity this set is defined here rather than on each object that uses these attributes and methods. No DOM objects correspond directly to GdomeCharacterData, though GdomeText and others do inherit the interface from it. All offsets in this interface start from 0.

As explained in the GdomeDOMString interface, text strings in Gdome2 are represented in UTF-8. In the following, the term 16-bit units is used whenever necessary to indicate that indexing on GdomeCharacterData is done in 16-bit units.

Details

struct GdomeCharacterData

struct GdomeCharacterData {
	gpointer user_data;
};


gdome_cd_data ()

GdomeDOMString* gdome_cd_data               (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_set_data ()

void        gdome_cd_set_data               (GdomeCharacterData *self,
                                             GdomeDOMString *data,
                                             GdomeException *exc);

Sets the data value of this node.

GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.


gdome_cd_length ()

gulong      gdome_cd_length                 (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_substringData ()

GdomeDOMString* gdome_cd_substringData      (GdomeCharacterData *self,
                                             gulong offset,
                                             gulong count,
                                             GdomeException *exc);

Extracts a range of data from the node.

GDOME_INDEX_SIZE_ERR: Raised if the specified offset is greater than the number of 16-bit units in data.


gdome_cd_appendData ()

void        gdome_cd_appendData             (GdomeCharacterData *self,
                                             GdomeDOMString *arg,
                                             GdomeException *exc);

Append the string to the end of the character data of the node. Upon success, data provides access to the concatenation of data and the string specified.

GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.


gdome_cd_insertData ()

void        gdome_cd_insertData             (GdomeCharacterData *self,
                                             gulong offset,
                                             GdomeDOMString *arg,
                                             GdomeException *exc);

Insert a string at the specified 16-bit unit offset.

GDOME_INDEX_SIZE_ERR: Raised if the specified offset is greater than the number of 16-bit units in data. GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.


gdome_cd_deleteData ()

void        gdome_cd_deleteData             (GdomeCharacterData *self,
                                             gulong offset,
                                             gulong count,
                                             GdomeException *exc);

Remove a range of 16-bit units from the node. If the sum of offset and count exceeds length then all 16-bit units from offset to the end of the data are deleted. Upon success, data and length reflect the change.

GDOME_INDEX_SIZE_ERR: Raised if the specified offset is greater than the number of 16-bit units in data. GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.


gdome_cd_replaceData ()

void        gdome_cd_replaceData            (GdomeCharacterData *self,
                                             gulong offset,
                                             gulong count,
                                             GdomeDOMString *arg,
                                             GdomeException *exc);

Replace the characters starting at the specified 16-bit unit offset with the specified string. If the sum of offset and count exceeds length, then all 16-bit units to the end of the data are replaced;

GDOME_INDEX_SIZE_ERR: Raised if the specified offset is greater than the number of 16-bit units in data. GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.


gdome_cd_ref ()

void        gdome_cd_ref                    (GdomeCharacterData *self,
                                             GdomeException *exc);

Increase the reference count of the specified Node.


gdome_cd_unref ()

void        gdome_cd_unref                  (GdomeCharacterData *self,
                                             GdomeException *exc);

Decrease the reference count of the specified Node. Free the Node structure if the Node will have zero reference.


gdome_cd_query_interface ()

gpointer    gdome_cd_query_interface        (GdomeCharacterData *self,
                                             const char *interface,
                                             GdomeException *exc);


gdome_cd_nodeName ()

GdomeDOMString* gdome_cd_nodeName           (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_nodeValue ()

GdomeDOMString* gdome_cd_nodeValue          (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_set_nodeValue ()

void        gdome_cd_set_nodeValue          (GdomeCharacterData *self,
                                             GdomeDOMString *nodeValue,
                                             GdomeException *exc);

Sets The value of this node, depending on its type.

GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.


gdome_cd_nodeType ()

unsigned short gdome_cd_nodeType            (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_parentNode ()

GdomeNode*  gdome_cd_parentNode             (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_childNodes ()

GdomeNodeList* gdome_cd_childNodes          (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_firstChild ()

GdomeNode*  gdome_cd_firstChild             (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_lastChild ()

GdomeNode*  gdome_cd_lastChild              (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_previousSibling ()

GdomeNode*  gdome_cd_previousSibling        (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_nextSibling ()

GdomeNode*  gdome_cd_nextSibling            (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_attributes ()

GdomeNamedNodeMap* gdome_cd_attributes      (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_ownerDocument ()

GdomeDocument* gdome_cd_ownerDocument       (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_insertBefore ()

GdomeNode*  gdome_cd_insertBefore           (GdomeCharacterData *self,
                                             GdomeNode *newChild,
                                             GdomeNode *refChild,
                                             GdomeException *exc);

Inserts the node newChild before the existing child node refChild. If refChild is NULL, insert newChild at the end of the list of children. If newChild is a DocumentFragment node, all of its children are inserted, in the same order, before refChild. If the newChild is already in the tree, it is first removed.

GDOME_HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of the newChild node, or if the node to insert is one of this node's ancestors or this node itself. GDOME_WRONG_DOCUMENT_ERR: Raised if newChild was created from a different document than the one that created this node. GDOME_NOT_FOUND_ERR: Raised if refChild is not a child of this node. GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.


gdome_cd_replaceChild ()

GdomeNode*  gdome_cd_replaceChild           (GdomeCharacterData *self,
                                             GdomeNode *newChild,
                                             GdomeNode *oldChild,
                                             GdomeException *exc);

Replaces the child node oldChild with newChild in the list of children, and returns the oldChild node. If newChild is a DocumentFragment object, oldChild is replaced by all of the DocumentFragment children, which are inserted in the same order. If the newChild is already in the tree, it is first removed.

GDOME_HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of the newChild node, or if the node to put in is one of this node's ancestors or this node itself. GDOME_WRONG_DOCUMENT_ERR: Raised if newChild was created from a different document than the one that created this node. GDOME_NOT_FOUND_ERR: Raised if oldChild is not a child of this node. GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.


gdome_cd_removeChild ()

GdomeNode*  gdome_cd_removeChild            (GdomeCharacterData *self,
                                             GdomeNode *oldChild,
                                             GdomeException *exc);

Removes the child node indicated by oldChild from the list of children, and returns it.

GDOME_NOT_FOUND_ERR: Raised if oldChild is not a child of this node. GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.


gdome_cd_appendChild ()

GdomeNode*  gdome_cd_appendChild            (GdomeCharacterData *self,
                                             GdomeNode *newChild,
                                             GdomeException *exc);

Adds the node newChild to the end of the list of children of this node. If the newChild is already in the tree, it is first removed. If it is a DocumentFragment node, the entire contents of the document fragment are moved into the child list of this node

GDOME_HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of the newChild node, or if the node to append is one of this node's ancestors or this node itself. GDOME_WRONG_DOCUMENT_ERR: Raised if newChild was created from a different document than the one that created this node. GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.


gdome_cd_hasChildNodes ()

GdomeBoolean gdome_cd_hasChildNodes         (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_cloneNode ()

GdomeNode*  gdome_cd_cloneNode              (GdomeCharacterData *self,
                                             GdomeBoolean deep,
                                             GdomeException *exc);

Makes a duplicate of this node, i.e., serves as a generic copy constructor for nodes. The duplicate node has no parent; (parentNode is NULL). GDOME_DOCUMENT_TYPE_NODE, GDOME_NOTATION_NODE and GDOME_ENTITY_NODE nodes are not supported.

GDOME_NOT_SUPPORTED_ERR: Raised if the type of node being cloned is not supported.


gdome_cd_normalize ()

void        gdome_cd_normalize              (GdomeCharacterData *self,
                                             GdomeException *exc);

Puts all Text nodes in the full depth of the sub-tree underneath this Node, including attribute nodes, into a "normal" form where only structure (e.g., elements, comments, processing instructions, CDATA sections, and entity references) separates Text nodes, i.e., there are neither adjacent Text nodes nor empty Text nodes.


gdome_cd_isSupported ()

GdomeBoolean gdome_cd_isSupported           (GdomeCharacterData *self,
                                             GdomeDOMString *feature,
                                             GdomeDOMString *version,
                                             GdomeException *exc);

Tests whether the DOM implementation implements a specific feature and that feature is supported by this node.


gdome_cd_namespaceURI ()

GdomeDOMString* gdome_cd_namespaceURI       (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_prefix ()

GdomeDOMString* gdome_cd_prefix             (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_set_prefix ()

void        gdome_cd_set_prefix             (GdomeCharacterData *self,
                                             GdomeDOMString *prefix,
                                             GdomeException *exc);

Sets a new nemaspace prefix for this node.

GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly. GDOME_NAMESPACE_ERR: Raised if the specified prefix is malformed per the Namespaces in XML specification, if the namespaceURI of this node is NULL, if the specified prefix is "xml" and the namespaceURI of this node is different from "http://www.w3.org/XML/1998/namespace", if this node is an attribute and the specified prefix is "xmlns" and the namespaceURI of this node is different from "http://www.w3.org/2000/xmlns/", or if this node is an attribute and the qualifiedName of this node is "xmlns".


gdome_cd_localName ()

GdomeDOMString* gdome_cd_localName          (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_hasAttributes ()

GdomeBoolean gdome_cd_hasAttributes         (GdomeCharacterData *self,
                                             GdomeException *exc);


gdome_cd_addEventListener ()

void        gdome_cd_addEventListener       (GdomeCharacterData *self,
                                             GdomeDOMString *type,
                                             GdomeEventListener *listener,
                                             GdomeBoolean useCapture,
                                             GdomeException *exc);

This method allows the registration of event listeners on the event target. If an EventListener is added to an EventTarget while it is processing an event, it will not be triggered by the current actions but may be triggered during a later stage of event flow, such as the bubbling phase. If multiple identical EventListeners are registered on the same EventTarget with the same parameters the duplicate instances are discarded. They do not cause the EventListener to be called twice and since they are discarded they do not need to be removed with the removeEventListener method.


gdome_cd_removeEventListener ()

void        gdome_cd_removeEventListener    (GdomeCharacterData *self,
                                             GdomeDOMString *type,
                                             GdomeEventListener *listener,
                                             GdomeBoolean useCapture,
                                             GdomeException *exc);

This method allows the removal of event listeners from the event target. If an EventListener is removed from an EventTarget while it is processing an event, it will not be triggered by the current actions. EventListeners can never be invoked after being removed. Calling removeEventListener with arguments which do not identify any currently registered EventListener on the EventTarget has no effect.


gdome_cd_dispatchEvent ()

GdomeBoolean gdome_cd_dispatchEvent         (GdomeCharacterData *self,
                                             GdomeEvent *evt,
                                             GdomeException *exc);

This method allows the dispatch of events into the implementations event model. Events dispatched in this manner will have the same capturing and bubbling behavior as events dispatched directly by the implementation. The target of the event is the EventTarget on which dispatchEvent is called.

GDOME_UNSPECIFIED_EVENT_TYPE_ERR: Raised if the Event's type was not specified by initializing the event before dispatchEvent was called. Specification of the Event's type as NULL or an empty string will also trigger this exception.


gdome_cd_subTreeDispatchEvent ()

void        gdome_cd_subTreeDispatchEvent   (GdomeCharacterData *self,
                                             GdomeEvent *evt,
                                             GdomeException *exc);

This method allows the dispatch of events into the implementations event model. Events dispatched in this manner will have the same capturing and bubbling behavior as events dispatched directly by the implementation. The target of the event is any nodes in the subtree of the EventTarget on which dispatchEvent is called.

GDOME_UNSPECIFIED_EVENT_TYPE_ERR: Raised if the Event's type was not specified by initializing the event before dispatchEvent was called. Specification of the Event's type as NULL or an empty string will also trigger this exception.


gdome_cd_canAppend ()

GdomeBoolean gdome_cd_canAppend             (GdomeCharacterData *self,
                                             GdomeNode *newChild,
                                             GdomeException *exc);

Tests if a newChild can be added in the child list of this node.