Vydanie rámca Qt 5.15

Predloženej vydanie multiplatformového rámca Qt 5.15. Zdrojový kód pre komponenty Qt je poskytovaný pod licenciami LGPLv3 a GPLv2. V decembri bude zverejnená nová vetva Qt 6, v ktorej očakávané výrazné architektonické zmeny. Aby sa uľahčil budúci prechod na vetvu Qt 6, Qt 5.15 obsahuje ukážkové implementácie niektorých nových funkcií a pridané upozornenia na bezprostredné ukončenie podpory funkcií naplánovaných na odstránenie v Qt 6.

Qt 5.15 je klasifikovaný ako vydanie dlhodobej podpory (LTS). Zároveň pre aktualizácie komunity na vetvu 5.15 budú zverejnené len do vzniku ďalšej významnej emisie, t.j. asi šesť mesiacov. Rozšírený cyklus LTS, ktorý zahŕňa generovanie aktualizácií počas trojročného obdobia, bude obmedzený na používateľov s komerčnou licenciou (5508 499 USD ročne na vývojára pre bežné spoločnosti a XNUMX USD ročne pre startupy a malé podniky). Spoločnosť Qt tiež zvážiť možnosť prejsť na distribučný model Qt, v ktorom budú všetky vydania na prvých 12 mesiacov distribuované iba používateľom komerčných licencií. Ale zatiaľ táto myšlienka neprekročila diskusiu.

Hlavné inovácie v Qt 5.15:

  • Pokračovali práce na vytvorení abstrahovaného grafického API, ktoré nezávisí od 3D API operačného systému. Kľúčovým komponentom nového grafického zásobníka Qt je engine na vykresľovanie scén, ktorý využíva vrstvu RHI (Rendering Hardware Interface) na napájanie aplikácií Qt Quick nielen s OpenGL, ale aj nad rozhraniami Vulkan, Metal a Direct 3D API. Vo verzii 5.15 sa nový grafický zásobník ponúka vo forme možnosti, ktorá má status „Náhľad technológie“.
  • Poskytnutá plná podpora modulov Qt Quick 3D, z ktorého bol odstránený znak experimentálneho vývoja. Qt Quick 3D poskytuje jednotné API na vytváranie používateľských rozhraní založených na Qt Quick, ktoré kombinujú 2D a 3D grafické prvky. Nové API vám umožňuje použiť QML na definovanie prvkov 3D rozhrania bez použitia formátu UIP. V Qt Quick 3D môžete použiť jeden runtime (Qt Quick), jedno rozloženie scény a jeden animačný rámec pre 2D a 3D a použiť Qt Design Studio na vývoj vizuálneho rozhrania. Modul rieši problémy, ako je veľká réžia pri integrácii QML s obsahom z Qt 3D alebo 3D Studio, a poskytuje možnosť synchronizácie animácií a transformácií na úrovni snímok medzi 2D a 3D.

    Nové funkcie pridané do Qt Quick 3D zahŕňajú podporu efektov následného spracovania, C++ API pre manipuláciu s geometriou, rotačné API založené na triede QQuaternion a podporu bodových svetiel. Na vyhodnotenie rôznych funkcií Qt Quick 3D pripravený špeciálna demo aplikácia, ktorá ukazuje, ako môžete meniť typy a zdroje osvetlenia, používať zložité modely, manipulovať s textúrami, materiálmi a anti-aliasingom. Súčasne navrhované otázka životné prostredie navrhnúť používateľské rozhranie Qt Design Studio 1.5, ktoré poskytuje plnú podporu pre Qt Quick 3D.


  • V Qt QML bola práca koncentrovaný v príprave na Qt 6. Bola implementovaná možnosť používať vlastnosti s atribútom 'required' v komponentoch, ktorých inštalácia je povinná. Pomôcka qmllint zlepšila generovanie upozornení na možné problémy v kóde QML. Pridaný nástroj qmlformat, ktorý uľahčuje formátovanie kódu QML v súlade s pokynmi pre štýl kódovania. Zaistená kompatibilita QML s edíciou Qt pre mikrokontroléry.
  • V Qt Quick bola do elementu Image pridaná podpora pre farebné priestory. Do Qt Quick Shapes bol pridaný nový prvok PathText.
    Do obslužného programu ukazovateľa bola pridaná vlastnosť kurzorShape, pomocou ktorej môžete na desktopových systémoch meniť tvar kurzora myši. Pridaný prvok HeaderView na uľahčenie pridávania vertikálnych a horizontálnych hlavičiek do tabuliek založených na TableView.

  • Podpora zdobenia okien na strane klienta (CSD) bola výrazne vylepšená, čo umožňuje aplikácii definovať svoje vlastné dekorácie okien a umiestniť vlastný obsah do záhlavia okna.
  • Modul stabilizovaný Qt Lottie, ktorá poskytuje pokročilé rozhranie QML API, ktoré vám umožňuje vykresľovať grafiku a animácie exportované vo formáte JSON pomocou doplnku Bodymovin pre Adobe After Effects. Vďaka QtLottie môže dizajnér pripraviť animačné efekty v pohodlnej aplikácii a vývojár môže priamo pripojiť exportované súbory do rozhrania aplikácie na QtQuick. QtLottie obsahuje vstavaný mikro engine na vykonávanie animácií, orezávania, vrstvenia a iných efektov. Engine je prístupný cez prvok LottieAnimation QML, ktorý je možné ovládať z QML kódu rovnakým spôsobom ako ktorýkoľvek iný prvok QtQuick.
  • Prehliadač Qt WebEngine bol aktualizovaný na základňu kódu Chromium 80 (vo vetve 5.14 bol použitý Chromium 77, aktuálna verzia je Chromium 83).
  • Modul Qt 3D má vylepšené nástroje na profilovanie a ladenie.
  • Qt Multimedia pridala podporu pre vykresľovanie viacerých povrchov.
  • V Qt GUI sú teraz operácie škálovania obrazu a transformácie v mnohých prípadoch viacvláknové.
  • Qt Network pridal podporu pre vlastné časové limity a skratky relácií v TLS 1.3 (Session Ticket, umožňuje obnoviť reláciu bez uloženia stavu na strane servera).
  • Povolené funkcie Qt Core, QRunnable a QThreadPool s funkciou std::. Pridaná nová metóda QFile::moveToTrash() na presúvanie položiek do koša, berúc do úvahy špecifiká rôznych platforiem.
  • V Qt pre Android pridané Podpora natívnych dialógov na otváranie a ukladanie súborov.

Zdroj: opennet.ru

Pridať komentár