8 #include "XmlStackedHandler.h" 
   12 #include <QXmlParseException> 
   14 #include "XmlStackedHandlerReader.h" 
   17   XmlStackedHandler::XmlStackedHandler() {
 
   23   XmlStackedHandler::~XmlStackedHandler() {
 
   29   void XmlStackedHandler::setReader(XmlStackedHandlerReader *reader) {
 
   39     nextHandler->startElement(m_lastStartNamespaceURI, m_lastStartLocalName,
 
   40                               m_lastStartQName, m_lastStartAtts);
 
   44   bool XmlStackedHandler::startElement(
const QString &namespaceURI, 
const QString &localName,
 
   45                                        const QString &qName, 
const QXmlAttributes &atts) {
 
   46     m_lastStartNamespaceURI = namespaceURI;
 
   47     m_lastStartLocalName = localName;
 
   48     m_lastStartQName = qName;
 
   49     m_lastStartAtts = atts;
 
   55   bool XmlStackedHandler::endElement(
const QString &namespaceURI, 
const QString &localName,
 
   56                           const QString &qName) {
 
   60     if (m_depth == 0 && reader()) {
 
   61       reader()->popContentHandler();
 
   63       if (reader()->topContentHandler())
 
   64         reader()->topContentHandler()->endElement(namespaceURI, localName, qName);
 
   70   XmlStackedHandlerReader *XmlStackedHandler::reader() {
 
   75   const XmlStackedHandlerReader *XmlStackedHandler::reader()
 const {
 
   80   bool XmlStackedHandler::fatalError(
const QXmlParseException &exception) {
 
   81     qDebug() << 
"Parse error at line " << exception.lineNumber()
 
   82              << 
", " << 
"column " << exception.columnNumber() << 
": " 
   83              << qPrintable(exception.message());