The Qt Company has released the Qt 6.10 framework, which continues work on stabilizing and expanding the functionality of the Qt 6 branch. Qt 6.10 provides support for platforms Windows 10+, macOS 13 + Linux (Ubuntu 04/22/24/04, openSUSE 15.6, SUSE 15 SP6, RHEL 8.10/9.4, Debian 11.6), iOS 16+, Android 9+ (API 23+), webOS, WebAssembly, INTEGRITY, VxWorks, FreeRTOS, and QNX. The source code for Qt components is licensed under the LGPLv3 and GPLv2. Qt 6.10 has been designated a minor release, with general support for six months (plus an additional six months for commercial users).
Major changes in Qt 6.10:
- The FlexboxLayout QML type has been added for responsive layout of interface elements based on the Flexbox concept, which is used in CSS to simplify vertical alignment of elements. The implementation supports concepts already used in Qt Quick, such as property attachments for customizing the behavior of individual elements in the layout.
- The Qt Quick Scene Graph and Qt Quick Shapes modules implement capabilities for working with animated vector graphics generated from SVG and Lottie images. The Qt Lottie module has expanded its support for Lottie files. The VectorImage type now supports Lottie files with scaling and hardware acceleration.
- The Qt Quick Control suite includes a new SearchField element, implementing a specialized input field for use with search functionality. This element displays relevant data in a pop-up window, filtered based on the text already entered in the field. The element supports various built-in Qt styles and allows for a native look and feel across all major platforms.
- Added classes to simplify the integration of C++ data models with QML and Qt Quick:
- QRangeModel is a wrapper around QAbstractItemModel for direct use in QML and Qt Quick-based interface elements of any enumerated types from C++, including std::vector, std::tuples, and std::array. std::vector values ββ= {1, 2, 3, 4, 5}; auto model = new QRangeModel(values); QListView *listView = new QListView; listView->setModel(model);
- The DelegateModel QML type has a delegateModelAccess property that can take the value DelegateModel.ReadWrite to allow writing to the model via context properties, the model object, or required properties.
- The Synchronizer QML type has been added, which solves the problem of synchronizing the state of a control with a value from the model. Synchronizer ensures that multiple properties contain the same valueβchanging one synchronized property automatically changes all the others.
- The TreeModel QML type has been added, allowing C++ tree structures to be embedded directly into a QML document using key-value pairs and a JSON-like dictionary and array syntax.
- Added QML type SortFilterProxyModel, allows sorting and filtering data directly from QML, without using C++ code.
- Qt Quick 3D has expanded the ability to create lightmaps when rendering at high quality, and added support for reversible particle effects to create the effect of rain or snow colliding with a model.
- Qt Graphs now includes a filled surface type and the ability to convert a slice of a 3D graph into a 2D image for printing.
- Qt Widgets has simplified the implementation of custom delegate objects, improved drag&drop control, and added the ability to customize the size of layouts.
- Qt Core has improved handling of locales, XML documents, and continuation chains.
- Accessibility features have been expanded. Built-in contrast presentation styles have been adapted to use system contrast settings, ensuring that Qt applications are visually consistent with the overall style. Qt controls and widgets have been enhanced for use with screen readers.
- Added support for mobile platforms Android 15 and 16, including the ability to run on devices that use 16 KB memory pages.
- The Qt Jenny 1.0 toolkit is introduced, simplifying the integration of Qt applications with Android Java API and support for automatic generation of C++ API from annotated Java classes, allowing direct access from Qt code to such Android-services such as BatteryManager, PowerManager and AudioManager.
- Added features for correct display of the splash screen on the platform Android.
- Full platform support is provided macOS 26 and iOS 26, which use the Liquid Glass visual language and change the rendering architecture.
- In the Qt WebView module on the platform Windows Added the ability to embed web content into Qt applications using the Microsoft Edge-based WebView2 engine instead of the Chromium-based WebEngine engine.
- A backend for using multimedia has been added to the Qt Multimedia module. Server PipeWire on the platform Linux.
- The Boot2Qt stack has been updated, allowing for the creation of bootable mobile systems with a Qt- and QML-based environment. The system environment in Boot2Qt has been updated to the Yocto 5.2 platform. Support for Ezurio Nitrogen boards has been added.
Source: opennet.ru
