diff options
author | Martin Smith <martin.smith@nokia.com> | 2010-11-05 11:12:31 (GMT) |
---|---|---|
committer | Martin Smith <martin.smith@nokia.com> | 2010-11-05 11:12:31 (GMT) |
commit | e2cffa74190833621d82697325d5cbbbb2aaec85 (patch) | |
tree | e1e370dd391e4009d3bffbdf8a96c2b03a5bd05c /tools/qdoc3/ditaxmlgenerator.cpp | |
parent | b2793a9b7f14508be5cf14bb19127e886b8f1492 (diff) | |
download | Qt-e2cffa74190833621d82697325d5cbbbb2aaec85.zip Qt-e2cffa74190833621d82697325d5cbbbb2aaec85.tar.gz Qt-e2cffa74190833621d82697325d5cbbbb2aaec85.tar.bz2 |
qdoc: First pass at generating a map.
Some files are missing, and I don't know if the syntax is complete.
But it's a start.
Task-number: QTBUG-14981
Diffstat (limited to 'tools/qdoc3/ditaxmlgenerator.cpp')
-rw-r--r-- | tools/qdoc3/ditaxmlgenerator.cpp | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/tools/qdoc3/ditaxmlgenerator.cpp b/tools/qdoc3/ditaxmlgenerator.cpp index b69e731..bf7bd07 100644 --- a/tools/qdoc3/ditaxmlgenerator.cpp +++ b/tools/qdoc3/ditaxmlgenerator.cpp @@ -574,6 +574,7 @@ void DitaXmlGenerator::generateTree(const Tree *tree, CodeMarker *marker) findAllSince(tree->root()); PageGenerator::generateTree(tree, marker); + writeDitaMap(); } void DitaXmlGenerator::startText(const Node* /* relative */, @@ -2285,7 +2286,6 @@ void DitaXmlGenerator::generateHeader(const Node* node, xmlWriter().writeStartElement(nameElement); // <title> or <apiName> xmlWriter().writeCharacters(name); xmlWriter().writeEndElement(); // </title> or </apiName> - } /*! @@ -5573,4 +5573,31 @@ bool DitaXmlGenerator::canHandleFormat(const QString& format) return (format == "HTML") || (format == this->format()); } +void DitaXmlGenerator::writeDitaMap() +{ + beginSubPage(Location(),"qt-dita-map.xml"); + + QString doctype; + doctype = "<!DOCTYPE cxxAPIMap PUBLIC \"-//NOKIA//DTD DITA C++ API Map Reference Type v0.6.0//EN\" \"dtd/cxxAPIMap.dtd\">"; + + xmlWriter().writeDTD(doctype); + xmlWriter().writeStartElement("cxxAPIMap"); + xmlWriter().writeAttribute("id","Qt-DITA-Map"); + xmlWriter().writeAttribute("title","Qt DITA Map"); + xmlWriter().writeStartElement("topicmeta"); + xmlWriter().writeStartElement("shortdesc"); + xmlWriter().writeCharacters("The top level map for the Qt documentation"); + xmlWriter().writeEndElement(); // </shortdesc> + xmlWriter().writeEndElement(); // </topicmeta> + GuidMaps::iterator i = guidMaps.begin(); + while (i != guidMaps.end()) { + xmlWriter().writeStartElement("topicref"); + xmlWriter().writeAttribute("href",i.key()); + xmlWriter().writeAttribute("type","topic"); + xmlWriter().writeEndElement(); // </topicref> + ++i; + } + endSubPage(); +} + QT_END_NAMESPACE |