© EVILEG 2015-2018
Рекомендует хостинг
TIMEWEB

Выпуск Qt 5.11

Qt, Releases

Немного опережая ранее запланированный график, сегодня (22 мая 2018 г.) был выпушен новый релиз Qt 5.11. Как всегда, в новый релиз добавлено большое количество новых функций и исправлено много багов предыдущих версий. Давайте рассмотрим (расскажем) о наиболее интересных новых функциях (возможностях).

Qt Core и Network

Много работы было сделано над мелкими деталями в Qt Core. К примеру, некоторые из классов инструментов получили новые перегружаемые rbalue ссылки аргументов, также были добавлены отсутствующие методы для лучшей совместимости с STL. Элементы модели получили несколько новых функций.

В Qt Network, ALPN и HTTP/2 теперь поддерживают iOS. QNetworkRequest получил Http2DirectAttribute для запуска соединения HTTP/2 без предварительного согласования.

Одним из наибольших обновлений стала поддержка unicode в Qt Core. QChar, QString, QTextBoundaryFinder и алгоритм двунаправленного текста теперь полностью совместимы с Unicode 10.

Qt GUI и Widgets

Большое внимание в Qt 5.11 уделили поддержки доступа на Windows. Он был полностью изменен и теперь основан на Microsoft UI Automation, а не на старой Microsoft Active Accessibility framework, что существенно улучшило работу со специальными возможностями Windows. Много работы было проведено и над улучшением внешнего вида на Windows для лучшей поддержки дисплеев с высоким разрешением. Диалог печати на Linux был переработан и теперь показывает улучшенную поддержку всех предоставляемых вариантов CUPS. Qt Widgets получил многочисленные исправления и получил поддержку быстрого выделения текста мышью в QLineEdit. Всё это является хорошим обновлением для всех пользователей.

Qt QML

Большие изменения произошли и с движком QML. Полностью переписан конвейер компилятора, который анализирует и компилирует QML. Новый конвейер принес улучшения производительности и поддерживаемости.

Новый конвейер компилятора всегда компилирует QML в независимом от платформы байт-коде. Движок кэширует этот байт-код в файлы qmlс. Вы также можете создать байт-код заранее, используя функцию компилятора qmlcompiler (которая теперь также доступна в версии с открытым исходным кодом).

Новый интерпретатор байт-кода значительно улучшил производительность по сравнению со старой версией. Тестовые задания проходят за 80-90 % времени от JIT Qt 5.10. Был добавлен новый JIT-компилятор, который заметно лучше старой версии.

Qt Quick and Qt Quick Controls

В Qt Quick была расширенна поддержка загрузки сжатых текстур в элементы изображения и расширена поддержка форматов .ktx and .pkm. Эта функция помогает сократить время загрузки и потребление памяти, сохраняя снимки в формате, который напрямую направляются в GPU.

Qt Quick Controls 2 получил множество небольших функций и исправлений ошибок. Например авто-поворот свойств для кнопок, улучшено позиционирование прокрутки и улучшена поддержка стилей для SpinBoxes.

Qt Location

В Qt Location так же произошло множество изменений. Наибольшие изменения связаны с экспериментальной поддержкой для turn-by-turn навигации. Но есть и другие изменения. QtLocation теперь имеет экспериментальный API для создания объектов карты, которые не привязаны к QQuickItem. Производительность объектов MapPolyline значительно улучшилась, и теперь слои работают в сочетании с элементами карты. Кроме того сделан расширяемый API маршрутов и позиционирования и добавлены новые путевые точки. Наконец, плагин MapBox получил поддержку геокодирования и позиционирования.

Qt Webengine

Как стало стандартом в релизах Qt, была обновлена версия Chromium под QtWebengine до Chromium 65. Кроме того, теперь поддерживаеются встроенные DevTools, не требуя использования отдельного браузера, устанавливаемого фильтра cookie и разрешающих квот.

Qt для разработки устройств

Все новые функциональные возможности, упомянутые выше, конечно, также доступны в Qt для создания устройства. Кроме того, идёт работа над улучшением некоторых встроенных функций.

Одной из новых функций здесь является поддержка аппаратных графических слоев, доступных в настоящее время в качестве предварительного просмотра технологии для платформ, поддерживающих аппаратное композитирование VSP2. Это можно будет использовать для функций, как видео подложки (по-слоям) и помогает улучшить производительность и понизить энергопотребление. Так же в Qt Company стремятся расширить количество поддерживаемых платформ и аппаратных комбинаций в следующих выпусках.

Qt SerialBus получила усовершенствованную поддержку CAN шины. Модуль KNX получил несколько крупных обновлений. Кроме того, Qt 5.11 будет иметь новый модуль, который добавляет поддержку OPC/UA. Этот модуль доступен для предварительного просмотра технологии в Qt 5.11.

Другие улучшения

qdoc теперь использует libclang для анализа C++, что дает улучшенную поддержку современного C++ в документации. Qt Serialbus и Bluetooth теперь улучшили поддержку шин CAN и BTLE. Из версии Qt 5.11 была удалена поддержка некоторых старых компиляторов и платформ. MSVC2013, QNX 6.6 и mac OS 10.10 больше не поддерживаются.

Qt 3D и Qt 3D Studio

