diff options
author | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2001-09-23 17:28:38 (GMT) |
---|---|---|
committer | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2001-09-23 17:28:38 (GMT) |
commit | 86502f97ecaea3254217d723b5f10b6405495184 (patch) | |
tree | 66859557d84fe96d692e8d6ee0a72d639a25b283 /addon/xmlparse/mainhandler.cpp | |
parent | 4ce0e4344711a79781e2f6d64f2553ab4b45c4a5 (diff) | |
download | Doxygen-86502f97ecaea3254217d723b5f10b6405495184.zip Doxygen-86502f97ecaea3254217d723b5f10b6405495184.tar.gz Doxygen-86502f97ecaea3254217d723b5f10b6405495184.tar.bz2 |
Release-1.2.10-20010923
Diffstat (limited to 'addon/xmlparse/mainhandler.cpp')
-rw-r--r-- | addon/xmlparse/mainhandler.cpp | 43 |
1 files changed, 42 insertions, 1 deletions
diff --git a/addon/xmlparse/mainhandler.cpp b/addon/xmlparse/mainhandler.cpp index 8a5d449..21185e6 100644 --- a/addon/xmlparse/mainhandler.cpp +++ b/addon/xmlparse/mainhandler.cpp @@ -13,6 +13,7 @@ * */ +#include <qxml.h> #include "mainhandler.h" void MainHandler::startCompound(const QXmlAttributes& attrib) @@ -20,9 +21,10 @@ void MainHandler::startCompound(const QXmlAttributes& attrib) CompoundHandler *compHandler = new CompoundHandler(this); compHandler->startCompound(attrib); m_compounds.append(compHandler); + m_compoundDict.insert(compHandler->id(),compHandler); } -MainHandler::MainHandler() +MainHandler::MainHandler() : m_compoundDict(10007) { m_compounds.setAutoDelete(TRUE); addStartHandler("doxygen"); @@ -33,6 +35,45 @@ MainHandler::MainHandler() MainHandler::~MainHandler() { + printf("MainHandler::~MainHandler()\n"); } +class ErrorHandler : public QXmlErrorHandler +{ + public: + virtual ~ErrorHandler() {} + bool warning( const QXmlParseException & ) + { + return FALSE; + } + bool error( const QXmlParseException & ) + { + return FALSE; + } + bool fatalError( const QXmlParseException &exception ) + { + fprintf(stderr,"Fatal error at line %d column %d: %s\n", + exception.lineNumber(),exception.columnNumber(), + exception.message().data()); + return FALSE; + } + QString errorString() { return ""; } + + private: + QString errorMsg; +}; + +IDoxygen *createObjectModelFromXML(const char * xmlFileName) +{ + QFile xmlFile(xmlFileName); + MainHandler * handler = new MainHandler; + ErrorHandler errorHandler; + QXmlInputSource source( xmlFile ); + QXmlSimpleReader reader; + reader.setContentHandler( handler ); + reader.setErrorHandler( &errorHandler ); + reader.parse( source ); + return handler; +} + |