On June 19, Qt Company released Qt 5.13. As always, releases come with new features, updates, bug fixes, and improvements. In Qt 5.13, Qt Company also focused on a tool that makes designing, developing, and deploying software with Qt more efficient for both designers and developers. Let's take a look at some of the highlights of Qt 5.13, as well as some of the tooling updates.
Qt для WebAssembly
Qt for WebAssembly allows you to build Qt applications for web browsers and is now fully supported. Qt for WebAssembly uses Emscripten to compile Qt applications for the web server, allowing you to run your own applications in any browser that supports WebAssembly without the need for client-side installation. Qt sets the pace for C++ development for WebAssembly, and Google recently used Qt as an example of how to run C++ applications in the browser at Google's I/O'19 event.
Qt GUI
Qt GUI summarizes classes for window system integration, event handling, OpenGL and Open GLES integration, 2D graphics, basic images, fonts, and text.
Qt QML
The Qt QML module provides a platform for developing flexible user interfaces in QML. Improved support for enums declared in C++, JavaScript "null" as the anchor value is now optimized at compile time, and QML now generates function tables in 64-bit windows, allowing stack unwinding with JITed functions.
Qt Quick и Qt Quick Controls 2
The standard library for writing QML applications and the user interface controls for creating user interfaces have also received some updates. Added support for TableView to hide rows and columns, and for Qt Quick Controls 2 added SplitView, a control that lays out items horizontally or vertically with a draggable divider between each item. Also added the cache property to the icon.
Qt WebEngine
Qt WebEngine integrates Chromium's fast web capabilities into Qt and its latest version is now based on Chromium 73. Added PDF viewing via Chromium internal extension, application local client certificate store, support for client certificates from QML, web notification APIs and thread-safe and page-specific URL request interceptors.
Qt Network
Qt Network provides a set of APIs for software applications using TCP/IP and adds Secure Channel support for SSL sockets and support for OCSP stapling. As of Qt 5.13, OpenSSL 1.1 is now used to support SSL connections on Linux and Android.
Qt Multimedia
Provides a rich set of QML types and C++ classes for handling multimedia content. Also added continuous playback to QML VideoOutput using the flushMode property, support for GStreamer for Windows/macOS and HTTP headers and audio roles for Android.
Qt KNX
Client side client - connection to KNXnet/IP server. This connection can be used to send messages to the KNX bus and to control the functions of KNX devices commonly used in building automation. In Qt 5.13, the module received a secure client API.
Qt OPC UA
The next generation of Industry 4.0 applications based on the client/server architecture has received some updates. Basically, the C++ API is now fully supported, and technical previews of the QML API and Secure Client C++ API have been added.
Qt CoAP (Tech Preview)
Qt CoAP (Constrained Application Protocol) is a client-side implementation of the M2M protocol for use with constrained hosts and networks for the Internet of Things. In Qt 5.13, the module received support for TLS (DTLS) datagram over UDP.