Evgenii Legotckoi
Evgenii LegotckoiMay 27, 2018, 5:46 a.m.

Qt 5.11 Release

Slightly ahead of schedule, Qt 5.11 was released today (May 22, 2018). As always, the new release adds a lot of new features and fixes a lot of bugs from previous versions. Let's take a look (tell) about the most interesting new features (features).


Qt Core и Network

A lot of work has been done on fine details in Qt Core. For example, some of the tool classes have received new rbalue overloadable argument references, and missing methods have been added for better STL compatibility. Model elements received several new features.

In Qt Network, ALPN and HTTP/2 now support iOS. QNetworkRequest received an Http2DirectAttribute to start an HTTP/2 connection without prior negotiation.

One of the biggest updates has been unicode support in Qt Core. QChar, QString, QTextBoundaryFinder, and the bidi algorithm are now fully compatible with Unicode 10.

Qt GUI and Widgets

A lot of attention in Qt 5.11 was given to access support on Windows. It has been completely redesigned and is now based on Microsoft UI Automation rather than the old Microsoft Active Accessibility framework, greatly improving the Windows accessibility experience. A lot of work has also gone into improving the look and feel on Windows to better support high resolution displays. The print dialog on Linux has been redesigned to show improved support for all CUPS options provided. Qt Widgets has received numerous bug fixes and support for quick mouse selection in QLineEdit. All this is a good upgrade for all users.

Qt QML

Big changes have also taken place with the QML engine. The compiler pipeline that parses and compiles QML has been completely rewritten. The new pipeline brought performance and maintainability improvements.

The new compiler pipeline always compiles QML in platform-independent bytecode. The engine caches this bytecode into qmlc files. You can also generate the bytecode ahead of time using the qmlcompiler compiler feature (which is now also available in the open source version).

The new bytecode interpreter has greatly improved performance over the old version. Test tasks pass in 80-90% of the time from JIT Qt 5.10. A new JIT compiler has been added, which is noticeably better than the old version.

Qt Quick and Qt Quick Controls

Qt Quick has extended support for loading compressed textures into image elements and extended support for the .ktx and .pkm formats. This feature helps reduce loading time and memory consumption by saving snapshots in a format that is directly sent to the GPU.

Qt Quick Controls 2 received many small features and bug fixes. For example, auto-rotate properties for buttons, improved scroll positioning, and improved styling support for SpinBoxes.

Qt Location

There have also been a lot of changes in Qt Location. The biggest changes are related to experimental support for turn-by-turn navigation. But there are other changes as well. QtLocation now has an experimental API for creating map objects that are not bound to a QQuickItem. The performance of MapPolyline objects has been greatly improved, and layers now work in conjunction with map elements. In addition, an extensible routing and positioning API has been made and new waypoints have been added. Finally, the MapBox plugin received support for geocoding and positioning.

Qt Webengine

As has become standard in Qt releases, Chromium under QtWebengine has been upgraded to Chromium 65. In addition, built-in DevTools are now supported without requiring a separate browser, setting a cookie filter, and allowing quotas.

Qt for device development

All the new functionality mentioned above is of course also available in Qt to create a device. In addition, work is underway to improve some built-in functions.

One of the new features here is support for hardware graphics layers, currently available as a technology preview for platforms that support VSP2 hardware compositing. This can be used for features like video underlays (by layers) and helps improve performance and lower power consumption. Qt Company is also looking to expand the number of supported platforms and hardware combinations in future releases.

Qt SerialBus has received improved CAN bus support. The KNX module has received several major updates. Also, Qt 5.11 will have a new module that adds support for OPC/UA. This module is available for technology preview in Qt 5.11.

Other improvements

qdoc now uses libclang for C++ parsing, giving better support for modern C++ in the documentation. Qt Serialbus and Bluetooth have now improved support for CAN and BTLE buses. Support for some older compilers and platforms has been removed from Qt 5.11. MSVC2013, QNX 6.6 and mac OS 10.10 are no longer supported.

Qt 3D and Qt 3D Studio

Hard work is underway on the second release of Qt 3D Studio. This second release comes with a completely rewritten runtime that will be based on qt3d. This will give everyone better and deeper integration into the rest of Qt when using Qt 3D Studio to create 3D interfaces. Through this work, Qt 3D also received many new features, performance improvements, and bug fixes. Qt 3D Studio 2.0 is currently in beta testing and Qt Company is working hard to get a final release within the next few weeks.

Qt for Webassembly and Python

With Qt for Webassembly, work is underway to fill the last big gap in cross-platform history by allowing users to target the web and browsers as the platform for Qt applications. The first version was released as a technology preview. In addition to the above, Qt Company is actively working on supporting Qt in Python. The first release is scheduled for June.

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.

Do you like it? Share on social networks!

Ruslan Polupan
  • May 29, 2018, 6:04 a.m.

Здорово.

В связи этим вопрос.
Как наиболее быстро переходить на новые версии Qt?
Кроме удаления старой версии. установки новой, переборки библиотек есть еще варианты?
Evgenii Legotckoi
  • May 29, 2018, 6:17 a.m.

Статика что-ли?
Обычно я просто ставил новую версии из Maintenance Tool, добавлял комплект сборки, пересобирал проект, если во время компиляции проблем не было, то удалял старую версию.

