| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | /**************************************************************************** | 
					
						
							|  |  |  | ** | 
					
						
							| 
									
										
										
										
											2017-03-10 09:46:07 +01:00
										 |  |  | ** Copyright (C) 2017 The Qt Company Ltd. | 
					
						
							| 
									
										
										
										
											2016-01-15 14:51:16 +01:00
										 |  |  | ** Contact: https://www.qt.io/licensing/ | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | ** | 
					
						
							| 
									
										
										
										
											2016-01-15 14:51:16 +01:00
										 |  |  | ** This file is part of the Qt Creator documentation. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | ** | 
					
						
							| 
									
										
										
										
											2016-01-15 14:51:16 +01:00
										 |  |  | ** Commercial License Usage | 
					
						
							|  |  |  | ** Licensees holding valid commercial Qt licenses may use this file in | 
					
						
							|  |  |  | ** accordance with the commercial license agreement provided with the | 
					
						
							|  |  |  | ** Software or, alternatively, in accordance with the terms contained in | 
					
						
							|  |  |  | ** a written agreement between you and The Qt Company. For licensing terms | 
					
						
							|  |  |  | ** and conditions see https://www.qt.io/terms-conditions. For further | 
					
						
							|  |  |  | ** information use the contact form at https://www.qt.io/contact-us. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | ** | 
					
						
							| 
									
										
										
										
											2016-01-15 14:51:16 +01:00
										 |  |  | ** GNU Free Documentation License Usage | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | ** Alternatively, this file may be used under the terms of the GNU Free | 
					
						
							|  |  |  | ** Documentation License version 1.3 as published by the Free Software | 
					
						
							| 
									
										
										
										
											2016-01-15 14:51:16 +01:00
										 |  |  | ** Foundation and appearing in the file included in the packaging of | 
					
						
							|  |  |  | ** this file. Please review the following information to ensure | 
					
						
							|  |  |  | ** the GNU Free Documentation License version 1.3 requirements | 
					
						
							|  |  |  | ** will be met: https://www.gnu.org/licenses/fdl-1.3.html. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | ** | 
					
						
							|  |  |  | ****************************************************************************/ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /*! | 
					
						
							|  |  |  |     \previouspage external-tool-spec.html | 
					
						
							|  |  |  |     \page qtcreator-documentation.html | 
					
						
							|  |  |  |     \nextpage coding-style.html | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \title Writing Documentation | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     When you add plugins or contribute new features to \QC, you probably want | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     other people to know about them and to be able to use them. Therefore, you | 
					
						
							|  |  |  |     should also contribute documentation for them. Follow the guidelines in this | 
					
						
							|  |  |  |     section to make sure that your documentation fits in well with the rest of | 
					
						
							|  |  |  |     the \QC documentation. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     When you contribute a plugin, you should write documentation both for the | 
					
						
							|  |  |  |     developers who use \QC and for the ones who develop it. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Write the following user documentation for addition to the \QC Manual: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \list | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  Overview topic, which describes the purpose of your plugin from the | 
					
						
							|  |  |  |              viewpoint of \QC users | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  Procedure topics, which describe how to use your plugin as part of \QC | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  Reference topics, which contain information that developers | 
					
						
							|  |  |  |              occasionally need to look up (optional) | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  |     \endlist | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Write the following developer documentation for addition to the Extending | 
					
						
							|  |  |  |     \QC Manual: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \list | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  Overview topic, which describes the architecture and use cases for | 
					
						
							|  |  |  |              your plugin from the viewpoint of \QC developers | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  API documentation, which is generated from code comments | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  |     \endlist | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \section1 Configuring the Documentation Project | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \QC documentation is written by using QDoc. For more information about using | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     QDoc, see the \l{http://doc.qt.io/qt-5/qdoc-index.html}{QDoc Manual}. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     QDoc finds the new topics automatically, when you place them as \c {.qdoc} | 
					
						
							|  |  |  |     files in the correct folder. However, to make the topics accessible to | 
					
						
							| 
									
										
										
										
											2017-03-10 09:46:07 +01:00
										 |  |  |     readers, you must also add them to the table of contents | 
					
						
							|  |  |  |     (\c {doc\src\qtcreator-toc.qdoc}) and fix the next page and previous page | 
					
						
							|  |  |  |     links to them from other topics. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     \section2 Creating Folders and Files | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     These instructions apply only to the \QC Manual. Add API documentation | 
					
						
							|  |  |  |     directly to the code source files. However, you can write an API overview | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     also as a separate \c {.qdoc} file. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     Create a subfolder for your documentation in the \QC project folder in the | 
					
						
							|  |  |  |     \c {doc\src} folder. Create a separate file for each topic. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     The easiest way is probably to copy an existing file, save it as a new file, | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     and modify it. This way, you already have samples of the necessary bits and | 
					
						
							|  |  |  |     pieces in place, such as topic start and end commands, copyright statement, | 
					
						
							|  |  |  |     links to next and previous topics, and topic title. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     \section2 Integrating Topics to Documentation | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     You must integrate your new topics to the \QC Manual and Extending \QC | 
					
						
							|  |  |  |     Manual by adding links to them to the table of contents and to other | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  |     relevant topics. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     To link to the topic, you can use the topic title. For example: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \code | 
					
						
							|  |  |  |     \l{Integrating Topics to Documentation} | 
					
						
							|  |  |  |     \endcode | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     This does not work if topic titles are not unique. Also, if you change the | 
					
						
							|  |  |  |     title, the link breaks. You can avoid this risk by adding the \c {\target} | 
					
						
							|  |  |  |     command to your topic and then linking to the target. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \section2 Updating Next and Previous Links | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     When you add new topics to a document, you must also change the navigation | 
					
						
							|  |  |  |     links of the topics around them. This is very error prone when done | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     manually, and therefore we have a script called \c {fixnavi.pl} for it. For | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  |     the script to work, you must add the \c {\nextpage} and \c {\previouspage} | 
					
						
							|  |  |  |     commands to the topic, with dummy values (for example, | 
					
						
							|  |  |  |     \c {\nextpage=anything.html}). | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-03-10 09:46:07 +01:00
										 |  |  |     \note The script creates the links according to the TOC in the topic set as | 
					
						
							|  |  |  |     the value of the \c indexTitle configuration parameter | 
					
						
							|  |  |  |     (\c {doc\src\qtcreator-toc.qdoc}). If your topics are not listed in the TOC, | 
					
						
							|  |  |  |     the script removes the \c {\nextpage} and \c {\previouspage} commands from | 
					
						
							|  |  |  |     them. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     To run the script, you must have Perl installed. If you build Qt yourself, | 
					
						
							|  |  |  |     you should already have it. Otherwise, download and install | 
					
						
							|  |  |  |     \l{http://www.perl.org/}{Perl}. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     To run the script, enter the following command in the doc folder: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \list | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  nmake fixnavi (on Windows) | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  make fixnavi (on Linux) | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  |     \endlist | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \section1 Writing Text | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Follow the guidelines for | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     \l{http://wiki.qt.io/Writing_Qt_Documentation}{writing Qt documentation}. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     The documentation must be grammatically correct English and use the standard | 
					
						
							|  |  |  |     form of written language. Do not use dialect or slang words. Use idiomatic | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     language, that is, expressions that are characteristic for English. If | 
					
						
							|  |  |  |     possible, ask a native English speaker for a review. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     \section2 Capitalizing Headings | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Use the book title capitalization style for all titles and section headings | 
					
						
							|  |  |  |     (\c {\title}, \c {\section1}, \c {\section2}, and so on). For more | 
					
						
							|  |  |  |     information, see \l{Using Book Style Capitalization}. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \section1 Using Images | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     You can illustrate your documentation by using screen shots, diagrams, and | 
					
						
							|  |  |  |     other images. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-11-19 17:13:33 +01:00
										 |  |  |     Use the \c {\image} and \c {\inlineimage} QDoc commands to refer to images | 
					
						
							|  |  |  |     from the text. You do not need to add paths to image names. For example: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \code | 
					
						
							|  |  |  |     \image riot.png | 
					
						
							|  |  |  |     \endcode | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-02-28 13:37:00 +01:00
										 |  |  |     \section2 Taking Screen Shots | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-03 16:46:29 +02:00
										 |  |  |     \QC has the native look and feel on Windows, Linux, and \macos, and therefore, | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     screen shots can end up looking very different, depending on who takes them | 
					
						
							|  |  |  |     and which system they use. To try to preserve a consistent look and feel in | 
					
						
							|  |  |  |     the \QC Manual, observe the guidelines listed in this section when taking | 
					
						
							|  |  |  |     screen shots. | 
					
						
							| 
									
										
										
										
											2013-02-28 13:37:00 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     To make the images look similar regardless of the operating system they were | 
					
						
							|  |  |  |     taken on, you are asked to adjust their size to 75%. This makes the screen | 
					
						
							|  |  |  |     shots hard to read, but they are provided more as reassurance for users that | 
					
						
							|  |  |  |     they are in the correct place in the UI than as an actual source of | 
					
						
							|  |  |  |     information. To make sure that no important information is lost, always | 
					
						
							|  |  |  |     place example values also in the text. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \list | 
					
						
							|  |  |  |         \li Use the screen resolution of 1024x768 (this is available on all | 
					
						
							|  |  |  |             screens). | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         \li Use the aspect ratio of 4:3. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         \li Open the application in the maximum size on full screen. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         \li Use your favorite tool to take the screen shot. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         \li Include only the part of the screen that you need (you can crop the | 
					
						
							|  |  |  |             image also in the screen capture tool). | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         \li In the screen capture tool, open the screen shot and adjust its size | 
					
						
							|  |  |  |             to 75%. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         \li To highlight parts of the screen shot, use the images of numbers | 
					
						
							|  |  |  |             that are stored in \c{doc\images\numbers} in the \QC repository. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         \li Before you submit the images to the repository, optimize them to | 
					
						
							|  |  |  |             save space. | 
					
						
							|  |  |  |     \endlist | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-08-23 13:07:57 +02:00
										 |  |  |     \section2 Hightlighting Parts of the Screen | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     You can use number icons in screenshots to highlight parts of the screenshot | 
					
						
							|  |  |  |     (instead of using red arrows or borders, or something similar). You can then | 
					
						
							|  |  |  |     refer to the numbers in text. For and example, see the | 
					
						
							|  |  |  |     \l{http://doc.qt.io/qt-5/topics-app-development.html}{Development Tools} | 
					
						
							|  |  |  |     topic in the Qt reference documentation. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     This improves the consistency of the look and feel of Qt documentation, | 
					
						
							|  |  |  |     and eliminates the need to describe parts of the UI in the text, because | 
					
						
							|  |  |  |     you can just insert the number of the element you are referring to in | 
					
						
							|  |  |  |     brackets. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     You can find a set of images that show the numbers from 1 to 10  in the | 
					
						
							|  |  |  |     \c doc\images\numbers directory (or in the \c qtdoc module sources in | 
					
						
							|  |  |  |     \c doc\images\numbers). | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     To use the numbers: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \list | 
					
						
							|  |  |  |         \li Take a screenshot as described above. | 
					
						
							|  |  |  |         \li After resizing the screenshot, copy-paste the number images on | 
					
						
							|  |  |  |             the screenshot to the places that you want to refer to from text. | 
					
						
							|  |  |  |     \endlist | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-02-28 13:37:00 +01:00
										 |  |  |     \section2 Optimizing Images | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  |     Save images in the PNG format in the \QC project folder in the | 
					
						
							|  |  |  |     \c {doc\images} folder. Binary images can easily add megabytes to the Git | 
					
						
							|  |  |  |     history. To keep the history as small as possible, the Git post-commit hooks | 
					
						
							|  |  |  |     remind you to try to keep image size below 50 kilobytes. To achieve this | 
					
						
							|  |  |  |     goal, crop images so that only relevant information is visible in them. | 
					
						
							| 
									
										
										
										
											2013-02-28 13:37:00 +01:00
										 |  |  |     Before committing images, optimize them by using an image optimization tool. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Optimization should not visibly reduce image quality. If it does, do not do | 
					
						
							| 
									
										
										
										
											2014-11-19 17:13:33 +01:00
										 |  |  |     it. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     You can use a web service, such as \l{https://tinypng.com}, or an image | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     optimization tool to shrink the images. For example, you can use the Radical | 
					
						
							|  |  |  |     Image Optimization Tool (RIOT) on Windows (very efficient) or ImageOptim on | 
					
						
							| 
									
										
										
										
											2016-08-03 16:46:29 +02:00
										 |  |  |     \macos (much less efficient), or some other tool available on Linux. | 
					
						
							| 
									
										
										
										
											2013-02-28 13:37:00 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     With ImageOptim, you simply drag and drop the image files to the | 
					
						
							|  |  |  |     application. The following section describes the settings to use for RIOT. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \section3 Using RIOT | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     Download and install \l{http://luci.criosweb.ro/riot/}{RIOT}. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \image riot.png | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Open your images in RIOT and use the following settings for them: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \list | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  Color reduction: Optimal 256 colors palette | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  Reduce colors to: 256 | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  Best compression (slow) | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  Color quantization algorithm: NeuQuant neural-net (slow) | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  External optimizers: OptiPNG o3 | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  |     \endlist | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Compare the initial and optimized images to check that image quality is | 
					
						
							| 
									
										
										
										
											2012-01-09 12:14:26 +01:00
										 |  |  |     preserved. If the image quality deteriorates, do not use color reduction | 
					
						
							| 
									
										
										
										
											2014-12-17 17:15:42 +01:00
										 |  |  |     (select the \uicontrol {True Color} option, instead). | 
					
						
							| 
									
										
										
										
											2012-01-09 12:14:26 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     You can also see the sizes of the initial and optimized image. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-08-23 13:07:57 +02:00
										 |  |  |     \section3 Using OptiPNG | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Download and install \l{https://sourceforge.net/projects/optipng/}{OptiPNG}. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     OptiPNG is a command-line tool that you can invoke from the \QC project | 
					
						
							|  |  |  |     folder (or any folder that contains your project). To optimize a screenshot, | 
					
						
							|  |  |  |     enter the following command (here, from the \QC project folder): | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     \code | 
					
						
							|  |  |  |     optipng -o 7 -strip all doc/images/<screenshot_name> | 
					
						
							|  |  |  |     \endcode | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  |     \section1 Building Documentation | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     You use QDoc to build the documentation. Build the documentation from time | 
					
						
							|  |  |  |     to time, to check its structure and the validity of the QDoc commands. | 
					
						
							|  |  |  |     The error messages that QDoc issues are generally very useful for | 
					
						
							|  |  |  |     troubleshooting. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-03-10 09:46:07 +01:00
										 |  |  |     For more information about setting up the build environment if you do not | 
					
						
							|  |  |  |     want to build the whole Qt, see | 
					
						
							|  |  |  |     \l{https://wiki.qt.io/Building_Qt_Documentation}{Building Qt Documentation} | 
					
						
							|  |  |  |     on the Qt wiki. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  |     The content and formatting of documentation are separated in QDoc. | 
					
						
							| 
									
										
										
										
											2013-02-28 15:39:50 +01:00
										 |  |  |     The documentation configuration, style sheets, and templates have | 
					
						
							| 
									
										
										
										
											2014-11-19 17:13:33 +01:00
										 |  |  |     changed over time, so they differ between Qt and \QC versions. Since \QC | 
					
						
							|  |  |  |     version 3.3, only Qt 5 is supported for building documentation. The | 
					
						
							|  |  |  |     templates to use are defined by the | 
					
						
							| 
									
										
										
										
											2015-01-29 10:29:46 +01:00
										 |  |  |     \c {qt5\qtbase\doc\global\qt-html-templates-offline.qdocconf} and | 
					
						
							| 
									
										
										
										
											2014-11-19 17:13:33 +01:00
										 |  |  |     \c {qt5\qtbase\doc\global\qt-html-templates-online.qdocconf} configuration | 
					
						
							|  |  |  |     file. They are fetched from Qt sources by adding the following lines to the | 
					
						
							|  |  |  |     qdocconf file: | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-11-19 17:13:33 +01:00
										 |  |  |     \list | 
					
						
							|  |  |  |         \li \c {include ($QT_INSTALL_DOCS/global/qt-html-templates-offline.qdocconf)} | 
					
						
							|  |  |  |             for help files | 
					
						
							| 
									
										
										
										
											2015-01-29 10:29:46 +01:00
										 |  |  |         \li \c {include ($QT_INSTALL_DOCS/global/qt-html-templates-online.qdocconf)} | 
					
						
							|  |  |  |             for publishing on the web | 
					
						
							| 
									
										
										
										
											2014-11-19 17:13:33 +01:00
										 |  |  |     \endlist | 
					
						
							| 
									
										
										
										
											2013-02-28 15:39:50 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-01-29 10:29:46 +01:00
										 |  |  |     \note To have the correct fonts loaded for the online version, you must be | 
					
						
							|  |  |  |     running it on a web server. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-11-19 17:13:33 +01:00
										 |  |  |     \note If the styles look wrong to you when reading help files in \QC or \QA, | 
					
						
							| 
									
										
										
										
											2017-03-10 09:46:07 +01:00
										 |  |  |     you might be looking at them in the QTextBrowser instead of the Qr WebEngine | 
					
						
							|  |  |  |     browser. This happens if you do not have Qt WebEngine installed. | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     To build documentation for the sources from the qtcreator master branch, use | 
					
						
							|  |  |  |     build scripts defined in the doc.pri file. To build all \QC docs in the | 
					
						
							|  |  |  |     help format and to create help files (.qch), enter the following build | 
					
						
							| 
									
										
										
										
											2013-02-28 15:39:50 +01:00
										 |  |  |     commands from the project folder (after running qmake): | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     \list | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  nmake docs (on Windows) | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-03 16:46:29 +02:00
										 |  |  |         \li  make docs (on Linux and \macos) | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  |     \endlist | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-03-10 09:46:07 +01:00
										 |  |  |     The \QC Manual HTML files are generated in the \c {doc/qtcreator} directory. | 
					
						
							| 
									
										
										
										
											2013-07-26 13:02:29 +02:00
										 |  |  |     The Extending \QC Manual files are generated in the | 
					
						
							| 
									
										
										
										
											2017-03-10 09:46:07 +01:00
										 |  |  |     \c {doc/qtcreator-dev} directory. The help files (\c {.qch}) are generated in the | 
					
						
							| 
									
										
										
										
											2013-07-26 13:02:29 +02:00
										 |  |  |     \c {share/doc/qtcreator} directory in the \QC build directory on Windows and | 
					
						
							|  |  |  |     Linux, and in the \c {bin/Qt Creator.app/Contents/Resources/app} directory | 
					
						
							| 
									
										
										
										
											2016-08-03 16:46:29 +02:00
										 |  |  |     on \macos. You can view the HTML files in a browser and the help files in | 
					
						
							| 
									
										
										
										
											2015-06-23 16:59:42 +02:00
										 |  |  |     the \QC \uicontrol Help mode. For more information about adding the help | 
					
						
							|  |  |  |     files to \QC, see | 
					
						
							| 
									
										
										
										
											2015-02-18 10:20:03 +01:00
										 |  |  |     \l{http://doc.qt.io/qtcreator/creator-help.html#adding-external-documentation} | 
					
						
							| 
									
										
										
										
											2013-07-26 13:02:29 +02:00
										 |  |  |     {Adding External Documentation}. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-02-28 15:39:50 +01:00
										 |  |  |     Besides \c docs, you have the following options: | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     \list | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  html_docs - build \QC Manual in help format, but do not generate a | 
					
						
							|  |  |  |              help file | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  dev_html_docs - build Extending \QC Manual in help format, but do | 
					
						
							|  |  |  |              not generate a help file | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  qch_docs - build \QC Manual in help format and generate a help file | 
					
						
							|  |  |  |              (.qch) | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  dev_qch_docs - build Extending \QC Manual in help format and | 
					
						
							|  |  |  |              generate a help file (.qch) | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  docs_online - build \QC Manual and Extending \QC Manual in online | 
					
						
							|  |  |  |              format | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  html_docs_online - build \QC Manual in online format | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-25 18:19:45 +02:00
										 |  |  |         \li  dev_html_docs_online - build Extending \QC Manual in online format | 
					
						
							| 
									
										
										
										
											2012-01-06 16:07:05 +01:00
										 |  |  |     \endlist | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | */ |