| class CMDXMLNode : public CBase |
Abstract base class for DOM node classes.
It stores the node type and name, and manages a list of child nodes. The node name and type are set in the derived class's constructor and cannot be changed.
The list of child nodes is managed as a doubly-linked list, not an array or similar structure.
Derived classes that are not allowed children override the operations to manipulate the child list.
| Public Member Functions | |
|---|---|
| ~CMDXMLNode() | |
| IMPORT_C TInt | AppendChild(CMDXMLNode *) |
| TBool | CanHaveChildNodes() |
| IMPORT_C TBool | CheckChildren() |
| TInt | ElementType() |
| CMDXMLNode * | FirstChild() |
| TBool | HasChildNodes() |
| IMPORT_C TInt | InsertBefore(CMDXMLNode *, CMDXMLNode *) |
| CMDXMLNode * | LastChild() |
| CMDXMLNode * | NextSibling() |
| IMPORT_C TPtrC | NodeName() |
| TDOMNodeType | NodeType() |
| CMDXMLDocument * | OwnerDocument() |
| CMDXMLNode * | ParentNode() |
| CMDXMLNode * | PreviousSibling() |
| IMPORT_C TInt | RemoveChild(CMDXMLNode *) |
| IMPORT_C TInt | ReplaceChild(CMDXMLNode *, CMDXMLNode *) |
| Protected Member Functions | |
|---|---|
| CMDXMLNode(TDOMNodeType, TBool, CMDXMLDocument *) | |
| IMPORT_C CMDXMLNode * | NextSameTypeSibling() |
| IMPORT_C CMDXMLNode * | PreviousSameTypeSibling() |
| void | SetElementType(TInt) |
| IMPORT_C void | SetNodeNameL(const TDesC &) |
| Public Member Enumerations | |
|---|---|
| enum | TDOMNodeType { EElementNode = 1, ETextNode = 3, ECDATASectionNode = 4, EProcessingInstructionNode = 7, ECommentNode = 8, EDocumentNode = 9 } |
| Protected Attributes | |
|---|---|
| CMDXMLDocument * | iOwnerDocument |
| CMDXMLNode | ( | TDOMNodeType | aNodeType, |
| TBool | aCanHaveChildren, | ||
| CMDXMLDocument * | aOwnerDocument | ||
| ) | [protected] | ||
| TDOMNodeType aNodeType | |
| TBool aCanHaveChildren | |
| CMDXMLDocument * aOwnerDocument |
| IMPORT_C | ~CMDXMLNode | ( | ) | [virtual] |
Destructor.
When a node is deleted, it:
1. links its previous and next siblings
2. deletes all its children
3. corrects its parents first and last child pointers if necessary
| IMPORT_C TInt | AppendChild | ( | CMDXMLNode * | aChildToInsert | ) |
Appends a new child at the end of the child list.
| CMDXMLNode * aChildToInsert | Pointer to the new child node to append. |
| IMPORT_C TBool | CheckChildren | ( | ) | [pure virtual] |
Checks the children of this node for validity.
| TInt | ElementType | ( | ) | [inline] |
Gets the element type as an enumerated value.
This function is quicker to use than NodeName().
| IMPORT_C TInt | InsertBefore | ( | CMDXMLNode * | aInsertBeforeChild, |
| CMDXMLNode * | aChildToInsert | |||
| ) | ||||
Inserts a new child node at a specific point in the child list.
| CMDXMLNode * aInsertBeforeChild | Pointer to the element before which the new child should be inserted. UseNULL to insert at the start of the list. |
| CMDXMLNode * aChildToInsert | Pointer to the new child node to insert |
| IMPORT_C CMDXMLNode * | NextSameTypeSibling | ( | ) | [protected] |
Gets a pointer to the next sibling node of the same type if any, otherwise returns NULL
| CMDXMLDocument * | OwnerDocument | ( | ) | [inline] |
Gets a pointer to the document which is the owner of the DOM tree.
| IMPORT_C CMDXMLNode * | PreviousSameTypeSibling | ( | ) | [protected] |
Gets a pointer to the previous sibling node of the same type if any, otherwise returns NULL
| CMDXMLNode * | PreviousSibling | ( | ) | [inline] |
Gets a pointer to the previous sibling node, if any.
| IMPORT_C TInt | RemoveChild | ( | CMDXMLNode * | aChildToRemove | ) |
Removes a child from the list of child nodes.
The child node is not deleted: that is the responsibility of the caller.
| CMDXMLNode * aChildToRemove | Pointer to child to remove from the list |
| IMPORT_C TInt | ReplaceChild | ( | CMDXMLNode * | aChildToInsert, |
| CMDXMLNode * | aChildToReplace | |||
| ) | ||||
Inserts a new child node while removing an existing one.
The old child is not deleted.
| CMDXMLNode * aChildToInsert | Pointer to the new child node to insert |
| CMDXMLNode * aChildToReplace | Pointer to the child node to be replaced |
| void | SetElementType | ( | TInt | aElementType | ) | [protected, inline] |
Sets the enumerated element type (same information as node name but faster to access)
| TInt aElementType |
| IMPORT_C void | SetNodeNameL | ( | const TDesC & | aNodeName | ) | [protected] |
| const TDesC & aNodeName | The node name - commonly an element tag name - _not_ any unique identifier |
XML DOM node types.
The values are taken from the DOM definition, but only some of them are used for the SMIL API.
| EElementNode = 1 | |
| ETextNode = 3 | |
| ECDATASectionNode = 4 | |
| EProcessingInstructionNode = 7 | |
| ECommentNode = 8 | |
| EDocumentNode = 9 |
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.