Qt 5.15 -kehysjulkaisu

Lähettäjä alustojen välisen kehyksen julkaisu Qt 5.15. Qt-komponenttien lähdekoodi toimitetaan LGPLv3- ja GPLv2-lisenssien alla. Joulukuussa julkaistaan ​​Qt 6:n uusi haara, jossa odotettavissa merkittäviä arkkitehtonisia muutoksia. Sujuuttaakseen tulevaa siirtymistä Qt 6 -haaraan, Qt 5.15 sisältää joidenkin uusien ominaisuuksien esikatselutoteutuksia ja lisättyjä varoituksia Qt 6:ssa poistettavan toimintojen välittömästä vanhenemisesta.

Qt 5.15 on luokiteltu LTS (Long Term Support) -julkaisuksi. Samaan aikaan yhteisön päivitykset haaraan 5.15 julkaistaan vain siihen asti kunnes seuraava merkittävä kysymys muodostuu, ts. noin kuusi kuukautta. Pidennetty LTS-sykli, joka sisältää päivitysten luomisen kolmen vuoden aikana, rajoittuu käyttäjiin, joilla on kaupallinen lisenssi (5508 499 dollaria vuodessa kehittäjää kohden tavallisille yrityksille ja XNUMX dollaria vuodessa startupeille ja pienyrityksille). Myös Qt-yhtiö harkittu mahdollisuus siirtyä Qt-jakelumalliin, jossa kaikki ensimmäisen 12 kuukauden julkaisut jaetaan vain kaupallisten lisenssien käyttäjille. Mutta toistaiseksi tämä ajatus ei ole mennyt keskustelua pidemmälle.

Pääasiallinen innovaatiot Qt:ssä 5.15:

  • Työ jatkui sellaisen abstraktin grafiikan API:n luomiseksi, joka ei riipu käyttöjärjestelmän 3D API:sta. Uuden Qt-grafiikkapinon avainkomponentti on näkymän renderöintimoottori, joka käyttää RHI (Rendering Hardware Interface) -kerrosta Qt Quick -sovellusten tehostamiseen paitsi OpenGL:n kanssa, myös Vulkan-, Metal- ja Direct 3D -sovellusliittymien päällä. 5.15:ssä uusi grafiikkapino tarjotaan vaihtoehdon muodossa, jonka tila on "Technology Preview".
  • Täysi moduulituki tarjotaan Qt Quick 3D, josta kokeellisen kehityksen merkki on poistettu. Qt Quick 3D tarjoaa yhtenäisen API:n Qt Quickiin perustuvien käyttöliittymien luomiseen, jotka yhdistävät 2D- ja 3D-grafiikkaelementtejä. Uuden API:n avulla voit määrittää 3D-rajapinnan elementtejä QML:n avulla ilman UIP-muotoa. Qt Quick 3D:ssä voit käyttää yhtä ajonaikaa (Qt Quick), yhtä kohtausasettelua ja yhtä animaatiokehystä 2D:lle ja 3D:lle ja käyttää Qt Design Studiota visuaalisen käyttöliittymän kehittämiseen. Moduuli ratkaisee ongelmat, kuten suuret yleiskustannukset integroitaessa QML:ää Qt 3D:n tai 3D Studion sisältöön, ja tarjoaa mahdollisuuden synkronoida animaatioita ja muunnoksia kehystasolla 2D:n ja 3D:n välillä.

    Qt Quick 3D:n uusia ominaisuuksia ovat tuki jälkikäsittelytehosteille, C++ API geometrian käsittelyyn, QQuaternion-luokkaan perustuva rotaatio API ja tuki pistevaloille. Arvioi Qt Quick 3D:n eri ominaisuuksia valmis erityinen esittelysovellus, joka näyttää kuinka voit vaihtaa valaistustyyppejä ja -lähteitä, käyttää monimutkaisia ​​malleja, manipuloida tekstuureja, materiaaleja ja anti-aliasointia. Samanaikaisesti ehdotettu kysymys ympäristöön suunnitella Qt Design Studio 1.5:n käyttöliittymä, joka tarjoaa täyden tuen Qt Quick 3D:lle.


  • Qt QML:ssä työ oli keskitetty valmisteltaessa Qt 6:ta. Mahdollisuus käyttää ominaisuuksia 'required'-attribuutilla komponenteissa, joiden asennus on pakollista, on otettu käyttöön. Qmllint-apuohjelma on parantanut varoitusten luomista mahdollisista QML-koodin ongelmista. Lisätty qmlformat-apuohjelma, joka helpottaa QML-koodin muotoilua koodaustyyliohjeiden mukaisesti. Varmistettu QML:n yhteensopivuus Qt-version kanssa mikro-ohjaimet.
  • Qt Quickissa väriavaruuksien tuki on lisätty Image-elementtiin. Qt Quick Shapesiin on lisätty uusi PathText-elementti.
    Osoittimenkäsittelijään on lisätty cursorShape-ominaisuus, jonka avulla voit muuttaa hiiren kursorin muotoa työpöytäjärjestelmissä. Lisätty HeaderView-elementti, joka helpottaa pysty- ja vaakasuuntaisten otsikoiden lisäämistä TableView-pohjaisiin taulukoihin.

  • Asiakaspuolen ikkunoiden koristelu (CSD) -tukea on parannettu merkittävästi, jolloin sovellus voi määrittää omia ikkunakoristeitaan ja sijoittaa mukautettua sisältöä ikkunan otsikkoriville.
  • Moduuli stabiloitu Qt Lottie, joka tarjoaa edistyneen QML-sovellusliittymän, jonka avulla voit hahmontaa JSON-muodossa vietyjä grafiikoita ja animaatioita käyttämällä Bodymovin-laajennusta Adobe After Effectsille. QtLottien ansiosta suunnittelija voi valmistella animaatiotehosteita kätevässä sovelluksessa, ja kehittäjä voi liittää vietyjä tiedostoja suoraan QtQuick-sovellusliittymään. QtLottie sisältää sisäänrakennetun mikromoottorin animaation, rajauksen, kerrosten ja muiden tehosteiden suorittamiseen. Moottoriin pääsee käsiksi LottieAnimation QML-elementin kautta, jota voidaan ohjata QML-koodista samalla tavalla kuin mitä tahansa muuta QtQuick-elementtiä.
  • Qt WebEngine -selainmoottori on päivitetty koodipohjaan Kromi 80 (haarassa 5.14 käytettiin Chromium 77:ää, nykyinen versio on Kromi 83).
  • Qt 3D -moduulissa on parannetut profilointi- ja virheenkorjaustyökalut.
  • Qt Multimedia on lisännyt tuen usean pinnan renderöintiin.
  • Qt GUI:ssa kuvan skaalaus- ja muunnostoiminnot ovat nyt monisäikeisiä.
  • Qt Network on lisännyt tuen mukautetuille aikakatkaisuille ja istunnon pikakuvakkeet TLS 1.3:ssa (Session Ticket, voit jatkaa istuntoa tallentamatta tilaa palvelinpuolella).
  • Otettu käyttöön Qt Core, QRunnable ja QThreadPool toimimaan std::funktion kanssa. Lisätty uusi menetelmä QFile::moveToTrash() kohteiden siirtämiseksi roskakoriin ottaen huomioon eri alustojen erityispiirteet.
  • Qt Androidille lisätty Tuki alkuperäisille valintaikkunoille tiedostojen avaamista ja tallentamista varten.

Lähde: opennet.ru

Lisää kommentti