GdomeElement

Name

GdomeElement -- Interface Element implementation.

Synopsis



struct      GdomeElement;
GdomeDOMString* gdome_el_tagName            (GdomeElement *self,
                                             GdomeException *exc);
GdomeDOMString* gdome_el_getAttribute       (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeException *exc);
void        gdome_el_setAttribute           (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeDOMString *value,
                                             GdomeException *exc);
void        gdome_el_removeAttribute        (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeException *exc);
GdomeAttr*  gdome_el_getAttributeNode       (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeException *exc);
GdomeAttr*  gdome_el_setAttributeNode       (GdomeElement *self,
                                             GdomeAttr *newAttr,
                                             GdomeException *exc);
GdomeAttr*  gdome_el_removeAttributeNode    (GdomeElement *self,
                                             GdomeAttr *oldAttr,
                                             GdomeException *exc);
GdomeNodeList* gdome_el_getElementsByTagName
                                            (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeException *exc);
GdomeDOMString* gdome_el_getAttributeNS     (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *localName,
                                             GdomeException *exc);
void        gdome_el_setAttributeNS         (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *qualifiedName,
                                             GdomeDOMString *value,
                                             GdomeException *exc);
void        gdome_el_removeAttributeNS      (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *localName,
                                             GdomeException *exc);
GdomeAttr*  gdome_el_getAttributeNodeNS     (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *localName,
                                             GdomeException *exc);
GdomeAttr*  gdome_el_setAttributeNodeNS     (GdomeElement *self,
                                             GdomeAttr *newAttr,
                                             GdomeException *exc);
GdomeNodeList* gdome_el_getElementsByTagNameNS
                                            (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *localName,
                                             GdomeException *exc);
GdomeBoolean gdome_el_hasAttribute          (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeException *exc);
GdomeBoolean gdome_el_hasAttributeNS        (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *localName,
                                             GdomeException *exc);
void        gdome_el_ref                    (GdomeElement *self,
                                             GdomeException *exc);
void        gdome_el_unref                  (GdomeElement *self,
                                             GdomeException *exc);
gpointer    gdome_el_query_interface        (GdomeElement *self,
                                             const char *interface,
                                             GdomeException *exc);
GdomeDOMString* gdome_el_nodeName           (GdomeElement *self,
                                             GdomeException *exc);
GdomeDOMString* gdome_el_nodeValue          (GdomeElement *self,
                                             GdomeException *exc);
void        gdome_el_set_nodeValue          (GdomeElement *self,
                                             GdomeDOMString *nodeValue,
                                             GdomeException *exc);
unsigned short gdome_el_nodeType            (GdomeElement *self,
                                             GdomeException *exc);
GdomeNode*  gdome_el_parentNode             (GdomeElement *self,
                                             GdomeException *exc);
GdomeNodeList* gdome_el_childNodes          (GdomeElement *self,
                                             GdomeException *exc);
GdomeNode*  gdome_el_firstChild             (GdomeElement *self,
                                             GdomeException *exc);
GdomeNode*  gdome_el_lastChild              (GdomeElement *self,
                                             GdomeException *exc);
GdomeNode*  gdome_el_previousSibling        (GdomeElement *self,
                                             GdomeException *exc);
GdomeNode*  gdome_el_nextSibling            (GdomeElement *self,
                                             GdomeException *exc);
GdomeNamedNodeMap* gdome_el_attributes      (GdomeElement *self,
                                             GdomeException *exc);
GdomeDocument* gdome_el_ownerDocument       (GdomeElement *self,
                                             GdomeException *exc);
GdomeNode*  gdome_el_insertBefore           (GdomeElement *self,
                                             GdomeNode *newChild,
                                             GdomeNode *refChild,
                                             GdomeException *exc);
GdomeNode*  gdome_el_replaceChild           (GdomeElement *self,
                                             GdomeNode *newChild,
                                             GdomeNode *oldChild,
                                             GdomeException *exc);
GdomeNode*  gdome_el_removeChild            (GdomeElement *self,
                                             GdomeNode *oldChild,
                                             GdomeException *exc);
GdomeNode*  gdome_el_appendChild            (GdomeElement *self,
                                             GdomeNode *newChild,
                                             GdomeException *exc);
GdomeBoolean gdome_el_hasChildNodes         (GdomeElement *self,
                                             GdomeException *exc);
GdomeNode*  gdome_el_cloneNode              (GdomeElement *self,
                                             GdomeBoolean deep,
                                             GdomeException *exc);
void        gdome_el_normalize              (GdomeElement *self,
                                             GdomeException *exc);
GdomeBoolean gdome_el_isSupported           (GdomeElement *self,
                                             GdomeDOMString *feature,
                                             GdomeDOMString *version,
                                             GdomeException *exc);
GdomeDOMString* gdome_el_namespaceURI       (GdomeElement *self,
                                             GdomeException *exc);
GdomeDOMString* gdome_el_prefix             (GdomeElement *self,
                                             GdomeException *exc);
void        gdome_el_set_prefix             (GdomeElement *self,
                                             GdomeDOMString *prefix,
                                             GdomeException *exc);
