From 355f4228cfe16204cc9645b6788f9b31aef4cb10 Mon Sep 17 00:00:00 2001 From: Paul Wicking <paul.wicking@qt.io> Date: Mon, 9 Apr 2018 13:48:57 +0200 Subject: [PATCH] Doc: Add What's new page for 5.11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Based on the wiki entries here: https://wiki.qt.io/New_Features_in_Qt_5.11 Also added links to the new page from relevant pages, based on the similar commit for version 5.9. Task-number: QTBUG-67560 Change-Id: I927db8fec99fd9949534e54f0e3378af77f58a53 Reviewed-by: Topi Reiniö <topi.reinio@qt.io> --- doc/src/classes.qdoc | 6 +- doc/src/qt5-intro.qdoc | 1 + doc/src/whatsnew/whatsnew511.qdoc | 288 ++++++++++++++++++++++++++++++ 3 files changed, 292 insertions(+), 3 deletions(-) create mode 100644 doc/src/whatsnew/whatsnew511.qdoc diff --git a/doc/src/classes.qdoc b/doc/src/classes.qdoc index f8673115..8478bed8 100644 --- a/doc/src/classes.qdoc +++ b/doc/src/classes.qdoc @@ -58,7 +58,7 @@ \li \l{All Namespaces} \li \l{All Classes by Module} \li \l{Obsolete Classes} - \li \l{New Classes and Functions in Qt 5.9} + \li \l{New Classes and Functions in Qt 5.11} \endlist For more reference pages including QML types, visit \l{Qt Reference Pages}. @@ -82,7 +82,7 @@ \li \l{All QML Types} \li \l{All QML APIs by Module} \li \l{Obsolete QML Types} - \li \l{New Classes and Functions in Qt 5.9} + \li \l{New Classes and Functions in Qt 5.11} \endlist For more reference pages including C++ APIs, visit \l{Qt Reference Pages}. @@ -105,7 +105,7 @@ \li \l{All QML Basic Types} \li \l{All QML APIs by Module} \li \l{Obsolete QML Types} - \li \l{New Classes and Functions in Qt 5.9} + \li \l{New Classes and Functions in Qt 5.11} \endlist For more reference pages including C++ APIs, visit \l{Qt Reference Pages}. diff --git a/doc/src/qt5-intro.qdoc b/doc/src/qt5-intro.qdoc index 4f249ab0..06c3bd9f 100644 --- a/doc/src/qt5-intro.qdoc +++ b/doc/src/qt5-intro.qdoc @@ -508,6 +508,7 @@ \section1 Related Topics \list + \li \l{What's New in Qt 5.11} \li \l{What's New in Qt 5.10} \li \l{What's New in Qt 5.9} \li \l{What's New in Qt 5.8} diff --git a/doc/src/whatsnew/whatsnew511.qdoc b/doc/src/whatsnew/whatsnew511.qdoc new file mode 100644 index 00000000..d821d7c4 --- /dev/null +++ b/doc/src/whatsnew/whatsnew511.qdoc @@ -0,0 +1,288 @@ +/**************************************************************************** +** +** Copyright (C) 2018 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 whatsnew511.html + \title What's New in Qt 5.11 + \brief Lists the new features in Qt 5.11. + + \section1 New Features in Qt 5.11 + + \section2 Qt Core Module + \list + \li Added \l{QIODevice::NewOnly} and \l {QIODevice::ExistingOnly} + \c OpenMode flags. When used with QFile, \c NewOnly instructs + \c open() to (atomically) return \c false if the file to open + exists. \c ExistingOnly instructs \c open() to (atomically) return + \c false if the file does not exist. + \li QFloat16 now has two methods for bulk conversion between \c float16 + and \c float, using hardware SIMD acceleration if available at + runtime. + \li QVarLengthArray now has rvalue reference versions of prepend and + insert, and can hold movable-only datatypes such as + \c std::unique_ptr. + \li QVector now has rvalue reference versions of prepend and insert. + \li QUuid \c toString() and \c toByteArray() now take a parameter + specifying the generated format. + \li Updated Unicode support in QString, QChar, and + QTextBoundaryFinder to be compatible with Unicode 10. + \endlist + + \section2 Qt Network Module + \list + \li ALPN (via Secure Transport) and thus HTTP/2 negotiation are now + supported on iOS (starting from version 11). + \li QNetworkRequest now has the \c Http2DirectAttribute to start a + connection in HTTP/2 without first negotiating. + \endlist + + \section2 Qt QML Module + \list + \li The compiler pipeline is rewritten. We now directly generate byte code + from the AST, and store that as our intermediate representation. + \li Optimized handling of JS calls, bringing large improvements + especially when calling small functions. + \li Newly written byte code interpreter brings significant performance + improvements, at 80-90% of the JIT in Qt 5.10. + \li \c .qmlc files are now fully platform-independent and store byte + code instead of assembly. + \li New hotspot JIT that generates optimized assembly for byte code that + gets repeatedly executed. + \li \c {CONFIG += qmlcompiler} now also works in the open source version, by + embedding the generated byte code at compile time. + \endlist + + \section2 Qt Quick Module + \list + \li Expanded support for loading compressed textures in Image element. + Now supports both \c .ktx and \c .pkm container file formats. + \endlist + + \section2 Qt Quick Controls 2 Module + \list + \li AbstractButton + \list + \li Promoted the \l {AbstractButton::}{autoRepeat} + property from \l [QML] Button to \c AbstractButton. + \li Added \l {AbstractButton::}{autoRepeatDelay} and + \l {AbstractButton::}{autoRepeatInterval} + properties. + \li Added \c pressX and \c pressY properties to expose the press + point to QML. + \endlist + + \li ButtonGroup + \list + \li Added a \c checkState property. It indicates the combined check + state of the entire group. + \endlist + + \li CheckBox and CheckDelegate + \list + \li No longer force tristate to \c true when setting \c checkState + to \c Qt.PartiallyChecked. This allows presenting a partially + checked state without being interactively tri-state. + \li No longer consider partially checked as checked. This fixes + check state cycling for a non-tri-state checkbox so that it goes + from partially checked to fully checked state. + \li Made it possible to implement \c nextCheckState() in QML. + \endlist + + \li ScrollBar and ScrollIndicator + \list + \li Added \c minimumSize, \c visualSize, and \c visualPosition + properties. + \endlist + + \li SpinBox + \list + \li Added a \c displayText property to allow styles to create a + light binding to display the textual value instead of having + to call the \c textFromValue() JS-function. + \endlist + \endlist + + \section2 Qt 3D Module + \list + \li Scrub through animations with the \c normalizedTime property of + QAbstractClipAnimator. + \li Issue arbitrary ray casts in world space or screen space. + \li Improved SIMD support. + \endlist + + \section2 Qt Location Module + \list + \li New Qt.labs.location plugin containing experimental QML types. + \endlist + + \section2 Qt WebEngine Module + \list + \li Updated to Chromium 65. + \li Embedded DevTools without using a port and separate browser. + \li Installable cookie filter. + \li Quota permissions. + \endlist + + \section2 QDoc Documentation Generator + \list + \li QDoc now uses libclang for parsing C/C++ code. + \endlist + + \section2 Qt Designer Tool + \list + \li Added support for ID-based translations. + \endlist + + \section2 Qt GUI Module + \list + \li On Windows Desktop, the accessibility support was updated and + vastly improved. The implementation is now based on Microsoft UI + Automation (it was formerly based on Microsoft Active Accessibility). + \li Linux Printing now supports more CUPS options with the advanced tab + in QPrintPropertiesDialog, allowing many additional settings + (amongst them arbitrary page ranges). + \li Updated the Unicode bidirectional text algorithm to be compliant + with Unicode 10. + \endlist + + \section2 Qt Widgets Module + \list + \li Added J2534 Pass-Thru CAN plugin for communication between a + computer and a vehicle. + \li Added description, serial number and channel to QCanBusDeviceInfo, + as far as supported by the various plugins. + \li Introduced categorized logging to the CAN bus module which can be + enabled by the \e "qt.canbus" and + \e "qt.canbus.plugins.<pluginname>" filters. + \li QCanBusFrame::isValid() now checks for invalid CAN FD payload + lengths. E.g. 24 is a valid CAN FD payload length, but 28 is not. + \endlist + + \section2 Qt Bluetooth Module + \list + \li Ported Bluetooth Low Energy Central role implementation to BlueZ's + DBus LE API (minimum version to enable is BlueZ 5.42). + \endlist + + \section1 New Modules + No new modules were added in this version. + + \section1 Platform Changes + \list + \li MSVC2013 support removed from the code base. + \li QNX 6.6 no longer supported (note: QNX 7 remains fully supported). + \li macOS 10.10 no longer supported. + \li Improved Accessibility support on Win32 by adopting the Windows UI + Automation framework. + \li XCB: Support for missing 'dead keys' such as dasia and diaeresis. + + \li eglfs + \list + \li Added support for framebuffer formats other than XRGB8888 + (RGB565, ARGB8888). + \li Added experimental screen cloning support (by scanning out the + same framebuffer on multiple displays). + \li Added support for operating with DRM render nodes + (/dev/dri/renderDnn) in a headless mode transparent to + applications. + \li Added a makespec for Renesas R-Car M3. + \li Added experimental backend for compositing Qt content with other + hardware layers via VSP2 on Renesas devices. + \endlist + \endlist + + \section1 Technology Preview Modules + \list + \li Qt Remote Objects (TP3) - A module that allows you to easily share + QObject interfaces (Signals/Slots/Properties) between processes or + devices. + \li Qt WebGL Streaming Plugin (TP2) - Stream applications to browsers + over the network. + \endlist + + \section1 Deprecated Modules + The following modules are part of the Qt 5.11 release, but are deprecated + and considered for removal in subsequent releases of Qt: + + \list + \li Qt Script + \li Qt Quick Controls 1 + \endlist + + \section1 List of API Changes + The pages below contain a list of API changes in Qt 5.11: + \list + \li \l{New Classes and Functions in Qt 5.11} + \li \l{Obsolete Classes} + \endlist + + \section1 Additions to Other Qt 5 Releases + + \list + \li \l{What's New in Qt 5.10} + \li \l{What's New in Qt 5.9} + \li \l{What's New in Qt 5.8} + \li \l{What's New in Qt 5.7} + \li \l{What's New in Qt 5.6} + \li \l{What's New in Qt 5.5} + \li \l{What's New in Qt 5.4} + \li \l{What's New in Qt 5.3} + \li \l{What's New in Qt 5.2} + \li \l{What's New in Qt 5.1} + \li \l{What's New in Qt 5.0} + \endlist + +*/ + +/*! + \page newclasses511.html + \title New Classes and Functions in Qt 5.11 + \brief A list of new APIs in Qt 5.11. + + This page contains a comprehensive list of all new classes and functions + introduced in Qt 5.11. Links to new APIs in previous Qt 5 releases are found + at the bottom of this page. + + \sincelist 5.11 + + \section1 Additions to Other Qt 5 Releases + + \list + \li \l{What's New in Qt 5.10} + \li \l{What's New in Qt 5.9} + \li \l{What's New in Qt 5.8} + \li \l{What's New in Qt 5.7} + \li \l{What's New in Qt 5.6} + \li \l{What's New in Qt 5.5} + \li \l{What's New in Qt 5.4} + \li \l{What's New in Qt 5.3} + \li \l{What's New in Qt 5.2} + \li \l{What's New in Qt 5.1} + \li \l{What's New in Qt 5.0} + \endlist +*/ + -- GitLab