Недавно в блоге было объявлено о выходе новой версии Qt 6.10 , которая продолжает процесс развития и расширения ветки Qt 6, уделяя особое внимание стабильности, производительности и модернизации инструментов для кроссплатформенной разработки приложений.
Среди наиболее заметных нововведений в Qt 6.10 — введение типа QML FlexboxLayout , инструмента, вдохновленного известной моделью CSS Flexbox, который упрощает выравнивание и динамическую адаптацию элементов интерфейса . Эта интеграция обеспечивает гибкий и современный дизайн, сочетая визуальную гибкость с традиционными возможностями Qt Quick.
Модули Qt Quick Scene Graph и Qt Quick Shapes также получили значительные улучшения , включая поддержку анимированной векторной графики , созданной из изображений SVG и файлов Lottie. Тип VectorImage теперь предлагает аппаратное масштабирование и ускорение, что укрепляет позиции Qt как одного из самых мощных фреймворков для разработки плавных и высококачественных визуальных интерфейсов.
Новые элементы управления, модели и возможности для разработчиков QML
В набор элементов управления Qt Quick Controls добавлен новый элемент SearchField — специализированное поле поиска, отображающее отфильтрованные результаты в режиме реального времени во всплывающих окнах. Этот элемент управления обеспечивает согласованность со стандартными стилями каждой операционной системы, гарантируя единообразие на всех платформах.
В Qt 6.10 также представлены новые классы , упрощающие интеграцию моделей данных C++ с QML и Qt Quick. Среди них выделяется QRangeModel, выступающий в качестве контейнера для моделей, основанных на стандартных структурах, таких как std::vector, std::tuple или std::array, что позволяет напрямую создавать интерактивные представления. Также включен тип TreeModel , позволяющий осуществлять нативное манипулирование иерархическими структурами C++ в документах QML с синтаксисом, аналогичным JSON.
Для улучшения управления данными Qt представляет тип SortFilterProxyModel, который позволяет сортировать и фильтровать информацию непосредственно из QML без использования кода C++. Кроме того, новый тип Synchronizer обеспечивает согласованность между несколькими свойствами, гарантируя их синхронизацию при изменении любого значения.
Улучшения в 3D, доступности и мобильном опыте
Что касается графики, Qt Quick 3D включает в себя высококачественные карты освещения и обратимые эффекты частиц, полезные для отображения природных явлений, таких как дождь или снег. В свою очередь, Qt Graphs предлагает залитые поверхности и возможность преобразования участков 3D-графики в 2D-изображения для печати или экспорта.
Qt 6.10 также подтверждает свою приверженность принципам доступности , адаптируя высококонтрастные стили к операционной системе и улучшая совместимость с программами чтения с экрана. Виджеты и элементы управления были оптимизированы для обеспечения единообразного и доступного пользовательского опыта.
Что касается поддержки мобильных устройств, Qt 6.10 включает совместимость с Android 15 и 16, оптимизируя производительность на устройствах с 16 КБ памяти. Кроме того, дебютирует Qt Jenny 1.0 — инструмент, упрощающий интеграцию приложений Qt с Android Java API , автоматически генерирующий API на C++ из аннотированных классов Java и обеспечивающий доступ к нативным сервисам, таким как BatteryManager и AudioManager.
Qt 6.10 также расширяет поддержку macOS 26 и iOS 26 , интегрируя визуальный язык Liquid Glass и обновленную архитектуру рендеринга. В Windows модуль Qt WebView использует движок WebView2 на базе Microsoft Edge, заменяя зависимость от Chromium, что обеспечивает большую совместимость и производительность.
Наконец, стек Boot2Qt был обновлен до платформы Yocto 5.2 , предлагая модернизированную среду для разработки встроенных и мобильных систем на основе Qt и QML, с поддержкой новых плат, таких как Ezurio Nitrogen.
Среди других заметных изменений можно отметить следующие:
- Добавлены правила настройки точки с запятой в qmlformat. Теперь вы можете управлять добавлением точки с запятой в конец операторов JS.
- Добавлены новые предупреждения qmllint, направленные на улучшение совместимости с Qt Creator, включая проверки ограничений, специфичные для Qt Design Studio, дополнительные предупреждения, связанные с JavaScript, и несколько новых предупреждений, связанных с перечислениями и импортами QML.
- Окно запекания световой карты было улучшено и теперь отображает полосу прогресса и оценку оставшегося времени.
- В некоторых сценах уменьшено использование оперативной и видеопамяти.
Наконец, если вас интересует более подробная информация, вы можете найти ее по следующей ссылке.