Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.

Qt Documentation: Project Structure: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
(8 intermediate revisions by 6 users not shown)
Line 1: Line 1:
h1. Documentation Structure
[[Category:Writing Guidelines]]
 
This page is part of the [[QtWritingGuidelines | Qt Writing Guidelines]].
This page is part of the [[QtWritingGuidelines | Qt Writing Guidelines]].


Qt's Reference Documentation consists of:<br />* API Documentation<br />* Overviews<br />* Examples
Qt's Reference Documentation consists of:
* API Documentation
* Overviews
* Examples


== Modularized Documentation ==
== Modularized Documentation ==
Line 9: Line 11:
The idea behind modularized documentation is that the documentation for the modules reside with the source code. As a result, moving a module will also move the documentation.
The idea behind modularized documentation is that the documentation for the modules reside with the source code. As a result, moving a module will also move the documentation.


Here is the basic structure, taking the qt5/qtbase directory as an example:<br /><code><br />qtbase/<br /> doc/ #for documentation templates<br /> global/ #where the documentation templates are located<br /> src/<br /> network/<br /> doc/<br /> images/<br /> snippets/<br /> src/<br /> bearermanagement.qdoc<br /> network-programming.qdoc<br /> qtnetwork.qdoc # Qt Network landing page<br /> ssl.qdoc<br /> qtnetwork.qdocconf<br /> sql/<br /> doc/<br /> images/<br /> snippets/<br /> snippetA.qdoc # snippet file<br /> src/<br /> qsqldatatype-table.qdoc<br /> qtsql.qdoc # Qt SQL landing page<br /> sql-driver.qdoc<br /> sql-programming.qdoc<br /> qtsql.qdocconf # Qt SQL QDoc configuration file<br /> examples/ # example directory<br /> network/<br /> sql/<br /> exampleA/<br /> exampleA.pro # project file which must match the directory name<br /> main.cpp # source code<br /> doc/<br /> src/<br /> .qdoc # documentation for exampleA<br /> snippets/<br /> images/ #images used by the example's documentation<br /> screenshot.png<br /> exampleB/<br /> doc/<br /> src/<br /> .qdoc # documentation for exampleB<br /> images/<br /> snippets/<br /></code>
Here is the basic structure, taking the qt5/qtbase directory as an example:
<code>
qtbase/
doc/ #for documentation templates
global/ #where the documentation templates are located
src/
network/
doc/
images/
snippets/
src/
bearermanagement.qdoc
network-programming.qdoc
qtnetwork.qdoc # Qt Network landing page
ssl.qdoc
qtnetwork.qdocconf
sql/
doc/
images/
snippets/
snippetA.qdoc # snippet file
src/
qsqldatatype-table.qdoc
qtsql.qdoc # Qt SQL landing page
sql-driver.qdoc
sql-programming.qdoc
qtsql.qdocconf # Qt SQL QDoc configuration file
examples/ # example directory
network/
sql/
exampleA/
exampleA.pro # project file which must match the directory name
main.cpp # source code
doc/
src/
.qdoc # documentation for exampleA
snippets/
images/ #images used by the example's documentation
screenshot.png
exampleB/
doc/
src/
.qdoc # documentation for exampleB
images/
snippets/
</code>


== Snippet and Example Relative Paths ==
== Snippet and Example Relative Paths ==


QDoc uses the &quot;qdocconf&amp;quot;:http://doc-snapshot.qt.io/qdoc/qdoc-guide-conf.html file to retrieve examples, snippets, and the source code.<br />In particular, the '''exampledirs''' variable holds the paths to the examples and snippets. The ''' and''' commands' arguments are relative paths that point to the snippet file or example directory.
QDoc uses the [http://doc-snapshot.qt.io/qdoc/qdoc-guide-conf.html qdocconf] file to retrieve examples, snippets, and the source code.
In particular, the '''exampledirs''' variable holds the paths to the examples and snippets. The ''' and''' commands' arguments are relative paths that point to the snippet file or example directory.


Using Qt SQL's qdocconf file as an example:<br /><code><br />exampledirs += ../../../examples/sql  snippets/<br /></code>
Using Qt SQL's qdocconf file as an example:
<code lang="make">
exampledirs += ../../../examples/sql  snippets/
</code>


This would allow the documentation to use:<br /><code><br />snippetA.qdoc main
This would allow the documentation to use:
<code>
snippetA.qdoc main


exampleA
exampleA


screenshot.png<br /></code><br />Note that qdoc assumes that there are doc/src, doc/images, and doc/snippets directories in each example.
screenshot.png
</code>
Note that qdoc assumes that there are doc/src, doc/images, and doc/snippets directories in each example.


== Overview documentation ==
== Overview documentation ==


Some documentation encompasses several modules. This can be demos and overview documentation and tutorials for example.<br />These should be in the qdoc repository which contains documentation that should be built last.
Some documentation encompasses several modules. This can be demos and overview documentation and tutorials for example.
These should be in the qdoc repository which contains documentation that should be built last.

Latest revision as of 12:40, 8 May 2023

This page is part of the Qt Writing Guidelines.

Qt's Reference Documentation consists of:

  • API Documentation
  • Overviews
  • Examples

Modularized Documentation

The idea behind modularized documentation is that the documentation for the modules reside with the source code. As a result, moving a module will also move the documentation.

Here is the basic structure, taking the qt5/qtbase directory as an example:

qtbase/
 doc/ #for documentation templates
 global/ #where the documentation templates are located
 src/
 network/
 doc/
 images/
 snippets/
 src/
 bearermanagement.qdoc
 network-programming.qdoc
 qtnetwork.qdoc # Qt Network landing page
 ssl.qdoc
 qtnetwork.qdocconf
 sql/
 doc/
 images/
 snippets/
 snippetA.qdoc # snippet file
 src/
 qsqldatatype-table.qdoc
 qtsql.qdoc # Qt SQL landing page
 sql-driver.qdoc
 sql-programming.qdoc
 qtsql.qdocconf # Qt SQL QDoc configuration file
 examples/ # example directory
 network/
 sql/
 exampleA/
 exampleA.pro # project file which must match the directory name
 main.cpp # source code
 doc/
 src/
 .qdoc # documentation for exampleA
 snippets/
 images/ #images used by the example's documentation
 screenshot.png
 exampleB/
 doc/
 src/
 .qdoc # documentation for exampleB
 images/
 snippets/

Snippet and Example Relative Paths

QDoc uses the qdocconf file to retrieve examples, snippets, and the source code. In particular, the exampledirs variable holds the paths to the examples and snippets. The and commands' arguments are relative paths that point to the snippet file or example directory.

Using Qt SQL's qdocconf file as an example:

exampledirs += ../../../examples/sql  snippets/

This would allow the documentation to use:

snippetA.qdoc main

exampleA

screenshot.png

Note that qdoc assumes that there are doc/src, doc/images, and doc/snippets directories in each example.

Overview documentation

Some documentation encompasses several modules. This can be demos and overview documentation and tutorials for example. These should be in the qdoc repository which contains documentation that should be built last.