А как иначе собственно? ))
Ruslan Polupan
  • May 29, 2018, 6:25 a.m.

Статика. Просто с онлайн установкой постоянные проблемы со связью с репозитроиями.

Evgenii Legotckoi
  • May 29, 2018, 7:15 a.m.

Пересобирать придётся в любом случае. Вообще, насколько знаю, можно и просто git-репозиторий Qt использовать. Если вышел update, то сделать fetch, переключиться на нужную ветку и пересобрать статику. Думаю, что так вполне можно сделать.

Ruslan Polupan
  • May 29, 2018, 7:44 a.m.

Я имел ввиду не статическую сборку а оффлайн инсталятор. Онлайн уж очень часто достает вот таким:
Не удалось загрузить архив «http://download.qt.io/online/qtsdkrepository/linux_x64/desktop/qt5_5110_src_doc_examples/qt.qt5.5110.src/5.11.0-0-201805181208qtactiveqt-everywhere-src-5.11.0.7z»: Error transferring http://master.qt.io/online/qtsdkrepository/linux_x64/desktop/qt5_5110_src_doc_examples/qt.qt5.5110.src/5.11.0-0-201805181208qtactiveqt-everywhere-src-5.11.0.7z - server replied: Not Found

Ruslan Polupan
  • May 29, 2018, 7:45 a.m.

Как такие вещи лечить и обходить?

Evgenii Legotckoi
  • May 29, 2018, 7:50 a.m.

У меня таких проблем не возникало. Полагаю, что это просто проблемы с доступностью через Интернет. Причём последнее время это характерно для Российских пользователей (ну вы вкурсе благодаря чем и кому).
Тут только зеркала пробовать использовать.

Ruslan Polupan
  • May 29, 2018, 7:53 a.m.

Я из Украины. :-)

Попутно вопрос, где настраивается зеркала. Германские зеркала у нас идут на ура.
Evgenii Legotckoi
  • May 29, 2018, 8 a.m.

Пардон, тогда не знаю, что да как так с доступностью интернета в Украине.

Если запустите Maitenance Tool, то на самом первом шаге внизу слева есть кнопка Settings, там можно настроить репозитории и Proxy, в том числе можно добавлять репозитории. Я сам не проверял, но полагаю, что это может Вам помочь с настройкой зеркал.
Ruslan Polupan
  • May 29, 2018, 8:10 a.m.

Как то два дня игрался. толку ноль. скачал оффлайн инсталятор. :-)

Evgenii Legotckoi
  • May 29, 2018, 8:11 a.m.

Понятно :-) Тогда не знаю... страну менять)) Я вот в Прагу переехал.

Ruslan Polupan
  • May 29, 2018, 8:26 a.m.

Ну раз еще со стороны Qt грабли, то это последняя капля. :-)

Comments

Only authorized users can post comments.
Please, Log in or Sign up
e
  • ehot
  • March 31, 2024, 2:29 p.m.

C++ - Тест 003. Условия и циклы

  • Result:78points,
  • Rating points2
B

C++ - Test 002. Constants

  • Result:16points,
  • Rating points-10
B

C++ - Test 001. The first program and data types

  • Result:46points,
  • Rating points-6
Last comments
k
kmssrFeb. 8, 2024, 6:43 p.m.
Qt Linux - Lesson 001. Autorun Qt application under Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
Qt WinAPI - Lesson 007. Working with ICMP Ping in Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
EVA
EVADec. 25, 2023, 10:30 a.m.
Boost - static linking in CMake project under Windows Ошибка LNK1104 часто возникает, когда компоновщик не может найти или открыть файл библиотеки. В вашем случае, это файл libboost_locale-vc142-mt-gd-x64-1_74.lib из библиотеки Boost для C+…
J
JonnyJoDec. 25, 2023, 8:38 a.m.
Boost - static linking in CMake project under Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
G
GvozdikDec. 18, 2023, 9:01 p.m.
Qt/C++ - Lesson 056. Connecting the Boost library in Qt for MinGW and MSVC compilers Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Now discuss on the forum
a
a_vlasovApril 14, 2024, 6:41 a.m.
Мобильное приложение на C++Qt и бэкенд к нему на Django Rest Framework Евгений, добрый день! Такой вопрос. Верно ли следующее утверждение: Любое Android-приложение, написанное на Java/Kotlin чисто теоретически (пусть и с большими трудностями) можно написать и на C+…
Павел Дорофеев
Павел ДорофеевApril 14, 2024, 2:35 a.m.
QTableWidget с 2 заголовками Вот тут есть кастомный QTableView с многорядностью проект поддерживается, обращайтесь
f
fastrexApril 4, 2024, 4:47 a.m.
Вернуть старое поведение QComboBox, не менять индекс при resetModel Добрый день! У нас много проектов в которых используется QComboBox, в версии 5.5.1, когда модель испускает сигнал resetModel, currentIndex не менялся. В версии 5.15 при resetModel происходит try…
AC
Alexandru CodreanuJan. 19, 2024, 11:57 a.m.
QML Обнулить значения SpinBox Доброго времени суток, не могу разобраться с обнулением значение SpinBox находящего в делегате. import QtQuickimport QtQuick.ControlsWindow { width: 640 height: 480 visible: tr…

Follow us in social networks