Tvrtka Qt Company objavila je izdanje frameworka Qt 6.1, u kojem je nastavljeno rad na stabilizaciji i poboljšanju funkcionalnosti grane Qt 6. U Qt 6.1 osigurana je podrška za platforme Windows 10, macOS 10.14+, Linux (Ubuntu 20.04+, CentOS 8.1+, OpenSuSE 15.1+), iOS 13+ i Android (API 23+). Izvorni kodovi komponenti Qt dobavljaju se pod licencama LGPLv3 i GPLv2.
Ključna poboljšanja u Qt 6.1 uglavnom se odnose na uključivanje modula koji su bili dostupni u Qt 5.15, ali nisu bili spremni za uključivanje u prvo izdanje Qt 6. Konkretno, uključeni su sljedeći moduli:
- Active Qt — podrška za COM kontrole i ActiveX na platformi Windows.
- Qt Charts — kreiranje dijagrama.
- Qt Data Visualization — vizualizacija statičkih i dinamičkih podataka.
- Qt Device Utilities — dio paketa Qt for Device Creation.
- Qt Graphical Effect — sloj za pojednostavljenje portiranja aplikacija na Qt 6.
- Qt Lottie — prikazuje grafiku i animaciju izvođenu u JSON formatu pomoću Bodymovin dodatka paketu Adobe After Effects. Uključuje ugrađeni mikromotor za izvođenje animacija, izrezivanje, obradu slojeva i drugih efekata.
- Qt State Machine — framework za kreiranje događajima orijentiranih konstrukcija i implementaciju konačnog automata na temelju SCXML.
- Qt Virtual Keyboard — implementacija virtualne tipkovnice.
Moduli koji još nisu prebačeni i očekuju se u LTS izdanju Qt 6.2, planiranom za rujan.
- Qt Bluetooth
- Qt Multimedia
- Qt NFC
- Qt Positioning
- Qt Quick Dialogs: Folder, Message Box
- Qt Remote Objects
- Qt Sensors
- Qt SerialBus
- Qt SerialPort
- Qt WebChannel
- Qt WebEngine
- Qt WebSockets
- Qt WebView
Promjene u Qt 6.1:
- U Qt Core je napravljeno poboljšanje korisničkog iskustva i pojednostavljen API. Dodane su metode removeIf() i proširen broj klasa koje podržavaju metodu erase_if(). Implementirane su metode dostupne u QString, ali nedostaju u QStringView. Dodane su funkcije za zbrajanje, oduzimanje i množenje koje su zaštićene od prelivanja. Poboljšana je podrška za 16-bitne vrijednosti s pomičnom zarezom. API za vezivanje svojstava (property binding) kojeg smo vidjeli u Qt 6.0 je ažuriran. Dodane su nove klase za pojednostavljenje integracije s Java, QJniEnvironment i QJniObject, koje su uobičajeno tražene na platformi Android.
- U Qt Gui poboljšana je podrška za grafički API Vulkan 1.1 i 1.2. Dodana je nova klasa QUrlResourceProvider koja se koristi u QLabel i omogućava izbjegavanje ponovne implementacije loadResource() i stvaranja podklasa QTextDocument. Implementirana je mogućnost primjene korisnički definiranih funkcija korekcije komponenti color space u klasi QColorSpace.
- U Qt Network predstavljen je razred QNetworkInformation koji omogućuje određivanje stanja mreže u sustavu. U HTTP Cookie handleru dodana je podrška za način SameSite.
- U Qt Qml implementirane su opcije QJSPrimitiveValue i QJSManagedValue za finije upravljanje izvršenjem JavaScripta.
- U Qt Quick 3D dodana je podrška za morfing ciljne animacije i implementirana je eksperimentalna podrška za instancirano renderiranje, što omogućuje izradu više kopija objekata istog tipa smještenih u periferijskim dijelovima scene u jednom prolazu. Ova metoda značajno ubrzava renderiranje kada je u sceni prisutno mnogo sličnih objekata. Na temelju navedene metode implementirana je podrška za renderiranje trodimenzionalnih čestica.
Izvor: opennet.ru
