Rilascio del framework Qt 5.14 e dell'ambiente di sviluppo Qt Creator 4.11.0

Dopo sei mesi di sviluppo preparato rilascio di un framework multipiattaforma Qt 5.14. Il codice sorgente per i componenti Qt è concesso in licenza con LGPLv3 e GPLv2, gli strumenti di sviluppo Qt come Qt Creator e qmake e alcuni moduli sono concessi in licenza con GPLv3. Il rilascio di Qt 5.14 ha segnato l'inizio della preparazione del ramo Qt 6, in cui sono attesi significative modifiche architettoniche. Qt 6 è previsto per la fine del prossimo anno e, per facilitare la transizione al nuovo ramo, è stato deciso di includere implementazioni preliminari di alcune innovazioni nelle versioni Qt 5.14 e Qt 5.15 LTS.

Il principale innovazioni:

  • Qt Quick ha iniziato a lavorare per fornire un'API grafica indipendente dall'API 3D del sistema operativo. Nelle Qt 5.14 proposto implementazione preliminare di un nuovo motore di rendering delle scene utilizzando il nuovo livello RHI (Rendering Hardware Interface) per consentire alle applicazioni Qt Quick di funzionare non solo su OpenGL, come avveniva fino ad ora, ma anche utilizzando Vulkan, Metal e Direct 3D 11. Il nuovo motore è attualmente proposto sotto forma di opzione per preparare le applicazioni per il passaggio a Qt 6, in cui RHI verrà utilizzato per impostazione predefinita per l'output grafico.
  • È stato implementato il modulo Qt Quick Timeline, che semplifica l'animazione delle proprietà utilizzando una timeline e fotogrammi chiave. Il modulo deriva dall'ambiente di sviluppo Qt Design Studio, che fornisce un editor basato su timeline per creare animazioni senza scrivere codice.
  • Aggiunto modulo sperimentale Qt Veloce 3D, che fornisce un'API unificata per la creazione di interfacce utente basate su Qt Quick che combinano elementi grafici 2D e 3D. La nuova API consente di utilizzare QML per definire elementi dell'interfaccia 3D senza utilizzare il formato UIP. Il modulo risolve problemi come un grande sovraccarico durante l'integrazione di QML con contenuti di Qt 3D o 3D Studio e offre la possibilità di sincronizzare animazioni e trasformazioni a livello di fotogramma tra 2D e 3D. In Qt Quick 3D, puoi utilizzare un runtime (Qt Quick), un layout di scena e un framework di animazione per 2D e 3D e utilizzare Qt Design Studio per lo sviluppo dell'interfaccia visiva.
  • Aggiunto WheelHandler, un gestore per gli eventi della rotella del mouse, nonché eventi per una rotella emulata da un touchpad.
  • Il lavoro continua per migliorare le prestazioni sugli schermi con elevata densità di pixel. Inclusa la possibilità di specificare fattori di scala frazionari.
  • Aggiunta la possibilità di aggiungere spazi colore per le immagini, che consente di ottenere una corretta riproduzione del colore durante la visualizzazione di immagini su monitor calibrati.
  • Aggiunto il namespace QColorConstants, che in fase di compilazione consente di generare istanze della classe QColor con una tavolozza predefinita.
  • Il supporto per la lettura e la scrittura Markdown è stato aggiunto ai componenti Qt Widgets e Qt Quick per la creazione di editor di testo.
  • L'API QCalendar implementa la capacità di lavorare con calendari diversi da quello gregoriano.
  • Per Android è stato aggiunto il supporto per gli assembly che si estendono su più ABI, il che consente di compilare un'applicazione per diverse architetture contemporaneamente. È stato inoltre aggiunto il supporto per il formato di pacchetto AAB, consentendo la distribuzione delle applicazioni per tutte le architetture supportate in un unico archivio.
  • Eseguito ottimizzazione delle prestazioni del modulo Qt 3D, compreso il lavoro modernizzato con thread, oggetti framebuffer e sistema di notifica. Di conseguenza, è stato possibile ridurre il carico sulla CPU durante il disegno del frame e aumentare l'efficienza della sincronizzazione tra i thread in esecuzione.
  • Sono state aggiunte API al modulo Qt Network per configurare i parametri HTTP/2 e monitorare la connessione di rete.
  • Il motore web Qt WebEngine è stato aggiornato a Chromium 77 e ampliato con una nuova API per la gestione del ciclo di vita dell'oggetto QWebEnginePage.
  • Licenza per Qt Wayland Compositor, Qt Application Manager e componenti Qt PDF cambiato da LGPLv3 a GPLv3, ovvero Il collegamento con le nuove versioni di questi componenti ora richiede l'apertura del codice sorgente dei programmi con licenze compatibili con GPLv3 o l'acquisto di una licenza commerciale (LGPLv3 consentiva il collegamento con codice proprietario).

Contemporaneamente formato Rilascio dell'IDE QtCreator 4.11.0, progettato per creare applicazioni multipiattaforma utilizzando la libreria Qt. Sono supportati sia lo sviluppo dei classici programmi C++ che l'uso del linguaggio QML, in cui JavaScript viene utilizzato per definire gli script e la struttura ei parametri degli elementi dell'interfaccia sono impostati da blocchi simili a CSS.

La nuova versione di Qt Creator aggiunge il supporto sperimentale per lo sviluppo di applicazioni per microcontrollori e la compilazione in WebAssembly utilizzando moduli "Qt per MCU"E"Qt per WebAssembly". Per sistemi con
CMake 3.14 e le versioni più recenti ne utilizzano uno nuovo per l'impostazione e l'analisi dei progetti API del file (/.cmake/api/). Aggiunto supporto all'editor di codice espansione Protocollo Language Server per evidenziare la semantica e anche configurazione semplificata del Language Server per il linguaggio Python. È stata aggiunta un'opzione all'interfaccia per modificare lo stile di marcatura della fine della linea. La possibilità di modificare i collegamenti QML è stata aggiunta a Qt Quick Designer.

Fonte: opennet.ru

Aggiungi un commento