Qt 5.15 raamistiku väljaanne

Esitletud ristplatvormi raamistik Qt 5.15. Qt komponentide lähtekoodid on saadaval LGPLv3 ja GPLv2 litsentside alusel. Detsembris avaldatakse uus Qt 6 haru, milles oodatakse on olulised arhitektuuri muudatused. Tulevaste üleminekute sujuvamaks muutmiseks Qt 6 harule on Qt 5.15-sse lisatud esialgsed teostused mõningatest uuendustest ning lisatud hoiatused peatselt eemaldatava funktsionaalsuse kohta, millele antakse hoiatus.

Qt 5.15 kuulub pikaajalise toetuse (LTS) väljaannete hulka. Samas ajakohastatakse 5.15 haru kogukonna jaoks vaid järgmise suure väljaande loomise kuni, st umbes kuus kuud. Pikendatud LTS-tsükkel, mis eeldab uuenduste loomist kolme aasta jooksul, piiratakse kaubandusliku litsentsiga kasutajatega (tavaklientide jaoks — 5508 dollarit aastas ühe arendaja kohta, alustavatele ettevõtetele ja väikestele ettevõtetele — 499 dollarit aastas). Qt Company только до формирования очередного значительного выпуска, т.е. примерно полгода. Расширенный LTS-цикл, подразумевающий формирование обновлений в течение трёх лет, будет ограничен пользователями с коммерческой лицензией (для обычных компаний — $5508 в год на одного разработчика, а для стартапов и малых предприятий — $499 в год). Компания Qt Company также kaalus võimalus üle minna Qt levitamise mudelile, kus kõik väljaanded esimesel 12 kuul on saadaval ainult kommertsload omavatele kasutajatele. Kuid seni ei ole see idee arutamisest kaugemale jõudnud.

Peamised uued funktsioonid Qt 5.15:

  • Tööd jätkatakse abstraktse graafilise API loomisel, mis ei sõltu operatsioonisüsteemi 3D API-st. Uue Qt graafikaste peamiseks komponendiks on stseenide renderdamise mootor, mis kasutab RHI (Rendering Hardware Interface) kihti, et tagada Qt Quick rakenduste töö mitte ainult OpenGL-i, vaid ka Vulkan'i, Metal'i ja Direct 3D API-de peal. Versioonis 5.15 pakutakse uut graafikaste valikuna, millel on 'Technology Preview' staatus.
  • tagatud on mooduli täielik tugi Qt Quick 3D, millega eemaldati eksperimentaalse arenduse tähis. Qt Quick 3D pakub ühtset API-d Qt Quicki põhiste kasutajaliideste loomiseks, mis ühendavad 2D ja 3D graafika. Uus API võimaldab kasutada QML-i 3D-elementide määratlemiseks liidetes ilma UIP formaadi kaasamiseta. Qt Quick 3D-s saab kasutada ühte runtime'i (Qt Quick), ühte stseenilõimet ja üht animatsiooni raamistiku, samas kui liidese visuaalse arenduse jaoks saab rakendada Qt Design Studio. Moodul lahendab selliseid probleeme nagu suured kulud QML-i integreerimisel Qt 3D või 3D Studio sisuga ning pakub animatsiooni ja transformatsioonide sünkroonimise võimalust eraldi kaadril 2D ja 3D vahel.

    Qt Quick 3D lisatud uute funktsioonide hulgas mainitakse post-protsesseerimise efektide, C++ API-d geomeetria haldamiseks, QQuaternion klassil põhinevat pööramise API-d ja punktivalguse toestust. Erinevate Qt Quick 3D võimaluste hindamiseks valmis erakordne demonstreerimisrakendus, mis näitab, kuidas muuta valgustusallikaid ja -mudeleid, töötada tekstuuride, materjalide ja jahutamisega. Samal ajal pakutud väljaanne keskkond kasutajaliidese kujundamiseks Qt Design Studio 1.5, mis toetab täielikult Qt Quick 3D.


    Vaata videot
  • Qt QML-is on töö olnud keskendunud Qt 6-le ülemineku ettevalmistamisele. On rakendatud nõutud omaduste kasutamise võimalust komponentides, mille seadmine on kohustuslik. Tööriist qmllint on parandanud QML-koodi probleemide hoiatuste genereerimist. On lisatud tööriist qmlformat, mis lihtsustab QML-koodi vormindamist vastavalt koodimise stiilisoovitustele. Tagatud on QML-i ühilduvus Qt väljaandega mikrokontrolleritele.
  • Qt Quickis on elemendile Image lisatud toe värviruumidele. Qt Quick Shapes'is on lisatud uus element PathText.
    Kursoritöötlijale on lisatud omadus cursorShape, mille kaudu saab muuta hiirekursorit lauaarvutisüsteemidel. On lisatud element HeaderView, et lihtsustada vertikaalsete ja horisontaalsete päiste lisamist TableView-põhistes tabelites.
  • Klient-poolde akna kujundamise (CSD) tugi on oluliselt paranenud, võimaldades rakendusel määratleda oma akna kujunduselemente ja paigutada pealkirjajuhte igasugust sisu.
  • Moodul on stabiliseeritud Qt Lottie, mis pakub QML-le laiendatud API-d, võimaldades renderdada graafikat ja animatsioone, mis on eksporditud JSON-formaadis Adobe After Effectsi Bodymovin'i plugina abil. Tänu QtLottie-le saab disainer valmistada animatsiooniefekte talle sobivas rakenduses ning arendaja saab otse siduda eksporditud failid QtQuicki rakenduste kasutajaliidesega. QtLottie sisaldab sisseehitatud mikromootorit animatsioonide, lõikamise, tasandite töötlemise ja muude efektide täitmiseks. Mootorit saab kasutada QML-elemendi LottieAnimation kaudu, mida saab hallata QML-koodist nagu mis tahes muud QtQuicki elemendid.
  • Qt WebEngine'i brauserimootor on värskendatud koodibaasile Chromium 80 (haruharu 5.14 kasutas Chromium 77, hetkeversioon on Chromium 83).
  • Qt 3D moodulis on parandatud profiilimise ja silumise vahendeid.
  • Qt Multimeedia on lisatud tugi mitu pinda renderdamiseks.
  • Qt GUI-s toimingud, nagu piltide suuruse muutmine ja transformatsioon, toimuma nüüd paljudes olukordades mitme lõime režiimis.
  • Qt Network toob sisse kohandatavate ajaülevaadete ja sessioonilinkide tugi TLS 1.3-le (Session Ticket, võimaldades seanssi taastada ilma serveripoolse oleku salvestamiseta).
  • Tagatud on Qt Core'i, QRunnable'i ja QThreadPool'i tugi std::function'i jaoks. Uus meetod QFile::moveToTrash() on lisatud elementide prügikasti teisaldamiseks eri platvormide spetsiifikat arvestades.
  • Qt Androidi jaoks on lisatud toetab natiivdialooge failide avamiseks ja salvestamiseks.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster