Vydání rámce Qt 6.7 a vývojového prostředí Qt Creator 13

Společnost Qt zveřejnila vydání rámce Qt 6.7, ve kterém pokračují práce na stabilizaci a zvýšení funkčnosti větve Qt 6 Qt 6.7 poskytuje podporu pro 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 pro komponenty Qt je poskytován pod licencemi LGPLv3 a GPLv2.

Hlavní změny v Qt 6.7:

  • Vylepšená podpora pro použití kódu, který používá prvky standardu C++20. Přidáno Qt::{strong,weak,partial}_ording třídy s implementací std::*_ording typů kompatibilních se specifikací C++17 a také makra, která se při kompilaci kompilátorem rozšiřují do třícestného porovnávacího operátoru "" které podporují C++ 20 (pokud kompilátor podporuje pouze C++17, makra se vrátí k použití běžných operátorů).

    Pro reprezentaci souvislé sekvence objektů je možné použít šablonu třídy std::span, která je u systémů s C++17 nahrazena třídou QSpan. Pokračovaly práce na implementaci podpory pro knihovnu std::chrono v různých rozhraních Qt API. Například časové limity v rozhraní Qt Network API jsou nyní popsány pomocí typů std::chrono a jsou specifikovány ve formě literálů, jako je „5s“, které označují 5 sekund.

  • Pokračoval vývoj experimentálního modulu Qt Graphs, určeného pro vytváření různých typů grafů a vizualizaci velkých kolekcí rychle se měnících dat. Modul je vyvíjen jako univerzální náhrada za starý modul Qt DataVisualization, založený na OpenGL, a modul Qt Charts. Nový modul využívá Qt Quick 3D a renderovací engine RHI (Rendering Hardware Interface), který podporuje různá 3D API (OpenGL, Vulkan, Metal a Direct 3D). Kromě 3D vizualizace přidává nová verze podporu pro dvourozměrné koláčové a spojnicové grafy a také bodové grafy. K dispozici je integrace s animačními nástroji a efekty dostupnými v Qt Quick. Přidána podpora témat. Architektura byla modernizována, aby se snížil počet operací alokace paměti.
    Vydání rámce Qt 6.7 a vývojového prostředí Qt Creator 13
  • Byly přidány nové třídy QHttpHeaders, QNetworkRequestFactory, QRestAccessManager a QRestReply pro vývoj klientských aplikací, které používají API na bázi HTTP a architekturu REST (REpresentational State Transfer).
  • Možnosti modulu Qt GRPC byly rozšířeny, což umožňuje přístup ke službám gRPC. Qt gRPC přidal nové třídy pro volání na straně klienta, serveru a obousměrné streamování, které umožňují automatickou výměnu zpráv při změně hodnot. Pro připojení obsluhy zpětných volání pro vybrané zprávy gRPC bylo navrženo Interceptor API, které lze použít například pro organizaci logování nebo ukládání do mezipaměti.
  • Modul Qt Protobuf, navržený pro serializaci tříd Qt pomocí protokolu Protocol Buffer, přidal možnost serializace do nebo z formátu JSON.
  • Modul vektorové grafiky Qt SVG přidal podporu pro prvky SVG 1.1 a 2.0, které se v praxi často používají v obrázcích SVG ( , , , A ), který umožňuje zobrazení většiny souborů SVG. Pro ty, kteří potřebují plnou podporu pro SVG 2.0, doporučujeme použít modul Qt WebEngine. Přidán nástroj svgtoqml pro převod SVG do QML pro import vektorové grafiky přímo do grafu scény Qt Quick. Možnost využití modulu Qt Quick Shapes pro kvalitní kreslení křivek pomocí fragment shaderu byla stabilizována.
  • Přidána podpora pro variabilní písma, ve kterých se tloušťka, šířka a další stylistické charakteristiky glyfu mohou libovolně měnit. Přidána podpora pro knihovny ikon. Při použití volání QIcon::fromTheme je možné porovnat název ikony se symbolem v knihovně ikon.
  • Do scény Qt Quick je možné vložit okna nativní pro aktuální platformu, což vám umožní používat prvky rozhraní poskytované platformou v rozhraní založeném na Qt Quick, můžete například vložit AppKit MapView nebo Windows Media player.
    Vydání rámce Qt 6.7 a vývojového prostředí Qt Creator 13
  • Přidána podpora pro přidávání vykreslovacího kódu do aplikací založených na Qt Quick nebo Qt Widgetech pomocí libovolného grafického API podporovaného v Qt (Vulkan, OpenGL, Direct3D, Metal). Přidávání se provádí pomocí tříd QRhiQuickItem a QRhiWidget.
  • Plná podpora je poskytována pro platformy macOS 14, iOS 17, Windows 11 23H2, Android 14, RHEL 9.2, openSUSE 15.5, SUSE Linux Enterprise Server 15. Byla přidána sestavení pro Windows, zkompilovaná pomocí sady nástrojů MinGW založené na LLVM. Přidány náhledové sestavení pro architekturu ARM (pro Windows a Linux), pro platformu VxWorks 7 a pro QNX 7.1.
  • Byl aktualizován zásobník Boot2Qt, který lze použít k vytváření zaváděcích mobilních systémů s prostředím založeným na Qt a QML. Systémové prostředí v Boot2Qt bylo aktualizováno na platformu Yocto 4.3.
  • Byly přidány nové vzorové aplikace. Příklad Lightning Viewer využívající Qt Location a Qt Quick Controls k vizualizaci dat bouřky na mapě. Nové demo budovy OSM využívající Qt Quick 3D, Qt Positioning a Qt Network k vytvoření 3D mapy budov na základě informací z OpenStreetMap. Příklad virtuálního asistenta demonstruje možnosti práce s 3D animací. Příklad objemového vykreslování ukazuje, jak používat 3D textury v Qt Quick 3D pro objemové sledování paprsků. Příklad StocQt byl zcela přepracován a používá grafy Qt k zobrazení dat akciového trhu.
    Vydání rámce Qt 6.7 a vývojového prostředí Qt Creator 13

