Qt 5.4 and Qt Creator 3.3 Release

Original author: Lars Knoll
  • Transfer
Translator's note: there are a lot of marketing turns in the original, and there seems to be some kind of SEO in the text. I tried to remove excess repetitions of the word "Qt" in some places, but the text was still slightly sweetened.
Pro release Qt Creator 3.3 translation .


I am pleased to announce that Qt 5.4 released today (December 10) and is available for download from qt.io . Together with Qt 5.4, we also release Qt Creator 3.3 and an update for Qt to create devices running embedded Linux or Android.

But first, let's talk about Qt 5.4. One of the main emphasis that I would like to make on the release is Web-technologies, and we can show you a lot of cool pieces.



Updated Web History

HTML5 and Web technologies have become increasingly important in recent years, and we spent the last year developing new web features for Qt. The Qt WebEngine module is the result of a rather long research project, in which the Chromium and Qt engine were “made friends”. With Qt 5.4, it is fully supported on all desktop and embedded platforms. Qt WebEngine gives you an easy-to-use API to embed web content in both Qt Widgets and Qt Quick applications.

New Qt WebChannel Moduleprovides a simple link between QML / C ++ and HTML / Javascript. What does it mean? These are hybrid applications that use both web technologies and Qt features. Exchange between both parties is possible due to the use of QObject-objects in the context of the execution of the Web-application. This will work not only with Qt WebEngine, but with any other Websockets engine.

The third thing I want to say about is the technological preview of the Qt WebView module . This module provides a more limited API for embedding the native browser in the OS, for those cases when you do not need all the features of Qt WebEngine, or when this is not possible due to the limitations of the platform itself. In Qt 5.4, it will support iOS and Android.

Together with Qt WebSockets, we now have support for many web technologies that make it easy to interact with content. Embedding HTML5 in WebEngine and WebView, and WebSockets for easy “communication” between Qt and the web.

Qt Webkit remains in 5.4 as before and continues to be supported. This module is recognized as ready-made and stable, so do not expect new functionality. Someday we will declare it deprecated. We recommend switching to WebEngine, because it is quite simple. Also, obviously, it is better to choose the latter for new projects.

Qt for WinRT | completion of cross-platformness

The second group of new features of release 5.4 is the completion of support for major platforms along with full support for Windows Runtime. She was already in beta Qt 5.3, but now she is close to full. You can create applications for the Windows Store; as the target OS, you can choose either Windows Phone 8.1+ or Windows 8.1+.
We hope that this paragraph of the mouth you will notice that we support all of the latest desktop, embedded and mobile operating systems.

Graphics Updates

There are other improvements to Qt 5.4. For example, look at the graphics. We have now provided the best support for high-resolution displays for desktop platforms. So far, support can only be called experimental, so if you want, look at the reviews in the documentation .

OpenGL for Windows had sharp corners, because you had to consider cases where there were no good drivers. To solve this problem, it is now possible to dynamically select the OpenGL implementation during application launch. Qt chooses between an OpenGL driver (native), an ANGLE implementation (which translates to DirectX), or even software rendering.

Qt Data Visualization has been updated to version 1.2, now includes such things as volumetric rendering and texture support for depth graphs, as well as improved performance. Qt Charts has been updated to 2.0, along with better modularity and binary packages.

Other graphics improvements are a new class.QOpenGLWidget, which replaces QGLWidget from Qt 4, and allows you to declare the entire Qt OpenGL module obsolete (classes start with QGL * - approx. Per.). QOpenGLContext can now use existing native contexts. You can use QQuickRenderControl to display Qt Quick scenes in an offscreen buffer.

And finally, in 5.4 there is a tech preview of the new Canvas3D module, which provides an API like WebGL, but for Qt Quick.


Other features

Consider other new things that came with Qt 5.4.

Qt supports Bluetooth Low Energy under Linux using BlueZ. Support for other platforms is expected in future releases of Qt. Bluetooth LE allows you to connect with many modern Bluetooth devices like smart watches.

Under Android, there are now native- looking Qt Quick Controls; we also made smaller deployment packages and accelerated launch time. For iOS and Mac OS X, we have included support for the latest OS versions, support for Xcode 6, and a new way to sign apps for the App Store. Also, almost all style issues for Mac OS X 10.10 have been fixed.

Qt State Machines support has been added to the Qt Qml module (you can use the new "QtQml.StateMachine" import), and QtCore has a new QStorageInfo class that displays information about disks and partitions.

In Quick Controls, we have added a new “flat” style, available for all platforms.

Qt 5.4 also includes a new version of the Qt Creator 3.3 IDE. For details - read a separate post.

Qt for creating devices (embedded)

Today we present a new version of the tool for creating devices. What is included in it:

Preliminary support for launching Qt applications under Wayland using the Weston composer on i.MX6 devices, including video support and Qt WebEngine.

We added the “B2Qt Utils” module (boot 2 qt, apparently), which gives easy access to device settings, such as display backlight, network name or charge status, both from C ++ and QML. The B2Qt Wi-Fi module is officially supported and makes it easy to set up a wireless network.

List of other improvements:

-Update of the eAndroid Qt Multimedia plugin. The implementation of Qt Multimedia for Android has been refactored, the code will be easier to maintain and cleaner;
-SD Card Flashing Wizard for creating images b2qt;
Improvements in BYOS (Build Your Own Stack);
-eLinux: camera support for i.MX6 devices.

We also added new hardware platforms, including a low-end profile for the GPU-free Freescale Vybrid. Other reference platforms can be found in the documentation.

Qt Quick without OpenGL

Another cool thing for embedded solutions is the new 2D render module in Qt Quick. This new commercial add-on allows you to use Qt Quick where there is no OpenGL hardware acceleration, using software rendering or hardware 2D acceleration (like DirectFB or Direct2D). Almost everything is supported, except for particles and OpenGL shaders.

Transition to LGPL v3

As promised earlier, the open source version for 5.4 is also available under the LGPLv3 license. A new licensing option allows Qt Company to introduce new components for the whole Qt ecosystem without compromise for business. In addition, the freedom of other developers will be protected from tivoization (or lock-down).

Some modules, however, are available ONLY under GPL / LGPLv3 or commercial licenses - WebEngine, WebView and Canvas 3D.

Thanks to the Qt community.

But all of this we could not have done without that huge community support - the people and companies that invested in Qt development without getting paid for it. Thanks to all!
Try Qt 5.4, www.qt.io/download

Pro release Qt Creator 3.3 translation .

Also popular now: