Update landing pages and module pages in qtbase

-Qt SQL, Qt D-BUS, Qt GUI, Qt OpenGL, Qt Widgets,
 Qt Test, Qt Concurrent, Qt XML, Qt Network, Qt Core
-language edits for consistency, add links

Task-number: QTBUG-87155
Change-Id: Ic61350c9fa15090c802a42d8e9116219591eba73
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
This commit is contained in:
Jerome Pasion 2020-11-11 17:23:18 +01:00
parent 4f6c5d83d0
commit d4b3989818
18 changed files with 137 additions and 118 deletions

View File

@ -31,26 +31,17 @@
\brief The Qt Concurrent module contains functionality to support concurrent execution of program code.
\include module-use.qdocinc using qt module
\snippet snippets/CMakeLists.txt cmake_use
See also the \l {Build with CMake} overview.
\include module-use.qdocinc building with qmake
\snippet snippets/snippets.pro qmake_use
\section1 Getting Started
The QtConcurrent namespace provides high-level APIs that make it
The Qt Concurrent module provides high-level APIs that make it
possible to write multi-threaded programs without using low-level
threading primitives such as mutexes, read-write locks, wait
conditions, or semaphores. Programs written with QtConcurrent
conditions, or semaphores. Programs written with Qt Concurrent
automatically adjust the number of threads used according to the
number of processor cores available. This means that applications
written today will continue to scale when deployed on multi-core
systems in the future.
QtConcurrent includes functional programming style APIs for
Qt Concurrent includes functional programming style APIs for
parallel list processing, including a MapReduce and FilterReduce
implementation for shared-memory (non-distributed) systems, and
classes for managing asynchronous computations in GUI
@ -103,15 +94,16 @@
\li QFutureSynchronizer is a convenience class that automatically
synchronizes several QFutures.
\li QPromise provides a way to report progress and results of the asynchronous
computation to QFuture. Allows suspending or canceling the task when
requested by QFuture.
\li QPromise provides a way to report progress and results of the
asynchronous computation to QFuture. Allows suspending or canceling the task
when requested by QFuture.
\endlist
Qt Concurrent supports several STL-compatible container and iterator types,
but works best with Qt containers that have random-access iterators, such as
QList. The map and filter functions accept both containers and begin/end iterators.
QList. The map and filter functions accept both containers and begin/end
iterators.
STL Iterator support overview:
@ -142,16 +134,25 @@
\li Supported and Recommended
\endtable
Random access iterators can be faster in cases where Qt Concurrent is iterating
over a large number of lightweight items, since they allow skipping to any point
in the container. In addition, using random access iterators allows Qt Concurrent
to provide progress information trough QFuture::progressValue() and
QFutureWatcher::progressValueChanged().
Random access iterators can be faster in cases where Qt Concurrent is
iterating over a large number of lightweight items, since they allow
skipping to any point in the container. In addition, using random access
iterators allows Qt Concurrent to provide progress information trough
QFuture::progressValue() and QFutureWatcher::progressValueChanged().
The non in-place modifying functions such as mapped() and filtered() makes a
copy of the container when called. If you are using STL containers this copy operation
might take some time, in this case we recommend specifying the begin and end iterators
for the container instead.
copy of the container when called. If you are using STL containers this copy
operation might take some time, in this case we recommend specifying the
begin and end iterators for the container instead.
\include module-use.qdocinc using qt module
\snippet snippets/CMakeLists.txt cmake_use
See also the \l {Build with CMake} overview.
\include module-use.qdocinc building with qmake
\snippet snippets/snippets.pro qmake_use
\section1 Module Evolution
\l{Changes to Qt Concurrent} lists important changes in the module API
@ -159,7 +160,8 @@
\section1 Licenses
The Qt Concurrent module is available under commercial licenses from \l{The Qt Company}.
The Qt Concurrent module is available under commercial licenses from
\l{The Qt Company}.
In addition, it is available under free software licenses:
The \l{GNU Lesser General Public License, version 3}, or
the \l{GNU General Public License, version 2}.

View File

@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2016 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
@ -34,6 +34,5 @@
\qtcmakepackage Concurrent
\qtvariable concurrent
The Qt Concurrent module extends the basic threading support found in \l{Qt Core} module and
simplifies the development of code that can be executed in parallel on all available CPU cores.
The \l{Qt Concurrent} page contains information about how to use the module.
*/

View File

@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
@ -31,9 +31,8 @@
\brief The Qt Core module is part of Qt's essential modules.
\section1 Core Functionalities
Qt Core adds these features to C++:
The Qt Core module adds these features to C++:
\list
\li a very powerful mechanism for seamless object communication called

View File

