Vrystelling van die Qt 6.7-raamwerk en Qt Creator 13-ontwikkelingsomgewing

Die Qt Company het 'n vrystelling van die Qt 6.7-raamwerk gepubliseer, waarin werk voortgaan om die funksionaliteit van die Qt 6-tak te stabiliseer en te verhoog. Qt 6.7 bied ondersteuning vir die platforms 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 en QNX. Die bronkode vir Qt-komponente word verskaf onder die LGPLv3- en GPLv2-lisensies.

Groot veranderinge in Qt 6.7:

  • Verbeterde ondersteuning vir die gebruik van kode wat elemente van die C++20-standaard gebruik. Bygevoeg Qt::{strong,weak,partial}_order-klasse met implementering van std::*_ordering-tipes wat versoenbaar is met die C++17-spesifikasie, sowel as makro's wat uitbrei na die drierigtingvergelykingsoperateur "" wanneer saamgestel deur samestellers wat C++ 20 ondersteun (as die samesteller slegs C++17 ondersteun, val makros terug na die gebruik van gewone operateurs).

    Dit is moontlik om die std::span klas sjabloon te gebruik om 'n aaneenlopende volgorde van voorwerpe voor te stel, wat vervang word deur die QSpan klas vir stelsels met C++17. Werk het voortgegaan om ondersteuning vir die std::chrono-biblioteek in verskeie Qt API's te implementeer. Byvoorbeeld, time-outs in die Qt Network API word nou beskryf deur gebruik te maak van std::chrono tipes en word gespesifiseer in die vorm van letterlike woorde soos "5s" om 5 sekondes aan te dui.

  • Die ontwikkeling van die eksperimentele Qt-grafieke-module, ontwerp vir die bou van verskillende soorte grafieke en die visualisering van groot versamelings van vinnig veranderende data, het voortgegaan. Die module word ontwikkel as 'n universele vervanging vir die ou Qt DataVisualization-module, gebaseer op OpenGL, en die Qt Charts-module. Die nuwe module gebruik Qt Quick 3D en die RHI (Rendering Hardware Interface)-weergawe-enjin, wat verskeie 3D API's (OpenGL, Vulkan, Metal en Direct 3D) ondersteun. Benewens 3D-visualisering, voeg die nuwe weergawe ondersteuning by vir tweedimensionele sirkel- en lyngrafieke, sowel as strooidiagramme. Integrasie met animasie-instrumente en -effekte beskikbaar in Qt Quick word verskaf. Bygevoeg ondersteuning vir temas. Die argitektuur is gemoderniseer om die aantal geheuetoewysingsbewerkings te verminder.
    Vrystelling van die Qt 6.7-raamwerk en Qt Creator 13-ontwikkelingsomgewing
  • Nuwe klasse QHttpHeaders, QNetworkRequestFactory, QRestAccessManager en QRestReply is bygevoeg vir die ontwikkeling van kliënttoepassings wat HTTP-gebaseerde API's en REST (REpresentational State Transfer) argitektuur gebruik.
  • Die vermoëns van die Qt GRPC-module is uitgebrei, wat toegang tot gRPC-dienste moontlik maak. Qt gRPC het nuwe klasse bygevoeg vir kliënt-kant, bediener-kant en tweerigting stroomoproepe wat toelaat dat boodskappe outomaties uitgeruil word wanneer waardes verander. 'n Interceptor API is voorgestel om terugbelhanteerders vir geselekteerde gRPC-boodskappe aan te heg, wat byvoorbeeld gebruik kan word vir die organisering van aanteken of kas.
  • Die Qt Protobuf-module, wat ontwerp is om Qt-klasse te serialiseer deur die Protocol Buffer-protokol te gebruik, het die vermoë bygevoeg om na of vanaf JSON-formaat te serialiseer.
  • Die Qt SVG vektorgrafika-module het ondersteuning bygevoeg vir SVG 1.1- en 2.0-elemente, wat in die praktyk dikwels in SVG-beelde gebruik word ( , , , En ), wat toelaat dat die meeste SVG-lêers vertoon word. Vir diegene wat volle ondersteuning vir SVG 2.0 benodig, stel ons voor om die Qt WebEngine-module te gebruik. Bygevoeg svgtoqml-nutsmiddel om SVG na QML om te skakel vir die invoer van vektorgrafika direk in die Qt Quick-toneelgrafiek. Die vermoë om die Qt Quick Shapes-module te gebruik vir hoë-gehalte tekening van krommes met behulp van 'n fragment shader is gestabiliseer.
  • Bygevoeg ondersteuning vir veranderlike lettertipes, waarin die dikte, breedte en ander stilistiese kenmerke van die glyph arbitrêr kan verander. Bygevoeg ondersteuning vir ikoon biblioteke. Wanneer die QIcon::fromTheme-oproep gebruik word, is dit moontlik om die ikoonnaam met 'n simbool in die ikoonbiblioteek te pas.
  • Dit is moontlik om vensters wat inheems aan die huidige platform is, in die Qt Quick-toneel in te sluit, wat jou toelaat om koppelvlakelemente wat deur die platform verskaf word in 'n koppelvlak wat op Qt Quick gebaseer is, te gebruik, jy kan byvoorbeeld AppKit MapView of Windows Media-speler insluit.
    Vrystelling van die Qt 6.7-raamwerk en Qt Creator 13-ontwikkelingsomgewing
  • Bygevoeg ondersteuning vir die byvoeging van lewering kode by toepassings gebaseer op Qt Quick of Qt Widgets, met behulp van enige grafiese API ondersteun in Qt (Vulkan, OpenGL, Direct3D, Metal). Byvoeging word gedoen met behulp van die QRhiQuickItem- en QRhiWidget-klasse.
  • Volle ondersteuning word verskaf vir die platforms macOS 14, iOS 17, Windows 11 23H2, Android 14, RHEL 9.2, openSUSE 15.5, SUSE Linux Enterprise Server 15. Samestellings vir Windows is bygevoeg, saamgestel met behulp van die MinGW-nutsmiddelstel gebaseer op LLVM. Bygevoegde voorskoubou vir die ARM-argitektuur (vir Windows en Linux), vir die VxWorks 7-platform en vir QNX 7.1.
  • Die Boot2Qt-stapel is opgedateer, wat gebruik kan word om selflaaibare mobiele stelsels te skep met 'n omgewing gebaseer op Qt en QML. Die stelselomgewing in Boot2Qt is opgedateer na die Yocto 4.3-platform.
  • Nuwe voorbeeldtoepassings is bygevoeg. Weerligkyker-voorbeeld wat Qt Location en Qt Quick Controls gebruik om donderstormdata op 'n kaart te visualiseer. Nuwe OSM Buildings-demo wat Qt Quick 3D, Qt Positioning en Qt Network gebruik om 'n 3D-boukaart te skep gebaseer op inligting van OpenStreetMap. Die virtuele assistent-voorbeeld demonstreer die vermoëns om met 3D-animasie te werk. Die volumetriese weergawe-voorbeeld wys hoe om 3D-teksture in Qt Quick 3D te gebruik vir volumetriese straalnasporing. Die StocQt-voorbeeld is heeltemal herontwerp deur Qt-grafieke te gebruik om aandelemarkdata te vertoon.
    Vrystelling van die Qt 6.7-raamwerk en Qt Creator 13-ontwikkelingsomgewing

