#include <xmltooling/AbstractComplexElement.h>
Inheritance diagram for xmltooling::AbstractComplexElement:
Public Member Functions | |
bool | hasChildren () const |
Checks if this XMLObject has children. | |
const std::list< XMLObject * > & | getOrderedChildren () const |
Returns an unmodifiable list of child objects in the order that they should appear in the serialized representation. | |
void | removeChild (XMLObject *child) |
Used by a child's detach method to isolate the child from this parent object in preparation for destroying the parent (this object). | |
const XMLCh * | getTextContent (unsigned int position=0) const |
Returns the text content at the specified position relative to any child elements. | |
void | setTextContent (const XMLCh *value, unsigned int position=0) |
Sets (or clears) text content relative to a child element's position. | |
Protected Member Functions | |
AbstractComplexElement (const AbstractComplexElement &src) | |
Copy constructor. | |
Protected Attributes | |
std::list< XMLObject * > | m_children |
Underlying list of child objects. | |
std::vector< XMLCh * > | m_text |
Interstitial text nodes. |
Inherit from this class to implement an element with child objects and mixed content.
const std::list<XMLObject*>& xmltooling::AbstractComplexElement::getOrderedChildren | ( | ) | const [inline, virtual] |
Returns an unmodifiable list of child objects in the order that they should appear in the serialized representation.
The validity of the returned list is not maintained if any non-const operations are performed on the parent object.
Implements xmltooling::XMLObject.
const XMLCh* xmltooling::AbstractComplexElement::getTextContent | ( | unsigned int | position = 0 |
) | const [inline, virtual] |
Returns the text content at the specified position relative to any child elements.
A zero represents leading text, 1 comes after the first child, and so forth.
position | the relative child element position of the text |
Implements xmltooling::XMLObject.
bool xmltooling::AbstractComplexElement::hasChildren | ( | ) | const [virtual] |
Checks if this XMLObject has children.
Implements xmltooling::XMLObject.
void xmltooling::AbstractComplexElement::removeChild | ( | XMLObject * | child | ) | [virtual] |
Used by a child's detach method to isolate the child from this parent object in preparation for destroying the parent (this object).
child | the child object to remove |
Implements xmltooling::XMLObject.
void xmltooling::AbstractComplexElement::setTextContent | ( | const XMLCh * | value, | |
unsigned int | position = 0 | |||
) | [virtual] |
Sets (or clears) text content relative to a child element's position.
value | value to set, or NULL to clear | |
position | position relative to child element |
Implements xmltooling::XMLObject.
std::list<XMLObject*> xmltooling::AbstractComplexElement::m_children [protected] |
Underlying list of child objects.
Manages the lifetime of the children.
std::vector<XMLCh*> xmltooling::AbstractComplexElement::m_text [protected] |
Interstitial text nodes.
Needed to support mixed content, and preserve DOM whitespace across rebuilds.