Qt Company on avaldanud Qt 6.11 raamistiku versiooni, kus jÀtkatakse töödega Qt 6 funktsionaalsuse stabiliseerimiseks ja suurendamiseks. Qt 6.11 toetab platvorme Windows 10+, macOS 13+, Linux (Ubuntu 22.04/24.04, openSUSE 15.6/16, SUSE 15 SP6, RHEL 8.10/9.6/10, Debian 11.6/12), iOS 17+, Android 9+(API 23+), webOS, WebAssembly, INTEGRITY, VxWorks, FreeRTOS ja QNX. Qt komponentide lÀhtekood tarnitakse LGPLv3 ja GPLv2 litsentside all. Qt 6.11 sai vahepealse vÀljaande staatuse, mille avalik tugi kestab 6 kuud (+ veel 6 kuud Àrikasutajatele).
Olulised muudatused Qt 6.11:
- Lisatud Qt Canvas Painter moodul, mis pakub API-d riistvaraliselt kiirendatud 2D-sisu joonistamiseks, mille loomisel on lĂ€htutud HTML Canvas 2D konteksti spetsifikatsioonist. Joonistamiseks kasutatakse RHI (Rendering Hardware Interface) mootorit, mis toetab mitmeid 3D API-sid (OpenGL, Vulkan, Metal ja Direct 3D), tĂ€nu millele on saavutatud mĂ€rkimisvÀÀrne jĂ”udluse paranemine. Tehtud testides osutus Qt Canvas Painter 2 korda kiiremaks kui QPainter OpenGL tagapinnaga tĂŒĂŒpilisel Lenovo ThinkPad P16 Gen 2 sĂŒlearvutil, 5 korda odaval Lenovo Tab M10 HD Android tahvelarvutil ja 10 korda tipptasemel Samsung Galaxy Tab S8 Android tahvelarvutil.

Lisaks kĂ”rgele jĂ”udlusele on Qt Canvas Painteris rakendatud selliseid arenenud vĂ”imalusi nagu kohandatav pehmendus (antialiasing), ÀÀrise gradientide ja varjude tugi (QCanvasBoxGradient ja QCanvasBoxShadow sarnaselt CSS omadusele box-shadow), ruudustiku mustrid (QCanvasGridPattern), kasutajate mÀÀratud varjutamise harjad ja vĂ€rviefektid, et muuta lĂ€bipaistvust, heledust, kontrasti ja kĂŒllastust.

- Qt Quick 3D mooduli funktsionaalsus on tasemel, mis sarnaneb mĂ€ngumootorite vĂ”imalustega. Lisatud on SSGI (Screen Space Global Illumination) renderdamistehnika tugi, et simuleerida valguse peegeldumist pindadelt post-protsessimise etapis (alternatiiv valgustuskaardile (lightmap)) ja SSR (Screen Space Reflections), et realistlikult joonistada peegeldusi reaalajas. Liikuvate objektide pehmendamise algoritm on paranenud, genereerides liikumissuundi igale objektile. Loodud on kohandatavad renderdamise lĂ€bivad protsessid (render-pass), mida saab otse QML-ist kasutada kihtide maskide, post-protsessimise efektide ja objektide vĂ€rvi mÀÀratlemiseks (color picking). Lisatud on uued liideseĂŒhendused kihtide ja siltide jaoks, mis vĂ”imaldavad hallata eraldi renderdamise lĂ€bivedusid, elementide sissetoomist erinevatel renderdamise konveierite etappidel (render pipeline) ja suunamist sihtimisbuferitesse.

- Qt Graphs mooduli vĂ”imeid on laiendatud. Lisatud on CustomSeries tĂŒĂŒp, mis vĂ”imaldab luua oma diagramme, kus iga andmeelementi joonistab kasutaja mÀÀratud delegaat. 3D-diagrammides on rakendatud mitmete telgede eksemplaride tugi, nĂ€iteks QBar3DSeries'is saab kasutada eraldi telgi rowAxis, valueAxis ja columnAxis jaoks ning QScatter3DSeries ja QSurface3DSeries puhul eraldi telgi axisX, axisY ja axisZ jaoks. Lisatud on uued omadused, et mÀÀrata vĂ€rve eraldi telgede jaoks, konfigureerida gradientide seadeid diagrammides, muuta joonte stiili ja paigutada mĂ€rke. Lisatud on nĂ€ide kohandatavate 2D- ja 3D-diagrammide loomiseks - Wind Turbine Dashboard.

- Lisatud on katsetatav Qt TaskTree moodul, mis pakub deklaratiivset lĂ€henemist asĂŒnkroonsete ĂŒlesannete loomisele ja tĂ€itmisele C++-s. Qt TaskTree peamised komponendid on: "retseptid" - taaskasutatavad objektid, mis kirjeldavad asĂŒnkroonset töövoogu; "grupid" - mÀÀravad poliitikad alamsĂŒĆŸeede jaoks; "hoidla" andmete jagamiseks ĂŒlesannete vahel; "iteraatorid" tsĂŒklite ja ĂŒlesannete kordamise jaoks. Qt TaskTree lahendab ka API-delt saadud ĂŒhilduvuse probleemid, unifitseerides erinevad asĂŒnkroonsed API-d sageli esineva liidese kaudu.

- Laiendatud on vĂ”imalusi töötamiseks animeeritud vektorgraafikaga, mis on loodud SVG ja Lottie formaadis piltidest. Qt Quick VectorImage moodul ja tööriist lottietoqml on stabiliseeritud. Lisatud on morfimisanimatsiooni tugi, SVG maskid, SVG sĂŒmbolid ja maskikihid (matte layer, et hallata teise kihi nĂ€htavust).
- Qt Quick Controls'sse on lisatud DoubleSpinBox komponent. DialogButtonBox'is on rakendatud vĂ”imalus hallata vaikimisi nuppude töötlemist. RectangularShadow efektis on nĂŒĂŒd sĂ”ltumatu nurgaraadiuste haldamine.
- Qt Widgets'ides on QWizardisse lisatud StretchBanner valik; QAbstractItemView's on rakendatud keyboardSearchFlags parameeter, et seadistada otsingu kÀitumist klahvivajutuste korral; QColumnView'sse on lisatud omadus, et hallata eelvaate nÀhtavust.
- Lisatud on Qt OpenAPI moodul, mis vÔimaldab genereerida HTTP-kliendi koodi, mis kasutab Qt Networks RESTful API-d, tuginedes OpenAPI spetsifikatsioonile YAML formaadis.
- Qt GRPC moodulisse on lisatud mehhanism pÀringute ja vastuste voogude ning sisu haldamiseks.
- Qt HTTP Server moodulis on laiendatud piiride haldamise vahendeid ja parendatud vastuste töötlemist töövoos. QNetworkRequestis on nĂŒĂŒd vĂ”imalik seadistada TCP Keep Alive parameetreid (vaikimisi on mitteaktiivsed ĂŒhendused automaatselt suletud kahe minuti pĂ€rast).
- QML Language Serveris, mida kasutatakse IDE-de integreerimiseks, on lisatud teavet QML tĂŒĂŒbi mÀÀratlemise kohta C++ koodis, et lihtsustada navigeerimist QML ja C++ vahel IDE-st â C++ koodiga töötamisel on vĂ”imalik QML objekte leida identifikaatorite kaudu ja hĂ”lpsasti liikuda QML kontekstide hierarhias.
- QRangeModelile on lisatud QRangeModelAdapter klass, mis pakub C++ API-d mudeli andmete muutmiseks, suheldes QAbstractItemModel protokolli kaudu, mis lihtsustab andmete edastamist taustakoodist C++-s Qt Quick vÔi Qt Widgeti.
- Toetust on lisatud Android 16 platvormile. Google Play Feature Delivery funktsionaalsus on rakendatud rakenduse jagamiseks pakettidesse (peamine pakett installitakse Google Play's kohe, lisapaketid laaditakse vajadusel). Android Automotive'i jaoks on rakendatud Qt kÀivitamine ilma Android sÔltuvusteta kiireks renderdamise alustamiseks.
Viimastest uuendustest on mĂ€rkimisvÀÀrne Qt Creator 19 integreeritud arenduskeskkonna vĂ€ljaanne, mis on mĂ”eldud platvormideĂŒleste rakenduste loomiseks Qt teegi abil. Toetatakse nii klassikaliste C++ programmide arendamist kui ka QML keele kasutamist, kus stsenaaride mÀÀratlemiseks kasutatakse JavaScripti ning kasutajaliidese elementide struktuur ja parameetrid mÀÀratakse CSS-sarnaste plokkide abil. Valmis koostised on loodud Linuxile, Windowsile ja macOS-ile.
Uutena on vĂ€lja toodud minimap reĆŸiim (Preferences > Text Editor > Display > Enable minimap), mis kuvab kerimisriba kĂ”rval miniatuurse eelvaate kogu sisust, vĂ”imaldades korraga hoomata kogu koodi. Sisaldab lihtsat MCP-serverit AI-assistentidega integreerimiseks, mis vĂ”imaldab avada faile ja projekte, alustada koostamist ning teostada silumist. VĂ€liste seadmete koostamise seadistamine on lihtsustatud â lisatud on Run Auto-Detection nupp, et automaatselt mÀÀrata Qt versioon, kompilaator, silur ja CMake pĂ€rast seadme registreerimist. Toetatakse otsest juurdepÀÀsu ĂŒhendatud seadmete, Android-seadmete ja emulaatorite failisĂŒsteemidele.

Allikas: opennet.ru





