diff options
Diffstat (limited to 'src/tools/qdoc/htmlgenerator.cpp')
-rw-r--r-- | src/tools/qdoc/htmlgenerator.cpp | 58 |
1 files changed, 41 insertions, 17 deletions
diff --git a/src/tools/qdoc/htmlgenerator.cpp b/src/tools/qdoc/htmlgenerator.cpp index 7d7f9e811a..e49f083e5b 100644 --- a/src/tools/qdoc/htmlgenerator.cpp +++ b/src/tools/qdoc/htmlgenerator.cpp @@ -470,10 +470,10 @@ int HtmlGenerator::generateAtom(const Atom *atom, const Node *relative, CodeMark generateAnnotatedList(relative, marker, qdb_->getCppClasses()); } else if (atom->string() == "classes") { - generateCompactList(relative, qdb_->getCppClasses(), true); + generateCompactList(Generic, relative, qdb_->getCppClasses(), true); } else if (atom->string() == "qmlclasses") { - generateCompactList(relative, qdb_->getQmlTypes(), true); + generateCompactList(Generic, relative, qdb_->getQmlTypes(), true); } else if (atom->string().contains("classesbymodule")) { QString arg = atom->string().trimmed(); @@ -492,10 +492,19 @@ int HtmlGenerator::generateAtom(const Atom *atom, const Node *relative, CodeMark generateClassHierarchy(relative, qdb_->getCppClasses()); } else if (atom->string() == "compatclasses") { - generateCompactList(relative, qdb_->getCompatibilityClasses(), false); + generateCompactList(Generic, relative, qdb_->getCompatibilityClasses(), false); } else if (atom->string() == "obsoleteclasses") { - generateCompactList(relative, qdb_->getObsoleteClasses(), false); + generateCompactList(Generic, relative, qdb_->getObsoleteClasses(), false); + } + else if (atom->string() == "obsoleteqmltypes") { + generateCompactList(Generic, relative, qdb_->getObsoleteQmlTypes(), false); + } + else if (atom->string() == "obsoletecppmembers") { + generateCompactList(Obsolete, relative, qdb_->getClassesWithObsoleteMembers(), false); + } + else if (atom->string() == "obsoleteqmlmembers") { + generateCompactList(Obsolete, relative, qdb_->getQmlTypesWithObsoleteMembers(), false); } else if (atom->string() == "functionindex") { generateFunctionIndex(relative); @@ -504,10 +513,10 @@ int HtmlGenerator::generateAtom(const Atom *atom, const Node *relative, CodeMark generateLegaleseList(relative, marker); } else if (atom->string() == "mainclasses") { - generateCompactList(relative, qdb_->getMainClasses(), true); + generateCompactList(Generic, relative, qdb_->getMainClasses(), true); } else if (atom->string() == "services") { - generateCompactList(relative, qdb_->getServiceClasses(), false); + generateCompactList(Generic, relative, qdb_->getServiceClasses(), false); } else if (atom->string() == "overviews") { generateOverviewList(relative); @@ -640,9 +649,9 @@ int HtmlGenerator::generateAtom(const Atom *atom, const Node *relative, CodeMark << "\"></a>\n"; out() << "<h3>" << protectEnc((*s).name) << "</h3>\n"; if (idx == Class) - generateCompactList(0, ncmap, false, QString("Q")); + generateCompactList(Generic, 0, ncmap, false, QString("Q")); else if (idx == QmlClass) - generateCompactList(0, nqcmap, false, QString("Q")); + generateCompactList(Generic, 0, nqcmap, false, QString("Q")); else if (idx == MemberFunction) { ParentMaps parentmaps; ParentMaps::iterator pmap; @@ -1131,9 +1140,10 @@ void HtmlGenerator::generateClassLikeNode(InnerNode* inner, CodeMarker* marker) QString obsoleteLink = generateLowStatusMemberFile(inner, marker, CodeMarker::Obsolete); - if (!obsoleteLink.isEmpty()) + if (!obsoleteLink.isEmpty()) { out() << "<li><a href=\"" << obsoleteLink << "\">" << "Obsolete members</a></li>\n"; + } QString compatLink = generateLowStatusMemberFile(inner, marker, @@ -1481,9 +1491,10 @@ void HtmlGenerator::generateDocNode(DocNode* dn, CodeMarker* marker) QString obsoleteLink = generateLowStatusMemberFile(dn, marker, CodeMarker::Obsolete); - if (!obsoleteLink.isEmpty()) + if (!obsoleteLink.isEmpty()) { out() << "<li><a href=\"" << obsoleteLink << "\">" << "Obsolete members</a></li>\n"; + } QString compatLink = generateLowStatusMemberFile(dn, marker, @@ -2105,7 +2116,7 @@ QString HtmlGenerator::generateAllQmlMembersFile(const QmlClassNode* qml_cn, return fileName; } -QString HtmlGenerator::generateLowStatusMemberFile(const InnerNode *inner, +QString HtmlGenerator::generateLowStatusMemberFile(InnerNode *inner, CodeMarker *marker, CodeMarker::Status status) { @@ -2133,6 +2144,10 @@ QString HtmlGenerator::generateLowStatusMemberFile(const InnerNode *inner, title = "Obsolete Members for " + inner->name(); fileName = fileBase(inner) + "-obsolete." + fileExtension(); } + if (status == CodeMarker::Obsolete) { + QString link = QString("../" + Generator::outputSubdir() + QLatin1Char('/')) + fileName; + inner->setObsoleteLink(link); + } beginSubPage(inner, fileName); generateHeader(title, inner, marker); @@ -2292,7 +2307,8 @@ void HtmlGenerator::generateAnnotatedList(const Node *relative, normally you let it figure it out itself by looking at the name of the first and last classes in \a classMap. */ -void HtmlGenerator::generateCompactList(const Node *relative, +void HtmlGenerator::generateCompactList(ListType listType, + const Node *relative, const NodeMap &classMap, bool includeAlphabet, QString commonPrefix) @@ -2452,11 +2468,19 @@ void HtmlGenerator::generateCompactList(const Node *relative, for (int i=0; i<curParOffset; i++) ++it; - /* - Previously, we used generateFullName() for this, but we - require some special formatting. - */ - out() << "<a href=\"" << linkForNode(it.value(), relative) << "\">"; + if (listType == Generic) { + /* + Previously, we used generateFullName() for this, but we + require some special formatting. + */ + out() << "<a href=\"" << linkForNode(it.value(), relative) << "\">"; + } + else if (listType == Obsolete) { + QString fileName = fileBase(it.value()) + "-obsolete." + fileExtension(); + QString link = QString("../" + it.value()->outputSubdirectory() + + QLatin1Char('/')) + fileName; + out() << "<a href=\"" << link << "\">"; + } QStringList pieces; if (it.value()->subType() == Node::QmlClass) |