@ -35,4 +35,6 @@
\brief Provides core non-GUI functionality.
All other Qt modules rely on this module.
The \l{Qt Core} page contains information about how to use the module.
*/

View File

@ -32,13 +32,6 @@
\keyword QtDBus
\include module-use.qdocinc using qt module
\snippet snippets/CMakeLists.txt cmake_use
See also the \l {Build with CMake} overview.
\include module-use.qdocinc building with qmake
\snippet snippets/snippets.pro qmake_use
\section1 Introduction
@ -208,6 +201,16 @@
Information about the messages will be written to the console the application
was launched from.
\include module-use.qdocinc using qt module
\snippet snippets/CMakeLists.txt cmake_use
See also the \l {Build with CMake} overview.
\include module-use.qdocinc building with qmake
\snippet snippets/snippets.pro qmake_use
\section1 Module Evolution
\l{Changes to Qt D-Bus} lists important changes in the module API
and functionality that were done for the Qt 6 series of Qt.

View File

@ -43,11 +43,5 @@
services exported by those applications by placing calls and
accessing properties.
The Qt D-Bus module provides an interface that extends the Qt \l
{signalsandslots.html}{Signals and Slots} mechanism, allowing one
to connect to a signal emitted remotely as well as to connect a
local signal to remote slot.
See the \l {Qt D-Bus}{D-Bus} page for detailed information on
how to use this module.
The \l{Qt D-Bus} page contains information about how to use the module.
*/

View File

@ -35,12 +35,7 @@
\brief The Qt GUI module provides the basic enablers for graphical
applications written with Qt.
The Qt GUI module provides classes for windowing system
integration, event handling, OpenGL and OpenGL ES integration,
Vulkan integration, 2D graphics, imaging, fonts and typography.
These classes are used internally by Qt's user interface technologies
and can also be used directly, for instance to write applications using
low-level OpenGL ES graphics APIs.
The \l{Qt GUI} page contains information about how to use the module.
*/
/*!
@ -163,8 +158,8 @@
\section1 Vulkan Integration
Qt 5.10 added support for \l {Vulkan}. This requires
the presence of the \l{LunarG Vulkan SDK}.
Qt GUI has support for the \l {Vulkan} API. Qt applications require the
presence of the \l{LunarG Vulkan SDK}.
On Windows, the SDK sets the environment variable \c {VULKAN_SDK},
which will be detected by the \c {configure} script.
@ -188,7 +183,8 @@
\section1 Drag and Drop
More info in \l{Drag and Drop}
Qt GUI includes support for drag and drop. The \l{Drag and Drop} overview
has more information.
\section1 Module Evolution
\l{Changes to Qt GUI} lists important changes in the module API

View File

@ -1,6 +1,6 @@
/****************************************************************************
**
** Copyright (C) 2016 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
@ -30,9 +30,9 @@
\title Qt Network
\brief Provides networking capabilities
Qt Network provides a set of APIs for programming applications that use
TCP/IP. Operations such as requests, cookies, and sending data over HTTP
are handled by various C++ classes.
The \l{Qt Network} module provides a set of APIs for programming
applications that use TCP/IP. Operations such as requests, cookies, and
sending data over HTTP are handled by various C++ classes.
\include module-use.qdocinc using qt module
\snippet doc/snippets/CMakeLists.txt 0
@ -50,8 +50,10 @@
These articles contain information about Qt Network setup and about
applications with networking capabilities.
\list
\li \l{Network Programming with Qt} - Programming applications with networking capabilities
\li \l{Secure Sockets Layer (SSL) Classes} - Classes for secure communication over network sockets
\li \l{Network Programming with Qt} - Programming applications with
networking capabilities
\li \l{Secure Sockets Layer (SSL) Classes} - Classes for secure
communication over network sockets
\endlist
\section1 API Reference
@ -102,6 +104,7 @@
\qtvariable network
\brief Provides classes to make network programming easier and portable.
Qt Network provides a set of APIs for programming applications that use
TCP/IP. See the \l{Qt Network} overview for more information.
The \l{Qt Network} page contains information about how to use the module.
*/

View File

@ -31,10 +31,6 @@
\brief The Qt OpenGL module offers classes that make it easy to
use OpenGL in Qt applications.
OpenGL is a low-level, cross-platform API for graphics. In Qt,
it can optionally be used as the foundation for rendering.
\section1 Introduction
Qt has two main approaches to UI development: \l[QtQuick]{Qt Quick} and
\l{Qt Widgets}. They exist to support different types of user
@ -76,9 +72,6 @@
\section1 Overview
The \l{Qt OpenGL C++ Classes} page gives an overview over the available classes
in this module.
\include module-use.qdocinc using qt module
\snippet snippets/CMakeLists.txt cmake_use
@ -93,12 +86,24 @@
\section1 Licenses and Trademarks
The Qt OpenGL module is available under commercial licenses from \l{The Qt Company}.
In addition, it is available under free software licenses:
The Qt OpenGL module is available under commercial licenses from
\l{The Qt Company}. In addition, it is available under free software
licenses:
The \l{GNU Lesser General Public License, version 3}, or
the \l{GNU General Public License, version 2}.
See \l{Qt Licensing} for further details.
OpenGL\reg is a trademark of Silicon Graphics, Inc. in
the United States and other countries.
\section1 Related Information
These are links to the API reference materials and related pages.
\list
\li l{Qt OpenGL C++ Classes}{C++ Classes}
\li \l{OpenGL Window Example}
\endlist
*/

