<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- whatsnew57.qdoc --> <title>What's New in Qt 5.7 | Qt 5.9</title> <link rel="stylesheet" type="text/css" href="style/offline-simple.css" /> <script type="text/javascript"> document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css"); // loading style sheet breaks anchors that were jumped to before // so force jumping to anchor again setTimeout(function() { var anchor = location.hash; // need to jump to different anchor first (e.g. none) location.hash = "#"; setTimeout(function() { location.hash = anchor; }, 0); }, 0); </script> </head> <body> <div class="header" id="qtdocheader"> <div class="main"> <div class="main-rounded"> <div class="navigationbar"> <table><tr> <td ><a href="index.html">Qt 5.9</a></td><td >What's New in Qt 5.7</td></tr></table><table class="buildversion"><tr> <td id="buildversion" width="100%" align="right">Qt 5.9.4 Reference Documentation</td> </tr></table> </div> </div> <div class="content"> <div class="line"> <div class="content mainContent"> <div class="sidebar"> <div class="toc"> <h3><a name="toc">Contents</a></h3> <ul> <li class="level1"><a href="#new-modules">New Modules</a></li> <li class="level1"><a href="#new-features-in-qt-5-7">New Features in Qt 5.7</a></li> <li class="level2"><a href="#qt-3d-module">Qt 3D Module</a></li> <li class="level2"><a href="#qt-core-module">Qt Core Module</a></li> <li class="level2"><a href="#qt-canvas3d-module">Qt Canvas3D Module</a></li> <li class="level2"><a href="#qt-gui-module">Qt GUI Module</a></li> <li class="level2"><a href="#qt-multimedia-module">Qt Multimedia Module</a></li> <li class="level2"><a href="#qt-platform-abstraction-qpa">Qt Platform Abstraction (QPA)</a></li> <li class="level2"><a href="#qt-qml-module">Qt QML Module</a></li> <li class="level2"><a href="#qt-quick-module">Qt Quick Module</a></li> <li class="level2"><a href="#qt-webengine-module">Qt WebEngine Module</a></li> <li class="level2"><a href="#qt-widgets-module">Qt Widgets Module</a></li> <li class="level1"><a href="#removed-functionality">Removed Functionality</a></li> <li class="level1"><a href="#deprecated-functionality">Deprecated Functionality</a></li> <li class="level1"><a href="#list-of-api-changes">List of API Changes</a></li> <li class="level1"><a href="#additions-to-other-qt-5-releases">Additions to Other Qt 5 Releases</a></li> </ul> </div> <div class="sidebar-content" id="sidebar-content"></div></div> <h1 class="title">What's New in Qt 5.7</h1> <span class="subtitle"></span> <!-- $$$whatsnew57.html-description --> <div class="descr"> <a name="details"></a> <a name="new-modules"></a> <h2 id="new-modules">New Modules</h2> <p>The Qt Quick Controls 2 module that was previously available as a technology preview is now a fully supported module, providing the following features:</p> <ul> <li>A new light-weight set of embedded and mobile-oriented controls.</li> <li>Based on a flexible template system that enables rapid development of entire custom styles and user experiences.</li> <li>Built-in styles:<ul> <li>Default style - a simple and minimal all-round style that offers maximum performance.</li> <li>Material style - a style based on the Google Material Design Guidelines.</li> <li>Universal style - a style based on the Microsoft Universal Design Guidelines.</li> </ul> </li> <li>Can be mixed with Qt Quick Controls 1.0, but the APIs are not compatible.</li> </ul> <p>The following modules that were previously commercial-only, are now available under GPLv3 license for the open source users:</p> <ul> <li><a href="http://doc.qt.io/QtQuick2DRenderer">Qt Quick 2D Renderer</a><ul> <li>Enables running Qt Quick applications on hardware without OpenGL.</li> </ul> </li> <li>Qt Charts<ul> <li>Provides ready to use controls for depicting different types of 2D charts and graphs.</li> </ul> </li> <li>Qt Data Visualization<ul> <li>Enables visualizing data using 3D charts and graphs.</li> </ul> </li> <li>Qt Purchasing<ul> <li>Provides API to support in-app purchasing use cases with Google Play and Apple Store.</li> </ul> </li> </ul> <p>In addition, the following new modules are available as technology preview releases, enabling Qt users to provide feedback:</p> <ul> <li>Qt Gamepad<ul> <li>Enables Qt gaming applications to respond to gamepad input.</li> </ul> </li> <li>Qt SCXML<ul> <li>Enables static and runtime integration of SCXML models into Qt code.</li> </ul> </li> </ul> <a name="new-features-in-qt-5-7"></a> <h2 id="new-features-in-qt-5-7">New Features in Qt 5.7</h2> <a name="qt-3d-module"></a> <h3 >Qt 3D Module</h3> <ul> <li>Added support for Compute Shaders on supported hardware.</li> <li>Added support for loading multi-image DDS and KTX textures including cubemaps, mip chains, and array textures.</li> <li>Improved support for compressed texture formats.</li> <li>Made Render surface explicit.</li> <li>Extended Input API and support for device plugins.</li> <li>Improved picking support.</li> </ul> <a name="qt-core-module"></a> <h3 >Qt Core Module</h3> <ul> <li>Added <code>qAsConst</code> function to help using non-const Qt containers in C++11 range for loops.</li> <li>Enabled Qt event dispatchers to use the <code>poll()</code> function on Unix now, making it possible for applications to have file descriptors greater than 1024.</li> <li>Added support for converting a floating point to its shortest and exact string form, without having to pre-calculate the number of digits.</li> <li>Improved C++11 support by using <code>std::atomic</code> as backend for QAtomic classes and adding QTypeInfo for <code>char16_t</code> and <code>char32_t</code>.</li> <li>Added QIODevice support for multi-streaming.</li> <li>Enabled QPluginLoader to work even if <code>QT_NO_LIBRARY</code> is set (for example, linking against a static libc).</li> </ul> <a name="qt-canvas3d-module"></a> <h3 >Qt Canvas3D Module</h3> <ul> <li>Upgraded the <i>three.js</i> 3rd party library.</li> </ul> <a name="qt-gui-module"></a> <h3 >Qt GUI Module</h3> <ul> <li>Optimized QImage smooth scaling for NEON.</li> <li>Optimized the OpenGL function wrappers for speed and code size. The QtGui library size has been significantly reduced due to a massive reduction in symbols.</li> </ul> <a name="qt-multimedia-module"></a> <h3 >Qt Multimedia Module</h3> <ul> <li>Added support for tvOS.</li> <li>Extended QML playlist API.</li> </ul> <a name="qt-platform-abstraction-qpa"></a> <h3 >Qt Platform Abstraction (QPA)</h3> <ul> <li>Added support for NVIDIA DRIVE CX boards (Tegra X1, AArch64).</li> <li>Improved support for theming with <i>eglfs</i>.</li> <li>Enabled QMenuBar to use the unified D-Bus AppMenu menubar on supported X11-based desktop environments such as Ubuntu Unity.</li> <li>Added support for creating Android services.</li> </ul> <a name="qt-qml-module"></a> <h3 >Qt QML Module</h3> <ul> <li>Added JIT support for <a href="build-sources.html#winrt">WinRT</a> on x86 and x64.</li> <li>Enabled JIT for 64-bit ARM Linux platforms.</li> <li>Enabled all debug services to work with QJSEngine (instead of QQmlEngine), which allows non-QML JavaScript debugging or profiling.</li> <li>Added support for debugging multiple QJSEngine instances at the same time.</li> </ul> <a name="qt-quick-module"></a> <h3 >Qt Quick Module</h3> <ul> <li>Added support for all subclasses of QQuickWindow by the inspector service, which makes Qt Creator's inspection feature useful.</li> </ul> <a name="qt-webengine-module"></a> <h3 >Qt WebEngine Module</h3> <ul> <li>Upgraded to Chromium 49 release.</li> <li>Added support for drag and drop, and printing to PDF.</li> <li>Added tab notification for audio being played.</li> <li>Added support for playing DRM-protected HTML5 video using Widevine Pepper plugin.</li> <li>Added API for evaluating JavaScript or installing QWebchannel in secure and isolated JavaScript worlds.</li> <li>Improved support for custom context menus.</li> </ul> <a name="qt-widgets-module"></a> <h3 >Qt Widgets Module</h3> <ul> <li>Enabled QTabBar to delegate placement of tab scroll buttons to the style.</li> <li>Enabled Qt Style Sheets to optionally let widgets inherit font and palette from their parents.</li> </ul> <a name="removed-functionality"></a> <h2 id="removed-functionality">Removed Functionality</h2> <ul> <li>Qt Enginio</li> </ul> <a name="deprecated-functionality"></a> <h2 id="deprecated-functionality">Deprecated Functionality</h2> <ul> <li>Qt Script</li> </ul> <p>Deprecated modules are still included in Qt 5.7, but are considered for removal in future releases.</p> <a name="list-of-api-changes"></a> <h2 id="list-of-api-changes">List of API Changes</h2> <p>The pages below contain a list of API changes in Qt 5.7:</p> <ul> <li><a href="newclasses57.html">New Classes and Functions in Qt 5.7</a></li> <li><a href="obsoleteclasses.html">Obsolete Classes</a></li> </ul> <a name="additions-to-other-qt-5-releases"></a> <h2 id="additions-to-other-qt-5-releases">Additions to Other Qt 5 Releases</h2> <ul> <li><a href="whatsnew56.html">What's New in Qt 5.6</a></li> <li><a href="whatsnew55.html">What's New in Qt 5.5</a></li> <li><a href="whatsnew54.html">What's New in Qt 5.4</a></li> <li><a href="whatsnew53.html">What's New in Qt 5.3</a></li> <li><a href="whatsnew52.html">What's New in Qt 5.2</a></li> <li><a href="whatsnew51.html">What's New in Qt 5.1</a></li> <li><a href="whatsnew50.html">What's New in Qt 5.0</a></li> </ul> </div> <!-- @@@whatsnew57.html --> </div> </div> </div> </div> </div> <div class="footer"> <p> <acronym title="Copyright">©</acronym> 2017 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners.<br> The documentation provided herein is licensed under the terms of the <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation License version 1.3</a> as published by the Free Software Foundation.<br> Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners. </p> </div> </body> </html>