Společnost Qt Company zveřejnila vydání rámce Qt 6.1, ve kterém pokračují práce na stabilizaci a zvýšení funkčnosti větve Qt 6. Qt 6.1 poskytuje podporu pro platformy Windows 10, macOS 10.14+, Linux (Ubuntu 20.04+, CentOS 8.1+, OpenSuSE 15.1+), iOS 13+ a Android (API 23+). Zdrojový kód pro komponenty Qt je poskytován pod licencemi LGPLv3 a GPLv2.
Klíčová vylepšení v Qt 6.1 se týkají hlavně zahrnutí modulů, které byly k dispozici v Qt 5.15, ale nebyly připraveny na zahrnutí do prvního vydání Qt 6. Konkrétně jde o tyto moduly:
- Active Qt - podpora pro COM a ovládací prvky ActiveX na platformě Windows.
- Qt Charts - vytváření grafů.
- Qt Data Visualization - vizualizace statických a dynamických dat.
- Qt Device Utilities je součástí balíčku Qt for Device Creation.
- Qt Graphical Effect – vrstva pro zjednodušení portování aplikací na Qt 6.
- Qt Lottie – vykresluje grafiku a animace exportované ve formátu JSON pomocí pluginu Bodymovin pro Adobe After Effects. Obsahuje vestavěný mikromotor pro animaci, oříznutí, zpracování vrstev a další efekty.
- Qt State Machine je rámec pro vytváření konstrukcí řízených událostmi a implementaci konečného stroje založeného na SCXML.
- Qt Virtual Keyboard - implementace virtuální klávesnice.
Moduly, které ještě nebyly portovány a očekávají se ve verzi LTS Qt 6.2, která je plánována na září.
- qt-bluetooth
- Multimédia Qt
- NFC
- Qt polohování
- Qt Quick Dialogs: Složka, Message Box
- Vzdálené objekty Qt
- Senzory Qt
- Qt SerialBus
- Sériový port Qt
- Webový kanál Qt
- Qt WebEngine
- Webové zásuvky Qt
- Qt WebView
Změny v Qt 6.1:
- Qt Core zapracovalo na zlepšení použitelnosti a zjednodušení API. Přidány metody removeIf() a rozšířen počet tříd, které podporují metodu erase_if(). Implementované metody, které jsou dostupné v QString, ale ne v QStringView. Přidány funkce sčítání, odčítání a násobení chráněné proti přetečení. Vylepšená podpora pro 16bitové hodnoty s pohyblivou řádovou čárkou. Rozhraní API pro vazbu vlastností, představené v Qt 6.0, bylo aktualizováno. Byly přidány nové třídy pro zjednodušení integrace s Java, QJniEnvironment a QJniObject, které jsou běžně potřebné na platformě Android.
- Qt Gui má vylepšenou podporu pro grafické rozhraní API Vulkan 1.1 a 1.2. Přidána nová třída QUrlResourceProvider, která se používá v QLabel a umožňuje vám vyhnout se opětovné implementaci loadResource() a podtřídění QTextDocument. Byla implementována možnost používat uživatelsky definované korekční funkce pro komponenty barevného prostoru ve třídě QColorSpace.
- Qt Network nabízí třídu QNetworkInformation, která umožňuje určit stav sítě v systému. Přidána podpora pro režim SameSite v obslužné rutině HTTP cookie.
- Qt Qml implementuje možnosti QJSPrimitiveValue a QJSManagedValue pro jemnější kontrolu nad prováděním JavaScriptu.
- Qt Quick 3D přidal podporu pro morfování cílových animací a implementoval experimentální podporu pro instanční vykreslování, které vám umožňuje kreslit více kopií stejného typu objektů umístěných v okrajových částech scény v jednom průchodu. Metoda výrazně urychluje vykreslování, když je na scéně velké množství podobných objektů. Na základě této metody je implementována podpora vykreslování trojrozměrných částic.
Zdroj: opennet.ru