View File

@ -35,8 +35,10 @@
\brief The Qt OpenGL module offers classes that make it easy to
use OpenGL in Qt applications.
The \l{Qt OpenGL Widgets C++ Classes}{Qt OpenGL Widgets} library provides
a C++ widget class for rendering OpenGL graphics into widgets UIs.
The \l{Qt OpenGL} page contains information about how to use the module.
A separate \l{Qt OpenGL Widgets C++ Classes}{Qt OpenGL Widgets} library
provides a C++ widget class for rendering OpenGL graphics into widgets UIs.
\generatelist classesbymodule QtOpenGLWidgets
*/
@ -50,4 +52,7 @@
\title Qt OpenGL Widgets C++ Classes
\qtcmakepackage OpenGLWidgets
\qtvariable openglwidgets
The \l{Qt OpenGL Widgets} page contains information about how to use the
module.
*/

View File

@ -32,11 +32,11 @@
\ingroup qt-graphics
Qt provides extensive cross-platform support for printing. Using the printing
systems on each platform, Qt applications can print to attached printers and
across networks to remote printers. Qt's printing system also supports
PDF file generation, providing the foundation for basic report
generation facilities.
The Qt Print Support module provides extensive cross-platform support for
printing. Using the printing systems on each platform, Qt applications can
print to attached printers and across networks to remote printers. The
printing system also supports PDF file generation, providing the foundation
for basic report generation facilities.
\tableofcontents
@ -49,7 +49,7 @@
\section1 Paint Devices and Printing
In Qt, printers are represented by QPrinter, a paint device that provides
Printers are represented by QPrinter, a paint device that provides
functionality specific to printing, such as support for multiple pages and
double-sided output. As a result, printing involves using a QPainter to paint
onto a series of pages in the same way that you would paint onto a custom
@ -59,18 +59,18 @@
Although QPrinter objects can be constructed and set up without requiring user
input, printing is often performed as a result of a request by the user;
for example, when the user selects the \uicontrol{File|Print...} menu item in a GUI
application. In such cases, a newly-constructed QPrinter object is supplied to
a QPrintDialog, allowing the user to specify the printer to use, paper size, and
other printing properties.
for example, when the user selects the \uicontrol{File|Print...} menu item in
a GUI application. In such cases, a newly-constructed QPrinter object is
supplied to a QPrintDialog, allowing the user to specify the printer to use,
paper size, and other printing properties.
\snippet widgetprinting.cpp 1
It is also possible to set certain default properties by modifying the QPrinter
before it is supplied to the print dialog. For example, applications that
generate batches of reports for printing may set up the QPrinter to
\l{QPrinter::setOutputFileName()}{write to a local file} by default rather than
to a printer.
It is also possible to set certain default properties by modifying the
QPrinter before it is supplied to the print dialog. For example, applications
that generate batches of reports for printing may set up the QPrinter to
\l{QPrinter::setOutputFileName()}{write to a local file} by default rather
than to a printer.
\section2 Painting onto a Page
@ -122,16 +122,16 @@
The paint system automatically uses the correct device metrics when painting
text but, if you need to position text using information obtained from
font metrics, you need to ensure that the print device is specified when
you construct QFontMetrics and QFontMetricsF objects, or ensure that each QFont
used is constructed using the form of the constructor that accepts a
you construct QFontMetrics and QFontMetricsF objects, or ensure that each
QFont used is constructed using the form of the constructor that accepts a
QPaintDevice argument.
\section1 Printing Widgets
To print a widget, you can use the QWidget::render() function. As mentioned,
the printer's resolution is usually higher than the screen resolution, so you
will have to scale the painter. You may also want to position the widget on the
page. The following code sample shows how this may look.
will have to scale the painter. You may also want to position the widget on
the page. The following code sample shows how this may look.
\snippet widgetprinting.cpp 0
@ -144,9 +144,9 @@
and QGraphicsScene. As a result, it is these content handling classes that
usually provide printing functionality, either via a function that can be used
to perform the complete task, or via a function that accepts an existing
QPainter object. Some widgets provide convenience functions to expose underlying
printing features, avoiding the need to obtain the content handler just to call
a single function.
QPainter object. Some widgets provide convenience functions to expose
underlying printing features, avoiding the need to obtain the content handler
just to call a single function.
The following table shows which class and function are responsible for
printing from a selection of different widgets. For widgets that do not expose
@ -162,9 +162,9 @@
\row \li QTextLine \li QTextLine::draw() \li QPainter
\endtable
QTextEdit requires a QPrinter rather than a QPainter because it uses information
about the configured page dimensions in order to insert page breaks at the most
appropriate places in printed documents.
QTextEdit requires a QPrinter rather than a QPainter because it uses
information about the configured page dimensions in order to insert page
breaks at the most appropriate places in printed documents.
\include module-use.qdocinc using qt module
\snippet snippets/CMakeLists.txt cmake_use
@ -180,7 +180,8 @@
\section1 Licenses and Trademarks
The Qt Print Support module is available under commercial licenses from \l{The Qt Company}.
The Qt Print Support module is available under commercial licenses from
\l{The Qt Company}.
In addition, it is available under free software licenses:
The \l{GNU Lesser General Public License, version 3}, or
the \l{GNU General Public License, version 2}.