Daarbenewens kan ons let op die publikasie van die geïntegreerde ontwikkelingsomgewing Qt Creator 13.0, ontwerp vir die skep van kruisplatformtoepassings met behulp van die Qt-biblioteek. Dit ondersteun beide die ontwikkeling van klassieke programme in C++ en die gebruik van die QML-taal, waarin JavaScript gebruik word om skrifte te definieer, en die struktuur en parameters van koppelvlakelemente word deur CSS-agtige blokke gespesifiseer. Klaargemaakte samestellings is geskep vir Linux, Windows en MacOS.

In die nuwe weergawe:

  • Bygevoeg vanlyn en aanlyn installeerders vir ARM-stelsels met Linux.
  • Die Welkom by Qt Creator-koppelvlak is opgedateer om ondersteuning vir donker en ligte temas in te sluit.
    Vrystelling van die Qt 6.7-raamwerk en Qt Creator 13-ontwikkelingsomgewing
  • Verbeterde koppelvlak vir die verskuiwing van panele wat in ontfoutingsmodus gebruik word en die skep van legstukke (Widget Designer). Bygevoeg ondersteuning vir tydelike ineenstorting vir vertikale panele. Dit is moontlik om panele vrylik langs hul kop te beweeg sonder om hulle eers los te koppel.
    Vrystelling van die Qt 6.7-raamwerk en Qt Creator 13-ontwikkelingsomgewing
  • Bygevoeg ondersteuning vir die skep, ontplooiing, hardloop en ontfouting van toepassings vir toestelle wat Qt Application Manager gebruik (vir toepassings gebaseer op Qt 6 en CMake).
  • Gedeeltelike ondersteuning vir iOS 17 bygevoeg.
  • Het die verstekbougids verander om die "bou"-subgids in die projekkode te gebruik. U kan die bougids verander deur die “Voorkeure > Bou en hardloop > Verstekbou-eienskappe > Verstekbougids”-instelling te gebruik.
  • In projekmodus is 'n "Vanished targets"-afdeling bygevoeg, wat kits (skakels na verskillende bounutsmiddels en weergawes van Qt) vertoon wat nie meer beskikbaar is nie, en bied die vermoë om 'n plaasvervanger te skep of dit te gebruik wanneer jy bou, ontplooi en hardloop nog 'n bestaande kit.
  • Dit is moontlik om kits vir projekte in die Python-taal te skep (om 'n ander weergawe van die tolk te kies).
  • Bygevoeg die vermoë om LSP (Language Server Protocol) bedieners vir YAML, JSON en Bash te gebruik.
  • Die koderedigeerder bied ondersteuning om van QML-komponente na hul geassosieerde C++-kode te navigeer.
  • ClangFormat-instellings is herorganiseer. 'n Teksredigeerder met sintakskontrolering word voorsien om jou eie instellings te verander.
    Vrystelling van die Qt 6.7-raamwerk en Qt Creator 13-ontwikkelingsomgewing

Bron: opennet.ru

Voeg 'n opmerking