Vydanie rámca Qt 6.7 a vývojového prostredia Qt Creator 13

Spoločnosť Qt Company zverejnila vydanie rámca Qt 6.7, v ktorom pokračujú práce na stabilizácii a zvyšovaní funkčnosti vetvy Qt 6. Qt 6.7 poskytuje podporu pre platformy Windows 10+, macOS 12+, Linux (Ubuntu 22.04, openSUSE 15.5, SUSE 15 SP5, RHEL 8.8 / 9.2, Debian 11.6), iOS 16+, Android 8+ (API 23+), webOS, WebAssembly, INTEGRITY, VxWorks, FreeRTOS a QNX. Zdrojový kód pre komponenty Qt je poskytovaný pod licenciami LGPLv3 a GPLv2.

Hlavné zmeny v Qt 6.7:

  • Vylepšená podpora pre používanie kódu, ktorý používa prvky štandardu C++20. Pridané Qt::{strong,weak,partial}_ording triedy s implementáciou std::*_ording typov kompatibilných so špecifikáciou C++17, ako aj makrá, ktoré sa pri kompilácii kompilátormi rozširujú do trojcestného porovnávacieho operátora "" ktoré podporujú C++ 20 (ak kompilátor podporuje iba C++17, makrá sa vrátia k používaniu bežných operátorov).

    Na reprezentáciu súvislej postupnosti objektov je možné použiť šablónu triedy std::span, ktorá je pre systémy s C++17 nahradená triedou QSpan. Pokračovali práce na implementácii podpory pre knižnicu std::chrono v rôznych Qt API. Napríklad časové limity v rozhraní Qt Network API sú teraz opísané pomocou typov std::chrono a sú špecifikované vo forme literálov, ako napríklad "5s", ktoré označujú 5 sekúnd.

  • Pokračoval vývoj experimentálneho modulu Qt Graphs, určeného na vytváranie rôznych typov grafov a vizualizáciu veľkých zbierok rýchlo sa meniacich údajov. Modul je vyvíjaný ako univerzálna náhrada za starý modul Qt DataVisualization, založený na OpenGL, a modul Qt Charts. Nový modul využíva Qt Quick 3D a renderovací engine RHI (Rendering Hardware Interface), ktorý podporuje rôzne 3D API (OpenGL, Vulkan, Metal a Direct 3D). Okrem 3D vizualizácie pridáva nová verzia podporu pre dvojrozmerné koláčové a čiarové grafy, ako aj bodové grafy. K dispozícii je integrácia s animačnými nástrojmi a efektmi dostupnými v Qt Quick. Pridaná podpora pre témy. Architektúra bola modernizovaná, aby sa znížil počet operácií prideľovania pamäte.
    Vydanie rámca Qt 6.7 a vývojového prostredia Qt Creator 13
  • Boli pridané nové triedy QHttpHeaders, QNetworkRequestFactory, QRestAccessManager a QRestReply pre vývoj klientskych aplikácií, ktoré používajú API na báze HTTP a architektúru REST (REpresentational State Transfer).
  • Možnosti modulu Qt GRPC boli rozšírené, čo umožňuje prístup k službám gRPC. Qt gRPC pridal nové triedy pre volania na strane klienta, servera a obojsmerné streamovanie, ktoré umožňujú automatickú výmenu správ pri zmene hodnôt. Na pripojenie obsluhy spätného volania pre vybrané správy gRPC bolo navrhnuté rozhranie Interceptor API, ktoré možno použiť napríklad na organizáciu logovania alebo ukladania do vyrovnávacej pamäte.
  • Modul Qt Protobuf, navrhnutý na serializáciu tried Qt pomocou protokolu Protocol Buffer, pridal možnosť serializácie do alebo z formátu JSON.
  • Modul vektorovej grafiky Qt SVG pridal podporu prvkov SVG 1.1 a 2.0, ktoré sa v praxi často používajú v obrázkoch SVG ( , , , A ), ktorý umožňuje zobraziť väčšinu súborov SVG. Pre tých, ktorí potrebujú plnú podporu pre SVG 2.0, odporúčame použiť modul Qt WebEngine. Pridaný nástroj svgtoqml na konverziu SVG do QML na import vektorovej grafiky priamo do grafu scény Qt Quick. Možnosť využitia modulu Qt Quick Shapes pre kvalitné kreslenie kriviek pomocou fragment shaderu bola stabilizovaná.
  • Pridaná podpora pre variabilné písma, v ktorých sa hrúbka, šírka a ďalšie štylistické charakteristiky glyfu môžu ľubovoľne meniť. Pridaná podpora pre knižnice ikon. Pri používaní hovoru QIcon::fromTheme je možné porovnať názov ikony so symbolom v knižnici ikon.
  • Do scény Qt Quick je možné vložiť okná natívne pre aktuálnu platformu, čo vám umožňuje používať prvky rozhrania poskytované platformou v rozhraní založenom na Qt Quick, napríklad môžete vložiť AppKit MapView alebo Windows Media player.
    Vydanie rámca Qt 6.7 a vývojového prostredia Qt Creator 13
  • Pridaná podpora pre pridávanie vykresľovacieho kódu do aplikácií založených na Qt Quick alebo Qt Widget s použitím akéhokoľvek grafického API podporovaného v Qt (Vulkan, OpenGL, Direct3D, Metal). Pridávanie sa vykonáva pomocou tried QRhiQuickItem a QRhiWidget.
  • Plná podpora je poskytovaná pre platformy macOS 14, iOS 17, Windows 11 23H2, Android 14, RHEL 9.2, openSUSE 15.5, SUSE Linux Enterprise Server 15. Boli pridané zostavy pre Windows, skompilované pomocou sady nástrojov MinGW založenej na LLVM. Pridané ukážkové zostavy pre architektúru ARM (pre Windows a Linux), pre platformu VxWorks 7 a pre QNX 7.1.
  • Bol aktualizovaný zásobník Boot2Qt, ktorý je možné použiť na vytváranie zavádzacích mobilných systémov s prostredím založeným na Qt a QML. Systémové prostredie v Boot2Qt bolo aktualizované na platformu Yocto 4.3.
  • Boli pridané nové vzorové aplikácie. Príklad Lightning Viewer s použitím Qt Location a Qt Quick Controls na vizualizáciu údajov o búrke na mape. Nové demo budovy OSM využívajúce Qt Quick 3D, Qt Positioning a Qt Network na vytvorenie 3D mapy budov založenej na informáciách z OpenStreetMap. Príklad virtuálneho asistenta demonštruje možnosti práce s 3D animáciou. Príklad objemového vykresľovania ukazuje, ako používať 3D textúry v Qt Quick 3D na objemové sledovanie lúčov. Príklad StocQt bol úplne prepracovaný a na zobrazenie údajov o akciovom trhu používa grafy Qt.
    Vydanie rámca Qt 6.7 a vývojového prostredia Qt Creator 13

Dodatočne si môžeme všimnúť zverejnenie integrovaného vývojového prostredia Qt Creator 13.0, určeného na vytváranie multiplatformových aplikácií pomocou knižnice Qt. Podporuje ako vývoj klasických programov v C++, tak aj používanie jazyka QML, v ktorom sa na definovanie skriptov používa JavaScript a štruktúra a parametre prvkov rozhrania sú špecifikované blokmi podobnými CSS. Pre Linux, Windows a MacOS boli vytvorené hotové zostavy.

V novej verzii:

  • Pridané offline a online inštalačné programy pre systémy ARM s Linuxom.
  • Rozhranie Welcome to Qt Creator bolo aktualizované, aby zahŕňalo podporu pre tmavé a svetlé témy.
    Vydanie rámca Qt 6.7 a vývojového prostredia Qt Creator 13
  • Vylepšené rozhranie pre presúvanie panelov používaných v režime ladenia a vytváranie widgetov (Widget Designer). Pridaná podpora pre dočasné zrútenie pre vertikálne panely. Panely je možné ľubovoľne presúvať ich hlavičkou bez toho, aby ste ich najskôr odpojili.
    Vydanie rámca Qt 6.7 a vývojového prostredia Qt Creator 13
  • Pridaná podpora pre vytváranie, nasadzovanie, spúšťanie a ladenie aplikácií pre zariadenia, ktoré používajú Qt Application Manager (pre aplikácie založené na Qt 6 a CMake).
  • Pridaná čiastočná podpora pre iOS 17.
  • Zmenil sa predvolený adresár zostavenia tak, aby v kóde projektu používal podadresár „build“. Adresár zostavy môžete zmeniť pomocou nastavenia „Predvoľby > Zostaviť a spustiť > Predvolené vlastnosti zostavy > Predvolený adresár zostavy“.
  • V projektovom režime bola pridaná sekcia „Vanished targets“, ktorá zobrazuje súpravy (odkazy na rôzne nástroje na zostavovanie a verzie Qt), ktoré už nie sú dostupné, a poskytuje možnosť vytvoriť náhradu alebo ju použiť pri zostavovaní, nasadzovaní a prevádzkovanie ďalšej existujúcej súpravy.
  • Je možné vytvárať kity pre projekty v jazyku Python (pre výber inej verzie interpreta).
  • Pridaná možnosť používať servery LSP (Language Server Protocol) pre YAML, JSON a Bash.
  • Editor kódu poskytuje podporu pre navigáciu z komponentov QML k ich pridruženému kódu C++.
  • Nastavenia ClangFormat boli reorganizované. Na zmenu vašich vlastných nastavení je k dispozícii textový editor s kontrolou syntaxe.
    Vydanie rámca Qt 6.7 a vývojového prostredia Qt Creator 13

Zdroj: opennet.ru

Pridať komentár