📜 ⬆️ ⬇️

Qt 5.4 and Qt Creator 3.3 Release

Translator's note: in the original there are a lot of marketing turns, and it looks like some kind of SEO in the text. In some places I tried to remove the extra repetitions of the word “Qt”, but the text is still a bit sweet.
Pro release Qt Creator 3.3 translation .


I am pleased to announce that Qt 5.4 is released today (December 10) and is already 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 accents that I would like to make on the page is web technologies, and we can show you many cool things.
')


Updated Web Story

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 engines were “joined together”. With Qt 5.4, it is fully supported on all custom and embedded platforms. Qt WebEngine gives you an easy-to-use API to embed web content in both Qt Widgets and Qt Quick apps.

The new Qt WebChannel module provides 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 through the use of QObject objects in the context of running a web application. This will work not only with Qt WebEngine, but with any other engine that supports web sockets (Websockets).

The third thing I want to talk about is the technology preview of the Qt WebView module. This module provides a more limited API for embedding a native browser into 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 still and continues to be supported. This module is recognized as ready and stable, so do not expect new functionality. Someday we will declare it deprecated. We recommend switching to WebEngine, for it is quite simple. It is also obviously better to choose the latter for new projects.

Qt for WinRT | cross-platform completion

The second group of 5.4 release features is the end of support for the main platforms along with full support for the 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 with this mouthpiece you will notice that we support all current desktop, embedded and mobile operating systems.

Graphics updates

There are other improvements in Qt 5.4. For example, look at the graphics. We have now provided better support for high resolution displays for desktop platforms. So far, support can only be called experimental, so that if there is a desire, take a look at the reviews in the documentation .

OpenGL for Windows had sharp corners, because you had to take into account cases when there are no good drivers. To solve this problem, it is now possible to dynamically select the OpenGL implementation during application launch. Qt chooses between the OpenGL driver (native), the implementation of ANGLE (which broadcasts in 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 updated to 2.0, along with better modularity and binary packages.

Other improvements in graphics are the new QOpenGLWidget class , which replaces QGLWidget from Qt 4, and makes it possible to declare outdated entire Qt OpenGL module as a whole (its classes start with QGL * - approx. Lane). 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 the other new things that came with Qt 5.4.

Qt supports Bluetooth Low Energy under Linux using BlueZ. For other platforms, wait for the next Qt release. Bluetooth LE allows you to communicate with many modern Bluetooth-enabled devices like smart watches.

Android now has native- looking Qt Quick Controls; we also made smaller deployments and sped up launch time. For iOS and Mac OS X, we have included support for the latest OS, support for Xcode 6 and a new way to sign applications for the App Store. Also, almost all the problems with styles for Mac OS X 10.10 are fixed.

Qt State Machines support has been added to the Qt Qml module (a new “QtQml.StateMachine” import can be used), and QtCore has received a new QStorageInfo class that displays information on disks and partitions.

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

In Qt 5.4, in addition, a new version of IDE Qt Creator 3.3 is included. For details, read the separate post.

Qt to create devices (embedded)

Today we are introducing a new version of the device creation tool. What is included in it:

Advance support for running 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 the display backlight, network name, or charge status from both 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 eAndroid Qt Multimedia plugin. The implementation of Qt Multimedia for Android has been refactored, the cleaner code will continue to be easier to maintain;
-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 a new hardware platform, 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 addon allows Qt Quick to be used where there is no OpenGL hardware acceleration, using software rendering or 2D hardware acceleration (like DirectFB or Direct2D). Almost everything is supported except for particles and OpenGL shaders.

Switch to LGPL v3

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

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

Thanks to the Qt community

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

Pro release Qt Creator 3.3 translation .

Source: https://habr.com/ru/post/245521/


All Articles