Qt Company on vĂ€lja andnud Qt 6.11 raamistikku, kus jĂ€tkub töö Qt 6 haru stabiliseerimise ja funktsionaalsuse laiendamise nimel. 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 on saadaval LGPLv3 ja GPLv2 litsentside alusel. Qt 6.11 on saanud vaheversiooni staatuse, mille ĂŒldine toetus kestab 6 kuud (+ veel 6 kuud Ă€rikasutajatele).
Peamised muudatused Qt 6.11:
- Lisatud on Qt Canvas Painter moodul, mis pakub API-d riistvara kiirendatud 2D-sisu joonistamiseks, olles vĂ€lja töötatud HTML Canvas 2D konteksti spetsifikatsiooni pĂ”hjal. Joonistamiseks kasutatakse RHI (Rendering Hardware Interface) mootorit, mis toetab erinevaid 3D API-sid (OpenGL, Vulkan, Metal ja Direct 3D), mille tĂ”ttu on saavutatud oluline jĂ”udluse tĂ”us. Katsetes osutus Qt Canvas Painter 2 korda kiiremaks kui QPainter OpenGL tagaplaaniga tĂŒĂŒpilisel Lenovo ThinkPad P16 Gen 2 sĂŒlearvutil, 5 korda kiiremaks odaval Lenovo Tab M10 HD Android tahvelarvutil ja 10 korda kiiremaks tippklassi Samsung Galaxy Tab S8 Android tahvelarvutil.

Lisaks kĂ”rgele jĂ”udlusele on Qt Canvas Painteris rakendatud toetus sellistele tĂ€iustatud omadustele nagu kohandatav antialiaasimine, piirjoonte gradioonid ja varjud (QCanvasBoxGradient ja QCanvasBoxShadow nagu CSS omadus box-shadow), ruudustiku mustrid (QCanvasGridPattern), kohandatavad shader pintslid ja vĂ€rvi efektid, mis muudavad lĂ€bipaistvust, eredust, kontrasti ja kĂŒllastust.

- Qt Quick 3D moodulite funktsioonid on sarnased mĂ€ngumootorite vĂ”imalustele. On lisatud tugi SSGI (Screen Space Global Illumination) renderdamistehnika jaoks, et simuleerida valguse peegeldumist pindadelt post-protsessimise etapil (alternatiiv valgustuskaartide (lightmap) kĂŒpsetamisele) ja SSR (Screen Space Reflections) jaoks, et realistlikult renderdada peegeldusi reaalajas. Liikuvate objektide sujuvuse algoritmi on parendatud, genereerides igale objektile liikumisvektoreid. On teostatud kohandatavad renderdamise lĂ€bipÀÀsud (render-pass), mida saab kasutada otse QML-is kihtide maskide, post-protsessimise efektide ja objektide mÀÀratlemiseks vĂ€rvi (color picking) alusel. Uued liidendid kihtide ja siltide jaoks vĂ”imaldavad juhtida eraldi renderdamise lĂ€bipÀÀsud, elementide sisselĂŒlitamist erinevatel renderdusprotsessi etappidel ja suunata neid sihtrenderdamise puhverdusse.

- Qt Graphs mooduli vĂ”imalusi on laiendatud. On lisatud CustomSeries tĂŒĂŒp, mis vĂ”imaldab luua kohandatud graafikuid, kus iga andmeelemendi joonistamise eest vastutab kasutaja mÀÀratud delegeeritud. 3D-graafikutes on rakendatud mitme telje koopia tugi, nĂ€iteks QBar3DSeries'is vĂ”ib kasutada eraldi telgi rowAxis, valueAxis ja columnAxis jaoks, samas kui QScatter3DSeries ja QSurface3DSeries puhul - eraldi teljed axisX, axisY ja axisZ jaoks. On lisatud uusi omadusi, et ĂŒletada vĂ€rve eraldi telgede jaoks, seadistada graafikute gradiente, muuta joonte stiile ja paigutada mĂ€rke. On lisatud nĂ€ide kohandatud 2D ja 3D graafikute loomiseks - Wind Turbine Dashboard.

- On lisatud eksperimentaalne Qt TaskTree moodul, mis pakub deklaraatiivset lĂ€henemist asĂŒnkroonsete ĂŒlesannete loomiseks ja tĂ€itmiseks C++. Qt TaskTree peamised komponendid on: "retseptid" - taaskasutatavad objektid, mis kirjeldavad asĂŒnkrone tööprotsessi; "grupid" - mÀÀravad poliitikat laste ĂŒlesannete jaoks; "hoidla" andmete jagamiseks ĂŒlesannete vahel; "iteraatorid" tsĂŒklite ja ĂŒlesannete kordamiseks. Qt TaskTree lahendab ka API ĂŒhilduvuse probleemi, ĂŒhtlustades erinevad asĂŒnkroonsete API-de tĂŒĂŒpiliseks liidese formaadiks.

- Suurendatud vĂ”imalused tööks animeeritud vektorgraafikaga, mis on loodud SVG ja Lottie formaadi piltidest. Stabiliseeritud on Qt Quick VectorImage moodul ja lottietoqml tööriist. Lisatud on toetus morfing-animatsioonile, SVG-maskidele, SVG-sĂŒmbolitele ja maskikihtidele (matte layer, et juhtida teise kihi nĂ€htavust).
- Qt Quick Controls'i on lisatud komponent DoubleSpinBox. DialogButtonBox'is on realiseeritud vĂ”imalus hallata vaikimisi nuppe. Efekti RectangularShadow puhul on tekkinud sĂ”ltumatu kontroll nurkade raadiuside ĂŒle.
- Qt Widgets'is on QWizard'ile lisatud valik StretchBanner; QAbstractItemView's on realiseeritud parameeter keyboardSearchFlags otsingu kÀitumise seadistamiseks klahvide vajutamisel; QColumnView'sse on lisatud omadus eelvaate nÀhtavuse juhtimiseks.
- Lisatud on Qt OpenAPI moodul, mis vÔimaldab genereerida HTTP-klientide koodi, kasutades Qt Networks RESTful API'd, pÔhinedes OpenAPI spetsifikatsioonile YAML formaadis.
- Qt GRPC moodulisse on lisatud mehhanism pÀringute ja vastuste voogude ja sisu haldamiseks.
- Qt HTTP Server moodulis on laiendatud limiithalduse vahendeid ja parandatud vastuste töötlemist töövoos. QNetworkRequest'is on lisatud vĂ”imalus seadistada TCP Keep Alive parameetreid (vaikimisi mittetegevad ĂŒhendused lĂ”petatakse automaatselt 2 minuti pĂ€rast).
- QML Language Server'i, mida kasutatakse IDE-de integreerimiseks, on lisatud teave QML tĂŒĂŒbi mÀÀratlemise koha kohta C++ koodis, et lihtsustada navigeerimist QML'i ja C++ vahel IDE's â C++ koodi töötlemisel on vĂ”imalik leida QML objekte tuvastite jĂ€rgi ja hĂ”lpsasti liikuda QML-kontekstide hierarhias.
- QRangeModel'i tÀienduseks on realiseeritud klass QRangeModelAdapter, mis pakub C++ API-d mudeli andmete muutmiseks, suheldes lÀbi QAbstractItemModel protokolli, mis lihtsustab andmete edastamist backend-koodist C++-s Qt Quick'i vÔi Qt Widget'i.
- Lisatud on tugi Android 16 platvormile. Realiseeritud on Google Play Feature Delivery funktsionaalsus rakenduse jagamiseks paketideks (peamine pakett installitakse kohe Google Play'st, lisapaketid laaditakse vajadusel). Android Automotive jaoks on saavutatud toetus Qt kÀivitamiseks ilma Android'i sÔltuvusteta kiireks joonistamise alustamiseks.
Lisaks tasuks mainida hiljuti avaldatud integreeritud arenduskeskkonda Qt Creator 19, mis on mÔeldud platvormidevaheliste rakenduste loomiseks Qt teegi abil. Toetatakse nii klassikaliste rakenduste arendamist C++ keeles kui ka QML keele kasutamist, kus stsenaariumide mÀÀramiseks kasutatakse JavaScripti ning kasutajaliidese elemendi struktuur ja parameetrid mÀÀratakse CSS-sarnaste plokkide abil. Valmis koostised on loodud Linuxile, Windowsile ja macOS-ile.
Uutena toodi vĂ€lja minimapi reĆŸiim (Preferences > Text Editor > Display > Enable minimap), mis kuvab kerimisriba kĂ”rval miniatuurse eelvaate kogu sisust, vĂ”imaldades ĂŒhekordselt kogu koodi ĂŒle vaadata. Sisaldab ka lihtsat MCP-serverit AI-assistentidega integreerimiseks, mis vĂ”imaldab avada faile ja projekte, kĂ€ivitada kogu, mĂ”elda lĂ€bi ja siluda. Koostise seadistamine vĂ€listel seadmetel on lihtsustatud â lisatud Run Auto-Detection nupp Qt versiooni, kompilaatori, siluri ja CMake automaatseks mÀÀramiseks pĂ€rast seadme registreerimist. On rakendatud otse juurdepÀÀsu toetamine ĂŒhendatud seadmete, Android-seadmete ja emulaatorite failisĂŒsteemidele.

Allikas: opennet.ru





