summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-08-15 12:23:03 +0200
committerLiang Qi <liang.qi@qt.io>2017-08-15 13:12:52 +0200
commitcb40f264a6796d8d28101de3241b96a3e09b45dc (patch)
tree666c995afff478d7c11689d9dbc9ee0c4701041a /doc
parent96b4e407533ff230781fc33063cbfe0d3518f2fa (diff)
parent0718372fec57aae22aaab544f39c2fbbdb0119a2 (diff)
downloadqtdoc-cb40f264a6796d8d28101de3241b96a3e09b45dc.tar.gz
Merge remote-tracking branch 'origin/5.9' into dev
Conflicts: .qmake.conf Change-Id: I3d9287ed19127348768a3c9bca688b403f8aec0d
Diffstat (limited to 'doc')
-rw-r--r--doc/snippets/qmlapp/usecases/text.qml11
-rw-r--r--doc/src/configure.qdoc58
-rw-r--r--doc/src/development/uic.qdoc2
-rw-r--r--doc/src/external-resources.qdoc6
-rw-r--r--doc/src/getting-started/gettingstarted.qdoc10
-rw-r--r--doc/src/highdpi.qdoc4
-rw-r--r--doc/src/images/open-project.png (renamed from doc/src/images/open-project.PNG)bin31906 -> 31906 bytes
-rw-r--r--doc/src/images/project-wizard.png (renamed from doc/src/images/project-wizard.PNG)bin35781 -> 35781 bytes
-rw-r--r--doc/src/images/vas-galcore.PNGbin27592 -> 0 bytes
-rw-r--r--doc/src/legal/licenses-fonts.qdoc246
-rw-r--r--doc/src/platforms/expressing-apple-os-versions.qdocinc106
-rw-r--r--doc/src/platforms/ios.qdoc12
-rw-r--r--doc/src/platforms/linux.qdoc4
-rw-r--r--doc/src/platforms/osx.qdoc10
-rw-r--r--doc/src/platforms/platform-notes-integrity.qdoc10
-rw-r--r--doc/src/platforms/qpa.qdoc102
-rw-r--r--doc/src/platforms/supported-platforms.qdoc5
-rw-r--r--doc/src/platforms/supported-platforms.qdocinc86
-rw-r--r--doc/src/platforms/windows.qdoc26
19 files changed, 307 insertions, 391 deletions
diff --git a/doc/snippets/qmlapp/usecases/text.qml b/doc/snippets/qmlapp/usecases/text.qml
index d0a75499..6d2320c3 100644
--- a/doc/snippets/qmlapp/usecases/text.qml
+++ b/doc/snippets/qmlapp/usecases/text.qml
@@ -77,11 +77,15 @@ Item {
// For text to wrap, a width has to be explicitly provided
width: root.width
- // This setting makes the text wrap at word boundaries when it goes past the width of the Text object
+ // This setting makes the text wrap at word boundaries when it goes
+ // past the width of the Text object
wrapMode: Text.WordWrap
- // You can use \ to escape quotation marks, or to add new lines (\n). Use \\ to get a \ in the string
- text: 'I am the very model of a modern major general. I\'ve information vegetable, animal and mineral. I know the kings of england and I quote the fights historical; from Marathon to Waterloo in order categorical.'
+ // You can use \ to escape quotation marks, or to add new lines (\n).
+ // Use \\ to get a \ in the string
+ text: 'I am the very model of a modern major general. I\'ve information \
+ vegetable, animal and mineral. I know the kings of england and I \
+ quote the fights historical; from Marathon to Waterloo in order categorical.'
// color can be set on the entire element with this property
color: "white"
@@ -108,7 +112,6 @@ Item {
// StyledText format supports fewer tags, but is more efficient than RichText
textFormat: Text.StyledText
-
}
}
}
diff --git a/doc/src/configure.qdoc b/doc/src/configure.qdoc
index 66682693..d3fbf87a 100644
--- a/doc/src/configure.qdoc
+++ b/doc/src/configure.qdoc
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2016 The Qt Company Ltd.
+** Copyright (C) 2017 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
@@ -64,12 +64,12 @@
\badcode
mkdir ~/qt-build
cd ~/qt-build
- ~/qt-source/configure -prefix /opt/Qt5.6
+ ~/qt-source/configure -prefix /opt/Qt5.9
qmake
\endcode
Configuring with the \c -prefix option means that the Qt binaries and
- libraries are installed into another directory, which is \c /opt/Qt5.6 in
+ libraries are installed into another directory, which is \c /opt/Qt5.9 in
this case. Running \c qmake generates the Makefiles in the \e ~/qt-build
directory and not in the \e source directory. After the Makefiles are in
place, run the following commands to build the Qt binaries and libraries,
@@ -89,18 +89,18 @@
shipping applications. Such a build contains more exported symbols than
a standard build and compiles with a higher warning level.
- \section1 Including and Excluding Qt Modules
+ \section1 Modules and Features
- With configure, it is possible to include or exclude particular
- \l{All Modules}{Qt modules} in a Qt build. However, keep in mind that
- many modules depend on other modules, therefore, dependency issues
- can arise with some build configurations.
+ Qt consists of different \l{All Modules}{modules} whose sources can be
+ found in different directories inside the top-level source directory.
+ Users can explicitly exclude specific top-level directories to limit build
+ times. Furthermore, each Qt module might have features that can also be
+ explicitly enabled or disabled.
- \section2 Excluding a Qt Submodule
+ \section2 Excluding Qt Modules
- Configure's \c -skip option allows certain Qt submodules to be excluded from
- the Qt build. These submodules correspond to the Git submodules in the
- standard Qt 5 repository. Note that many packages contain multiple Qt
+ Configure's \c -skip option allows top-level source directories to be
+ excluded from the Qt build. Note that many directories contain multiple Qt
modules. For example, to exclude Qt NFC and Qt Bluetooth from the Qt build,
provide \c{-skip qtconnectivity} as the argument to configure.
@@ -111,16 +111,21 @@
\section2 Including or Excluding Features
The \c{-feature-}\e{<feature>} and \c{-no-feature-}\e{<feature>} options
- include and exclude specific features, respectively, where \e{<feature>}
- is listed in the file \e{qtbase/src/corelib/global/qfeatures.txt}.
+ include and exclude specific features, respectively.
- For example, to disable \l Accessibility, provide \c -no-feature-accessibility
- as the argument:
+ For example, to disable \l Accessibility, provide
+ \c -no-feature-accessibility as the argument:
\code
./configure -no-feature-accessibility
\endcode
- \note Features outside of \e qtbase are not included in the features list.
+ Use \c{configure -list-features} to show a list of all available features
+ on the command line. Note that features can depend on other features, so
+ disabling a feature might have side-effects on other features.
+
+ The \l{Qt Configuration Tool} that is part of \l{Qt for Device Creation}
+ allows the tweaking of features and dependencies through a convenient user
+ interface.
\section1 Third-Party Libraries
@@ -200,7 +205,7 @@
\code
configure.bat -platform win32-g++
- configure.bat -platform win32-msvc2010
+ configure.bat -platform win32-msvc
\endcode
Afterwards, the generated Makefiles will use the appropriate compiler
@@ -243,9 +248,12 @@
\section1 OpenGL Options for Windows
On Windows, Qt can be configured with the system OpenGL or with \l{ANGLE}.
- By default, Qt is configured to use ANGLE, which is bundled with Qt and
- depends on the DirectX SDK. ANGLE enables running Qt applications that
- depend on OpenGL, without installing the latest OpenGL libraries.
+ By default, Qt is configured to use dynamic OpenGL. This means that it tries
+ to use system OpenGL and falls back to ANGLE, which is bundled with Qt and
+ depends on the DirectX SDK, if native OpenGL does not work. ANGLE enables
+ running Qt applications that depend on OpenGL, without installing the latest
+ OpenGL drivers. If ANGLE also fails, Qt will fall back to software rendering,
+ which is the slowest but most safe of the rendering methods.
The \c -opengl option can be used to configure Qt to use
the OpenGL in the target system, a different version of OpenGL ES (with or
@@ -253,6 +261,14 @@
implementations.
\code
+ configure.bat -opengl dynamic
+ \endcode
+
+ With the \c dynamic option, Qt will try to use native OpenGL first. If that
+ fails, it will fall back to ANGLE and finally to software rendering in case
+ of ANGLE failing as well.
+
+ \code
configure.bat -opengl desktop
\endcode
diff --git a/doc/src/development/uic.qdoc b/doc/src/development/uic.qdoc
index 5977404d..ed39a71a 100644
--- a/doc/src/development/uic.qdoc
+++ b/doc/src/development/uic.qdoc
@@ -34,7 +34,7 @@
\omit KEEP THIS FILE SYNCHRONIZED WITH uic.1 \endomit
This page documents the \e{User Interface Compiler} for the \l{Qt Widgets}
- toolkit. The \c uic reads an XML format user interface definition
+ module. The \c uic reads an XML format user interface definition
(\c .ui) file as generated by \l{Qt Designer Manual}{Qt
Designer} and creates a corresponding C++ header file.
diff --git a/doc/src/external-resources.qdoc b/doc/src/external-resources.qdoc
index 962935e7..1e2951c5 100644
--- a/doc/src/external-resources.qdoc
+++ b/doc/src/external-resources.qdoc
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2016 The Qt Company Ltd.
+** Copyright (C) 2017 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
@@ -299,6 +299,10 @@
\externalpage http://doc.qt.io/QtForDeviceCreation/qtee-about-b2qt.html
\title Boot2Qt
*/
+/*!
+ \externalpage https://doc.qt.io/QtForDeviceCreation/qt-configuration-tool.html
+ \title Qt Configuration Tool
+*/
/*!
\externalpage https://qmlbook.github.io/
diff --git a/doc/src/getting-started/gettingstarted.qdoc b/doc/src/getting-started/gettingstarted.qdoc
index 9c989f17..d9a5efea 100644
--- a/doc/src/getting-started/gettingstarted.qdoc
+++ b/doc/src/getting-started/gettingstarted.qdoc
@@ -94,15 +94,19 @@
\section1 Create Your First Applications
- Learn the basics of Qt and Qt Quick development by following two tutorials
- that illustrate how to create simple applications and build and run them on
+ Learn the basics of Qt and Qt Quick development by following the two tutorials
+ below that illustrate how to create simple applications and build and run them on
target platforms:
-
\list
\li \l {Getting Started Programming with Qt Widgets}
\li \l {Getting Started Programming with Qt Quick}
\endlist
+ \l{Qt Widgets} provides a library of UI elements which allow you to
+ create classic desktop-style user interfaces. \l {Qt Quick} is a library
+ providing types and functionalities for building modern, fluid, animated
+ UIs.
+
For a more thorough walkthrough of the different aspects of developing
applications with Qt 5, see the \l {QML Book}. It focuses on Qt Quick,
but also provides the information needed to use QML together with C++.
diff --git a/doc/src/highdpi.qdoc b/doc/src/highdpi.qdoc
index dc1261a0..54cafae3 100644
--- a/doc/src/highdpi.qdoc
+++ b/doc/src/highdpi.qdoc
@@ -126,7 +126,7 @@
\row
\li DPI Unaware
- \li This level has been introduced in Windows-Vista. Windows will pretend to the
+ \li This level has been introduced in Windows Vista. Windows will pretend to the
application that it is running on a standard display of 96 DPI of 1920x1080
and scale the application accordingly. It is intended to accommodate older
applications designed for low DPI displays. Some artifacts may result from
@@ -134,7 +134,7 @@
\row
\li System-DPI Aware
- \li This level has been introduced in Windows-Vista. It differs from
+ \li This level has been introduced in Windows Vista. It differs from
\e{Per-Monitor DPI Aware} only when multiple monitors are connected.
Windows will calculate a scaling suitable for all connected monitors.
diff --git a/doc/src/images/open-project.PNG b/doc/src/images/open-project.png
index 18a1af52..18a1af52 100644
--- a/doc/src/images/open-project.PNG
+++ b/doc/src/images/open-project.png
Binary files differ
diff --git a/doc/src/images/project-wizard.PNG b/doc/src/images/project-wizard.png
index fec0ea45..fec0ea45 100644
--- a/doc/src/images/project-wizard.PNG
+++ b/doc/src/images/project-wizard.png
Binary files differ
diff --git a/doc/src/images/vas-galcore.PNG b/doc/src/images/vas-galcore.PNG
deleted file mode 100644
index d635809a..00000000
--- a/doc/src/images/vas-galcore.PNG
+++ /dev/null
Binary files differ
diff --git a/doc/src/legal/licenses-fonts.qdoc b/doc/src/legal/licenses-fonts.qdoc
deleted file mode 100644
index afca99c1..00000000
--- a/doc/src/legal/licenses-fonts.qdoc
+++ /dev/null
@@ -1,246 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of the documentation of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:FDL$
-** 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.
-**
-** GNU Free Documentation License Usage
-** Alternatively, this file may be used under the terms of the GNU Free
-** Documentation License version 1.3 as published by the Free Software
-** 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.
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-/*!
- \page licenses-fonts.html
- \title Licenses for Fonts Used in Qt for Embedded Linux
- \ingroup qt-embedded-linux
- \ingroup licensing
- \brief Information about the licenses of fonts supplied with Qt
-
- The fonts supplied with Qt are intended for use with embedded systems,
- and have been obtained under a variety of different licenses listed
- below.
-
- \section1 Adobe Helvetica
-
- Copyright 1984-1989, 1994 Adobe Systems Incorporated.
- Copyright 1988, 1994 Digital Equipment Corporation.
-
- Adobe is a trademark of Adobe Systems Incorporated which may be
- registered in certain jurisdictions.
- Permission to use these trademarks is hereby granted only in
- association with the images described in this file.
-
- Permission to use, copy, modify, distribute and sell this software
- and its documentation for any purpose and without fee is hereby
- granted, provided that the above copyright notices appear in all
- copies and that both those copyright notices and this permission
- notice appear in supporting documentation, and that the names of
- Adobe Systems and Digital Equipment Corporation not be used in
- advertising or publicity pertaining to distribution of the software
- without specific, written prior permission. Adobe Systems and
- Digital Equipment Corporation make no representations about the
- suitability of this software for any purpose. It is provided "as
- is" without express or implied warranty.
-
- \section1 Adobe Utopia
-
- Permission to use, reproduce, display and distribute the listed
- typefaces is hereby granted, provided that the Adobe Copyright notice
- appears in all whole and partial copies of the software and that the
- following trademark symbol and attribution appear in all unmodified
- copies of the software:
-
- Copyright (c) 1989 Adobe Systems Incorporated
- Utopia (R)
- Utopia is a registered trademark of Adobe Systems Incorporated
-
- The Utopia font
- Copyright (c) 1989, 1991 Adobe Systems Incorporated. All Rights
- Reserved.Utopia is a registered trademark of Adobe Systems
- Incorporated.
-
- \section1 Babelfish
-
- \snippet snippets/code/doc_src_licenses.qdoc 1
-
- \section1 Bigelow & Holmes Luxi
-
- Luxi fonts copyright (c) 2001 by Bigelow & Holmes Inc. Luxi font
- instruction code copyright (c) 2001 by URW++ GmbH. All Rights
- Reserved. Luxi is a registered trademark of Bigelow & Holmes Inc.
-
- Permission is hereby granted, free of charge, to any person obtaining
- a copy of these Fonts and associated documentation files (the "Font
- Software"), to deal in the Font Software, including without
- limitation the rights to use, copy, merge, publish, distribute,
- sublicense, and/or sell copies of the Font Software, and to permit
- persons to whom the Font Software is furnished to do so, subject to
- the following conditions:
-
- The above copyright and trademark notices and this permission notice
- shall be included in all copies of one or more of the Font Software.
-
- The Font Software may not be modified, altered, or added to, and in
- particular the designs of glyphs or characters in the Fonts may not
- be modified nor may additional glyphs or characters be added to the
- Fonts. This License becomes null and void when the Fonts or Font
- Software have been modified.
-
- THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
- OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL
- BIGELOW & HOLMES INC. OR URW++ GMBH. BE LIABLE FOR ANY CLAIM, DAMAGES
- OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT,
- INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF
- CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR
- INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT
- SOFTWARE.
-
- Except as contained in this notice, the names of Bigelow & Holmes
- Inc. and URW++ GmbH. shall not be used in advertising or otherwise to
- promote the sale, use or other dealings in this Font Software without
- prior written authorization from Bigelow & Holmes Inc. and URW++ GmbH.
-
- For further information, contact:
-
- info@urwpp.de
- or
- design@bigelowandholmes.com
-
- \section1 Bitstream Charter and Courier
-
- (c) Copyright 1989-1992, Bitstream Inc., Cambridge, MA.
-
- You are hereby granted permission under all Bitstream propriety rights
- to use, copy, modify, sublicense, sell, and redistribute the 4 Bitstream
- Charter (r) Type 1 outline fonts and the 4 Courier Type 1 outline fonts
- for any purpose and without restriction; provided, that this notice is
- left intact on all copies of such fonts and that Bitstream's trademark
- is acknowledged as shown below on all unmodified copies of the 4 Charter
- Type 1 fonts.
-
- BITSTREAM CHARTER is a registered trademark of Bitstream Inc.
-
- \section1 Bitstream Vera
-
- Copyright (c) 2003 by Bitstream, Inc.
-
- All Rights Reserved.
-
- Bitstream Vera is a trademark of Bitstream, Inc.
-
- Permission is hereby granted, free of charge, to any person obtaining
- a copy of the fonts accompanying this license ("Fonts") and associated
- documentation files (the "Font Software"), to reproduce and distribute
- the Font Software, including without limitation the rights to use,
- copy, merge, publish, distribute, and/or sell copies of the Font
- Software, and to permit persons to whom the Font Software is furnished
- to do so, subject to the following conditions:
-
- The above copyright and trademark notices and this permission notice
- shall be included in all copies of one or more of the Font Software
- typefaces.
-
- The Font Software may be modified, altered, or added to, and in
- particular the designs of glyphs or characters in the Fonts may be
- modified and additional glyphs or characters may be added to the
- Fonts, only if the fonts are renamed to names not containing either
- the words "Bitstream" or the word "Vera".
-
- This License becomes null and void to the extent applicable to Fonts
- or Font Software that has been modified and is distributed under the
- "Bitstream Vera" names.
-
- The Font Software may be sold as part of a larger software package but
- no copy of one or more of the Font Software typefaces may be sold by
- itself.
-
- THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
- OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL
- BITSTREAM OR THE GNOME FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR
- OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL,
- OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR
- OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT
- SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
-
- Except as contained in this notice, the names of Gnome, the Gnome
- Foundation, and Bitstream Inc., shall not be used in advertising or
- otherwise to promote the sale, use or other dealings in this Font
- Software without prior written authorization from the Gnome Foundation
- or Bitstream Inc., respectively. For further information, contact:
- fonts at gnome dot org.
-
- \omit
- http://www.gnome.org/fonts/#Final_Bitstream_Vera_Fonts
- \endomit
-
- See also:
- \l{http://www.bitstream.com/font_rendering/products/dev_fonts/vera.html}{Vera Open Source Fonts}
-
- \section1 Cursor
-
- The Cursor font is distributed with the following declaration:
-
- \e{Copyright (c) 2000 XFree86, Inc.}
-
- \section1 DejaVu Fonts
-
- DejaVu fonts come with the following copyright statement:
-
- Fonts are (c) Bitstream (see below). DejaVu changes are in public domain. Glyphs imported from Arev fonts are (c) Tavmjung Bah (see below)
-
- \snippet snippets/code/doc_src_licenses.qdoc 2
-
- \section1 Fixed Fonts
-
- The 5x7 and 6x13 fonts each contain the following copyright notice:
-
- \e{Public domain font. Share and enjoy.}
-
- \section1 IBM Courier
-
- IBM Courier - Copyright (c) IBM Corporation 1990, 1991
-
- You are hereby granted permission under the terms of the IBM/MIT X Consortium
- Courier Typefont agreement to execute, reproduce, distribute, display, market,
- sell and otherwise transfer copies of the IBM Courier font to third parties.
-
- The font is provided "AS IS" without charge. NO WARRANTIES OR INDEMNIFICATION
- ARE GIVEN, WHETHER EXPRESS OR IMPLIED INCLUDING, BUT LIMITED TO THE IMPLIED
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-
- \section1 Micro
-
- The Micro font contains the following copyright notice:
-
- \e{Public domain font. Share and enjoy.}
-
- \section1 Unifont
-
- The Unifont font was originally obtained from
- \l{http://www.czyborra.com/}{Roman Czyborra} under the following license:
-
- \e{All of my works you find here are freeware. You may freely copy, use, quote,
- modify or redistribute them as long as you properly attribute my contribution
- and have given a quick thought about whether Roman might perhaps be interested
- to read what you did with his stuff. Horizontal rules don't apply.}
-*/
diff --git a/doc/src/platforms/expressing-apple-os-versions.qdocinc b/doc/src/platforms/expressing-apple-os-versions.qdocinc
new file mode 100644
index 00000000..bbc0304c
--- /dev/null
+++ b/doc/src/platforms/expressing-apple-os-versions.qdocinc
@@ -0,0 +1,106 @@
+/****************************************************************************
+**
+** Copyright (C) 2017 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:FDL$
+** 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.
+**
+** GNU Free Documentation License Usage
+** Alternatively, this file may be used under the terms of the GNU Free
+** Documentation License version 1.3 as published by the Free Software
+** 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.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+/*!
+//! [expressing os versions]
+
+ Apple platforms have a built-in way to express the OS versions that an
+ application supports, which allows older versions of the platforms to
+ automatically display a user friendly error message prompting the user to
+ update their OS, as opposed to crashing and displaying a stack trace.
+
+ The main concepts involved in expressing support for a particular range of
+ OS versions are:
+
+ \list
+ \li \e {Deployment target} specifies the \e hard minimum version of
+ \macos, iOS, tvOS, or watchOS that your application supports.
+ \li \e {SDK version} specifies the \e soft maximum version of \macos,
+ iOS, tvOS, or watchOS that your application supports.
+ \endlist
+
+ When you develop an application for an Apple platform, you should always
+ use the latest version of Xcode and the latest SDK available at the time of
+ development. On some platforms, like iOS, you will actually be rejected from
+ the App Store if you do not. Therefore, the SDK version is always
+ greater than or equal to the deployment target.
+
+ When you develop an application for an Apple platform, you must set the
+ deployment target. Various build tools within the Xcode toolchain all have
+ a flag which you can use to set this value, including but not limited to
+ the compiler and linker. By setting the deployment target value, you are
+ explicitly declaring that your application must work on at least that
+ version, and will not work with any earlier versions of the OS. It is then
+ up to you to ensure that your use of the system APIs matches what you have
+ declared. Since the compiler knows what you have declared, it can help in
+ enforcing that.
+
+ The SDK version is considered a \e soft maximum version of the OS that an
+ application is compatible with in the way that if the application is built
+ with an SDK, it will continue to use the behaviors of that SDK even on newer
+ OS versions, because the OS checks the binary's load commands and emulates
+ backwards compatibility with the older OS. For example, if an application is
+ built with the \macos 10.12 SDK, it will continue to use 10.12 behaviors
+ even on 10.13 and above.
+
+ However, Mach-O binaries are inherently forward compatible. For example, an
+ application built with the iOS 9 SDK will run just fine on iOS 10, but might
+ not be opted into whatever behavior changes may have been made to certain
+ functionality on the new release, until that application is recompiled
+ against that newer SDK.
+
+ The minimum OS version can be expressed to the system by the compiler and
+ linker flags that embed it into the Mach-O binary. In addition, the
+ \c LSMinimumSystemVersion key must be set in the application's app bundle.
+ This value must be equal to the value passed to the compiler and linker,
+ because on \macos it will allow the OS to display a user friendly error
+ dialog that says the application requires a newer version of the OS as
+ opposed to a crash dialog. The \c LSMinimumSystemVersion is also the key
+ that the App Store uses to display the required OS version; the compiler and
+ linker flags have no power there.
+
+ For the most part, Qt applications will work without problems. For example,
+ in qmake, the Qt mkspecs set \l QMAKE_IOS_DEPLOYMENT_TARGET,
+ \l QMAKE_MACOSX_DEPLOYMENT_TARGET, \l QMAKE_TVOS_DEPLOYMENT_TARGET, or
+ \l QMAKE_WATCHOS_DEPLOYMENT_TARGET to the minimum version that Qt itself
+ supports. Similarly, in Qbs, the Qt modules set \c cpp.minimumIosVersion,
+ \c cpp.minimumMacosVersion, \c cpp.minimumTvosVersion, or
+ \c cpp.minimumWatchosVersion to the minimum version that Qt itself supports.
+
+ However, you must take care when you manually set your own target version.
+ If you set it to a value higher than what Qt requires and supply your own
+ \c Info.plist file, you must add an \c LSMinimumSystemVersion entry to the
+ \c Info.plist that matches the value of the deployment target, because the
+ OS will use the \c LSMinimumSystemVersion value as the authoritative one.
+
+ If you specify a deployment target value lower than what Qt requires, the
+ application will almost certainly crash somewhere in the Qt libraries when
+ run on an older version than Qt supports. Therefore, make sure that the
+ actual build system code reflects the minimum OS version that is actually
+ required.
+
+//! [expressing os versions]
+*/
diff --git a/doc/src/platforms/ios.qdoc b/doc/src/platforms/ios.qdoc
index 2441188f..e57b5399 100644
--- a/doc/src/platforms/ios.qdoc
+++ b/doc/src/platforms/ios.qdoc
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2016 The Qt Company Ltd.
+** Copyright (C) 2017 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
@@ -470,6 +470,10 @@
This allows you to produce universal applications with valid LaunchImages as required by the Apple App Store.
\important \c "launch_images" is used internally by Qt, so it will be overwritten if used in your .pro file.
+ \section2 Expressing Supported iOS Versions
+
+ \include expressing-apple-os-versions.qdocinc expressing os versions
+
\section1 Publishing to Apple App Store
Verifying that your Qt for iOS application is ready for publishing to App Store can be done
@@ -477,8 +481,10 @@
To submit the application, you can use Xcode, or the Application Loader (installed with Xcode).
Qt Creator does not provide an interface for managing all of the settings in an Xcode project configuration.
- The application should be tested on a variety of iOS versions and devices, depending on what
- it's targeted to support. The minimum deployment target for Qt applications is iOS 7.0.
+ The application should be tested on the iOS versions and devices that it is
+ targeted to support. The minimum deployment target for Qt applications
+ varies by Qt version. For more information, see
+ \l{Supported Platforms and Configurations}.
The actual publishing process involves creating a distribution certificate and a provision profile,
creating a signed archive of your application, and running a set of validation tests on it.
diff --git a/doc/src/platforms/linux.qdoc b/doc/src/platforms/linux.qdoc
index fdd9f3c9..af0f568e 100644
--- a/doc/src/platforms/linux.qdoc
+++ b/doc/src/platforms/linux.qdoc
@@ -211,13 +211,13 @@
\li libfontconfig
\li Font customization and configuration
\li \tt{-fontconfig} or auto-detected
- \li 2.1
+ \li 2.6
\row {id="OptionalColor"}
\li FreeType
\li libfreetype
\li Font engine
\li
- \li 2.1.3
+ \li 2.2.0
\row {id="DefaultColor"}
\li Xi
diff --git a/doc/src/platforms/osx.qdoc b/doc/src/platforms/osx.qdoc
index f57b300a..cc093397 100644
--- a/doc/src/platforms/osx.qdoc
+++ b/doc/src/platforms/osx.qdoc
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2016 The Qt Company Ltd.
+** Copyright (C) 2017 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
@@ -292,8 +292,8 @@
\l{http://developer.apple.com/library/mac/#documentation/UserExperience/Conceptual/AppleHIGuidelines/Intro/Intro.html#//apple_ref/doc/uid/20000957}
{\macos Human Interface Guidelines}.
- The \l{Macintosh Style Widget Gallery} page
- contains sample images of widgets using the \macos platform theme.
+ The \l{Qt Widget Gallery} page contains sample images of applications using
+ the \macos platform theme.
\section2 Qt Attributes for \macos
@@ -1082,6 +1082,10 @@
For more information about C++ runtime environment, see \l
{https://developer.apple.com/library/mac/#documentation/DeveloperTools/Conceptual/CppRuntimeEnv/CPPRuntimeEnv.html}{Apple's Developer Website}
+ \section3 Expressing Supported \macos Versions
+
+ \include expressing-apple-os-versions.qdocinc expressing os versions
+
\section1 The Mac Deployment Tool
\target macdeploy
The Mac deployment tool can be found in QTDIR/bin/macdeployqt. It is
diff --git a/doc/src/platforms/platform-notes-integrity.qdoc b/doc/src/platforms/platform-notes-integrity.qdoc
index 0432f683..00c028b2 100644
--- a/doc/src/platforms/platform-notes-integrity.qdoc
+++ b/doc/src/platforms/platform-notes-integrity.qdoc
@@ -28,9 +28,11 @@
/*!
\page platform-notes-integrity.html
- \title Platform Notes - INTEGRITY
+ \title Qt for INTEGRITY
\contentspage Platform Notes
\keyword INTEGRITY
+ \ingroup supportedplatform
+ \brief Platform support for INTEGRITY.
From Qt 5.9 onwards, the Green Hills Software
\l {http://www.ghs.com/products/rtos/integrity.html} {INTEGRITY}
@@ -66,7 +68,11 @@
\section1 Supported Development Hosts and Boards
- Qt for INTEGRITY can be built on 64-bit Linux distributions.
+ Qt for INTEGRITY can be built on the following hosts:
+ \list
+ \li 64-bit Linux distributions
+ \li 32-bit and 64-bit Windows 10
+ \endlist
Qt for INTEGRITY supports building and developing applications for the
following development boards:
diff --git a/doc/src/platforms/qpa.qdoc b/doc/src/platforms/qpa.qdoc
index 1412af2f..80794bdb 100644
--- a/doc/src/platforms/qpa.qdoc
+++ b/doc/src/platforms/qpa.qdoc
@@ -32,25 +32,32 @@
The Qt Platform Abstraction (QPA) is the platform abstraction layer for Qt 5
and replaces Qt for Embedded Linux and the platform ports from Qt 4.
-QPA plugins are implemented by subclassing various QPlatform* classes. There
-are two “root” classes: QPlatformIntegration for window system integration
-and QPlatformTheme for deeper platform theming and integration. QStyle is not
-a part of QPA.
+QPA plugins are implemented by subclassing various \c QPlatform* classes. There
+are several \e root classes, such as \c QPlatformIntegration and
+\c QPlatformWindow for window system integration and \c QPlatformTheme for
+deeper platform theming and integration. QStyle is not a part of QPA.
There are no source or binary compatibility guarantees for the QPA classes,
meaning that a platform plugin is only guaranteed to work with the Qt version
it was developed against. API changes will however only be made in minor
releases. (5.1, 5.2, and so on.)
+\section1 QPA Minimal Plugins
There is no detailed tutorial documentation for writing QPA plugins at this
-time. However, there are two example plugins shipped with Qt5:
+time. However, there are two minimal plugins shipped with Qt 5 for testing and
+other special purposes that you can use as examples:
\list
\li \c{qtbase/src/plugins/platforms/minimal/}
\li \c{qtbase/src/plugins/platforms/minimalegl/}
\endlist
+The \c qminimal plugin is used for tools that link against \l{Qt GUI}, but do
+not require window system integration (for example, \c qmlplugindump).
+It also has diagnostic support for dumping window contents to image files
+as determined by environment variables.
+
\section1 Class Overview
\list
@@ -91,5 +98,90 @@ time. However, there are two example plugins shipped with Qt5:
\c{qtbase/src/platformsupport} contains several helper classes for implementing
platform plugins on Unix-like systems.
+\section1 QPA Plugins
+
+The following table summarizes the platform plugins available for QPA:
+\table
+\header
+ \li Plugin Name
+ \li Plugin Class Name
+ \li Description
+\row
+ \li \c qandroid
+ \li QAndroidPlatformIntegration
+ \li \l{Qt for Android}{Android support}
+\row
+ \li \c qbsdfb
+ \li QBsdFbIntegration
+ \li BsdFb support
+\row
+ \li \c qcocoa
+ \li QCocoaIntegrationPlugin
+ \li \l{Qt for macOS}{Cocoa support}
+\row
+ \li \c qdirect2d
+ \li QWindowsDirect2DIntegrationPlugin
+ \li Similar to the \c qwindows plugin, but replaces the raster paint engine
+ with a Direct2D-based paint engine for QPixmap and QBackingStore.
+\row
+ \li \c qdirectfb
+ \li QDirectFbIntegrationPlugin
+ \li DirectFB is centered around \e surfaces, which are the equivalent of a
+ QPaintDevice.
+\row
+ \li \c qeglfs
+ \li QEglFSIntegrationPlugin
+ \li \l EGLFS support for embedded Linux devices.
+\row
+ \li \c qhaiku
+ \li QHaikuIntegration
+ \li Haiku support
+\row
+ \li \c qios
+ \li QIOSIntegrationPlugin
+ \li \l{Qt for iOS}{iOS support}
+\row
+ \li \c qlinuxfb
+ \li QLinuxFbIntegrationPlugin
+ \li \l LinuxFB support for embedded Linux devices.
+\row
+ \li \c qmirclient
+ \li QMirClientIntegration
+ \li Mir client support
+\row
+ \li \c qopenwf
+ \li QOpenWFDIntegrationPlugin
+ \li OpenWF Display support for managing display control hardware.
+\row
+ \li \c qqnx
+ \li QQnxIntegrationPlugin
+ \li \l{Platform and Compiler Notes - QNX}{QNX support}
+\row
+ \li \c qvnc
+ \li QVncIntegration
+ \li VNC support
+\row
+ \li \c qwayland
+ \li \list
+ \li QWaylandIntegrationPlugin
+ \li QWaylandBrcmEglPlatformIntegrationPlugin
+ \li QWaylandEglPlatformIntegrationPlugin
+ \li QWaylandXCompositeEglPlatformIntegrationPlugin
+ \li QWaylandXCompositeGlxPlatformIntegrationPlugin
+ \endlist
+ \li \l{Qt Wayland Compositor}{Wayland support}
+\row
+ \li \c qwindows
+ \li QWindowsIntegrationPlugin
+ \li \l{Qt for Windows}{Windows support}
+\row
+ \li \c qwinrt
+ \li QWinRTIntegrationPlugin
+ \li \l{Qt for WinRT}{WinRT and Windows Phone support}
+\row
+ \li \c qxcb
+ \li QXcbIntegrationPlugin
+ \li \l{Qt for Linux/X11}{X Window System (X11) support}
+\endtable
*/
diff --git a/doc/src/platforms/supported-platforms.qdoc b/doc/src/platforms/supported-platforms.qdoc
index 9fb3ce04..84319686 100644
--- a/doc/src/platforms/supported-platforms.qdoc
+++ b/doc/src/platforms/supported-platforms.qdoc
@@ -42,7 +42,7 @@
Qt is supported on a variety of 32-bit and 64-bit platforms,
and can usually be built on each platform with GCC, a vendor-supplied
compiler, or a third party compiler. Open GL (ES) 2.0,
- DirectX 9 (with ANGLE), or an \l {Qt Quick 2D Renderer} {alternative
+ DirectX 9 or 11 (with ANGLE), or an \l {Qt Quick 2D Renderer} {alternative
renderer} is required for \l [QtQuick] {Qt Quick} 2.
\l [QtWidgets] {Qt Widgets}{Widgets} can be used without
hardware acceleration.
@@ -65,6 +65,9 @@
In the above table, the configurations in \b bold are \e {reference
configurations}.
+ \b {See also}: \l {http://doc.qt.io/QtForDeviceCreation/qtee-supported-platforms.html}
+ {Qt for Device Creation: Supported Target Devices and Development Hosts}.
+
\section2 Reference Configurations
The reference configurations are run on the continuous integration (CI)
diff --git a/doc/src/platforms/supported-platforms.qdocinc b/doc/src/platforms/supported-platforms.qdocinc
index 9ebb78a3..21767ee0 100644
--- a/doc/src/platforms/supported-platforms.qdocinc
+++ b/doc/src/platforms/supported-platforms.qdocinc
@@ -127,7 +127,7 @@ Mobile Platforms: \l {Qt for Android}{Android},
//! [5.10] //! [latest]
\section1 Qt 5.9
-\b {Long-term support (LTS)}: Supported until three years after release
+\b {Long-term support (LTS)}: Supported until May 31, 2020
//! [5.9]
@@ -527,89 +527,5 @@ Mobile Platforms: \l {Qt for Android}{Android},
//! [5.5]
- \section1 Qt 5.4
-//! [5.4]
- \b {Supported until July 01, 2017}
-
- \table 80%
- \header \li Platform \li Compiler \li Notes
- \header \li {3,1} \l {Qt for Windows}{Windows}
- \row \li Windows 8 (64-bit)
- \li \b {MSVC 2013}, \b {MSVC 2012}, MSVC 2010, MinGW 4.8, MinGW 4.7
- \li
- \row \li Windows 8 (32-bit)
- \li MSVC 2013, MSVC 2012, MSVC 2010, MinGW 4.8, MinGW 4.7
- \li
- \row \li Windows 7 (64-bit)
- \li MSVC 2013, MSVC 2012, MSVC 2010, MinGW 4.8, MinGW 4.7
- \li
- \row \li Windows 7 (32-bit)
- \li MSVC 2013, MSVC 2012, \b {MSVC 2010}, \b {MinGW 4.8}, \b {MinGW 4.7}
- \li
- \row \li Windows Vista 32/64bit
- \li MSVC 2013, MSVC 2012, MSVC 2010, MinGW 4.8, MinGW 4.7
- \li
- \row \li Windows XP (32-bit)
- \li \li Deployment only
-
- \row \li {3,1} \header \li {2,1} \l {Qt for Linux/X11}{Linux/X11}
- \li \l {Known Issues with GCC Compilers}{Known Issues}
- \row \li openSUSE 13.1 (64-bit)
- \li \b {GCC 4.8.1}
- \li SUSE Linux 20130909
- \row \li Red Hat Enterprise Linux 6.5 (64-bit)
- \li \b {GCC 4.4.7}
- \li Red Hat 4.4.7-4 20120313
- \row \li Ubuntu 12.04 (64-bit)
- \li \b {GCC 4.6.3}
- \li Ubuntu/Linaro 4.6.3-1ubuntu5
- \row \li Ubuntu 11.10 (32/64-bit)
- \li \b {GCC 4.6.1}
- \li Ubuntu/Linaro 4.6.1-9ubuntu3
- \row \li Linux (32/64-bit)
- \li GCC 4.8.1
- \li
-
- \row \li {3,1} \header \li {3,1} \l {Qt for macOS}{\macos}
- \row \li \macos 10.8, \b 10.9, \b 10.10
- \li \b clang-600.0.54
- \li
- \row \li \macos 10.7
- \li \b i686-apple-darwin11-llvm-gcc-4.2
- \li
-
- \row \li {3,1} \header \li {3,1}
- \include supported-platforms.qdocinc embedded
- \row \li Embedded Linux (arm-gnueabi)
- \li \b {arm-none-linux-gnueabi-gcc-4.4.1}
- \li Sourcery G++ Lite 2010q1-202, Ubuntu 11.10 (32-bit) host
- \row \li Embedded Linux (iMX.6-armv7a)
- \li \b {arm-none-linux-gnueabi-gcc-4.4.1}
- \li ourcery G++ Lite 2010q1-202, Ubuntu 12.04 (64-bit) host
- \row \li QNX 6.6.0 (armv7le and x86)
- \li \b {As provided by QNX}
- \li Hosts: \b {Ubuntu 12.04 (64-bit)}, Windows
- \row \li Windows Embedded 7 (armv4i)
- \li \b {MSVC 2008}
- \li Windows 7 host
-
- \row \li {3,1} \header \li {3,1}
- \include supported-platforms.qdocinc mobile
- \row \li Windows Phone 8.1 (arm)
- \li \b {MSVC 2013}
- \li \b {Windows 8.1 host}
- \row \li Windows Runtime (x86, \b x86_64, arm)
- \li \b {MSVC 2013}
- \li \b {Windows 8.1 host}
- \row \li iOS 5.1.1 and above
- \li \b {Clang as provided by Apple}
- \li \b {\macos host}
- \row \li Android
- \li \b {GCC as provided by Google}
- \li Hosts: \b {Ubuntu 12.04 (64-bit)}, \macos, Windows
- \endtable
-
-//! [5.4]
-
//! [all]
*/
diff --git a/doc/src/platforms/windows.qdoc b/doc/src/platforms/windows.qdoc
index 71693ab7..1823ceac 100644
--- a/doc/src/platforms/windows.qdoc
+++ b/doc/src/platforms/windows.qdoc
@@ -224,9 +224,10 @@
QtANGLE libraries. Instead, the appropriate library is chosen at
runtime. By default, Qt will determine whether the system's opengl32.dll
provides OpenGL 2 functions. If these are present, opengl32.dll is used,
- otherwise the ANGLE libraries will be used. In case the ANGLE libraries are
- missing or initialization fails for some reason, an additional fallback is
- attempted by trying to load \c{opengl32sw.dll}. See below for details.
+ otherwise the ANGLE libraries (libEGL.dll and libGLESv2.dll) will be used.
+ In case the ANGLE libraries are missing or initialization fails for some
+ reason, an additional fallback is attempted by trying to load
+ \c{opengl32sw.dll}. See below for details.
The loading mechanism can be configured through the \c{QT_OPENGL}
environment variable and the following application attributes:
@@ -243,7 +244,7 @@
The dynamic loading has a significant impact on applications that contain
native OpenGL calls: they may fail to link since \c qmake no longer
- automatically adds opengl32.lib or QtANGLE.lib. Instead, applications are
+ automatically adds opengl32.lib or libGLESv2.lib. Instead, applications are
expected to use the OpenGL functions via the QOpenGLFunctions class. Thus
the direct dependency on the OpenGL library is removed and all calls will be
routed during runtime to the implementation chosen by Qt.
@@ -404,8 +405,8 @@
\section2 Visual Studio
- Qt can be built with Visual Studio 2013 (Update 1), Visual Studio 2015 (Update 2)
- and Visual C++ Build Tools 2015.
+ Qt can be built with Visual Studio 2013 (Update 1), Visual Studio 2015 (Update 2),
+ Visual C++ Build Tools 2015, Visual Studio 2017, and Build Tools for Visual Studio 2017.
\section2 Intel C++ Compiler (Windows, Altix)
@@ -716,11 +717,11 @@
is a subdirectory named \c {platforms}. \l{Qt Plugins} section has
additional information about plugins and how Qt searches for them.
- If \l{ANGLE} (the default) is used, you additionally need to include both
- \c QtANGLE.dll from Qt's 'lib' directory as well as
- the HLSL compiler from DirectX. The HLSL compiler library,
- d3dcompiler_XX.dll, where XX is the version number that ANGLE
- was linked against.
+ If \l{ANGLE} or dynamic OpenGL (the default) is used, you additionally
+ need to include both \c libEGL.dll and \c libGLESv2.dll from Qt's \c lib
+ directory as well as the HLSL compiler from DirectX. The HLSL compiler
+ library, d3dcompiler_XX.dll, where XX is the version number that ANGLE
+ (libGLESv2) was linked against.
If Qt was configured to link against ICU or OpenSSL, the respective DLL's
need to be added to the \c release folder, too.
@@ -822,7 +823,8 @@
\header
\li{2,1} File Name
\row
- \li QtANGLE.dll
+ \li libEGL.dll
+ \li libGLESv2.dll
\li d3dcompiler_XX.dll
\endtable