Dále si můžeme všimnout publikace integrovaného vývojového prostředí Qt Creator 13.0, určeného pro tvorbu multiplatformních aplikací pomocí knihovny Qt. Podporuje jak vývoj klasických programů v C++, tak použití jazyka QML, ve kterém se pro definici skriptů používá JavaScript a struktura a parametry prvků rozhraní jsou specifikovány bloky podobnými CSS. Pro Linux, Windows a MacOS byly vytvořeny hotové sestavy.

V nové verzi:

  • Přidány offline a online instalační programy pro systémy ARM s Linuxem.
  • Rozhraní Welcome to Qt Creator bylo aktualizováno, aby zahrnovalo podporu pro tmavé a světlé motivy.
    Vydání rámce Qt 6.7 a vývojového prostředí Qt Creator 13
  • Vylepšené rozhraní pro přesouvání panelů používaných v režimu ladění a vytváření widgetů (Widget Designer). Přidána podpora pro dočasné skládání vertikálních panelů. Panely je možné libovolně přesouvat jejich záhlavím, aniž by bylo nutné je nejprve vyjmout.
    Vydání rámce Qt 6.7 a vývojového prostředí Qt Creator 13
  • Přidána podpora pro vytváření, nasazování, spouštění a ladění aplikací pro zařízení, která používají Qt Application Manager (pro aplikace založené na Qt 6 a CMake).
  • Přidána částečná podpora pro iOS 17.
  • Změnil se výchozí adresář sestavení tak, aby nyní v kódu projektu používal podadresář "build". Adresář sestavení můžete změnit pomocí nastavení „Předvolby > Sestavit a spustit > Výchozí vlastnosti sestavení > Výchozí adresář sestavení“.
  • V projektovém režimu byla přidána sekce „Zmizelé cíle“, která zobrazuje sady (odkazy na různé nástroje pro vytváření a verze Qt), které již nejsou dostupné, a poskytuje možnost vytvořit náhradu nebo ji použít při sestavování, nasazování a provozování další stávající sady.
  • Je možné vytvářet kity pro projekty v jazyce Python (pro výběr jiné verze interpretu).
  • Přidána možnost používat servery LSP (Language Server Protocol) pro YAML, JSON a Bash.
  • Editor kódu poskytuje podporu pro navigaci z komponent QML k jejich přidruženému kódu C++.
  • Nastavení ClangFormat byla reorganizována. Pro změnu vašich vlastních nastavení je k dispozici textový editor s kontrolou syntaxe.
    Vydání rámce Qt 6.7 a vývojového prostředí Qt Creator 13

Zdroj: opennet.ru

Přidat komentář