Spoločnosť Qt Company vydala verziu rámca Qt 6.10, v ktorej pokračovala práca na stabilizácii a zvyšovaní funkčnosti vetvy Qt 6. Vo verzii Qt 6.10 je poskytovaná podpora pre platformy Windows 10+, macOS 13+, Linux (Ubuntu 22.04/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 a QNX. Zdrojové kódy komponentov Qt sú dodávané pod licenciami LGPLv3 a GPLv2. Qt 6.10 získal status medzivydania, ktorého verejná podpora bude poskytovaná 6 mesiacov (+ ďalších 6 mesiacov pre komerčných používateľov).
Hlavné zmeny v Qt 6.10:
- Bol pridaný QML typ FlexboxLayout pre adaptívne rozloženie prvkov rozhrania v súlade s konceptom Flexbox, používaným v CSS na zjednodušenie vertikálneho zarovnania prvkov. Implementácia podporuje koncepty, ktoré sú už používané v Qt Quick, ako je pripevnenie vlastností pre nastavenie správania jednotlivých prvkov v rozložení.
- V moduloch Qt Quick Scene Graph a Qt Quick Shapes boli implementované možnosti pre prácu s animovanou vektorovou grafikou, vytvorenou z obrázkov vo formátoch SVG a Lottie. V module Qt Lottie bola rozšírená podpora súborov vo formáte Lottie. Bola pridaná možnosť použitia formátu Lottie v type VectorImage na zobrazenie súborov Lottie s rozšírením a hardvérovým zrýchlením.
- Do súboru Qt Quick Control bol pridaný nový prvok SearchField s implementáciou špecializovaného vstupného poľa na použitie s funkciou vyhľadávania, ktorá umožňuje zobrazovať relevantné údaje v pop-up okne, filtrované na základe už zadaného textu do poľa. Prvok podporuje rôzne zabudované štýly Qt a umožňuje dosiahnuť vzhľad typický pre všetky hlavné platformy.
- Boli pridané triedy na zjednodušenie integrácie dátových modelov C++ s QML a Qt Quick:
- QRangeModel — obal nad QAbstractItemModel pre priame použitie v prvkoch rozhrania na báze QML a Qt Quick akýchkoľvek enumerovaných typov z C++, vrátane std::vector, std::tuples a std::array. std::vector values = {1, 2, 3, 4, 5}; auto model = new QRangeModel(values); QListView *listView = new QListView; listView->setModel(model);
- Do QML typu DelegateModel bola pridaná vlastnosť delegateModelAccess, ktorá môže prijať hodnotu DelegateModel.ReadWrite pre povolenie zápisu do modelu prostredníctvom vlastností kontextu, objektu modelu alebo povinných vlastností.
- Bol pridaný QML typ Synchronizer, ktorý rieši úlohu synchronizácie stavu ovládacieho prvku s hodnotou z modelu. Synchronizer zaručuje, že viacero vlastností obsahuje rovnakú hodnotu — zmena jednej zo synchronizovaných vlastností automaticky vedie k zmene všetkých ostatných.
- Bol pridaný QML typ TreeModel, ktorý umožňuje umiestniť stromové štruktúry C++ priamo do QML dokumentu, pričom sa používajú páry kľúč-hodnota a syntax slovníkov a polí pripomínajúca JSON.
- Bol pridaný QML typ SortFilterProxyModel, ktorý umožňuje triediť a filtrovať dáta priamo z QML bez použitia kódu v C++.
- V Qt Quick 3D bola rozšírená možnosť vytvárania máp osvetlenia pri renderovaní vo vysokej kvalite a bola pridaná podpora reverzného uplatnenia efektov s časticami na vytvorenie efektu zrážania dažďa alebo snehu s modelom.
- V Qt Graphs bol pridaný typ povrchu s výplňou a implementovaná možnosť transformácie rezu trojrozmerných grafov na 2D obrázok na tlač.
- V Qt Widgets bola zjednodušená implementácia používateľských delegate objektov, zlepšené riadenie operácií drag&drop a pridaná možnosť individuálneho prispôsobenia veľkosti rozložení.
- V Qt Core bola vylepšená práca s lokalizáciami, XML dokumentmi a sekvenciami asynchrónnych operácií (continuation chain).
- Boli rozšírené prostriedky pre osoby so zdravotným postihnutím. Vstavané štýly kontrastného zobrazenia informácií sú prispôsobené na využívanie systémových nastavení kontrastu, aby Qt aplikácie vizuálne zodpovedali celkovému štýlu. Ovládacie prvky a widgety Qt boli vylepšené na použitie s ekranovými čítačkami.
- Bol pridaný podpora mobilných platforiem Android 15 a 16, vrátane možnosti prevádzky na zariadeniach, ktoré používajú pamäťové stránky s veľkosťou 16 KB.
- Bol predstavený nástroj Qt Jenny 1.0, ktorý zjednodušuje integráciu Qt aplikácií s Android Java API a podporuje automatickú generáciu C++ API z anotovaných Java tried, umožňujúc priamy prístup z Qt kódu k takým Android službám, ako sú BatteryManager, PowerManager a AudioManager.
- Boli pridané možnosti pre správny výstup obrazovky na platforme Android.
- Je zabezpečená plná podpora platforiem macOS 26 a iOS 26, v ktorých je implementovaný vizuálny jazyk Liquid Glass a zmenená architektúra vykresľovania.
- Do modulu Qt WebView na platforme Windows bola pridaná možnosť vkladať do aplikácií Qt webový obsah s použitím enginu WebView2 založeného na Microsoft Edge namiesto enginu WebEngine založeného na Chromiu.
- Do modulu Qt Multimedia bol pridaný backend na využívanie multimediálneho PipeWire na platforme Linux. servera Bol aktualizovaný stack Boot2Qt, ktorý môže byť použitý na vytváranie spustiteľných mobilných systémov s prostredím založeným na Qt a QML. Systémové prostredie v Boot2Qt bolo aktualizované na platformu Yocto 5.2. Bola pridaná podpora platforiem Ezurio Nitrogen.
- Spoločnosť Qt Company vydala verziu frameworku Qt 6.10, v ktorej pokračuje práca na stabilizácii a rozširovaní funkčnosti vetvy Qt 6.
Zdroj: opennet.ru
