Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

QtXmlElement Class Reference

#include <QtXmlElement.h>

Inheritance diagram for QtXmlElement:

Inheritance graph
[legend]
Collaboration diagram for QtXmlElement:

Collaboration graph
[legend]
List of all members.

Detailed Description

An XML element using the Qt XML module.

Author:
Paul F. Kunz <Paul_Kunz@slac.stanford.edu>

Definition at line 38 of file QtXmlElement.h.

Public Types

typedef std::list< XmlElement * > NodeList_t
 The type of container used to store XmlElement nodes.

Public Member Functions

virtual void appendChild (const XmlNode &child)
 Appends a child element to the element.
virtual void appendChild (const XmlNode &child)=0
 Appends a child element to the element.
virtual bool attribute (const std::string &name, std::string &value) const
 Sets value to the attribute name's value.
virtual bool attribute (const std::string &name, double &value) const
 Sets value to the attribute name's value.
virtual bool attribute (const std::string &name, float &value) const
 Sets value to the attribute name's value.
virtual bool attribute (const std::string &name, unsigned int &value) const
 Sets value to the attribute name's value.
virtual bool attribute (const std::string &name, int &value) const
 Sets value to the attribute name's value.
virtual bool attribute (const std::string &name, bool &value) const
 Sets value to the attribute name's value.
XmlElementcreate () const
virtual void fillNodeList (const std::string &tagName, std::list< XmlElement * > &nodeList) const
virtual int getID () const
 Returns the ID of the element, if it has one.
virtual QtXmlElementgetNode (const std::string &tagName) const
 Returns the single direct child element node with name tagName.
virtual const std::stringgetText () const
 Gets the text node from the element.
 QtXmlElement (const QtXmlElement &)
 The copy constructor.
virtual void setAttribute (const std::string &name, const std::string &value)
 Sets attribute named nanme to the string value value.
virtual void setAttribute (const std::string &name, double value)
 Sets attribute named name to the double value value.
virtual void setAttribute (const std::string &name, float value)
 Sets attribute named name to the float value value.
virtual void setAttribute (const std::string &name, unsigned int value)
 Sets attribute named name to the unsigned int value value.
virtual void setAttribute (const std::string &name, bool value)
 Sets attribute named name to the int value value.
virtual void setAttribute (const std::string &name, int value)
 Sets attribute named name to the int value value.
virtual std::string tagName () const
 Returns the tag name of the element.
 ~QtXmlElement ()
 The destructor.

Protected Attributes

QDomNodem_node
 The DOM node wrapped by this object.

Private Member Functions

 QtXmlElement (const QDomElement &)
 A constructor used internally.

Private Attributes

QDomElementm_element
 The DOM element node wrapped by this object.

Friends

class QtXmlDocument


Member Typedef Documentation

typedef std::list< XmlElement * > XmlElement::NodeList_t [inherited]
 

The type of container used to store XmlElement nodes.

Definition at line 47 of file XmlElement.h.


Constructor & Destructor Documentation

QtXmlElement::QtXmlElement const QDomElement element  )  [private]
 

A constructor used internally.

Todo:
Remove this method.
It was only temporarily here to aid in the transition from the old scheme.

Definition at line 46 of file QtXmlElement.cxx.

References m_element, and QtXmlNode::m_node.

Referenced by getNode().

QtXmlElement::QtXmlElement const QtXmlElement  ) 
 

The copy constructor.

Definition at line 29 of file QtXmlElement.cxx.

References m_element, and QtXmlNode::m_node.

QtXmlElement::~QtXmlElement  ) 
 

The destructor.

Definition at line 55 of file QtXmlElement.cxx.

References m_element.


Member Function Documentation

void QtXmlNode::appendChild const XmlNode child  )  [virtual, inherited]
 

Appends a child element to the element.

Implements XmlNode.

Definition at line 32 of file QtXmlNode.cxx.

References QtXmlNode::m_node.

virtual void XmlNode::appendChild const XmlNode child  )  [pure virtual, inherited]
 

Appends a child element to the element.

Implemented in QtXmlNode.

Referenced by XmlController::addDataSource(), XmlController::addViews(), PlotterBaseXML::createAxisModel(), ViewBaseXML::createChild(), PlotterBaseXML::createChildren(), NTupleProjectorXML::createChildren(), DataRepXML::createChildren(), BinsBaseXML::createChildren(), BinningProjectorXML::createChildren(), AxisModelXML::createChildren(), PlotterBaseXML::createCutChildren(), PointRepXML::createElement(), PlotterBaseXML::createFontElement(), PlotterBaseXML::createFontElements(), DataRepXML::createFunctionTargetChild(), and PlotterBaseXML::createTextChildren().

bool QtXmlElement::attribute const std::string name,
std::string value
const [virtual]
 

Sets value to the attribute name's value.

If attribute of name name exists returns true, otherwise does not change value and returns false.

Implements XmlElement.

Definition at line 261 of file QtXmlElement.cxx.

References attribute(), QString::latin1(), and m_element.

bool QtXmlElement::attribute const std::string name,
double &  value
const [virtual]
 

Sets value to the attribute name's value.

If attribute of name name exists returns true, otherwise does not change value and returns false.

Implements XmlElement.

Definition at line 245 of file QtXmlElement.cxx.

References attribute(), m_element, and QString::toDouble().

bool QtXmlElement::attribute const std::string name,
float &  value
const [virtual]
 

Sets value to the attribute name's value.

If attribute of name name exists returns true, otherwise does not change value and returns false.

Implements XmlElement.

Definition at line 229 of file QtXmlElement.cxx.

References attribute(), m_element, and QString::toFloat().

bool QtXmlElement::attribute const std::string name,
unsigned int &  value
const [virtual]
 

Sets value to the attribute name's value.

If attribute of name name exists returns true, otherwise does not change value and returns false.

Implements XmlElement.

Definition at line 213 of file QtXmlElement.cxx.

References attribute(), m_element, and QString::toUInt().

bool QtXmlElement::attribute const std::string name,
int &  value
const [virtual]
 

Sets value to the attribute name's value.

If attribute of name name exists returns true, otherwise does not change value and returns false.

Implements XmlElement.

Definition at line 181 of file QtXmlElement.cxx.

References attribute(), m_element, and QString::toInt().

bool QtXmlElement::attribute const std::string name,
bool &  value
const [virtual]
 

Sets value to the attribute name's value.

If attribute of name name exists returns true, otherwise does not change value and returns false.

Implements XmlElement.

Definition at line 197 of file QtXmlElement.cxx.

References m_element, and QString::toInt().

Referenced by attribute(), and getID().

XmlElement* QtXmlElement::create  )  const
 

void QtXmlElement::fillNodeList const std::string tagName,
std::list< XmlElement * > &  nodeList
const [virtual]
 

Todo:
This needs to return only immediate children with given name.
Doesn't hurt us yet.

Implements XmlElement.

Definition at line 102 of file QtXmlElement.cxx.

References QDomNodeList::count(), QDomNodeList::item(), m_element, num_util::size(), and QDomNode::toElement().

int QtXmlElement::getID  )  const [virtual]
 

Returns the ID of the element, if it has one.

Implements XmlElement.

Definition at line 68 of file QtXmlElement.cxx.

References attribute(), m_element, and QString::toInt().

QtXmlElement * QtXmlElement::getNode const std::string tagName  )  const [virtual]
 

Returns the single direct child element node with name tagName.

If a child of that name doesn't exist returns a null pointer. if child exists but is not an element node, an assertion is made.

Implements XmlElement.

Definition at line 86 of file QtXmlElement.cxx.

References QDomNode::isNull(), m_element, QtXmlElement(), and QDomNode::toElement().

const string & QtXmlElement::getText  )  const [virtual]
 

Gets the text node from the element.

Implements XmlElement.

Definition at line 273 of file QtXmlElement.cxx.

References QString::latin1(), and m_element.

void QtXmlElement::setAttribute const std::string name,
const std::string value
[virtual]
 

Sets attribute named nanme to the string value value.

Implements XmlElement.

Definition at line 172 of file QtXmlElement.cxx.

References m_element, and setAttribute().

void QtXmlElement::setAttribute const std::string name,
double  value
[virtual]
 

Sets attribute named name to the double value value.

Implements XmlElement.

Definition at line 155 of file QtXmlElement.cxx.

References m_element, and setAttribute().

void QtXmlElement::setAttribute const std::string name,
float  value
[virtual]
 

Sets attribute named name to the float value value.

Implements XmlElement.

Definition at line 145 of file QtXmlElement.cxx.

References setAttribute().

void QtXmlElement::setAttribute const std::string name,
unsigned int  value
[virtual]
 

Sets attribute named name to the unsigned int value value.

Implements XmlElement.

Definition at line 137 of file QtXmlElement.cxx.

References m_element, and setAttribute().

void QtXmlElement::setAttribute const std::string name,
bool  value
[virtual]
 

Sets attribute named name to the int value value.

Implements XmlElement.

Definition at line 127 of file QtXmlElement.cxx.

References m_element, and setAttribute().

void QtXmlElement::setAttribute const std::string name,
int  value
[virtual]
 

Sets attribute named name to the int value value.

Implements XmlElement.

Definition at line 118 of file QtXmlElement.cxx.

References m_element.

Referenced by setAttribute().

string QtXmlElement::tagName  )  const [virtual]
 

Returns the tag name of the element.

This function is not needed for XML processing. It is only here as an aid in debugging.

Implements XmlElement.

Definition at line 61 of file QtXmlElement.cxx.

References QString::latin1(), and m_element.


Friends And Related Function Documentation

friend class QtXmlDocument [friend]
 

Reimplemented from QtXmlNode.

Definition at line 56 of file QtXmlElement.h.


Member Data Documentation

QDomElement* QtXmlElement::m_element [private]
 

The DOM element node wrapped by this object.

Note:
When initialized, must also copy pointer value to inherited m_node data member so that base class can work correctly.

Definition at line 49 of file QtXmlElement.h.

Referenced by attribute(), fillNodeList(), getID(), getNode(), getText(), QtXmlElement(), setAttribute(), tagName(), and ~QtXmlElement().

QDomNode* QtXmlNode::m_node [protected, inherited]
 

The DOM node wrapped by this object.

Definition at line 39 of file QtXmlNode.h.

Referenced by QtXmlNode::appendChild(), QtXmlDocument::appendChild(), QtXmlElement(), QtXmlTextNode::QtXmlTextNode(), and QtXmlNode::~QtXmlNode().


The documentation for this class was generated from the following files:
Generated for HippoDraw-1.14.8.5 by doxygen 1.4.3