Rilascio del framework Qt 6.7 e dell'ambiente di sviluppo Qt Creator 13

Qt Company ha rilasciato Qt 6.7, continuando a stabilizzare e ampliare le funzionalità della serie Qt 6. Con Qt 6.7, è stata aggiunta la compatibilità con le piattaforme 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 e QNX. I codici sorgenti dei componenti Qt sono forniti sotto le licenze LGPLv3 e GPLv2.

Principali cambiamenti in Qt 6.7:

  • Migliorata la compatibilità del codice che utilizza elementi dello standard C++20. Sono state aggiunte le classi Qt::{strong,weak,partial}_ordering con implementazione dei tipi std::*_ordering, in linea con la specifica C++17, e macro che si espandono nell'operatore di confronto triplo «» quando compilate da compilatori che supportano C++20 (se il compilatore supporta solo C++17, le macro tornano a utilizzare gli operatori normali).

    È stata fornita la possibilità di utilizzare il template della classe std::span per rappresentare una sequenza continua di oggetti, che per i sistemi con C++17 è sostituita dalla classe QSpan. È continuato il lavoro per implementare il supporto della libreria std::chrono in vari API di Qt. Ad esempio, i timeout nell'API Qt Network vengono ora definiti utilizzando i tipi std::chrono e specificati in forma di letterali, come «5s» per indicare 5 secondi.

  • È proseguito lo sviluppo del modulo sperimentale Qt Graphs, progettato per la creazione di vari tipi di grafici e la visualizzazione di grandi collezioni di dati in rapido cambiamento. Il modulo si evolve come una sostituzione universale del vecchio modulo Qt DataVisualization, legato a OpenGL, e del modulo Qt Charts. Il nuovo modulo utilizza Qt Quick 3D e il motore di rendering RHI (Rendering Hardware Interface), supportando vari API 3D (OpenGL, Vulkan, Metal e Direct 3D). Nella nuova versione, oltre alla visualizzazione 3D, è stato aggiunto il supporto per grafici circolari e lineari 2D, così come diagrammi di dispersione. È stata garantita l'integrazione con gli strumenti di animazione e effetti disponibili in Qt Quick. È stato aggiunto il supporto per i temi. È stata modernizzata l'architettura, riducendo il numero di operazioni di allocazione della memoria.
    Rilascio del framework Qt 6.7 e dell'ambiente di sviluppo Qt Creator 13
  • Sono state aggiunte nuove classi QHttpHeaders, QNetworkRequestFactory, QRestAccessManager e QRestReply per lo sviluppo di applicazioni client che utilizzano API basate su HTTP e architettura REST (REpresentational State Transfer).
  • Le funzionalità del modulo Qt GRPC, che consente di accedere ai servizi gRPC, sono state ampliate. In Qt gRPC sono state aggiunte nuove classi per chiamate client, server e streaming bidirezionale, che consentono di organizzare lo scambio di messaggi con attivazione automatica al cambiamento dei valori. È stato proposto un API Interceptor per allegare gestori di callback a messaggi gRPC selezionati, che possono essere utilizzati, ad esempio, per organizzare logging o caching.
  • Nel modulo Qt Protobuf, progettato per la serializzazione delle classi Qt utilizzando il protocollo Protocol Buffer, è stata aggiunta la possibilità di serializzare in formato JSON o da esso.
  • Nel modulo di grafica vettoriale Qt SVG è stato aggiunto il supporto per elementi SVG 1.1 e 2.0, spesso utilizzati nelle immagini SVG nella pratica (<symbol>, <marker>, <pattern>, <mask> e <filter>), permettendo di visualizzare la maggior parte dei file SVG. Per coloro che necessitano di un supporto completo di SVG 2.0, viene offerto di utilizzare il modulo Qt WebEngine. È stata aggiunta un'utilità svgtoqml per convertire SVG in QML per importare grafiche vettoriali direttamente nella scena di Qt Quick. È stata stabilizzata la possibilità di utilizzare il modulo Qt Quick Shapes per il rendering di curve di alta qualità tramite shader frammentari.
  • È stato aggiunto il supporto per font variabili, in cui lo spessore, la larghezza e altre caratteristiche stilistiche del glifo possono variare arbitrariamente. È stato aggiunto il supporto per le librerie di icone. Utilizzando la chiamata QIcon::fromTheme, è stata implementata la possibilità di mappare il nome di un'icona a un simbolo nella libreria di icone.
  • È stata fornita la possibilità di incorporare finestre native per la piattaforma corrente nella scena di Qt Quick, consentendo di utilizzare nell'interfaccia basata su Qt Quick elementi dell'interfaccia forniti dalla piattaforma, ad esempio, è possibile incorporare AppKit MapView o Windows Media player.
    Rilascio del framework Qt 6.7 e dell'ambiente di sviluppo Qt Creator 13
  • È stato aggiunto il supporto per l'aggiunta, alle applicazioni basate su Qt Quick o Qt Widgets, di codice di rendering che utilizza qualsiasi API grafica supportata in Qt (Vulkan, OpenGL, Direct3D, Metal). L'aggiunta viene effettuata tramite le classi QRhiQuickItem e QRhiWidget.
  • È stata garantita la piena supporto per le piattaforme macOS 14, iOS 17, Windows 11 23H2, Android 14, RHEL 9.2, openSUSE 15.5, SUSE Linux Enterprise Server 15. Sono state aggiunte build per Windows, compilate utilizzando strumenti MinGW basati su LLVM. Sono state aggiunte build preliminari per l'architettura ARM (per Windows e Linux), per la piattaforma VxWorks 7 e per QNX 7.1.
  • È stata aggiornata la stack Boot2Qt, utilizzabile per creare sistemi mobili avviabili con un ambiente basato su Qt e QML. L'ambiente di sistema in Boot2Qt è stato aggiornato alla piattaforma Yocto 4.3.
  • Sono stati aggiunti nuovi esempi di applicazioni. L'esempio Lightning Viewer utilizza Qt Location e Qt Quick Controls per visualizzare in modo interattivo i dati relativi ai temporali sulla mappa. Una nuova dimostrazione, OSM Buildings, utilizza Qt Quick 3D, Qt Positioning e Qt Network per creare una mappa 3D degli edifici basata su informazioni di OpenStreetMap. Nell'esempio Virtual Assistant vengono dimostrate le capacità di lavorare con l'animazione 3D. L'esempio Volumetric rendering mostra come utilizzare le texture 3D in Qt Quick 3D per il ray tracing volumetrico. L'esempio StocQt è stato completamente riprogettato, utilizzando Qt Graphs per mostrare i dati sulle quotazioni di mercato.
    Rilascio del framework Qt 6.7 e dell'ambiente di sviluppo Qt Creator 13

