diff options
author | Morten Engvoldsen <morten.engvoldsen@nokia.com> | 2010-05-03 12:37:51 (GMT) |
---|---|---|
committer | Morten Engvoldsen <morten.engvoldsen@nokia.com> | 2010-05-03 12:37:51 (GMT) |
commit | f79d343febba4f35bf46fd75e296988b93724890 (patch) | |
tree | aa97ef1892f35f71c56551ffdd311944ce7e18a5 /tools/qdoc3 | |
parent | fbeba14bda563256846459b78b29cb888da695a4 (diff) | |
parent | 56a0c1d1e2868aa1bba421f16e4f917373f574ff (diff) | |
download | Qt-f79d343febba4f35bf46fd75e296988b93724890.zip Qt-f79d343febba4f35bf46fd75e296988b93724890.tar.gz Qt-f79d343febba4f35bf46fd75e296988b93724890.tar.bz2 |
Merge branch '4.7' of git@scm.dev.nokia.troll.no:qt/oslo-staging-1 into 4.7
Diffstat (limited to 'tools/qdoc3')
-rw-r--r-- | tools/qdoc3/codeparser.cpp | 11 | ||||
-rw-r--r-- | tools/qdoc3/codeparser.h | 2 | ||||
-rw-r--r-- | tools/qdoc3/htmlgenerator.cpp | 42 | ||||
-rw-r--r-- | tools/qdoc3/node.cpp | 2 | ||||
-rw-r--r-- | tools/qdoc3/test/qt-defines.qdocconf | 1 | ||||
-rw-r--r-- | tools/qdoc3/test/qt-html-templates.qdocconf | 12 |
6 files changed, 64 insertions, 6 deletions
diff --git a/tools/qdoc3/codeparser.cpp b/tools/qdoc3/codeparser.cpp index a717ff1..65d9572 100644 --- a/tools/qdoc3/codeparser.cpp +++ b/tools/qdoc3/codeparser.cpp @@ -70,6 +70,7 @@ QT_BEGIN_NAMESPACE QList<CodeParser *> CodeParser::parsers; bool CodeParser::showInternal = false; +QMap<QString,QString> CodeParser::nameToTitle; /*! The constructor adds this code parser to the static @@ -250,10 +251,20 @@ void CodeParser::processCommonMetaCommand(const Location &location, if (node->type() == Node::Fake) { FakeNode *fake = static_cast<FakeNode *>(node); fake->setTitle(arg); + nameToTitle.insert(fake->name(),arg); } else location.warning(tr("Ignored '\\%1'").arg(COMMAND_TITLE)); } } +/*! + Find the page title given the page \a name and return it. + */ +const QString CodeParser::titleFromName(const QString& name) +{ + const QString t = nameToTitle.value(name); + return t; +} + QT_END_NAMESPACE diff --git a/tools/qdoc3/codeparser.h b/tools/qdoc3/codeparser.h index 7b0d0eb..ebba601 100644 --- a/tools/qdoc3/codeparser.h +++ b/tools/qdoc3/codeparser.h @@ -78,6 +78,7 @@ class CodeParser static void initialize(const Config& config); static void terminate(); static CodeParser *parserForLanguage(const QString& language); + static const QString titleFromName(const QString& name); protected: QSet<QString> commonMetaCommands(); @@ -88,6 +89,7 @@ class CodeParser private: static QList<CodeParser *> parsers; static bool showInternal; + static QMap<QString,QString> nameToTitle; }; QT_END_NAMESPACE diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp index 80dc6e3..f6d008f 100644 --- a/tools/qdoc3/htmlgenerator.cpp +++ b/tools/qdoc3/htmlgenerator.cpp @@ -44,6 +44,7 @@ */ #include "codemarker.h" +#include "codeparser.h" #include "helpprojectwriter.h" #include "htmlgenerator.h" #include "node.h" @@ -1223,7 +1224,7 @@ void HtmlGenerator::generateClassLikeNode(const InnerNode *inner, namespasse = static_cast<const NamespaceNode *>(inner); rawTitle = marker->plainName(inner); fullTitle = marker->plainFullName(inner); - title = rawTitle + " Namespace Reference"; + title = rawTitle + " Namespace"; } else if (inner->type() == Node::Class) { classe = static_cast<const ClassNode *>(inner); @@ -1674,6 +1675,9 @@ QString HtmlGenerator::fileExtension(const Node * /* node */) const return "html"; } +/*! + Output breadcrumb list in the html file. + */ void HtmlGenerator::generateBreadCrumbs(const QString& title, const Node *node, CodeMarker *marker) @@ -1712,18 +1716,52 @@ void HtmlGenerator::generateBreadCrumbs(const QString& title, else if (node->subType() == Node::Group) { if (fn->name() == QString("modules")) out() << " <li><a href=\"modules.html\">All Modules</a></li>"; + else { + out() << " <li><a href=\"" << fn->name() << "\">" << title + << "</a></li>"; + } + } + else if (node->subType() == Node::Page) { + if (fn->name() == QString("examples.html")) { + out() << " <li><a href=\"examples.html\">All Examples</a></li>"; + } + else if (fn->name().startsWith("examples-")) { + out() << " <li><a href=\"examples.html\">All Examples</a></li>"; + out() << " <li><a href=\"" << fn->name() << "\">" << title + << "</a></li>"; + } + else if (fn->name() == QString("namespaces.html")) { + out() << " <li><a href=\"namespaces.html\">All Namespaces</a></li>"; + } + else { + out() << " <li><a href=\"" << fn->name() << "\">" << title + << "</a></li>"; + } } else if (node->subType() == Node::QmlClass) { + out() << " <li><a href=\"" << fn->name() << "\">" << title + << "</a></li>"; } else if (node->subType() == Node::Example) { + out() << " <li><a href=\"examples.html\">All Examples</a></li>"; + QStringList sl = fn->name().split('/'); + QString name = "examples-" + sl.at(0) + ".html"; + QString t = CodeParser::titleFromName(name); + out() << " <li><a href=\"" << name << "\">" + << t << "</a></li>"; + out() << " <li><a href=\"" << sl.at(0) + << "-" << sl.at(sl.size()-1) << ".html\">" + << title << "</a></li>"; } } else if (node->type() == Node::Namespace) { const NamespaceNode* nsn = static_cast<const NamespaceNode*>(node); + out() << " <li><a href=\"namespaces.html\">All Namespaces</a></li>"; + out() << " <li><a href=\"" << fileName(nsn) << "\">" << title + << "</a></li>"; } } - void HtmlGenerator::generateHeader(const QString& title, const Node *node, CodeMarker *marker) diff --git a/tools/qdoc3/node.cpp b/tools/qdoc3/node.cpp index a2bd948..4ba3a32 100644 --- a/tools/qdoc3/node.cpp +++ b/tools/qdoc3/node.cpp @@ -1289,7 +1289,7 @@ QmlClassNode::QmlClassNode(InnerNode *parent, const ClassNode* cn) : FakeNode(parent, name, QmlClass), cnode(cn) { - setTitle((qmlOnly ? "" : "QML ") + name + " Element Reference"); + setTitle((qmlOnly ? "" : "QML ") + name + " Element"); } /*! diff --git a/tools/qdoc3/test/qt-defines.qdocconf b/tools/qdoc3/test/qt-defines.qdocconf index 7449ac3..0426f4d 100644 --- a/tools/qdoc3/test/qt-defines.qdocconf +++ b/tools/qdoc3/test/qt-defines.qdocconf @@ -3,6 +3,7 @@ defines = Q_QDOC \ QT_.*_LIB \ QT_COMPAT \ QT_KEYPAD_NAVIGATION \ + QT_NO_EGL \ QT3_SUPPORT \ Q_WS_.* \ Q_OS_.* \ diff --git a/tools/qdoc3/test/qt-html-templates.qdocconf b/tools/qdoc3/test/qt-html-templates.qdocconf index 944a32c..0651176 100644 --- a/tools/qdoc3/test/qt-html-templates.qdocconf +++ b/tools/qdoc3/test/qt-html-templates.qdocconf @@ -45,6 +45,7 @@ HTML.postheader = " <div class=\"header\" id=\"qtdocheader\">\n" \ " <li><a href=\"modules.html\">All modules</a></li>\n" \ " <li><a href=\"classes.html\">All classes</a></li>\n" \ " <li><a href=\"functions.html\">All functions</a></li>\n" \ + " <li><a href=\"namespaces.html\">All namespaces</a></li>\n" \ " <li><a href=\"platform-specific.html\">Platform specifics</a></li>\n" \ " </ul>\n" \ " </div>\n" \ @@ -57,10 +58,15 @@ HTML.postheader = " <div class=\"header\" id=\"qtdocheader\">\n" \ " <div class=\"list\">\n" \ " <ul>\n" \ " <li><a href=\"object.html\">QObject model</a></li>\n" \ - " <li><a href=\"eventsandfilters.html\">Events, signals & slots</a></li>\n" \ - " <li><a href=\"paintsystem.html\">Graphics & Paint system</a></li>\n" \ + " <li><a href=\"signalsandslots.html\">Signals & Slots</a></li>\n" \ + " <li><a href=\"eventsandfilters.html\">Event handling</a></li>\n" \ " <li><a href=\"declarativeui.html\">Qt Quick</a></li>\n" \ - " <li><a href=\"widgets-and-layouts.html\">Widget style & layout</a></li>\n" \ + " <li><a href=\"mainwindow.html\">The main window</a></li>\n" \ + " <li><a href=\"widgets-and-layouts.html\">Widgets & Layouts</a></li>\n" \ + " <li><a href=\"dialogs.html\">Dialog windows</a></li>\n" \ + " <li><a href=\"paintsystem.html\">The paint system</a></li>\n" \ + " <li><a href=\"graphicsview.html\">Graphics views</a></li>\n" \ + " <li><a href=\"model-view-programming.html\">Model/View programming</a></li>\n" \ " </ul>\n" \ " </div>\n" \ " <div class=\"live\">\n" \ |