Am 19. Juni veröffentlichte Qt Company Qt 5.13. Wie immer kommen Releases mit neuen Funktionen, Updates, Fehlerbehebungen und Verbesserungen. In Qt 5.13 konzentrierte sich Qt Company auch auf ein Tool, das das Designen, Entwickeln und Bereitstellen von Software mit Qt sowohl für Designer als auch für Entwickler effizienter macht. Werfen wir einen Blick auf einige der Highlights von Qt 5.13 sowie auf einige Tool-Updates.
Qt für WebAssembly
Qt für WebAssembly ermöglicht das Erstellen von Qt-Anwendungen für Webbrowser und wird jetzt vollständig unterstützt. Qt für WebAssembly verwendet Emscripten, um Qt-Anwendungen für den Webserver zu kompilieren, sodass Sie Ihre eigenen Anwendungen in jedem Browser ausführen können, der WebAssembly unterstützt, ohne dass eine clientseitige Installation erforderlich ist. Qt gibt das Tempo für die C++-Entwicklung für WebAssembly vor, und Google hat Qt kürzlich auf der I/O'19-Veranstaltung von Google als Beispiel dafür verwendet, wie C++-Anwendungen im Browser ausgeführt werden können.
Qt-GUI
Die Qt-GUI fasst Klassen für die Integration von Fenstersystemen, Ereignisbehandlung, OpenGL- und Open-GLES-Integration, 2D-Grafiken, grundlegende Bilder, Schriftarten und Text zusammen.
QtQML
Das Qt-QML-Modul bietet eine Plattform für die Entwicklung flexibler Benutzeroberflächen in QML. Verbesserte Unterstützung für in C++ deklarierte Enums, JavaScript „Null“ als Ankerwert wird jetzt zur Kompilierzeit optimiert, und QML generiert jetzt Funktionstabellen in 64-Bit-Fenstern, was das Stack-Unwinding mit JIT-Funktionen ermöglicht.
Qt Quick und Qt Quick Controls 2
Die Standardbibliothek zum Schreiben von QML-Anwendungen und die Bedienelemente für die Benutzeroberfläche zum Erstellen von Benutzeroberflächen wurden ebenfalls aktualisiert. Unterstützung für TableView zum Ausblenden von Zeilen und Spalten hinzugefügt und für Qt Quick Controls 2 SplitView hinzugefügt, ein Steuerelement, das Elemente horizontal oder vertikal mit einer ziehbaren Trennlinie zwischen den einzelnen Elementen anordnet. Außerdem wurde dem Symbol die Cache-Eigenschaft hinzugefügt.
Qt-WebEngine
Qt WebEngine integriert die schnellen Webfunktionen von Chromium in Qt und seine neueste Version basiert jetzt auf Chromium 73. PDF-Anzeige über interne Chromium-Erweiterung, lokaler Client-Zertifikatspeicher der Anwendung, Unterstützung für Client-Zertifikate von QML, Web-Benachrichtigungs-APIs und Thread-Safe und Seite hinzugefügt -spezifische URL-Abfangjäger.
Qt-Netzwerk
Qt Network bietet eine Reihe von APIs für Softwareanwendungen, die TCP/IP verwenden, und fügt Secure Channel-Unterstützung für SSL-Sockets und Unterstützung für OCSP-Stapling hinzu. Ab Qt 5.13 wird nun OpenSSL 1.1 verwendet, um SSL-Verbindungen unter Linux und Android zu unterstützen.
Qt-Multimedia
Stellt eine große Auswahl an QML-Typen und C++-Klassen für die Handhabung von Multimedia-Inhalten bereit. Auch kontinuierliche Wiedergabe zu QML VideoOutput mit der Eigenschaft flushMode, Unterstützung für GStreamer für Windows/macOS und HTTP-Header und Audiorollen für Android hinzugefügt.
Qt-KNX
Clientseitiger Client – Verbindung zum KNXnet/IP-Server. Diese Verbindung kann verwendet werden, um Nachrichten an den KNX-Bus zu senden und die Funktionen von KNX-Geräten zu steuern, die üblicherweise in der Gebäudeautomation verwendet werden. In Qt 5.13 erhielt das Modul eine sichere Client-API.
Qt-OPC-UA
Die nächste Generation von Industrie 4.0-Anwendungen auf Basis der Client/Server-Architektur hat einige Updates erhalten. Grundsätzlich wird die C++-API jetzt vollständig unterstützt, und es wurden technische Vorschauen der QML-API und der Secure Client C++-API hinzugefügt.
Qt CoAP (Technische Vorschau)
Qt CoAP (Constrained Application Protocol) ist eine clientseitige Implementierung des M2M-Protokolls zur Verwendung mit eingeschränkten Hosts und Netzwerken für das Internet der Dinge. In Qt 5.13 erhielt das Modul Unterstützung für TLS (DTLS)-Datagramme über UDP.