Izdanje okvira Qt 5.14 i razvojnog okruženja Qt Creator 4.11.0

Nakon šest mjeseci razvoja pripremljeno izdanje okvira za više platformi Qt 5.14. Izvorni kod za Qt komponente licenciran je pod LGPLv3 i GPLv2, Qt razvojni alati kao što su Qt Creator i qmake, a neki moduli licencirani su pod GPLv3. Izdanje Qt 5.14 označilo je početak pripreme ogranka Qt 6, u kojem očekivano značajne arhitektonske promjene. Qt 6 zakazan je za kraj sljedeće godine, a kako bi se olakšao prijelaz na novu granu, odlučeno je da će se preliminarne implementacije nekih inovacija uključiti u izdanja Qt 5.14 i Qt 5.15 LTS.

Glavni inovacije:

  • Qt Quick je započeo rad na pružanju grafičkog API-ja koji je neovisan o 3D API-ju operativnog sustava. U Qt 5.14 zaprosio preliminarna implementacija novog mehanizma za renderiranje scene koji koristi novi sloj RHI (Rendering Hardware Interface) kako bi se Qt Quick aplikacijama omogućilo pokretanje ne samo povrh OpenGL-a, kao što je do sada bio slučaj, već i korištenjem Vulkan, Metal i Direct 3D 11. Novi motor trenutno je predložen u obliku opcije za pripremu aplikacija za prijelaz na Qt 6, u kojem će se RHI prema zadanim postavkama koristiti za grafički izlaz.
  • Implementiran je modul Qt Quick Timeline koji olakšava animiranje svojstava pomoću vremenske trake i ključnih okvira. Modul je izveden iz razvojnog okruženja Qt Design Studio, koje pruža uređivač temeljen na vremenskoj crti za stvaranje animacija bez pisanja koda.
  • Dodan eksperimentalni modul Qt Quick 3D, koji pruža objedinjeni API za kreiranje korisničkih sučelja temeljenih na Qt Quicku koji kombiniraju 2D i 3D grafičke elemente. Novi API omogućuje korištenje QML-a za definiranje elemenata 3D sučelja bez korištenja UIP formata. Modul rješava probleme kao što su veliki troškovi pri integraciji QML-a sa sadržajem iz Qt 3D ili 3D Studija i pruža mogućnost sinkronizacije animacija i transformacija na razini okvira između 2D i 3D. U Qt Quick 3D možete koristiti jedno vrijeme izvođenja (Qt Quick), jedan raspored scene i jedan okvir animacije za 2D i 3D te koristiti Qt Design Studio za razvoj vizualnog sučelja.
  • Dodan WheelHandler, rukovatelj za događaje kotačića miša, kao i događaje za kotačić koji emulira touchpad.
  • Nastavlja se raditi na poboljšanju performansi na zaslonima s visokom gustoćom piksela. Uključujući mogućnost određivanja frakcijskih faktora skaliranja.
  • Dodana je mogućnost dodavanja prostora boja za slike, što vam omogućuje postizanje ispravne reprodukcije boja prilikom prikazivanja slika na kalibriranim monitorima.
  • Dodan je prostor imena QColorConstants, koji vam tijekom kompajliranja omogućuje generiranje instanci klase QColor s unaprijed definiranom paletom.
  • Podrška za čitanje i pisanje Markdown je dodana komponentama Qt Widgets i Qt Quick za izradu uređivača teksta.
  • QCalendar API implementira mogućnost rada s kalendarima koji nisu gregorijanski.
  • Za Android je dodana podrška za sklopove koji obuhvaćaju višestruke ABI-je, što vam omogućuje da kompajlirate aplikaciju za različite arhitekture odjednom. Također je dodana podrška za format paketa AAB, što omogućuje isporuku aplikacija za sve podržane arhitekture u jednoj arhivi.
  • Izvedeno optimizacija performansi Qt 3D modula, uključujući modernizirani rad s nitima, objektima framebuffera i sustavom obavijesti. Kao rezultat toga, bilo je moguće smanjiti opterećenje CPU-a prilikom crtanja okvira i povećati učinkovitost sinkronizacije između pokrenutih niti.
  • API-ji su dodani Qt mrežnom modulu za konfiguriranje HTTP/2 parametara i nadzor mrežne veze.
  • Qt WebEngine web motor ažuriran je na Chromium 77 i proširen novim API-jem za upravljanje životnim ciklusom QWebEnginePage objekta.
  • Licenca za Qt Wayland Compositor, Qt Application Manager i Qt PDF komponente promijenio s LGPLv3 na GPLv3, tj. Povezivanje s novim izdanjima ovih komponenti sada zahtijeva otvaranje izvornog koda programa pod licencama kompatibilnim s GPLv3 ili kupnju komercijalne licence (LGPLv3 dopušta povezivanje s vlasničkim kodom).

Istovremeno formirana IDE izdanje QtCreator 4.11.0, dizajniran za stvaranje višeplatformskih aplikacija pomoću Qt knjižnice. Podržan je i razvoj klasičnih C++ programa i korištenje QML jezika u kojem se JavaScript koristi za definiranje skripti, a strukturu i parametre elemenata sučelja postavljaju CSS-like blokovi.

Nova verzija Qt Creatora dodaje eksperimentalnu podršku za razvoj aplikacija za mikrokontrolere i kompajliranje u WebAssembly pomoću modula "Qt za MCU"A"Qt za WebAssembly". Za sustave sa
CMake 3.14 i novije verzije koriste novi za postavljanje i raščlanjivanje projekata API datoteke (/.cmake/api/). Dodana podrška uređivaču koda proširenje Protokol jezičnog poslužitelja za isticanje semantike, a također i pojednostavljena konfiguracija jezičnog poslužitelja za jezik Python. U sučelje je dodana opcija za promjenu stila označavanja kraja retka. Mogućnost uređivanja QML vezanja dodana je u Qt Quick Designer.

Izvor: opennet.ru

Dodajte komentar