GdomeDOMString* gdome_el_localName          (GdomeElement *self,
                                             GdomeException *exc);
GdomeBoolean gdome_el_hasAttributes         (GdomeElement *self,
                                             GdomeException *exc);
void        gdome_el_addEventListener       (GdomeElement *self,
                                             GdomeDOMString *type,
                                             GdomeEventListener *listener,
                                             GdomeBoolean useCapture,
                                             GdomeException *exc);
void        gdome_el_removeEventListener    (GdomeElement *self,
                                             GdomeDOMString *type,
                                             GdomeEventListener *listener,
                                             GdomeBoolean useCapture,
                                             GdomeException *exc);
GdomeBoolean gdome_el_dispatchEvent         (GdomeElement *self,
                                             GdomeEvent *evt,
                                             GdomeException *exc);
void        gdome_el_subTreeDispatchEvent   (GdomeElement *self,
                                             GdomeEvent *evt,
                                             GdomeException *exc);
GdomeBoolean gdome_el_canAppend             (GdomeElement *self,
                                             GdomeNode *newChild,
                                             GdomeException *exc);

Description

The GdomeElement interface represents an element in an HTML or XML document. Elements may have attributes associated with them; since the GdomeElement interface inherits from GdomeNode, the generic GdomeNode interface method gdome_el_attributes() may be used to retrieve the set of all attributes for an element. There are methods on the GdomeElement interface to retrieve either an GdomeAttr object by name or an attribute value by name. In XML, where an attribute value may contain entity references, an GdomeAttr object should be retrieved to examine the possibly fairly complex sub-tree representing the attribute value. On the other hand, in HTML, where all attributes have simple string values, methods to directly access an attribute value can safely be used as a convenience.

Details

struct GdomeElement

struct GdomeElement {
	gpointer user_data;
};


gdome_el_tagName ()