Идёт тяжелая работа над вторым релизом Qt 3D Studio. Этот второй выпуск поставляется с полностью переписанной средой выполнения, которая будет основана на qt3d. Это даст всем лучшую и более глубокую интеграцию в остальную часть Qt при использовании Qt 3D Studio для создания 3D интерфейсов. Благодаря этой работе Qt 3D также получила множество новых функций, улучшений производительности и исправлений ошибок. Qt 3D Studio 2.0 в настоящее время находится на бета-тестировании, и Qt Company прилагает все усилия, чтобы получить окончательный релиз в течение следующих нескольких недель.

Qt для Webassembly и Python

С Qt для Webassembly идёт работа над заполнением последнего большого пробела в кросс-платформенной истории, позволяя пользователям ориентироваться на веб и браузеры как платформу для приложений Qt. Первая версия была выпущена в качестве предварительного просмотра технологии. Кроме того, к вышесказанному, Qt Company активно работает над поддержкой Qt на Python. Первый выпуск планируется на июнь.

Комментарии

29 мая 2018 г. 10:04

Здорово.

В связи этим вопрос.
Как наиболее быстро переходить на новые версии Qt?
Кроме удаления старой версии. установки новой, переборки библиотек есть еще варианты?
29 мая 2018 г. 10:17

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

А как иначе собственно? ))

Для Django рекомендую VDS-хостинг TIMEWEB

29 мая 2018 г. 10:25

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

29 мая 2018 г. 11:15

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

Для Django рекомендую VDS-хостинг TIMEWEB

29 мая 2018 г. 11:44

Я имел ввиду не статическую сборку а оффлайн инсталятор. Онлайн уж очень часто достает вот таким:
Не удалось загрузить архив «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

29 мая 2018 г. 11:45

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

29 мая 2018 г. 11:50

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

Для Django рекомендую VDS-хостинг TIMEWEB

29 мая 2018 г. 11:53

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

Попутно вопрос, где настраивается зеркала. Германские зеркала у нас идут на ура.
29 мая 2018 г. 12:00

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

Если запустите Maitenance Tool, то на самом первом шаге внизу слева есть кнопка Settings, там можно настроить репозитории и Proxy, в том числе можно добавлять репозитории. Я сам не проверял, но полагаю, что это может Вам помочь с настройкой зеркал.

Для Django рекомендую VDS-хостинг TIMEWEB

29 мая 2018 г. 12:10

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

29 мая 2018 г. 12:11

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

Для Django рекомендую VDS-хостинг TIMEWEB

29 мая 2018 г. 12:26

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

Комментарии

Только авторизованные пользователи могут оставлять комментарии.
Пожалуйста, Авторизуйтесь или Зарегистрируйтесь
19 октября 2018 г. 8:05
Василий Ильченко

C++ - Тест 001. Первая программа и типы данных

  • Результат:66баллов,
  • Очки рейтинга-1
18 октября 2018 г. 16:14
druidx

C++ - Тест 002. Константы

  • Результат:25баллов,
  • Очки рейтинга-10
18 октября 2018 г. 15:58
druidx

C++ - Тест 001. Первая программа и типы данных

  • Результат:80баллов,
  • Очки рейтинга4
Последние комментарии
19 октября 2018 г. 7:59
Евгений Легоцкой

Python 3 - Урок 001. Введение

Добрый день! Вот это линуксовая директива #!/usr/bin/python3 Указывает, где находится python пакет в системе. А вы видимо под windows разрабатываете. Попробуйте просто у...
19 октября 2018 г. 7:54
Abdurashid Parpieff

Python 3 - Урок 001. Введение

Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:06:47) [MSC v.1914 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> #!/usr/bi...
18 октября 2018 г. 8:31
Евгений Легоцкой

Qt/C++ - Урок 006. QSqlQueryModel - Таблицы в Qt с помощью SQL-запросов

Как-то даже странно, а вы что ли в отдельный поток убрали базу данных? То есть изначально инстанс создаётся в одном потоке, а все QSqlQuery в другом потоке? Они должны находиться в одном поток...
17 октября 2018 г. 8:43
pasagir

Qt/C++ - Урок 006. QSqlQueryModel - Таблицы в Qt с помощью SQL-запросов

Не получается bool DataBase::insertDataIntoDB(QVariantList data){ QSqlQuery query(db); QString str; qDebug()<<"InsertInsertInsertInsertInsert"<<QThread::curre...
17 октября 2018 г. 7:09
Евгений Легоцкой

Qt/C++ - Урок 006. QSqlQueryModel - Таблицы в Qt с помощью SQL-запросов

Попробуйте передать инстанс базы данных в конструктор QSqlQuery QSqlQuery q(db);
Сейчас обсуждают на форуме
19 октября 2018 г. 11:52
Евгений Легоцкой

Уведомления о лайках и дислайках

Вообще планируется система ачивок. А рейтинг есть в зачаточном состоянии. Но для системы ачивок нужно собраться с духом и выделить приличную кучку времени. Помимо того, что сами ачивки п...
18 октября 2018 г. 12:15
Михаиллл

Настройка Qt Creator для Android

все галочки включены.
18 октября 2018 г. 8:16
Allyans .

Работа с WinAPI в QT(изменение title bar)

Хорошо, я попробуй по вашей статье.
15 октября 2018 г. 12:45
Allyans .

QGraphicsItem change color

Хорошо)
11 октября 2018 г. 10:13
Arrow

Работа с WebView в QML

Нашел в чем проблема. Пишу на случай если кому-то попадется такое же счастье с WebView как и мне. Проблема как оказалась с Debug версией, так как в Release и Profile все работает (...
Присоединяйтесь к нам в социальных сетях