Rilascio del framework Qt 5.13

Dopo sei mesi di sviluppo è preparato rilascio del framework multipiattaforma Qt 5.13. I testi sorgente dei componenti Qt sono forniti con licenze LGPLv3 e GPLv2, e gli strumenti Qt per sviluppatori, come Qt Creator e qmake, così come alcuni moduli, sono forniti con licenza GPLv3.

Principali novità:

  • È garantito il supporto completo per il modulo "Qt for WebAssembly" (precedentemente era sperimentale), che consente di compilare applicazioni grafiche basate su Qt come moduli WebAssembly, eseguibili direttamente in un browser web. Viene utilizzato Emscripten per la compilazione. OpenGL viene convertito in WebGL;
  • Ampliate le capacità del modulo Qt GUI, che generalizza le classi relative all'integrazione con i sistemi finestra, gestione eventi, integrazione con OpenGL e OpenGL ES, grafica 2D, lavorazione con immagini, caratteri e testo. Nella nuova versione è stato aggiunto un nuovo API
    QImage::convertTo per la conversione dei formati delle immagini. Nella classe QPainterPath sono stati aggiunti nuovi metodi clear, reserve e capacity;
  • Nel modulo Qt QML, che fornisce strumenti per lo sviluppo dell'interfaccia utilizzando il linguaggio QML, è stato migliorato il supporto per i tipi enumerati definiti nel codice C++. È stata ottimizzata la gestione dei valori "null" in fase di compilazione. È stata aggiunta la possibilità di generare tabelle delle funzioni su sistemi Windows a 64 bit, consentendo il unwind dello stack per le funzioni compilate JIT;
  • In Qt Quick, nell'oggetto TableView è stata aggiunta la possibilità di nascondere colonne e righe delle tabelle;
  • In Qt Quick Controls 2 è stato aggiunto il tipo SplitView per la disposizione orizzontale o verticale degli elementi con visualizzazione di un separatore mobile tra ciascun elemento. È stata aggiunta una proprietà per gestire la cache delle icone;
  • Il motore web Qt WebEngine è stato aggiornato allo stato Chromium 73 e ampliato con il supporto per un visualizzatore PDF integrato, realizzato come un addon interno. Nel nuovo rilascio è stato aggiunto anche uno storage per certificati client locali e il supporto per i certificati da QML. È stato implementato un API per le notifiche web. È stata realizzata la supporto per l'identificazione dei rispondenti alle richieste URL;
  • Nel modulo Qt Network per i socket SSL è stata aggiunta la possibilità di utilizzare canali protetti (Secure Channel) e la verifica dello stato dei certificati tramite il protocollo OCSP (Online Certificate Status Protocol). Per il supporto SSL su Linux e Android è stata utilizzata una nuova serie della libreria OpenSSL 1.1;
  • Nel modulo Qt Multimedia per QML del tipo VideoOutput è stata aggiunta la supporto per la riproduzione continua (senza pause tra contenuti diversi, gestito dalla proprietà flushMode). Per Windows e macOS è stata aggiunta la possibilità di utilizzare il framework GStreamer. Per Android è stata aggiunta la supporto per i ruoli audio;
  • È stato aggiornato il modulo Qt KNX con il supporto per il relativo standard per la gestione dell'automazione domestica. È stata aggiunta un'API per stabilire connessioni sicure tra client e server KNXnet, utilizzabili per l'invio protetto di messaggi sul bus KNX e per il controllo dei dispositivi compatibili con KNX;
  • È stata rimossa la classificazione di sviluppo sperimentale dall'API C++ del modulo Qt OPC UA, che fornisce supporto per lo standard di comunicazione industriale OPC/UA. È stata aggiunta un'API sperimentale per QML;
  • È stato aggiunto un nuovo modulo sperimentale Qt CoAP (Constrained Application Protocol) con l'implementazione della parte client del protocollo M2M, utilizzato per creare reti di dispositivi Internet of Things. È stato implementato il supporto per DTLS (Datagram TLS) sopra UDP;
  • Sono state apportate correzioni e miglioramenti al set di moduli "Qt for Python" per la creazione di applicazioni grafiche in Python utilizzando Qt5 (agli sviluppatori Python è fornito accesso alla maggior parte delle API C++ di Qt). Qt for Python si basa sul modulo PySide2 e continua il suo sviluppo (essenzialmente, come primo rilascio di PySide con supporto per Qt 5 è ora offerto con un nuovo nome);
  • È stato aggiunto un nuovo modulo sperimentale Qt Lottie, che fornisce un'API avanzata per QML, consentendo di disegnare grafica e animazione esportate in formato JSON utilizzando il plugin Bodymovin per il pacchetto Adobe After Effects. Grazie a QtLottie, il designer può preparare effetti animati nell'applicazione di propria scelta, mentre lo sviluppatore può collegare direttamente i file esportati all'interfaccia delle applicazioni in QtQuick. QtLottie include un micro-motore integrato per l'esecuzione di animazioni, ritagli, gestione dei livelli e altri effetti. Il motore è accessibile tramite l'elemento QML LottieAnimation, che può essere controllato dal codice QML proprio come qualsiasi altro elemento di QtQuick;
  • Nel Qt Wayland Compositor, un sistema di rendering multi-thread per dispositivi embedded basato sul protocollo Wayland, è stata garantita la supporto per i protocolli linux-dmabuf-unstable-v1 e wp_viewporter. Nella piattaforma di componenti per Wayland è stata aggiunta la supporto per il protocollo fullscreen-shell-unstable-v1;
  • Nel modulo di supporto per la piattaforma Android è stata aggiunta la possibilità di utilizzare dialoghi nativi per la gestione dei file. I requisiti per la versione minima della piattaforma sono stati innalzati a Android 5.0 (API level 21);
  • In Qt 3D è stato aggiunto il supporto per l'importazione e l'esportazione degli handler delle texture OpenGL. È stata implementata una prima versione del supporto per l'importazione delle scene glTF 2.0;
  • I moduli Qt Script, Qt Quick Controls 1 e Qt XmlPatterns sono stati dichiarati obsoleti e verranno rimossi in una delle prossime versioni.
    È stato rimosso il modulo Qt Canvas 3D.

Fonte: opennet.ru

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