Qt Company har udgivet en udgivelse af Qt 6.3-rammeværket, hvor arbejdet fortsætter med at stabilisere og øge funktionaliteten af Qt 6-grenen. Qt 6.3 understøtter Windows 10, macOS 10.14+, Linux-platforme (Ubuntu 20.04, CentOS 8.2, openSUSE 15.3, SUSE 15 SP2), iOS 13+, Android 6+ (API 23+), webOS, INTEGRITY og QNX. Kildekoden til Qt-komponenterne leveres under LGPLv3- og GPLv2-licenserne.
Større ændringer i Qt 6.3:
- I Qt QML-modulet foreslås en eksperimentel implementering af qmltc-kompileren (QML type compiler), som gør det muligt at kompilere QML-objektstrukturer i klasser i C++. Til kommercielle brugere af Qt 6.3 er der udarbejdet Qt Quick Compiler-produktet, som udover ovennævnte QML Type Compiler inkluderer QML Script Compiler, som giver dig mulighed for at kompilere QML funktioner og udtryk til C++ kode. Det bemærkes, at brugen af Qt Quick Compiler gør det muligt at bringe ydeevnen af QML-baserede programmer tættere på native programmer, især ved kompilering af udvidelser er der en reduktion i opstarts- og eksekveringstiden med ca. 20-35 % sammenlignet med at bruge den fortolkede version.
- "Qt Language Server"-modulet er blevet implementeret med understøttelse af sprogserveren og JsonRpc 2.0-protokollerne.
- Qt Wayland Compositor-modulet har tilføjet en Qt Shell-sammensat server og en API til at oprette dine egne brugerdefinerede shell-udvidelser.
- Qt Quick Controls integrerer CalendarModel og TreeView QML-typerne med implementering af grænseflader til visning af kalender og data i en trævisning.
- Føjede MessageDialog og FolderDialog QML-typerne til Qt Quick Dialogs-modulet for at bruge platform-leverede systemdialoger til at vise en besked og navigere gennem filer.
- Qt Quick har forbedret ydeevne og effektivitet i arbejdet med tekst. For eksempel er problemer med langsom gengivelse og hukommelsesforbrug ved overførsel af meget store dokumenter til tekst-, TextEdit-, TextArea- og TextInput-komponenterne blevet løst.
- Et QML ReflectionProbe-element er blevet tilføjet til Qt Quick 3D-modulet for at gengive objektrefleksioner. 3D Particles API er blevet udvidet til at tilføje effekter til 3D-scener dannet af en stor ophobning af partikler (røg, tåge osv.). Et nyt ResourceLoader-element er blevet implementeret, der giver værktøjer til styring af ressourcer i Qt Quick 3D og giver dig mulighed for at forudindlæse store ressourcer såsom masker eller teksturer, samt kontrollere, om det er tilladt at aflæse ressourcer, der ikke falder ind i det synlige område af scenen.
- Tilføjet en foreløbig implementering af Qt PDF-modulet, som var til stede i Qt 5.15, men ikke inkluderet i Qt 6.
- En stor del af nye funktioner er blevet tilføjet til Qt Core-modulet, primært relateret til udvidelse af mulighederne for behandling af strengdata. Understøttelse af ISO639-2 sprogkoder er blevet tilføjet til QLocale. Understøttelse af AM/PM-tidsangivelser er blevet tilføjet til QDate, QTime og QLocale. Forenklet konvertering mellem JSON- og CBOR-formater. Tilføjet QtFuture::whenAll() og whenAny() metoder.
- Qt Positioning giver mulighed for at bestemme nøjagtigheden af de placeringsdata, der leveres af Android- og iOS-platformene.
- Qt Bluetooth giver information om Bluetooth LE-understøttelse og information om status for Bluetooth-adapteren i Windows.
- Qt Widgets har forbedret understøttelse af højopløsningsskærme, styling og stylingændringer ved hjælp af style sheets.
- Forbedret byggesystem baseret på CMake. Funktionen qt-generate-deploy-app-script() er blevet tilføjet for at forenkle genereringen af scripts til implementering af applikationer på forskellige platforme.
- Der er gjort meget arbejde for at forbedre stabiliteten og kvaliteten af kodebasen. Siden udgivelsen af Qt 6.2 er 1750 fejlrapporter blevet lukket.
- I de næste store udgivelser af Qt 6.x planlægger de at implementere fuld understøttelse af WebAssembly, QHttpServer, gRPC, en backend til Qt Multimedia baseret på FFmpeg, Qt Speech og Qt Location.
Kilde: opennet.ru