Izdaja ogrodja Qt 5.14 in razvojnega okolja Qt Creator 4.11.0

Po šestih mesecih razvoja pripravljeno izdaja ogrodja za več platform Qt 5.14. Izvorna koda za komponente Qt je licencirana pod LGPLv3 in GPLv2, orodja za razvijalce Qt, kot sta Qt Creator in qmake, nekateri moduli pa so licencirani pod GPLv3. Izid Qt 5.14 je pomenil začetek priprave veje Qt 6, v kateri pričakovano pomembne arhitekturne spremembe. Qt 6 je predviden za konec naslednjega leta in za lažji prehod na novo vejo je bilo odločeno, da bodo predhodne implementacije nekaterih novosti vključene v izdaji Qt 5.14 in Qt 5.15 LTS.

Glavni inovacije:

  • Qt Quick je začel delati na zagotavljanju grafičnega API-ja, ki je neodvisen od 3D API-ja operacijskega sistema. V Qt 5.14 predlagano predhodna izvedba novega mehanizma za upodabljanje prizorov z uporabo novega sloja RHI (Rendering Hardware Interface), ki omogoča aplikacijam Qt Quick, da se izvajajo ne le na vrhu OpenGL, kot je bilo doslej, ampak tudi z uporabo Vulkan, Metal in Direct 3D 11. Nov motor je trenutno predlagan v obliki možnosti za pripravo aplikacij za prehod na Qt 6, v katerem bo RHI privzeto uporabljen za grafični izpis.
  • Implementiran je bil modul Qt Quick Timeline, ki olajša animiranje lastnosti z uporabo časovnice in ključnih sličic. Modul izhaja iz razvojnega okolja Qt Design Studio, ki ponuja urejevalnik na podlagi časovne premice za ustvarjanje animacij brez pisanja kode.
  • Dodan eksperimentalni modul Qt Quick 3D, ki zagotavlja enoten API za ustvarjanje uporabniških vmesnikov, ki temeljijo na Qt Quick in združujejo 2D in 3D grafične elemente. Novi API omogoča uporabo QML za definiranje elementov 3D vmesnika brez uporabe formata UIP. Modul rešuje težave, kot so veliki režijski stroški pri integraciji QML z vsebino iz Qt 3D ali 3D Studio, in zagotavlja možnost sinhronizacije animacij in transformacij na ravni okvirja med 2D in 3D. V Qt Quick 3D lahko uporabite eno izvajalno okolje (Qt Quick), eno postavitev scene in eno animacijsko ogrodje za 2D in 3D ter uporabite Qt Design Studio za razvoj vizualnega vmesnika.
  • Dodan WheelHandler, obravnavo dogodkov kolesca miške, kot tudi dogodkov za kolesce, ki jih posnema sledilna ploščica.
  • Nadaljuje se delo za izboljšanje zmogljivosti na zaslonih z visoko gostoto slikovnih pik. Vključno z možnostjo določanja delnih faktorjev skaliranja.
  • Dodana možnost dodajanja barvnih prostorov za slike, kar vam omogoča, da dosežete pravilno barvno reprodukcijo pri prikazovanju slik na umerjenih monitorjih.
  • Dodan imenski prostor QColorConstants, ki vam v času prevajanja omogoča ustvarjanje primerkov razreda QColor z vnaprej določeno paleto.
  • Podpora za branje in pisanje Markdown je bila dodana komponentam Qt Widgets in Qt Quick za ustvarjanje urejevalnikov besedil.
  • API QCalendar implementira zmožnost dela s koledarji, ki niso gregorijanski.
  • Za Android je bila dodana podpora za sklope, ki zajemajo več ABI-jev, kar vam omogoča, da prevedete aplikacijo za različne arhitekture hkrati. Dodana je bila tudi podpora za format paketa AAB, ki omogoča dostavo aplikacij za vse podprte arhitekture v enem arhivu.
  • Izvede optimizacija delovanja modula Qt 3D, vključno s posodobljenim delom z nitmi, objekti framebuffer in sistemom obveščanja. Posledično je bilo mogoče zmanjšati obremenitev CPU pri risanju okvirja in povečati učinkovitost sinhronizacije med tekočimi nitmi.
  • Modulu Qt Network so bili dodani API-ji za konfiguracijo parametrov HTTP/2 in spremljanje omrežne povezave.
  • Spletni mehanizem Qt WebEngine je bil posodobljen na Chromium 77 in razširjen z novim API-jem za upravljanje življenjskega cikla predmeta QWebEnginePage.
  • Licenca za komponente Qt Wayland Compositor, Qt Application Manager in Qt PDF spremenjeno iz LGPLv3 v GPLv3, tj. Povezovanje z novimi izdajami teh komponent zdaj zahteva odpiranje izvorne kode programov pod licencami, združljivimi z GPLv3, ali nakup komercialne licence (LGPLv3 je dovoljeval povezovanje z lastniško kodo).

Hkrati oblikovana izdaja integriranega razvojnega okolja QtCreator 4.11.0, zasnovan za ustvarjanje aplikacij na več platformah z uporabo knjižnice Qt. Podpira tako razvoj klasičnih programov v C++ kot uporabo jezika QML, v katerem se za definiranje skript uporablja JavaScript, struktura in parametri elementov vmesnika pa se določajo s CSS podobnimi bloki.

Nova različica Qt Creator dodaja eksperimentalno podporo za razvoj aplikacij za mikrokontrolerje in prevajanje v WebAssembly z uporabo modulov "Qt za MCU"In"Qt za WebAssembly". Za sisteme z
CMake 3.14 in novejše različice uporabljajo novega za nastavitev in razčlenjevanje projektov datoteko API (/.cmake/api/). Dodana podpora za urejevalnik kode širitev Protokol jezikovnega strežnika za poudarjanje semantike in tudi poenostavljena konfiguracija jezikovnega strežnika za jezik Python. V vmesnik je bila dodana možnost za spremembo sloga označevanja konca vrstice. V Qt Quick Designer je bila dodana možnost urejanja vezav QML.

Vir: opennet.ru

Dodaj komentar