Separatista::LeafElement Class Reference

#include <leafelement.h>

Inheritance diagram for Separatista::LeafElement:
Separatista::Element Separatista::AttributedLeafElement

Public Member Functions

IOErrorCode toDOMDocument (xercesc::DOMDocument *pDocument, xercesc::DOMElement *pParent, const ErrorOptions errorOptions=ThrowExceptions) const
void fromDOMDocument (xercesc::DOMElement *pDOMElement, const ErrorOptions errorOptions=ThrowExceptions)
const wchar_t * getTextValue () const
void setValue (const wchar_t *pValue, const ErrorOptions errorOptions=ThrowExceptions)
- Public Member Functions inherited from Separatista::Element
const ElementDescriptorgetElementDescriptor () const
void addElementListener (ElementListener *pElementListener)
void removeElementListener (ElementListener *pElementListener)
const wchar_t * getTag () const
virtual ElementgetElementByTag (const wchar_t *pTagName, size_t nIndex=0) const
virtual ElementcreateElementByTag (const wchar_t *pTagName, size_t nIndex=0)
virtual void destroyElement (Element *pChildElement)
virtual const wchar_t * getAttributeValue (const wchar_t *pAttributeName) const
virtual void setAttributeValue (const wchar_t *pAttributeName, const wchar_t *pValue)
time_t getDateValue () const
void setValue (const time_t Value, bool bWithTime=false, const ErrorOptions errorOptions=ThrowExceptions)
int getIntValue () const
void setValue (const int Value, const ErrorOptions errorOptions=ThrowExceptions)
double getDoubleValue () const
void setValue (const double d, const ErrorOptions errorOptions=ThrowExceptions)
bool isEmpty () const
virtual TagKeyRange getAllByTagName (const wchar_t *pTagName)

Static Public Member Functions

static ElementcreateElement (const ChildElementDescriptor *pChildElementDescriptor)

Protected Member Functions

 LeafElement (const ChildElementDescriptor *pChildElementDescriptor)
 Protected constructor.
- Protected Member Functions inherited from Separatista::Element
 Element (const ChildElementDescriptor *pChildElementDescriptor)
virtual ~Element ()
ElementgetParentElement () const
void onElementValueChanged (const wchar_t *pNewValue)
 Calls a registered ElementListener's elementValueChanged.
void onElementCreated (Element *pChildElement)
 Calls a registered ElementListener's elementCreated.
void onElementDeleted ()
 Calls a registered ElementListener's elementDeleted.

Protected Attributes

std::wstring m_value

Additional Inherited Members

- Public Types inherited from Separatista::Element
enum  ErrorOptions { ThrowExceptions = 0, ClearValue, AcceptValue }
typedef std::map< const TagKey, Element * > TagKeyMap
- Static Protected Member Functions inherited from Separatista::Element
static void deleteElement (Element *pChildElement)

Detailed Description

LeafElements are elements that hold a value.

Member Function Documentation

◆ createElement()

Element * LeafElement::createElement ( const ChildElementDescriptor pChildElementDescriptor)

Creates the element from it's descriptor

◆ fromDOMDocument()

void LeafElement::fromDOMDocument ( xercesc::DOMElement *  pDOMElement,
const ErrorOptions  errorOptions = ThrowExceptions 

Tries to load it's value from the document element.

DocumentIteratorThe document iterator to call to continue reading or get value from.

Implements Separatista::Element.

◆ getTextValue()

const wchar_t * LeafElement::getTextValue ( ) const

Returns the value of the text node

Reimplemented from Separatista::Element.

◆ setValue()

void LeafElement::setValue ( const wchar_t *  pValue,
const ErrorOptions  errorOptions = ThrowExceptions 

Set the value of a text node

Reimplemented from Separatista::Element.

◆ toDOMDocument()

IOErrorCode LeafElement::toDOMDocument ( xercesc::DOMDocument *  pDOMDocument,
xercesc::DOMElement *  pDOMParent,
const ErrorOptions  errorOptions = ThrowExceptions 
) const

Abstract method to call to write an element to a DOMDocument.

pDocumentThe DOMDocument to create the element for.
pParentThe DOMElement to append the element to.
Pointer to the new created DOMElement, or NULL
See also

Implements Separatista::Element.

The documentation for this class was generated from the following files: