diff options
author | Topi Reinio <topi.reinio@qt.io> | 2023-03-30 09:09:26 +0000 |
---|---|---|
committer | Topi Reinio <topi.reinio@qt.io> | 2023-04-11 16:16:41 +0000 |
commit | 2ba87cd00e6527dbd64f5884f29081bd535605bb (patch) | |
tree | f3a884f7ed5d7f756959a5dcec2451340a41773f /tests | |
parent | e57bf78334d5b10f23e37d049a58ef24bb5f51e4 (diff) | |
download | qttools-2ba87cd00e6527dbd64f5884f29081bd535605bb.tar.gz |
qdoc: Fix links in \generatelist <groupname> output
The \generatelist command already supported listing members of a group
as a simple unordered list of titles/links, but the links were broken
as they always referred to the current document.
In DocBook generator, reuse generateAnnotatedList() for this purpose
as it already has support for outputting simple itemized/unordered lists.
Create a new private enum GeneratedListType to select the list 'subtype'
and clean up the API.
Add simple test case and documentation of the new argument.
Fixes: QTBUG-111575
Pick-to: 6.5
Change-Id: I30e4976cef3b6aa5414aac457844ae5bc0762f3d
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Diffstat (limited to 'tests')
4 files changed, 58 insertions, 0 deletions
diff --git a/tests/auto/qdoc/generatedoutput/expected_output/cpptypes.html b/tests/auto/qdoc/generatedoutput/expected_output/cpptypes.html new file mode 100644 index 000000000..633ca939b --- /dev/null +++ b/tests/auto/qdoc/generatedoutput/expected_output/cpptypes.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"> +<!-- classlists.qdoc --> + <title>Test C++ Types | TestCPP</title> +</head> +<body> +<div class="sidebar"><div class="sidebar-content" id="sidebar-content"></div></div> +<h1 class="title">Test C++ Types</h1> +<!-- $$$cpptypes-description --> +<div class="descr" id="details"> +<ul> +<li translate="no"><a href="testqdoc-test.html">TestQDoc::Test</a></li> +<li translate="no"><a href="testqdoc-test.html#QDOCTEST_MACRO2">TestQDoc::Test::QDOCTEST_MACRO2</a></li> +<li translate="no"><a href="testqdoc-test.html#someFunctionDefaultArg">TestQDoc::Test::someFunctionDefaultArg()</a></li> +</ul> +</div> +<!-- @@@cpptypes --> +<div class="table"><table class="annotated"> +<tr class="odd topAlign"><td class="tblName" translate="no"><p><a href="testqdoc-test.html">TestQDoc::Test</a></p></td><td class="tblDescr"><p>A class in a namespace</p></td></tr> +</table></div> +</body> +</html> diff --git a/tests/auto/qdoc/generatedoutput/expected_output/docbook/cpptypes.xml b/tests/auto/qdoc/generatedoutput/expected_output/docbook/cpptypes.xml new file mode 100644 index 000000000..9dcabf364 --- /dev/null +++ b/tests/auto/qdoc/generatedoutput/expected_output/docbook/cpptypes.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<db:article xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.2" xml:lang="en"> +<db:info> +<db:title>Test C++ Types</db:title> +<db:productname>TestCPP</db:productname> +<db:titleabbrev>TestCPP Reference Documentation</db:titleabbrev> +<db:abstract> +<db:para>TestCPP Reference Documentation.</db:para></db:abstract> +</db:info> +<db:anchor xml:id="details"/> +<db:variablelist role="testgroup"> +<db:listitem> +<db:para><db:link xlink:href="testqdoc-test.xml" xlink:role="class">TestQDoc::Test</db:link></db:para> +</db:listitem> +<db:listitem> +<db:para><db:link xlink:href="testqdoc-test.xml#QDOCTEST_MACRO2" xlink:role="function">TestQDoc::Test::QDOCTEST_MACRO2</db:link></db:para> +</db:listitem> +<db:listitem> +<db:para><db:link xlink:href="testqdoc-test.xml#someFunctionDefaultArg" xlink:role="function">TestQDoc::Test::someFunctionDefaultArg()</db:link></db:para> +</db:listitem> +</db:variablelist> +<db:variablelist role="members"> +<db:varlistentry> +<db:term><db:link xlink:href="testqdoc-test.xml" xlink:role="class">TestQDoc::Test</db:link></db:term> +<db:listitem> +<db:para>A class in a namespace.</db:para> +</db:listitem> +</db:varlistentry> +</db:variablelist> +</db:article> diff --git a/tests/auto/qdoc/generatedoutput/testdata/testcpp/classlists.qdoc b/tests/auto/qdoc/generatedoutput/testdata/testcpp/classlists.qdoc index 0a40e9b3e..8f6e9b6b7 100644 --- a/tests/auto/qdoc/generatedoutput/testdata/testcpp/classlists.qdoc +++ b/tests/auto/qdoc/generatedoutput/testdata/testcpp/classlists.qdoc @@ -38,4 +38,6 @@ /*! \group cpptypes \title Test C++ Types + + \generatelist testgroup */ diff --git a/tests/auto/qdoc/generatedoutput/tst_generatedoutput.cpp b/tests/auto/qdoc/generatedoutput/tst_generatedoutput.cpp index 69d930ff4..552ed39cc 100644 --- a/tests/auto/qdoc/generatedoutput/tst_generatedoutput.cpp +++ b/tests/auto/qdoc/generatedoutput/tst_generatedoutput.cpp @@ -222,6 +222,7 @@ void tst_generatedOutput::htmlFromCpp() "testqdoc-testderived-obsolete.html " "obsolete-classes.html " "autolinking.html " + "cpptypes.html " "testqdoc.html"); } @@ -315,6 +316,7 @@ void tst_generatedOutput::docBookFromCpp() "docbook/testcpp-module.xml " "docbook/testqdoc-test.xml " "docbook/testqdoc-testderived.xml " + "docbook/cpptypes.xml " "docbook/testqdoc.xml"); } |