#include <DOM.hpp>
Inheritance diagram for DOM::Document:
Public Member Functions | |
const Node * | appendChild (const Node *newNode) |
Append a child to the children list. | |
virtual const NamedNodeMap * | attributes () const |
Get the attributes (if this node is an Element). | |
NodeList * | childNodes () const |
Get the child nodes. | |
Node * | cloneNode (bool deepCloning) const throw () |
Clone this node This methods returns a duplicate for this node, but the returned node has no parent. | |
Attr * | createAttribute (const DOMString &name) const |
Create an attribute node with the specified name If the name is a valid HTML4.01 attribue name, then the returned attribute can be casted to the expected interface for such attribute. | |
Attr * | createAttributeNS (const DOMString &namespaceURI, const DOMString &qualifiedName) const |
Create an attribute with namespace Not implemented in this implementation, it always returns 0. | |
CDATASection * | createCDATASection (const DOMString &data) const |
Create a CDATA node with the specified data. | |
Comment * | createComment (const DOMString &data) const throw () |
Create a comment node with the specified data. | |
DocumentFragment * | createDocumentFragment () const |
Create an empty document fragment. | |
Element * | createElement (const DOMString &tagName) const |
Create an element with the given tag name If the tagName is a valid HTML4.01 tag name, then the returned element can be casted to the expected interface for such elements. | |
Element * | createElementNS (const DOMString &namespaceURI, const DOMString &qualifiedName) const |
Create an element with namespace Not implemented in this implementation, it always returns 0. | |
EntityReference * | createEntityReference (const DOMString &name) const |
Create an entity reference node with the specified name If the name is a valid HTML4.01 attribue name, then the returned attribute can be casted to the expected interface for such attribute. | |
ProcessingInstruction * | createProcessingInstruction (const DOMString &target, const DOMString &data) const |
Create an processing instruction. | |
Text * | createTextNode (const DOMString &data) const throw () |
Create a text node with the specified data. | |
const DocumentType *const | doctype () const throw () |
Get the document type for this document. | |
Document (const DOMString &namespaceURI, const DOMString &qualifiedName, const DocumentType *docType, const volatile HTML::Elements::Allocators::BaseAllocator *_allocator, DOMTree::Node *ref=0, const Element *htmlElement=0) | |
Only public constructor. | |
const Element *const | documentElement () const throw () |
Get the document root element. | |
const Node * | firstChild () const |
Get the first child pointer. | |
const Node * | firstChildOfType (const NodeType::Type type) const |
Get the first child pointer of the given type. | |
const uint32 | getChildrenCount () const throw () |
Get the children count. | |
const Element * | getElementById (const DOMString &elementId) const |
Get the first element with the given ID attribute. | |
NodeList * | getElementsByTagName (const DOMString &tagName) const throw () |
Get a node list of the descendant elements matching the given tagName. | |
NodeList * | getElementsByTagNameNS (const DOMString &namespaceURI, const DOMString &localName) const |
Get element by tag name and namespace Not implemented in this implementation, it always returns 0. | |
const uint16 | getNodeType () const |
Get the node type as the DOM 2.0 standard requires it. | |
bool | hasAttributes () const throw () |
Does this node has attribute ? | |
bool | hasChildNodes () const throw () |
Does this node has children ? | |
const DOMImplementation *const | implementation () const throw () |
Get the current DOM implementation interface. | |
const Node * | importNode (const Node *importedNode, bool deep) |
Import a foreign node in this document and clone it. | |
const Node * | insertBefore (const Node *newNode, const Node *refNode) |
Insert a node before the given node. | |
const Node * | lastChild () const |
Get the last child pointer. | |
virtual DOMString | localName () const |
Get the local name. | |
virtual DOMString | namespaceURI () const |
Get the namespace URI (if specified). | |
const Node * | nextSibling () const |
Get the next node in the same current child level. | |
virtual DOMString | nodeName () const |
Get the node name. | |
virtual void | nodeValue (const DOMString &newValue) |
Set the node value. | |
virtual DOMString | nodeValue () const |
Get the node value. | |
void | normalize () throw () |
Normalize this tree so that the tree will never have 2 adjacent Text child, or an empty Text child This is used to the tree structure is kept as minimal (normalized). | |
const DOM::Document * | ownerDocument () const |
Get the owner document. | |
const Node * | parentNode () const |
Get the parent node. | |
void | prefix (const DOMString &) const |
Set the prefix. | |
virtual DOMString | prefix () const |
Get the prefix. | |
const Node * | previousSibling () const |
Get the previous node in the same current child level. | |
const Node * | removeChild (const Node *oldNode) |
Remove a child. | |
const Node * | replaceChild (const Node *newNode, const Node *oldNode) |
Replace a child node by another node. | |
virtual void | returnToAllocator (const volatile HTML::Elements::Allocators::BaseAllocator *allocator) |
Return this node to the allocator. | |
bool | setHTMLElement (const Element *htmlElement) |
Set the main element if not done already. | |
void | setTreeNode (DOMTree::Node *newTreeNode) const |
Set the reference correctly. | |
void | Suicide () |
Make this node commit suicide itself. | |
Static Public Member Functions | |
static bool | isSupported (const DOMString &feature, const DOMString &version) |
Tell if the given features is supported. | |
Public Attributes | |
const NodeType::Type | nodeType |
The node type. | |
Protected Member Functions | |
virtual Node * | Clone (bool deepCopy) const throw () |
The clone implementation. | |
const DOMTree::Node * | getTreeNode () const |
Get the underlying tree node. | |
DOMTree::Node * | getTreeNode () |
Get the underlying tree node. |
DOM::Document::Document | ( | const DOMString & | namespaceURI, | |
const DOMString & | qualifiedName, | |||
const DocumentType * | docType, | |||
const volatile HTML::Elements::Allocators::BaseAllocator * | _allocator, | |||
DOMTree::Node * | ref = 0 , |
|||
const Element * | htmlElement = 0 | |||
) | [inline] |
Only public constructor.
Append a child to the children list.
newNode | the new node to append to the list |
virtual const NamedNodeMap* DOM::Node::attributes | ( | ) | const [inline, virtual, inherited] |
Get the attributes (if this node is an Element).
Reimplemented in DOM::Element.
NodeList* DOM::Node::childNodes | ( | ) | const [inline, inherited] |
Get the child nodes.
virtual Node* DOM::Node::Clone | ( | bool | deepCopy | ) | const throw () [inline, protected, virtual, inherited] |
Node* DOM::Node::cloneNode | ( | bool | deepCloning | ) | const throw () [inline, inherited] |
Clone this node This methods returns a duplicate for this node, but the returned node has no parent.
This is a very long process.
deepCloning | Does the cloning should also clone childrens |
Create an attribute node with the specified name If the name is a valid HTML4.01 attribue name, then the returned attribute can be casted to the expected interface for such attribute.
name | The attribute name |
Exceptions::InvalidCharacter | if the name contained invalid characters |
Attr* DOM::Document::createAttributeNS | ( | const DOMString & | namespaceURI, | |
const DOMString & | qualifiedName | |||
) | const [inline] |
Create an attribute with namespace Not implemented in this implementation, it always returns 0.
CDATASection* DOM::Document::createCDATASection | ( | const DOMString & | data | ) | const [inline] |
Create a CDATA node with the specified data.
data | The data of the node |
Exceptions::NotSupported |
Create a comment node with the specified data.
data | The data of the node |
DocumentFragment* DOM::Document::createDocumentFragment | ( | ) | const [inline] |
Create an empty document fragment.
Create an element with the given tag name If the tagName is a valid HTML4.01 tag name, then the returned element can be casted to the expected interface for such elements.
tagName | the element tag name |
Exceptions::InvalidCharacter | if the tag name contained invalid characters |
Element* DOM::Document::createElementNS | ( | const DOMString & | namespaceURI, | |
const DOMString & | qualifiedName | |||
) | const [inline] |
Create an element with namespace Not implemented in this implementation, it always returns 0.
EntityReference* DOM::Document::createEntityReference | ( | const DOMString & | name | ) | const [inline] |
Create an entity reference node with the specified name If the name is a valid HTML4.01 attribue name, then the returned attribute can be casted to the expected interface for such attribute.
name | The attribute name |
Exceptions::NotSupported |
ProcessingInstruction* DOM::Document::createProcessingInstruction | ( | const DOMString & | target, | |
const DOMString & | data | |||
) | const [inline] |
Create an processing instruction.
target | the processing instruction target | |
data | the processing instruction data |
Exceptions::NotSupported |
const DocumentType* const DOM::Document::doctype | ( | ) | const throw () [inline] |
Get the document type for this document.
const Element* const DOM::Document::documentElement | ( | ) | const throw () [inline] |
Get the document root element.
const Node* DOM::Node::firstChild | ( | ) | const [inline, inherited] |
const Node* DOM::Node::firstChildOfType | ( | const NodeType::Type | type | ) | const [inline, inherited] |
Get the first child pointer of the given type.
type | The child type to look for |
const uint32 DOM::Node::getChildrenCount | ( | ) | const throw () [inline, inherited] |
Get the children count.
Get the first element with the given ID attribute.
elementId | the element ID attribute value to match element against |
Get a node list of the descendant elements matching the given tagName.
tagName | The element tag name to build the list against |
NodeList* DOM::Document::getElementsByTagNameNS | ( | const DOMString & | namespaceURI, | |
const DOMString & | localName | |||
) | const [inline] |
Get element by tag name and namespace Not implemented in this implementation, it always returns 0.
const uint16 DOM::Node::getNodeType | ( | ) | const [inline, inherited] |
Get the node type as the DOM 2.0 standard requires it.
const DOMTree::Node* DOM::Node::getTreeNode | ( | ) | const [inline, protected, inherited] |
Get the underlying tree node.
DOMTree::Node* DOM::Node::getTreeNode | ( | ) | [inline, protected, inherited] |
Get the underlying tree node.
bool DOM::Node::hasAttributes | ( | ) | const throw () [inline, inherited] |
bool DOM::Node::hasChildNodes | ( | ) | const throw () [inline, inherited] |
Does this node has children ?
const DOMImplementation* const DOM::Document::implementation | ( | ) | const throw () [inline] |
Get the current DOM implementation interface.
Import a foreign node in this document and clone it.
The cloned node has no parent (it is a root node)
importedNode | is the node to import | |
deep | does the cloning is deep ? |
Exceptions::NotSupported | if the node cannot be cloned or imported |
const Node* DOM::Node::insertBefore | ( | const Node * | newNode, | |
const Node * | refNode | |||
) | [inline, inherited] |
Insert a node before the given node.
newNode | the new node pointer to insert before refNode | |
refNode | the reference node to find. If refNode is 0, the newNode is appended, otherwise it Exception::NotFound is thrown |
Exceptions::NotFound | if the given node is not found |
static bool DOM::Node::isSupported | ( | const DOMString & | feature, | |
const DOMString & | version | |||
) | [inline, static, inherited] |
Tell if the given features is supported.
feature | the feature name | |
version | the version number ("1.0", "2.0" etc...) |
const Node* DOM::Node::lastChild | ( | ) | const [inline, inherited] |
virtual DOMString DOM::Node::localName | ( | ) | const [inline, virtual, inherited] |
virtual DOMString DOM::Node::namespaceURI | ( | ) | const [inline, virtual, inherited] |
const Node* DOM::Node::nextSibling | ( | ) | const [inline, inherited] |
virtual DOMString DOM::Document::nodeName | ( | ) | const [inline, virtual] |
virtual void DOM::Node::nodeValue | ( | const DOMString & | newValue | ) | [inline, virtual, inherited] |
Set the node value.
Exceptions::NoModificationAllowed | exception if not supported |
Reimplemented in DOM::CharacterData, and DOM::Attr.
virtual DOMString DOM::Node::nodeValue | ( | ) | const [inline, virtual, inherited] |
Get the node value.
Reimplemented in DOM::CharacterData, and DOM::Attr.
void DOM::Node::normalize | ( | ) | throw () [inline, inherited] |
const DOM::Document* DOM::Node::ownerDocument | ( | ) | const [inline, inherited] |
const Node* DOM::Node::parentNode | ( | ) | const [inline, inherited] |
Get the parent node.
void DOM::Node::prefix | ( | const DOMString & | ) | const [inline, inherited] |
virtual DOMString DOM::Node::prefix | ( | ) | const [inline, virtual, inherited] |
const Node* DOM::Node::previousSibling | ( | ) | const [inline, inherited] |
Remove a child.
oldNode | the old node to remove |
Exceptions::NotFound | if the oldNode can't be found in the child list |
const Node* DOM::Node::replaceChild | ( | const Node * | newNode, | |
const Node * | oldNode | |||
) | [inline, inherited] |
Replace a child node by another node.
newNode | the new node pointer to replace oldNode with (if newNode is already in the child list, it is removed first) | |
oldNode | the old node to remove |
Exceptions::NotFound | if the oldNode can't be found in the child list |
void DOM::Document::returnToAllocator | ( | const volatile HTML::Elements::Allocators::BaseAllocator * | allocator | ) | [virtual] |
Return this node to the allocator.
allocator | The allocator to return this node to |
Reimplemented from DOM::Node.
bool DOM::Document::setHTMLElement | ( | const Element * | htmlElement | ) | [inline] |
Set the main element if not done already.
htmlElement | the new element (must be HTML element) pointer |
void DOM::Node::setTreeNode | ( | DOMTree::Node * | newTreeNode | ) | const [inline, inherited] |
Set the reference correctly.
void DOM::Node::Suicide | ( | ) | [inline, inherited] |
Make this node commit suicide itself.
Only call this method for unreachable nodes (like duplicate attribute, and removed or replaced child, and so on)...
const NodeType::Type DOM::Node::nodeType [inherited] |
The node type.