View File

@ -33,4 +33,7 @@
\ingroup modules
\qtcmakepackage PrintSupport
\qtvariable printsupport
The \l{Qt Print Support} page contains information about using the module.
*/

View File

@ -30,8 +30,8 @@
\brief Provides a driver layer, SQL API layer, and a user
interface layer for SQL databases
Qt SQL is an essential module which provides support for SQL databases. Qt
SQL's APIs are divided into different layers:
The Qt SQL module provides support for SQL databases. Qt SQL's APIs are
divided into different layers:
\list
\li Driver layer
@ -84,6 +84,5 @@
\brief Provides a driver layer, SQL API layer, and a user
interface layer for SQL databases.
See the \l{Qt SQL} page and the \l{SQL Programming} guide for further
information about using this module in your application.
The \l{Qt SQL} page contains information about how to use the module.
*/

View File

@ -29,11 +29,11 @@
\title Qt Test
\brief Provides classes for unit testing Qt applications and libraries.
Qt Test provides classes for unit testing Qt applications and libraries.
All public methods are in the \l QTest namespace. In addition, the
\l QSignalSpy class provides easy introspection for Qt's signals and slots,
and the \l QAbstractItemModelTester allows for non-destructive testing
of item models.
The Qt Test module provides classes for unit testing Qt applications and
libraries. All public methods are in the \l QTest namespace. In addition,
the \l QSignalSpy class provides easy introspection for Qt's signals and
slots, and the \l QAbstractItemModelTester allows for non-destructive
testing of item models.
\note There is no binary compatibility guarantee for the Qt Test module.
This means that an application that uses Qt Test is only guaranteed

View File

@ -36,6 +36,5 @@
\brief Provides classes for unit testing Qt applications and libraries.
See the \l{Qt Test} page and the \l{Qt Test Overview} guide for further
information about using this module in your application.
The \l{Qt Test} page contains information about how to use the module.
*/

View File

@ -33,5 +33,7 @@
\qtvariable widgets
\brief The Qt Widgets module extends Qt GUI with C++ widget functionality.
The \l{Qt Widget} page contains information about how to use the module.
*/

View File

@ -30,10 +30,14 @@
\title Qt XML
\brief The Qt XML module provides C++ implementations of the SAX and DOM standards for XML.
Note that the module will not receive additional features anymore. For reading or writing XML
documents iteratively (SAX), we recommend using Qt Core's QXmlStreamReader and
QXmlStreamWriter classes. The classes are both easier to use and more compliant with the
XML standard.
The Qt XML module provides implementations of the SAX and DOM standards for
XML.
\note Qt XML will no longer receive additional features. For reading or
writing XML documents iteratively (SAX), use the QXmlStreamReader and
QXmlStreamWriter classes. The classes are both easier to use and more
compliant with the XML standard.
The \l{Qt XML C++ Classes} page gives an overview over the available classes
in this module.

View File

@ -34,8 +34,11 @@
\brief The Qt XML module provides C++ implementations of the SAX and DOM standards for XML.
Note that the module will not receive additional features anymore. For reading or writing XML
documents iteratively (SAX), we recommend using Qt Core's QXmlStreamReader and
QXmlStreamWriter classes. The classes are both easier to use and more compliant with the
XML standard.
The \l{Qt XML} page contains information about how to use the module.
\note Qt XML will no longer receive additional features. For reading or
writing XML documents iteratively (SAX), use the QXmlStreamReader and
QXmlStreamWriter classes. The classes are both easier to use and more
compliant with the XML standard.
*/