diff options
author | Dimitri van Heesch <dimitri@stack.nl> | 2001-08-19 18:13:14 (GMT) |
---|---|---|
committer | Dimitri van Heesch <dimitri@stack.nl> | 2001-08-19 18:13:14 (GMT) |
commit | 8f7c9d9ba3b6c4e87c87deb6775d4bf642939e77 (patch) | |
tree | 3ff0575884709cdc92f9e462441672f3549ab054 /addon/xmlparse | |
parent | b5cbb79d114ed13945bc882ac8eef1c2be967bbf (diff) | |
download | Doxygen-8f7c9d9ba3b6c4e87c87deb6775d4bf642939e77.zip Doxygen-8f7c9d9ba3b6c4e87c87deb6775d4bf642939e77.tar.gz Doxygen-8f7c9d9ba3b6c4e87c87deb6775d4bf642939e77.tar.bz2 |
Release-1.2.9-20010819
Diffstat (limited to 'addon/xmlparse')
-rw-r--r-- | addon/xmlparse/dochandler.h | 4 | ||||
-rw-r--r-- | addon/xmlparse/main.cpp | 60 |
2 files changed, 51 insertions, 13 deletions
diff --git a/addon/xmlparse/dochandler.h b/addon/xmlparse/dochandler.h index 0b11e25..c7c8095 100644 --- a/addon/xmlparse/dochandler.h +++ b/addon/xmlparse/dochandler.h @@ -232,7 +232,9 @@ class SimpleSectHandler : public DocNode, enum Types { See, Return, Author, Version, Since, Date, Bug, Note, Warning, Par, Deprecated, Pre, - Post, Invar, Remark, Attention + Post, Invar, Remark, Attention, + Todo, Test, RCS, EnumValues, + Examples }; SimpleSectHandler(IBaseHandler *parent); virtual ~SimpleSectHandler(); diff --git a/addon/xmlparse/main.cpp b/addon/xmlparse/main.cpp index 7fdb60a..3575c16 100644 --- a/addon/xmlparse/main.cpp +++ b/addon/xmlparse/main.cpp @@ -21,6 +21,13 @@ #include <qdict.h> #include <qlist.h> +//#define USE_DOM +#define USE_SAX + +#ifdef USE_DOM +#include <qdom.h> +#endif + class ErrorHandler : public QXmlErrorHandler { public: @@ -55,18 +62,47 @@ int main(int argc,char **argv) exit(1); } - //for (;;) - //{ - QFile xmlFile(argv[1]); - MainHandler handler; - ErrorHandler errorHandler; - QXmlInputSource source( xmlFile ); - QXmlSimpleReader reader; - reader.setContentHandler( &handler ); - reader.setErrorHandler( &errorHandler ); - reader.parse( source ); - //} - + QFile xmlFile(argv[1]); + if (!xmlFile.open( IO_ReadOnly )) + { + qFatal("Could not read %s",argv[1] ); + } + +#ifdef USE_SAX + MainHandler handler; + ErrorHandler errorHandler; + QXmlInputSource source( xmlFile ); + QXmlSimpleReader reader; + reader.setContentHandler( &handler ); + reader.setErrorHandler( &errorHandler ); + reader.parse( source ); +#endif + +#ifdef USE_DOM + QDomDocument doc; + doc.setContent( &xmlFile ); + + QDomElement de = doc.documentElement(); + + printf("docElem=%s\n",de.tagName().data()); + + QDomNode n = de.firstChild(); + while( !n.isNull() ) + { + QDomElement e = n.toElement(); // try to convert the node to an element. + if( !e.isNull() ) + { // the node was really an element. + printf("direct child %s id=%s kind=%s\n", + e.tagName().data(), + e.attribute("id").data(), + e.attribute("kind").data() + ); + } + n = n.nextSibling(); + } + +#endif + return 0; } |