Evgenii Legotckoi
Evgenii Legotckoi27 травня 2018 р. 05:46

Випуск Qt 5.11

Трохи випереджаючи раніше запланований графік, сьогодні (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 і віджети

Велику увагу 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 і Qt Quick Controls

У Qt Quick була розширена підтримка завантаження стислих текстур в елементи зображення та розширена підтримка форматів .ktx and .pkm. Ця функція допомагає скоротити час завантаження та споживання пам'яті, зберігаючи знімки у форматі, який безпосередньо надсилається до GPU.

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

Розташування Qt

У 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. Перший випуск заплановано на червень.

Рекомендуємо хостинг TIMEWEB
Рекомендуємо хостинг TIMEWEB
Стабільний хостинг, на якому розміщується соціальна мережа EVILEG. Для проектів на Django радимо VDS хостинг.

Вам це подобається? Поділіться в соціальних мережах!

Ruslan Polupan
  • 29 травня 2018 р. 06:04

Здорово.

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

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

А как иначе собственно? ))
Ruslan Polupan
  • 29 травня 2018 р. 06:25

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

Evgenii Legotckoi
  • 29 травня 2018 р. 07:15

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

Ruslan Polupan
  • 29 травня 2018 р. 07: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

Ruslan Polupan
  • 29 травня 2018 р. 07:45

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

Evgenii Legotckoi
  • 29 травня 2018 р. 07:50

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

Ruslan Polupan
  • 29 травня 2018 р. 07:53

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

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

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

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

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

Evgenii Legotckoi
  • 29 травня 2018 р. 08:11

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

Ruslan Polupan
  • 29 травня 2018 р. 08:26

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

Коментарі

Only authorized users can post comments.
Please, Log in or Sign up
m
  • molni99
  • 26 жовтня 2024 р. 08:37

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:80бали,
  • Рейтинг балів4
m
  • molni99
  • 26 жовтня 2024 р. 08:29

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:20бали,
  • Рейтинг балів-10

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

  • Результат:42бали,
  • Рейтинг балів-8
Останні коментарі
A
ALO1ZE19 жовтня 2024 р. 15:19
Читалка файлів fb3 на Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Игорь Максимов05 жовтня 2024 р. 14:51
Django - Урок 064. Як написати розширення для Python Markdown Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
d
dblas505 липня 2024 р. 18:02
QML - Урок 016. База даних SQLite та робота з нею в QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
k
kmssr09 лютого 2024 р. 02:43
Qt Linux - Урок 001. Автозапуск програми Qt під Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Анатолий Кононенко05 лютого 2024 р. 09:50
Qt WinAPI - Урок 007. Робота з ICMP Ping в Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Тепер обговоріть на форумі
jd
jasmine disouza28 жовтня 2024 р. 11:58
GeForce Now India: Unlocking the Future of Cloud Gaming GeForce Now India has a major impact on the gaming scene by introducing NVIDIA's cloud gaming service to Indian gamers. GeForce Now India lets you stream top-notch PC games on any device, from b…
9
9Anonim25 жовтня 2024 р. 16:10
Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…
J
JacobFib17 жовтня 2024 р. 10:27
добавить qlineseries в функции Пользователь может получить любые разъяснения по интересующим вопросам, касающимся обработки его персональных данных, обратившись к Оператору с помощью электронной почты https://topdecorpro.ru…
ИМ
Игорь Максимов03 жовтня 2024 р. 11:05
Реализация навигации по разделам Спасибо Евгений!
JW
Jhon Wick01 жовтня 2024 р. 22:52
Indian Food Restaurant In Columbus OH| Layla’s Kitchen Indian Restaurant If you're looking for a truly authentic https://www.laylaskitchenrestaurantohio.com/ , Layla’s Kitchen Indian Restaurant is your go-to destination. Located at 6152 Cleveland Ave, Colu…

Слідкуйте за нами в соціальних мережах