Izdanje okvira Qt 5.15

Predstavljeno izdanje okvira za više platformi Qt 5.15. Izvorni kod za Qt komponente pruža se pod licencama LGPLv3 i GPLv2. Nova grana Qt 6 bit će objavljena u prosincu, u kojoj očekivano značajne arhitektonske promjene. Kako bi se olakšao budući prijelaz na granu Qt 6, Qt 5.15 uključuje implementacije pregleda nekih novih značajki i dodana upozorenja o skorom zastarjevanju funkcionalnosti predviđenih za uklanjanje u Qt 6.

Qt 5.15 klasificiran je kao dugoročna podrška (LTS). U isto vrijeme, za ažuriranja zajednice na granu 5.15 bit će objavljeno samo dok se ne formira sljedeća značajna emisija, tj. oko šest mjeseci. Prošireni LTS ciklus, koji uključuje generiranje ažuriranja tijekom trogodišnjeg razdoblja, bit će ograničen na korisnike s komercijalnom licencom (5508 dolara godišnje po programeru za obične tvrtke i 499 dolara godišnje za startupe i mala poduzeća). Tvrtka Qt također razmatran mogućnost prelaska na Qt model distribucije, u kojem će sva izdanja za prvih 12 mjeseci biti distribuirana samo korisnicima komercijalnih licenci. Ali do sada ova ideja nije otišla dalje od rasprave.

Glavni inovacije u Qt 5.15:

  • Nastavljen je rad na stvaranju apstraktnog grafičkog API-ja koji ne ovisi o 3D API-ju operativnog sustava. Ključna komponenta novog Qt grafičkog skupa je mehanizam za renderiranje scene, koji koristi sloj RHI (Rendering Hardware Interface) za pokretanje Qt Quick aplikacija ne samo s OpenGL-om, već i povrh Vulkan, Metal i Direct 3D API-ja. U 5.15 novi grafički skup nudi se u obliku opcije koja ima status “Tehnološki pregled”.
  • Osigurana puna podrška za module Qt Quick 3D, s kojeg je skinuta oznaka eksperimentalnog razvoja. Qt Quick 3D pruža objedinjeni API za kreiranje korisničkih sučelja temeljenih na Qt Quicku koja 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. 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. 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.

    Nove značajke dodane u Qt Quick 3D uključuju podršku za efekte naknadne obrade, C++ API za manipulaciju geometrijom, API za rotaciju temeljen na klasi QQuaternion i podršku za točkasta svjetla. Za procjenu različitih značajki Qt Quick 3D pripremljeni posebna demo aplikacija koja pokazuje kako možete mijenjati vrste i izvore osvjetljenja, koristiti složene modele, manipulirati teksturama, materijalima i anti-aliasingom. Istovremeno zaprosio izdanje okoliš za dizajn korisničkog sučelja Qt Design Studio 1.5, koji pruža punu podršku za Qt Quick 3D.


  • U Qt QML-u posao je bio koncentrirana u pripremi za Qt 6. Implementirana je mogućnost korištenja svojstava s atributom 'required' u komponentama čija je instalacija obavezna. Pomoćni program qmllint poboljšao je generiranje upozorenja o mogućim problemima u QML kodu. Dodan je uslužni program qmlformat koji olakšava formatiranje QML koda u skladu sa smjernicama stila kodiranja. Osigurana kompatibilnost QML-a s Qt izdanjem za mikrokontroleri.
  • U Qt Quicku je elementu Image dodana podrška za prostore boja. Novi element PathText dodan je u Qt Quick Shapes.
    Svojstvo cursorShape dodano je rukovatelju pokazivačem pomoću kojeg možete promijeniti oblik pokazivača miša na desktop sustavima. Dodan je element HeaderView kako bi se olakšalo dodavanje okomitih i vodoravnih zaglavlja u tablice temeljene na TableViewu.

  • Podrška za ukrašavanje prozora na strani klijenta (CSD) značajno je poboljšana, dopuštajući aplikaciji definiranje vlastitih ukrasa prozora i postavljanje prilagođenog sadržaja u naslovnu traku prozora.
  • Modul stabiliziran Qt Lottie, koji pruža napredni QML API koji vam omogućuje renderiranje grafike i animacija izvezenih u JSON formatu pomoću dodatka Bodymovin za Adobe After Effects. Zahvaljujući QtLottie, dizajner može pripremiti efekte animacije u prikladnoj aplikaciji, a programer može izravno povezati izvezene datoteke sa sučeljem aplikacije na QtQuicku. QtLottie uključuje ugrađeni mikro motor za izvođenje animacija, obrezivanje, slojevitost i druge efekte. Motor je dostupan kroz LottieAnimation QML element, koji se može kontrolirati iz QML koda na isti način kao bilo koji drugi QtQuick element.
  • Qt WebEngine mehanizam preglednika ažuriran je na bazu koda Krom 80 (u grani 5.14 korišten je Chromium 77, trenutna verzija je Krom 83).
  • Qt 3D modul ima poboljšane alate za profiliranje i otklanjanje pogrešaka.
  • Qt Multimedia je dodao podršku za prikaz na više površina.
  • U Qt GUI, operacije skaliranja i transformacije slike sada su u mnogim slučajevima višenitne.
  • Qt mreža je dodala podršku za prilagođene timeouts i prečaci sesije u TLS 1.3 (Session Ticket, omogućuje vam nastavak sesije bez spremanja stanja na strani poslužitelja).
  • Omogućen je Qt Core, QRunnable i QThreadPool za rad sa std::function. Dodana je nova metoda QFile::moveToTrash() za premještanje stavki u smeće, uzimajući u obzir specifičnosti različitih platformi.
  • U Qt za Android dodao Podrška za izvorne dijaloge za otvaranje i spremanje datoteka.

Izvor: opennet.ru

Dodajte komentar