Qt 5.14 -kehyksen ja Qt Creator 4.11.0 -kehitysympäristön julkaisu

Kuuden kuukauden kehitystyön jälkeen valmis alustojen välisen kehyksen julkaisu Qt 5.14. Qt-komponenttien lähdekoodi on lisensoitu LGPLv3- ja GPLv2-lisenssillä, Qt-kehittäjätyökalut, kuten Qt Creator ja qmake, ja jotkut moduulit on lisensoitu GPLv3:lla. Qt 5.14:n julkaisu merkitsi alkua Qt 6 -haaran valmistelulle, jossa odotettavissa merkittäviä arkkitehtonisia muutoksia. Qt 6 on suunniteltu ensi vuoden lopulle, ja uuteen haaraan siirtymisen helpottamiseksi joidenkin innovaatioiden alustavat toteutukset on päätetty sisällyttää Qt 5.14- ja Qt 5.15 LTS -julkaisuihin.

Pääasiallinen innovaatioita:

  • Qt Quick on alkanut tarjota grafiikkasovellusliittymää, joka on riippumaton käyttöjärjestelmän 3D API:sta. Vuonna Qt 5.14 ehdotettu uuden näkymän renderöintimoottorin alustava käyttöönotto käyttämällä uutta RHI (Rendering Hardware Interface) -kerrosta, jotta Qt Quick -sovellukset voivat toimia paitsi OpenGL:n päällä, kuten tähän asti, myös käyttämällä Vulkania, Metallia ja Direct 3D 11:tä. Uutta moottoria ehdotetaan tällä hetkellä vaihtoehtona valmistelemaan sovelluksia siirtymistä varten Qt 6:een, jossa RHI:tä käytetään oletusarvoisesti grafiikkatulostukseen.
  • Qt Quick Timeline -moduuli on otettu käyttöön, mikä helpottaa ominaisuuksien animointia aikajanan ja avainkehysten avulla. Moduuli on johdettu Qt Design Studio -kehitysympäristöstä, joka tarjoaa aikajanapohjaisen editorin animaatioiden luomiseen ilman koodin kirjoittamista.
  • Lisätty kokeellinen moduuli Qt Quick 3D, joka 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. 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: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.
  • Lisätty WheelHandler, hiiren pyörän tapahtumien käsittelijä sekä tapahtumia kosketuslevyllä emuloidulle pyörälle.
  • Työ jatkuu suorituskyvyn parantamiseksi näytöissä, joissa on korkea pikselitiheys. Mukaan lukien kyky määrittää murto-osia skaalaustekijät.
  • Lisätty mahdollisuus lisätä kuviin väriavaruutta, mikä mahdollistaa oikean värintoiston, kun kuvia näytetään kalibroiduilla näytöillä.
  • Lisätty QColorConstants-nimiavaruus, jonka avulla voit käännöshetkellä luoda QColor-luokan esiintymiä ennalta määritetyllä paletilla.
  • Markdownin lukemisen ja kirjoittamisen tuki on lisätty Qt Widgets- ja Qt Quick -komponentteihin tekstieditorien luomista varten.
  • QCalendar API toteuttaa mahdollisuuden työskennellä muiden kuin gregoriaanisten kalentereiden kanssa.
  • Androidille on lisätty tuki useille ABI:ille kattaville kokoonpanoille, minkä ansiosta voit kääntää sovelluksen eri arkkitehtuureille kerralla. Myös AAB-pakettimuodon tuki on lisätty, mikä mahdollistaa sovellusten toimittamisen kaikille tuetuille arkkitehtuureille yhdessä arkistossa.
  • Suoritettu Qt 3D -moduulin suorituskyvyn optimointi, mukaan lukien modernisoitu työ säikeiden, kehyspuskuriobjektien ja ilmoitusjärjestelmän kanssa. Tuloksena oli mahdollista vähentää suorittimen kuormitusta kehystä piirrettäessä ja lisätä juoksevien säikeiden välisen synkronoinnin tehokkuutta.
  • Qt Network -moduuliin on lisätty API:t HTTP/2-parametrien konfigurointia ja verkkoyhteyden valvontaa varten.
  • Qt WebEngine -verkkomoottori on päivitetty Chromium 77:ään ja laajennettu uudella API:lla QWebEnginePage-objektin elinkaaren hallintaan.
  • Lisenssi Qt Wayland Compositorille, Qt Application Managerille ja Qt PDF -komponenteille muuttunut LGPLv3:sta GPLv3:een, ts. Linkittäminen näiden komponenttien uusiin julkaisuihin edellyttää nyt ohjelmien lähdekoodin avaamista GPLv3-yhteensopivien lisenssien alla tai kaupallisen lisenssin ostamista (LGPLv3 salli linkityksen omaan koodiin).

Samanaikaisesti muodostettu IDE julkaisu Qt-luoja 4.11.0, suunniteltu luomaan monialustaisia ​​sovelluksia Qt-kirjaston avulla. Sekä klassisten C++-ohjelmien kehitystä että QML-kielen käyttöä tuetaan, jossa skriptien määrittelyyn käytetään JavaScriptiä ja rajapintaelementtien rakenne ja parametrit asetetaan CSS:n kaltaisilla lohkoilla.

Qt Creatorin uusi versio lisää kokeellisen tuen mikro-ohjainsovellusten kehittämiseen ja WebAssembly-kääntämiseen moduuleilla "Qt MCU:ille"Ja"Qt WebAssemblylle". Järjestelmille, joissa
CMake 3.14 ja uudemmat versiot käyttävät uutta projektien määrittämiseen ja jäsentämiseen tiedosto API (/.cmake/api/). Lisätty tuki koodieditorille laajeneminen Language Server -protokolla semantiikan korostamiseen ja myös Python-kielen kielipalvelimen yksinkertaistettu konfigurointi. Käyttöliittymään on lisätty mahdollisuus muuttaa rivinpäätteen merkintätyyliä. Qt Quick Designeriin on lisätty mahdollisuus muokata QML-sidoksia.

Lähde: opennet.ru

Lisää kommentti