The Qt Company unveiled the release of the framework Qt 6.1, in which work continues to stabilize and increase the functionality of the Qt 6 branch.
The key improvements in Qt 6.1 are mainly related with the inclusion in the composition of modules that were available in Qt 5.15, but they were not ready for inclusion in the first version of Qt 6. In particular, modules are included in the composition.
Main new features of Qt 6.1
Among the main changes that have been made in this new version of Qt 6.1, it is mentioned that work has been done in Qt Core to improve usability and simplify the API, In addition, the removeIf () methods have been added and the number of classes that support the erase_if () method has been expanded.
Also It is mentioned that missing methods were implemented available in QString but missing in QStringView, Also overflow protected addition, subtraction and multiplication functions added (improved security), as well as improved support for 16-bit floating point values.
Qt Quick 3D adds support for target animation transformation and implements experimental support for duplicate rendering (rendering per instance), which allows rendering multiple copies of objects of the same type located in the peripheral parts of the scene in a single pass. The method significantly speeds up rendering when there are a large number of similar objects in the scene. Based on the specified method, support for 3D particle rendering is implemented.
The API for property binding, introduced in Qt 6.0, has been updated. New classes were added to simplify integration with Java, QJniEnvironment, and QJniObject, commonly required on the Android platform.
It also highlights the improvements in Qt Gui in relation to support for the Vulkan 1.1 and 1.2 graphics API, plus a new QUrlResourceProvider class was added that QLabel uses to avoid re-implementing loadResource () and subclassing QTextDocument.
The ability to use user-defined correction functions for color space components has been implemented in the QColorSpace class.
Qt Network provides the QNetworkInformation class to determine the state of a network on a system. Added support for SameSite mode in HTTP cookie handler.
Qt Qml implements the QJSPrimitiveValue and QJSManagedValue options for finer control over JavaScript execution.
Regarding the modules that are included in this new version:
- Active Qt – Supports COM and ActiveX controls on Windows platform.
- QT Charts: creating charts.
- Qt Data Visualization: visualization of static and dynamic data.
- Qt Device Utilities is part of the Qt for Device Creation package.
- Qt Graphical Effect is a layer to simplify the transfer of applications to Qt 6.
- Qt Lottie: render exported graphics and animations in JSON format using plugin
- Bodymovin for the Adobe After Effects package. It includes a built-in micro-engine for animation, cropping, layer processing, and other effects.
- Qt State Machine is a framework for creating event-driven constructs and implementing an SCXML-based state machine.
- Qt Virtual Keyboard is a virtual keyboard implementation.
Finally you have to remember that Qt Company made some changes to its license models With which all versions will be distributed only to commercial license users during the first 12 months.
Still also public access to all versions of Qt 5.15 will be retained previously published, but new confirmations will be added behind closed doors. The exception is made only for the code of the Qt WebEngine and Qt Script modules, which are linked to external dependencies under the LGPL license.
For commercial licensed users who are interested in this new version of Qt 6.1, they should know that support is provided for Windows 10, macOS 10.14+, Linux platforms (Ubuntu 20.04+, CentOS 8.1 +, OpenSuSE 15.1+), iOS 13+ and Android (API 23+).
The sources for the Qt components are released under the LGPLv3 and GPLv2 licenses.
Fountain: https://www.qt.io