GdomeDOMString* gdome_el_tagName            (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_getAttribute ()

GdomeDOMString* gdome_el_getAttribute       (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeException *exc);

Retrieves an attribute value by name.


gdome_el_setAttribute ()

void        gdome_el_setAttribute           (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeDOMString *value,
                                             GdomeException *exc);

Adds a new attribute. If an attribute with that name is already present in the element, its value is changed to be that of the value parameter.

GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.


gdome_el_removeAttribute ()

void        gdome_el_removeAttribute        (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeException *exc);

Removes an attribute by name. If the removed attribute is known to have a default value, an attribute immediately appears containing the default value as well as the corresponding namespace URI, local name, and prefix when applicable. To remove an attribute by local name and namespace URI, use the gdome_el_removeAttributeNS() function.

GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.


gdome_el_getAttributeNode ()

GdomeAttr*  gdome_el_getAttributeNode       (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeException *exc);

Retrieves an attribute node by name. To retrieve an attribute node by qualified name and namespace URI, use the gdome_el_getAttributeNodeNS() method.


gdome_el_setAttributeNode ()

GdomeAttr*  gdome_el_setAttributeNode       (GdomeElement *self,
                                             GdomeAttr *newAttr,
                                             GdomeException *exc);

Adds a new attribute node. If an attribute with that name is already present in the element, it is replaced by the new one. To add a new attribute node with a qualified name and namespace URI, use the gdome_el_setAttributeNodeNS() method.

GDOME_WRONG_DOCUMENT_ERR: Raised if newAttr was created from a different document than the one that created the element. GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. GDOME_INUSE_ATTRIBUTE_ERR: Raised if newAttr is already an attribute of another Element object. The DOM user must explicitly clone Attr nodes to re-use them in other elements.


gdome_el_removeAttributeNode ()

GdomeAttr*  gdome_el_removeAttributeNode    (GdomeElement *self,
                                             GdomeAttr *oldAttr,
                                             GdomeException *exc);

Removes the specified attribute node. If the removed Attr has a default value it is immediately replaced. The replacing attribute has the same namespace URI and local name, as well as the original prefix, when applicable.

GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. GDOME_NOT_FOUND_ERR: Raised if oldAttr is not an attribute of the element.


gdome_el_getElementsByTagName ()

GdomeNodeList* gdome_el_getElementsByTagName
                                            (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeException *exc);


gdome_el_getAttributeNS ()

GdomeDOMString* gdome_el_getAttributeNS     (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *localName,
                                             GdomeException *exc);

Retrieves an attribute value by local name and namespace URI.


gdome_el_setAttributeNS ()

void        gdome_el_setAttributeNS         (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *qualifiedName,
                                             GdomeDOMString *value,
                                             GdomeException *exc);

Adds a new attribute. If an attribute with the same namespaceURI and localName is already present in the element, its value is changed to be that of the value parameter.

GDOME_NAMESPACE_ERR: Raised if the qualifiedName is malformed, if the qualifiedName has a prefix and the namespaceURI is NULL, if the qualifiedName has a prefix that is "xml" and the namespaceURI is different from "http://www.w3.org/XML/1998/namespace", or if the qualifiedName is "xmlns" and the namespaceURI is different from "http://www.w3.org/2000/xmlns/". GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.


gdome_el_removeAttributeNS ()

void        gdome_el_removeAttributeNS      (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *localName,
                                             GdomeException *exc);

Removes an attribute by local name and namespace URI. If the removed attribute has a default value it is immediately replaced. The replacing attribute has the same namespace URI and local name, as well as the original prefix.

GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.


gdome_el_getAttributeNodeNS ()

GdomeAttr*  gdome_el_getAttributeNodeNS     (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *localName,
                                             GdomeException *exc);

Retrieves an Attr node by local name and namespace URI.


gdome_el_setAttributeNodeNS ()

GdomeAttr*  gdome_el_setAttributeNodeNS     (GdomeElement *self,
                                             GdomeAttr *newAttr,
                                             GdomeException *exc);

Adds a new attribute. If an attribute with that local name and that namespace URI is already present in the element, it is replaced by the new one.

GDOME_WRONG_DOCUMENT_ERR: Raised if newAttr was created from a different document than the one that created the element. GDOME_NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. GDOME_INUSE_ATTRIBUTE_ERR: Raised if newAttr is already an attribute of another Element object. The DOM user must explicitly clone Attr nodes to re-use them in other elements.


gdome_el_getElementsByTagNameNS ()

GdomeNodeList* gdome_el_getElementsByTagNameNS
                                            (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *localName,
                                             GdomeException *exc);


gdome_el_hasAttribute ()

GdomeBoolean gdome_el_hasAttribute          (GdomeElement *self,
                                             GdomeDOMString *name,
                                             GdomeException *exc);


gdome_el_hasAttributeNS ()

GdomeBoolean gdome_el_hasAttributeNS        (GdomeElement *self,
                                             GdomeDOMString *namespaceURI,
                                             GdomeDOMString *localName,
                                             GdomeException *exc);


gdome_el_ref ()

void        gdome_el_ref                    (GdomeElement *self,
                                             GdomeException *exc);

Increase the reference count of the specified Node.


gdome_el_unref ()

void        gdome_el_unref                  (GdomeElement *self,
                                             GdomeException *exc);

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


gdome_el_query_interface ()

gpointer    gdome_el_query_interface        (GdomeElement *self,
                                             const char *interface,
                                             GdomeException *exc);


gdome_el_nodeName ()

GdomeDOMString* gdome_el_nodeName           (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_nodeValue ()

GdomeDOMString* gdome_el_nodeValue          (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_set_nodeValue ()

void        gdome_el_set_nodeValue          (GdomeElement *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_el_nodeType ()

unsigned short gdome_el_nodeType            (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_parentNode ()

GdomeNode*  gdome_el_parentNode             (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_childNodes ()

GdomeNodeList* gdome_el_childNodes          (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_firstChild ()

GdomeNode*  gdome_el_firstChild             (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_lastChild ()

GdomeNode*  gdome_el_lastChild              (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_previousSibling ()

GdomeNode*  gdome_el_previousSibling        (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_nextSibling ()

GdomeNode*  gdome_el_nextSibling            (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_attributes ()

GdomeNamedNodeMap* gdome_el_attributes      (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_ownerDocument ()

GdomeDocument* gdome_el_ownerDocument       (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_insertBefore ()

GdomeNode*  gdome_el_insertBefore           (GdomeElement *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_el_replaceChild ()

GdomeNode*  gdome_el_replaceChild           (GdomeElement *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_el_removeChild ()

GdomeNode*  gdome_el_removeChild            (GdomeElement *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_el_appendChild ()

GdomeNode*  gdome_el_appendChild            (GdomeElement *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_el_hasChildNodes ()

GdomeBoolean gdome_el_hasChildNodes         (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_cloneNode ()

GdomeNode*  gdome_el_cloneNode              (GdomeElement *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_el_normalize ()

void        gdome_el_normalize              (GdomeElement *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_el_isSupported ()

GdomeBoolean gdome_el_isSupported           (GdomeElement *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_el_namespaceURI ()

GdomeDOMString* gdome_el_namespaceURI       (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_prefix ()

GdomeDOMString* gdome_el_prefix             (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_set_prefix ()

void        gdome_el_set_prefix             (GdomeElement *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_el_localName ()

GdomeDOMString* gdome_el_localName          (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_hasAttributes ()

GdomeBoolean gdome_el_hasAttributes         (GdomeElement *self,
                                             GdomeException *exc);


gdome_el_addEventListener ()

void        gdome_el_addEventListener       (GdomeElement *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_el_removeEventListener ()

void        gdome_el_removeEventListener    (GdomeElement *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_el_dispatchEvent ()

GdomeBoolean gdome_el_dispatchEvent         (GdomeElement *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_el_subTreeDispatchEvent ()

void        gdome_el_subTreeDispatchEvent   (GdomeElement *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_el_canAppend ()

GdomeBoolean gdome_el_canAppend             (GdomeElement *self,
                                             GdomeNode *newChild,
                                             GdomeException *exc);

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