Компания Qt Company опубликовала релиз фреймворка Qt 6.1, в которой продолжена работа по стабилизации и наращиванию функциональности ветки Qt 6. В Qt 6.1 обеспечена поддержка платформ Windows 10, macOS 10.14+, Linux (Ubuntu 20.04+, CentOS 8.1+, OpenSuSE 15.1+), iOS 13+ и Android (API 23+). Исходные тексты компонентов Qt поставляются под лицензиями LGPLv3 и GPLv2.
Ключевые улучшения в Qt 6.1 в основном касаются включения в состав модулей, которые были доступны в Qt 5.15, но оказались не готовы для включения в состав первого выпуска Qt 6. В частности, в состав включены модули:
- Active Qt – поддержка элементов управления COM и ActiveX на платформе Windows.
- Qt Charts – создание диаграмм.
- Qt Data Visualization – визуализация статический и динамических данных.
- Qt Device Utilities – часть пакета Qt for Device Creation.
- Qt Graphical Effect – прослойка для упрощения портирования приложений на Qt 6.
- Qt Lottie – отрисовывает графику и анимацию, экспортированную в формате JSON при помощи плагина Bodymovin к пакету Adobe After Effects. Включает в себя встроенный микродвижок для выполнения анимации, обрезки, обработки слоёв и других эффектов.
- Qt State Machine – фреймворк для создание событийно-ориентированных конструкций и реализация конечного автомата на базе SCXML.
- Qt Virtual Keyboard – реализация виртуальной клавиатуры.
Модули которые ещё не перенесены и ожидаются в LTS-ыпуске Qt 6.2, намеченном на сентябрь.
- Qt Bluetooth
- Qt Data Visualization
- Qt Lottie Animation
- Qt Multimedia
- Qt NFC
- Qt Positioning
- Qt Quick Dialogs: Folder, Message Box
- Qt Remote Objects
- Qt Sensors
- Qt SerialBus
- Qt SerialPort
- Qt WebChannel
- Qt WebEngine
- Qt WebSockets
- Qt WebView
- В Qt Core проведена работа по повышению удобства использования и упрощению API. Добавлены методы removeIf() и расширено число классов, поддерживающих метод erase_if(). Реализованы отсутствующие методы, доступные в QString, но отсутствующие в QStringView. Добавлены защищённые от переполнения функции сложения, вычитания и умножения. Улучшена поддержка 16-разрядных значений с плавающей запятой. Обновлён API для привязки свойств (property binding), появившийся в Qt 6.0. Добавлены новые классы для упрощения интеграции с Java, QJniEnvironment и QJniObject, обычно востребованные на платформе Android.
- В Qt Gui улучшена поддержка графического API Vulkan 1.1 и 1.2.
Добавлен новый класс QUrlResourceProvider, который используется в QLabel и позволяет обойтись без повторной реализации loadResource() и создания подклассов QTextDocument. Реализована возможность применения определённых пользователем функций передачи в классе QColorSpace. - В Qt Network предложен класс QNetworkInformation, позволяющий определить состояние сети в системе. В обработчике HTTP Cookie добавлена поддержка режима SameSite.
- В Qt Qml реализованы опции QJSPrimitiveValue и QJSManagedValue для более тонкого управления за выполнением JavaScript.
- В Qt Quick 3D добавлена поддержка морфинга целевой анимации и реализована экспермментальная поддержка дублирующего рендеринга (instanced rendering), позволяющего на один проход отрисовать множество копий однотипных объектов, размещённых в периферийных частях сцены. Метод существенно ускоряет рендеринг при наличии в сцене большого числа похожих объектов. На базе указанного метода реализована поддержка отрисовки трёхмерных частиц.
Release.
Ссылка here.