Inoltre, si segnala la pubblicazione dell'ambiente di sviluppo integrato Qt Creator 13.0, progettato per creare applicazioni multipiattaforma utilizzando la libreria Qt. Supporta sia lo sviluppo di programmi classici in C++, sia l'uso del linguaggio QML, in cui gli script sono definiti con JavaScript e la struttura e i parametri degli elementi dell'interfaccia sono impostati in blocchi simili a CSS. Le build pronte sono state create per Linux, Windows e macOS.

Nella nuova versione:

  • Aggiunti installer offline e online per sistemi ARM con Linux.
  • Aggiornato il design dell'interfaccia di Welcome to Qt Creator, con supporto per temi scuri e chiari.
    Rilascio del framework Qt 6.7 e dell'ambiente di sviluppo Qt Creator 13
  • Migliorata l'interfaccia per il spostamento dei pannelli, utilizzata in modalità di debug e durante la creazione di widget (Widget Designer). Per i pannelli verticali è stato aggiunto il supporto per la riduzione temporanea. È ora possibile spostare liberamente i pannelli per il loro titolo senza disattivare prima il bloccaggio.
    Rilascio del framework Qt 6.7 e dell'ambiente di sviluppo Qt Creator 13
  • Aggiunta la possibilità di creare, distribuire, avviare e fare debug di applicazioni per dispositivi che utilizzano Qt Application Manager (per applicazioni basate su Qt 6 e CMake).
  • Aggiunto supporto parziale per iOS 17.
  • Cambiato il catalogo di costruzione predefinito, che ora utilizza la sottocartella "build" nel codice del progetto. È possibile modificare il catalogo di costruzione attraverso l'impostazione "Preferences > Build & Run > Default Build Properties > Default build directory".
  • In modalità progetto, è stata aggiunta la sezione "Vanished targets", in cui vengono visualizzati i kit (associazioni a diversi strumenti di build e versioni di Qt) che non sono più disponibili, fornendo la possibilità di crearne di sostitutivi o usare un altro kit esistente durante build, distribuzione e avvio.
  • Fornita la possibilità di creare kit per progetti in Python (per scegliere un'altra versione dell'interprete).
  • È stata aggiunta la possibilità di utilizzare server LSP (Language Server Protocol) per YAML, JSON e Bash.
  • Nell'editor di codice è supportato il passaggio dai componenti QML al codice C++ correlato.
  • Riorganizzate le impostazioni di ClangFormat. Per cambiare le impostazioni personali, è fornito un editor di testo per i parametri con verifica della sintassi.
    Rilascio del framework Qt 6.7 e dell'ambiente di sviluppo Qt Creator 13

Fonte: opennet.ru

Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster