Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.

New Features in Qt 5.6: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
mNo edit summary
(Add to category Release)
 
(44 intermediate revisions by 20 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:New Features in Qt 5.6}}
{{DISPLAYTITLE:New Features in Qt 5.6}}
[[Category:Developing_with_Qt::Qt 5]]
[[Category:Developing_with_Qt::Qt 5]]
[[Category:Release]]
For non-feature updates and for important notices, please see [[Change-files-in-Qt-5.6.0]]


== New Features ==
== New Features ==
* Qt Core
** Reduced memory usage of dynamic properties
** Allow logging directly to syslog on Linux systems
** Added QStorageInfo::blockSize()
** new QVersionNumber class
** Added key_iterator to QHash and QMap
** Added const_iterator QByteArray
** Added reverse iterator support to all sequential containers
** added QDir::listSeparator()
** Lots of performance optimisations in QString
* Qt Network
** Added QHostAddress::isMulticast()
** Support HTTP redirection in QNetworkAccessManager
* Qt GUI
** Improved cross-platform OpenGL ES 3.0 and 3.1 support to help the development of mobile/embedded apps utilizing GLES3 features.
** Improved cross-platform high-dpi support.
** Raster engine support for rendering internally with 16bits-per-color.
** QImageReader now exports gamma values and other meta data for some image formats
* Qt Widgets
** Allow programmatic resizing of dock widgets
** Allow dropping dock widgets into floating docks
** Allow the user to re-arrange tabified docks
** Allow horizontal scrolling using a mouse wheel in QListView
** QOpenGLWidget and QQuickWidget are now supported on WinRT
* Qt Testlib
** More stable input event handling
* Qt Multimedia
* Qt Multimedia
** New Playlist QML type.
** New Playlist QML type.
Line 11: Line 44:
* Qt WebEngine
* Qt WebEngine
** Based on Chromium 45
** Based on Chromium 45
** Support for flash pepper plugin
** Support for pepper plugins including Flash
** Added API for custom URL schemes
** Support for unbundling and linking with system libraries on Linux
** Support for following global Qt proxy settings.
** Support for following global Qt proxy settings.
** More WebActions from QtWebKit and WebAction API in QML.
** New QtWebEngineCore module for shared low-level API
** New core API for custom URL schemes
** New core API for intercepting and blocking network requests
** New core API for tracking or blocking cookies.
* Qt QML
** Support for writing JavaScript function names to Linux's perf output
** Reduced overall memory consumption
** Moved all the debug services into plugins. Custom debug services can be added width additional plugins.


* Font rendering
* Font rendering
** Optional support for using FreeType on Mac OS X
** Optional support for using FreeType on Mac OS X
* Embedded platforms
** Added support for NVIDIA Jetson TK1 Pro boards running Vibrante Linux via a new eglfs backend utilizing DRM, EGLDevice and EGLStream
** Added support for Intel Atom-based NUCs
* Desktop platforms
** Windows 10 fully supported (classic and WinRT app)
** Windows Store apps are now composited inside a XAML layer, allowing for better integration with the native UI layer
* Windows embedded
** Added support for WEC2013
* Qt WebView
** Added support for WinRT
* Qt Canvas3D
** Support for using Qt Quick items as textures
** Support for rendering directly to Qt Quick scene background or foreground
* Qt Nfc
** Added support for Android
* Qt Positioning
** Added support for OS X
** Added support for GPS receivers exposed as a serial port on Windows desktop (all versions)
** Removed libgeoclue dependency for the GeoClue backend
* Qt Location
** Added the Qt Location module providing maps, navigation and places APIs for Qt Quick


== Other Changes ==
== Other Changes ==


* Class Mechanics
* Embedded platforms
** All implicitly-shared types are nothrow-move-assignable, nothrow-swappable
** libinput, when present, is now the default for eglfs and linuxfb
** Most implicitly-shared types are nothrow-move-constructible


== New Modules ==
* Image Formats
** For security reasons, the MNG and JPEG 2000 handlers will by default no longer be built, unless the corresponding codec libraries are provided by the OS. Hence, the binary Qt releases for Windows and Mac will not contain prebuilt handlers for those formats, but users can still build them from source.


== Deprecated Modules ==
The following modules are part of Qt 5.6 release, but deprecated and considered for removal in subsequent releases of Qt:
* Qt Script
* Qt Enginio


== Removed Modules ==
== Removed Modules ==
With Qt 5.6 the following modules are removed:
With Qt 5.6 the following modules are no longer part of the release packages, but users can still build them from source:
* Qt WebKit
* Qt WebKit
* Qt Declarative (Qt Quick 1)
* Qt Declarative (Qt Quick 1)


Note that Qt Script (replaced by QJSEngine) is deprecated but still included in the Qt 5.6 release.
== Technology Preview Modules ==
Qt 5.6 binary installer packages will contain technology preview of the following modules:
* Qt 3D
** New buffer and attribute API
** Support for OpenGL [https://www.opengl.org/wiki/Vertex_Rendering#Instancing instanced rendering] where supported
** Support for OpenGL [https://www.opengl.org/wiki/Vertex_Rendering#Primitive_Restart primitive restart]
** Support for clip planes, stencil operations and many more OpenGL features
** Support for easily generating buffer data from C++ and QML (using javascript typed arrays)
** qgltf tool to compile scenes into [https://www.khronos.org/gltf/ glTF]
** Support for loading glTF scenes via SceneLoader
** Support for controlling multisampling with Scene3D
** More standard materials: per-vertex colors, Gooch shading
** APIs for mouse input and collision detection
** New Logic aspect to have QML/C++ code executed synchronously with the Qt3D aspect engine. Useful for prototyping future Qt3D features
** Many bugfixes all around but especially around unloading and shutdown
** Many new examples
* Qt Quick Controls 2.0
** A new light-weight set of embedded and mobile orientation controls
** Based on a flexible template system that enables rapid development of entire custom styles and user experiences
** Built-in styles:
*** Default style - a simple and minimal all-round style that offers the maximum performance
*** Material style - a style based on the Google Material Design Guidelines
*** Universal style - a style based on the Microsoft Universal Design Guidelines
* Qt SerialBus
** New module for general purpose serial bus access with initial implementation for Controller Area Network (CAN) bus and Modbus


== New Configurations ==
== New Configurations ==


Qt 5.6 does not add support to new operating systems, but there are many changes in supported platform and compiler versions. More details what is now tested in Qt CI, please check Qt-5.6.0-tools-and-versions
Qt 5.6 adds support to Windows Embedded Compact 13, and in addition there are changes in supported platform and compiler versions. More details what is now tested in Qt CI, please check [[Qt-5.6.0-tools-and-versions|Qt-5.6.0-tools-and-versions]]


== Known Issues ==
== Known Issues ==


More details here.
More details here.
{{Release Information}}

Latest revision as of 12:14, 22 November 2016

For non-feature updates and for important notices, please see Change-files-in-Qt-5.6.0

New Features

  • Qt Core
    • Reduced memory usage of dynamic properties
    • Allow logging directly to syslog on Linux systems
    • Added QStorageInfo::blockSize()
    • new QVersionNumber class
    • Added key_iterator to QHash and QMap
    • Added const_iterator QByteArray
    • Added reverse iterator support to all sequential containers
    • added QDir::listSeparator()
    • Lots of performance optimisations in QString
  • Qt Network
    • Added QHostAddress::isMulticast()
    • Support HTTP redirection in QNetworkAccessManager
  • Qt GUI
    • Improved cross-platform OpenGL ES 3.0 and 3.1 support to help the development of mobile/embedded apps utilizing GLES3 features.
    • Improved cross-platform high-dpi support.
    • Raster engine support for rendering internally with 16bits-per-color.
    • QImageReader now exports gamma values and other meta data for some image formats
  • Qt Widgets
    • Allow programmatic resizing of dock widgets
    • Allow dropping dock widgets into floating docks
    • Allow the user to re-arrange tabified docks
    • Allow horizontal scrolling using a mouse wheel in QListView
    • QOpenGLWidget and QQuickWidget are now supported on WinRT
  • Qt Testlib
    • More stable input event handling
  • Qt Multimedia
    • New Playlist QML type.
    • New audio role API for the media player (C++ and QML)
    • Support for camera focus and video probe on WinRT
    • New functions in QML AudioEngine to support dynamic object creation
  • Qt WebEngine
    • Based on Chromium 45
    • Support for pepper plugins including Flash
    • Support for unbundling and linking with system libraries on Linux
    • Support for following global Qt proxy settings.
    • More WebActions from QtWebKit and WebAction API in QML.
    • New QtWebEngineCore module for shared low-level API
    • New core API for custom URL schemes
    • New core API for intercepting and blocking network requests
    • New core API for tracking or blocking cookies.
  • Qt QML
    • Support for writing JavaScript function names to Linux's perf output
    • Reduced overall memory consumption
    • Moved all the debug services into plugins. Custom debug services can be added width additional plugins.
  • Font rendering
    • Optional support for using FreeType on Mac OS X
  • Embedded platforms
    • Added support for NVIDIA Jetson TK1 Pro boards running Vibrante Linux via a new eglfs backend utilizing DRM, EGLDevice and EGLStream
    • Added support for Intel Atom-based NUCs
  • Desktop platforms
    • Windows 10 fully supported (classic and WinRT app)
    • Windows Store apps are now composited inside a XAML layer, allowing for better integration with the native UI layer
  • Windows embedded
    • Added support for WEC2013
  • Qt WebView
    • Added support for WinRT
  • Qt Canvas3D
    • Support for using Qt Quick items as textures
    • Support for rendering directly to Qt Quick scene background or foreground
  • Qt Nfc
    • Added support for Android
  • Qt Positioning
    • Added support for OS X
    • Added support for GPS receivers exposed as a serial port on Windows desktop (all versions)
    • Removed libgeoclue dependency for the GeoClue backend
  • Qt Location
    • Added the Qt Location module providing maps, navigation and places APIs for Qt Quick

Other Changes

  • Embedded platforms
    • libinput, when present, is now the default for eglfs and linuxfb
  • Image Formats
    • For security reasons, the MNG and JPEG 2000 handlers will by default no longer be built, unless the corresponding codec libraries are provided by the OS. Hence, the binary Qt releases for Windows and Mac will not contain prebuilt handlers for those formats, but users can still build them from source.

Deprecated Modules

The following modules are part of Qt 5.6 release, but deprecated and considered for removal in subsequent releases of Qt:

  • Qt Script
  • Qt Enginio

Removed Modules

With Qt 5.6 the following modules are no longer part of the release packages, but users can still build them from source:

  • Qt WebKit
  • Qt Declarative (Qt Quick 1)

Technology Preview Modules

Qt 5.6 binary installer packages will contain technology preview of the following modules:

  • Qt 3D
    • New buffer and attribute API
    • Support for OpenGL instanced rendering where supported
    • Support for OpenGL primitive restart
    • Support for clip planes, stencil operations and many more OpenGL features
    • Support for easily generating buffer data from C++ and QML (using javascript typed arrays)
    • qgltf tool to compile scenes into glTF
    • Support for loading glTF scenes via SceneLoader
    • Support for controlling multisampling with Scene3D
    • More standard materials: per-vertex colors, Gooch shading
    • APIs for mouse input and collision detection
    • New Logic aspect to have QML/C++ code executed synchronously with the Qt3D aspect engine. Useful for prototyping future Qt3D features
    • Many bugfixes all around but especially around unloading and shutdown
    • Many new examples
  • Qt Quick Controls 2.0
    • A new light-weight set of embedded and mobile orientation controls
    • Based on a flexible template system that enables rapid development of entire custom styles and user experiences
    • Built-in styles:
      • Default style - a simple and minimal all-round style that offers the maximum performance
      • Material style - a style based on the Google Material Design Guidelines
      • Universal style - a style based on the Microsoft Universal Design Guidelines
  • Qt SerialBus
    • New module for general purpose serial bus access with initial implementation for Controller Area Network (CAN) bus and Modbus

New Configurations

Qt 5.6 adds support to Windows Embedded Compact 13, and in addition there are changes in supported platform and compiler versions. More details what is now tested in Qt CI, please check Qt-5.6.0-tools-and-versions

Known Issues

More details here.

Release Information [edit]
Qt Version Overview Tools and Versions New Features Changes Known Issues
Qt 6.6 Qt 6.6 Release Qt 6.6 Tools and Versions New Features in Qt 6.6 Qt 6.6.0 Release Note Qt 6.6 Known Issues
Qt 6.5 Qt 6.5 Release Qt 6.5 Tools and Versions New Features in Qt 6.5 Qt 6.5.0 Release Note Qt 6.5 Known Issues
Qt 6.4 Qt 6.4 Release Qt 6.4 Tools and Versions New Features in Qt 6.4 Qt 6.4.0 Release NoteQt 6.4.1 Release NoteQt 6.4.2 Release NoteQt 6.4.3 Release Note Qt 6.4 Known Issues
Qt 6.3 Qt 6.3 Release Qt 6.3 Tools and Versions New Features in Qt 6.3 Qt 6.3.0 Release NoteQt 6.3.1 Release Note Qt 6.3 Known Issues
Qt 6.2 Qt 6.2 Release Qt 6.2 Tools and Versions New Features in Qt 6.2 Qt 6.2.0 Release NoteQt 6.2.1 Release NoteQt 6.2.2 Release Note Qt 6.2 Known Issues
Qt 6.1 Qt 6.1 Release Qt 6.1 Tools and Versions New Features in Qt 6.1 Qt 6.1.0 Release NoteQt 6.1.1 Release NoteQt 6.1.2 Release NoteQt 6.1.3 Release Note Qt 6.1.0 Known IssuesQt 6.1.1 Known issues in release noteQt 6.1.2 Known issues in release noteQt 6.1.3 Known issues in release note
Qt 6.0 Qt 6.0 Release Qt 6.0 Tools and Versions New Features in Qt 6.0 Qt 6.0.0 Change FilesQt 6.0.1 Release NoteQt 6.0.2 Release NoteQt 6.0.3 Release NoteQt 6.0.4 Release Note Qt 6.0.0 Known IssuesQt 6.0.1 Known IssuesQt 6.0.2 Known IssuesQt 6.0.3 Known IssuesQt 6.0.4 Known Issues
Qt 5.15 Qt 5.15 Release Qt 5.15 Tools and Versions New Features in Qt 5.15 Qt 5.15.0 Change FilesQt 5.15.1 Change FilesQt 5.15.2 Change Files Qt 5.15.0 Known IssuesQt 5.15.1 Known IssuesQt 5.15.2 Known IssuesQt 5.15.4 Known Issues
Qt 5.14 Qt 5.14 Release Qt 5.14 Tools and Versions New Features in Qt 5.14 Qt 5.14.0 Change FilesQt 5.14.1 Change FilesQt 5.14.2 Change Files Qt 5.14.0 Known IssuesQt 5.14.1 Known IssuesQt 5.14.2 Known Issues
Qt 5.13 Qt 5.13 Release Qt 5.13 Tools and Versions New Features in Qt 5.13 Qt 5.13.0 Change FilesQt 5.13.1 Change FilesQt 5.13.2 Change Files Qt 5.13.0 Known IssuesQt 5.13.1 Known IssuesQt 5.13.2 Known Issues
Qt 5.12 Qt 5.12 Release Qt 5.12 Tools and Versions New Features in Qt 5.12 Qt 5.12.0 Change FilesQt 5.12.1 Change FilesQt 5.12.2 Change FilesQt 5.12.3 Change FilesQt 5.12.4 Change FilesQt 5.12.5 Change FilesQt 5.12.6 Change FilesQt 5.12.7 Change FilesQt 5.12.8 Change FilesQt 5.12.9 Change FilesQt 5.12.10 Change FilesQt 5.12.11 Release NoteQt 5.12.12 Release Note Qt 5.12.0 Known IssuesQt 5.12.1 Known IssuesQt 5.12.2 Known IssuesQt 5.12.3 Known IssuesQt 5.12.4 Known IssuesQt 5.12.5 Known IssuesQt 5.12.6 Known IssuesQt 5.12.7 Known IssuesQt 5.12.8 Known IssuesQt 5.12.9 Known IssuesQt 5.12.10 Known IssuesQt 5.12.11 Known issues in release noteQt 5.12.12 Known issues in release note
Qt 5.11 Qt 5.11 Release Qt 5.11 Tools and Versions New Features in Qt 5.11 Qt 5.11.0Qt 5.11.1Qt 5.11.2 Change FilesQt 5.11.3 Change Files Qt 5.11.0Qt 5.11.1Qt 5.11.2 Known IssuesQt 5.11.3 Known Issues
Qt 5.10 Qt 5.10 Release Qt 5.10 Tools and Versions New Features in Qt 5.10 Qt 5.10.0Qt 5.10.1 Change Files Qt 5.10.0Qt 5.10.1 Known Issues
Qt 5.9 Qt 5.9 Release Qt 5.9 Tools and Versions New Features in Qt 5.9 Qt 5.9.0Qt 5.9.1Qt 5.9.2Qt 5.9.3Qt 5.9.4Qt 5.9.5Qt 5.9.6 Change FilesQt 5.9.7 Change FilesQt 5.9.8 Change FilesQt 5.9.9 Change Files Qt 5.9.0Qt 5.9.1Qt 5.9.2Qt 5.9.3Qt 5.9.4Qt 5.9.5Qt 5.9.6 Known IssuesQt 5.9.7 Known IssuesQt 5.9.8 Known IssuesQt 5.9.9 Known Issues
Qt 5.8 Qt 5.8 Release Qt 5.8 Tools and Versions New Features in Qt 5.8 Qt 5.8.0 Change Files Qt 5.8.0 Known Issues
Qt 5.7 Qt 5.7 Release Qt 5.7 Tools and Versions New Features in Qt 5.7 Qt 5.7.0Qt 5.7.1 Change Files Qt 5.7.0Qt 5.7.1 Known Issues
Qt 5.6 Qt 5.6 Release Qt 5.6 Tools and Versions New Features in Qt 5.6 Qt 5.6.0Qt 5.6.1Qt 5.6.2Qt 5.6.3 Change Files Qt 5.6.0Qt 5.6.1Qt 5.6.2Qt 5.6.3 Known Issues
Qt 5.5 Qt 5.5 Release Qt 5.5 Tools and Versions New Features in Qt 5.5 Qt 5.5.0Qt 5.5.1 Change Files Qt 5.5.0Qt 5.5.1 Known Issues
Qt 5.4 Qt 5.4 Release Qt 5.4 Tools and Versions New Features in Qt 5.4 Qt 5.4.0Qt 5.4.1Qt 5.4.2 Change Files Qt 5.4.0Qt 5.4.1Qt 5.4.2 Known Issues
Qt 5.3 Qt 5.3 Release Qt 5.3 Tools and Versions New Features in Qt 5.3 Qt 5.3.0Qt 5.3.1Qt 5.3.2 Change Files Qt 5.3.0 Beta 1Qt 5.3.0 RC 1
Qt 5.3.0Qt 5.3.1Qt 5.3.2 Known Issues
Qt 5.2 Qt 5.2 Release New Features in Qt 5.2 Qt 5.2.0Qt 5.2.1 Change Files Qt 5.2.0 Beta 1Qt 5.2.0 RC 1
Qt 5.2.0Qt 5.2.1 Known Issues
Qt 5.1 Qt 5.1 Release New Features in Qt 5.1 Qt 5.1.0 Change Files Qt 5.1.0 Beta 1Qt 5.1.0 RC 1
Qt 5.1.0Qt 5.1.1 Known Issues
Qt 5.0 Qt 5.0.0Qt 5.0.1 Release New Features in Qt 5.0 Qt 5.0 Changes Qt 5.0.0 Beta 1Qt 5.0.0 Beta 2Qt 5.0.0 RC 1Qt 5.0.0 RC 2
Qt 5.0.0Qt 5.0.1Qt 5.0.2 Known Issues