A Qt Company közzétette a Qt 6.1 keretrendszer kiadását, amelyben továbbra is a Qt 6 ág stabilizálására és funkcionalitásának bővítésére összpontosítanak. A Qt 6.1 támogatja a Windows 10, macOS 10.14+, Linux (Ubuntu 20.04+, CentOS 8.1+, OpenSuSE 15.1+), iOS 13+ és Android (API 23+) platformokat. A Qt összetevőinek forráskódjait LGPLv3 és GPLv2 licenc alatt biztosítják.
A Qt 6.1 kulcsfontosságú fejlesztései főként azoknak a moduloknak az integrálására vonatkoznak, amelyek a Qt 5.15-ös verzióban elérhetőek voltak, de nem voltak készen az első Qt 6-os kiadás részeként való beillesztésre. Különösen a következő modulokat tartalmazza:
- Active Qt — COM és ActiveX vezérlők támogatása Windows platformon.
- Qt Charts — diagramok létrehozása.
- Qt Data Visualization — statikus és dinamikus adatok vizualizálása.
- Qt Device Utilities — a Qt for Device Creation csomag része.
- Qt Graphical Effect — réteg a Qt 6-ra való alkalmazásportálás egyszerűsítésére.
- Qt Lottie — JSON formátumban exportált grafikák és animációk renderelésére szolgál, amelyet az Adobe After Effects Bodymovin pluginja segítségével készítettek. Beépített mikromotorral rendelkezik az animációk végrehajtásához, vágáshoz, rétegek feldolgozásához és más hatásokhoz.
- Qt State Machine — eseményvezérelt struktúrák létrehozásához és SCXML alapú végállapot-automata megvalósításához tervezett keretrendszer.
- Qt Virtual Keyboard — virtuális billentyűzet megvalósítása.
Azok a modulok, amelyeket még nem portáltak át, és amelyek a Qt 6.2 LTS verziójában várhatóak, szeptemberre tervezett kiadásra.
- Qt Bluetooth
- Qt Multimedia
- Qt NFC
- Qt Positioning
- Qt Quick Dialogs: Mappa, Üzenetbox
- Qt Remote Objects
- Qt Sensors
- Qt SerialBus
- Qt SerialPort
- Qt WebChannel
- Qt WebEngine
- Qt WebSockets
- Qt WebView
A Qt 6.1-es változtatások:
- A Qt Core-ban a használhatóság növelésén és az API egyszerűsítésén dolgoztak. Új removeIf() metódusok kerültek bevezetésre, valamint bővült azon osztályok száma, amelyek támogatják az erase_if() metódust. Megvalósításra kerültek a QString-ben elérhető, de QStringView-ből hiányzó metódusok. Védett, túlcsordulás ellen biztosított összeadási, kivonási és szorzási függvények kerültek bevezetésre. Fejlesztették a 16 bites lebegőpontos számok támogatását. Frissítették a Qt 6.0-ban megjelent property binding API-t. Új osztályokat vezettek be a Java integráció egyszerűsítésére, QJniEnvironment és QJniObject, amelyek általában keresettek Android platformon.
- A Qt Gui-ban javult a Vulkan 1.1 és 1.2 grafikus API támogatás. Új QUrlResourceProvider osztály került bevezetésre, amely a QLabel-ben használható, és lehetővé teszi a loadResource() újrakezdése és a QTextDocument alosztályok létrehozásának elkerülését. Megvalósították a felhasználók által definiált színterek korrekciós funkcióinak alkalmazásának lehetőségét a QColorSpace osztályban.
- A Qt Network osztálya, a QNetworkInformation, lehetővé teszi a rendszer hálózati állapotának meghatározását. A HTTP Cookie kezelőhöz hozzáadva lett a SameSite mód támogatása.
- A Qt Qml-ben megvalósult QJSPrimitiveValue és QJSManagedValue lehetőségek a JavaScript végrehajtásának finomabb irányítására.
- A Qt Quick 3D-ban hozzáadták a célt animáló morfing támogatását, és megvalósították a példányos renderelés (instanced rendering) kísérleti támogatását, amely lehetővé teszi, hogy egy lépésben számos azonos típusú objektum másolatát rajzoljuk meg, a jelenet perifériás részein elhelyezve. Ez a módszer jelentősen felgyorsítja a renderelést, ha a jelenetben nagy számú hasonló objektum van. Az említett módszer alapján háromdimenziós részecskék renderelése is megvalósításra került.
Forrás: opennet.ru
