Qt 5.15

26 мая вышла новая версия C++ фреймворка Qt 5.15 LTS.

Эта версия — последняя среди версий Qt 5 перед выпуском Qt 6. Функции, намеченные к удалению в Qt 6 обозначены в текущем выпуске как устаревшие. Некоммерческая поддержка будет осуществляться до выхода Qt 6, коммерческая поддержка будет осуществляться в течение трёх лет.

Новинки выпуска:

  • Начат перенос графического стека Qt на Qt Rendering Hardware Interface (RHI), который обеспечивает запуск приложений Qt Quick поверх Direct 3D, Metal (графический API систем Apple), Vulkan и OpenGL. Планируется, что Qt RHI станет центральной частью Qt 6.

  • Добавлена полная поддержка Qt Quick 3D — API для внедрения 3D-содержимого в приложения на основе Qt Quick с возможностью определения 3D-сцен на языке QML. Представленный впервые в Qt 5.14, в текущем выпуске у данного API появилась поддержка эффектов постпроцессинга, новый API для пользовательской геометрии, API поворота фигур на основе кватернионов и поддержка расходящихся лучей.

  • Qt Design Studio 1.5 с поддержкой Qt Quick 3D, переработанным интерфейсом на основе прикрепляющихся виджетов, улучшенным 3D-просмотром, возможностью добавления аннотаций к элементам и новым редактором диаграмм.

  • В Qt QML добавлены «обязательные» (required) свойства для компонентов, чьи значения обязательны к заданию пользователям компонента, встроенное (inline) задание компонентов, декларативный способ задания типов, оператор слияния ?? для задания значения в случае равенства NULL значения слева. Также улучшены предупреждения утилиты qmllint, добавлена утилита qmlformat для проверки соотвествия указаниям к стилю кода QML, QML в составе пакета Qt для микроконтроллеров стал совместим с QML для Qt 5.15.

  • В Qt Quick добавлена поддержка цветовых пространств для элементов Image, добавлен элемент PathText в состав Qt Quick Shapes. У хендлера указателя появилось свойство cursorShape для задания формы курсора мыши, для TableView добавлен объект HeaderView для добавления вертикальных и горизонтальных заголовков таблиц.

  • Улучшена поддержка оформления на стороне клиента (CSD).

  • Qt Lottie, модуль интеграции анимаций Adobe Effects, теперь поддерживается полностью.

  • Qt WebEngine обновлён до Chromium 80.

  • У Qt 3D улучшена поддержка профайлинга и отладки.

  • Qt Multimedia поддерживает рендер на нескольких поверхностях. Процедуры масштабирования и конвертации картинок в Qt GUI теперь во многих случаях многопоточная.

  • Qt Network поддерживает настраиваемые таймауты и тикеты сессий TLS 1.3.

  • QRunnable и QThreadPool могут работать вместе с std::function, добавлен кроссплатформенный метод удаления в корзину QFile::moveToTrash().

  • Добавлена поддержка родного диалога выбора файла в Android.

Источник: linux.org.ru