tools/qdoc3/ditaxmlgenerator.cpp
changeset 37 758a864f9613
parent 33 3e2da88830cd
equal deleted inserted replaced
36:ef0373b55136 37:758a864f9613
   438     pleaseGenerateMacRef = config.getBool(DitaXmlGenerator::format() +
   438     pleaseGenerateMacRef = config.getBool(DitaXmlGenerator::format() +
   439                                           Config::dot +
   439                                           Config::dot +
   440                                           DITAXMLGENERATOR_GENERATEMACREFS);
   440                                           DITAXMLGENERATOR_GENERATEMACREFS);
   441 
   441 
   442     project = config.getString(CONFIG_PROJECT);
   442     project = config.getString(CONFIG_PROJECT);
   443     offlineDocs = !config.getBool(CONFIG_ONLINE);
       
   444     projectDescription = config.getString(CONFIG_DESCRIPTION);
   443     projectDescription = config.getString(CONFIG_DESCRIPTION);
   445     if (projectDescription.isEmpty() && !project.isEmpty())
   444     if (projectDescription.isEmpty() && !project.isEmpty())
   446         projectDescription = project + " Reference Documentation";
   445         projectDescription = project + " Reference Documentation";
   447 
   446 
   448     projectUrl = config.getString(CONFIG_URL);
   447     projectUrl = config.getString(CONFIG_URL);
   543     moduleClassMap.clear();
   542     moduleClassMap.clear();
   544     moduleNamespaceMap.clear();
   543     moduleNamespaceMap.clear();
   545     funcIndex.clear();
   544     funcIndex.clear();
   546     legaleseTexts.clear();
   545     legaleseTexts.clear();
   547     serviceClasses.clear();
   546     serviceClasses.clear();
       
   547     qmlClasses.clear();
   548     findAllClasses(tree->root());
   548     findAllClasses(tree->root());
   549     findAllFunctions(tree->root());
   549     findAllFunctions(tree->root());
   550     findAllLegaleseTexts(tree->root());
   550     findAllLegaleseTexts(tree->root());
   551     findAllNamespaces(tree->root());
   551     findAllNamespaces(tree->root());
   552     findAllSince(tree->root());
   552     findAllSince(tree->root());
   749         if (atom->string() == "annotatedclasses") {
   749         if (atom->string() == "annotatedclasses") {
   750             generateAnnotatedList(relative, marker, nonCompatClasses);
   750             generateAnnotatedList(relative, marker, nonCompatClasses);
   751         }
   751         }
   752         else if (atom->string() == "classes") {
   752         else if (atom->string() == "classes") {
   753             generateCompactList(relative, marker, nonCompatClasses, true);
   753             generateCompactList(relative, marker, nonCompatClasses, true);
       
   754         }
       
   755         else if (atom->string() == "qmlclasses") {
       
   756             generateCompactList(relative, marker, qmlClasses, true);
   754         }
   757         }
   755         else if (atom->string().contains("classesbymodule")) {
   758         else if (atom->string().contains("classesbymodule")) {
   756             QString arg = atom->string().trimmed();
   759             QString arg = atom->string().trimmed();
   757             QString moduleName = atom->string().mid(atom->string().indexOf(
   760             QString moduleName = atom->string().mid(atom->string().indexOf(
   758                 "classesbymodule") + 15).trimmed();
   761                 "classesbymodule") + 15).trimmed();
  1763         const ClassNode* cn = qml_cn->classNode();
  1766         const ClassNode* cn = qml_cn->classNode();
  1764         generateQmlInherits(qml_cn, marker);
  1767         generateQmlInherits(qml_cn, marker);
  1765         generateQmlInstantiates(qml_cn, marker);
  1768         generateQmlInstantiates(qml_cn, marker);
  1766         generateBrief(qml_cn, marker);
  1769         generateBrief(qml_cn, marker);
  1767         generateQmlInheritedBy(qml_cn, marker);
  1770         generateQmlInheritedBy(qml_cn, marker);
  1768         sections = marker->qmlSections(qml_cn,CodeMarker::Summary);
  1771         sections = marker->qmlSections(qml_cn,CodeMarker::Summary,0);
  1769         s = sections.begin();
  1772         s = sections.begin();
  1770         while (s != sections.end()) {
  1773         while (s != sections.end()) {
  1771             out() << "<a name=\"" << registerRef((*s).name) << "\"></a>\n";
  1774             out() << "<a name=\"" << registerRef((*s).name) << "\"></a>\n";
  1772             out() << "<h2>" << protectEnc((*s).name) << "</h2>\n";
  1775             out() << "<h2>" << protectEnc((*s).name) << "</h2>\n";
  1773             generateQmlSummary(*s,fake,marker);
  1776             generateQmlSummary(*s,fake,marker);
  1780         if (cn)
  1783         if (cn)
  1781             generateQmlText(cn->doc().body(), cn, marker, fake->name());
  1784             generateQmlText(cn->doc().body(), cn, marker, fake->name());
  1782         generateAlsoList(fake, marker);
  1785         generateAlsoList(fake, marker);
  1783         out() << "<hr />\n";
  1786         out() << "<hr />\n";
  1784 
  1787 
  1785         sections = marker->qmlSections(qml_cn,CodeMarker::Detailed);
  1788         sections = marker->qmlSections(qml_cn,CodeMarker::Detailed,0);
  1786         s = sections.begin();
  1789         s = sections.begin();
  1787         while (s != sections.end()) {
  1790         while (s != sections.end()) {
  1788             out() << "<h2>" << protectEnc((*s).name) << "</h2>\n";
  1791             out() << "<h2>" << protectEnc((*s).name) << "</h2>\n";
  1789             NodeList::ConstIterator m = (*s).members.begin();
  1792             NodeList::ConstIterator m = (*s).members.begin();
  1790             while (m != (*s).members.end()) {
  1793             while (m != (*s).members.end()) {
  3674                 QString serviceName =
  3677                 QString serviceName =
  3675                     (static_cast<const ClassNode *>(*c))->serviceName();
  3678                     (static_cast<const ClassNode *>(*c))->serviceName();
  3676                 if (!serviceName.isEmpty())
  3679                 if (!serviceName.isEmpty())
  3677                     serviceClasses.insert(serviceName, *c);
  3680                     serviceClasses.insert(serviceName, *c);
  3678             }
  3681             }
       
  3682             else if ((*c)->type() == Node::Fake &&
       
  3683                      (*c)->subType() == Node::QmlClass &&
       
  3684                      !(*c)->doc().isEmpty()) {
       
  3685                 QString qmlClassName = (*c)->name();
       
  3686                 qmlClasses.insert(qmlClassName,*c);
       
  3687             }
  3679             else if ((*c)->isInnerNode()) {
  3688             else if ((*c)->isInnerNode()) {
  3680                 findAllClasses(static_cast<InnerNode *>(*c));
  3689                 findAllClasses(static_cast<InnerNode *>(*c));
  3681             }
  3690             }
  3682         }
  3691         }
  3683         ++c;
  3692         ++c;