Release des Qt 5.13 Frameworks

Nach einem halben Jahr Entwicklung ist bereitgestellt wurde das plattformübergreifende Framework Qt 5.13. Die Quelltexte der Qt-Komponenten werden unter den Lizenzen LGPLv3 und GPLv2 bereitgestellt, die Entwicklungstools von Qt, wie Qt Creator und qmake, sowie einige Module werden unter der GPLv3-Lizenz angeboten.

Haupt Neuheiten:

  • Es wird vollständige Unterstützung für das Modul „Qt for WebAssembly“ (früher experimentell) geboten, das es ermöglicht, grafische Anwendungen basierend auf Qt als Module in WebAssembly zu kompilieren, die direkt im Webbrowser ausgeführt werden können. Zum Kompilieren wird Emscripten verwendet. OpenGL wird nach WebGL übersetzt;
  • Die Möglichkeiten des Qt GUI-Moduls wurden erweitert, das Klassen für die Integration mit Fenstersystemen, Ereignisverarbeitung, Integration mit OpenGL und OpenGL ES, 2D-Grafik, Bildbearbeitung, Schriftarten und Text verallgemeinert. In der neuen Version wurde eine neue API
    QImage::convertTo zum Konvertieren von Bildformaten hinzugefügt. Der Klasse QPainterPath wurden neue Methoden clear, reserve und capacity hinzugefügt;
  • Im Qt QML-Modul, das Werkzeuge zur Entwicklung von Benutzeroberflächen mit der QML-Sprache bereitstellt, wurde die Unterstützung für enumerierte Typen, die in C++ definiert sind, verbessert. Die Verarbeitung von "null"-Werten wurde in der Kompilierungsphase optimiert. Zudem wurde die Funktion zur Generierung von Funktabellen auf 64-Bit-Windows-Systemen hinzugefügt, um das Stapel-Unwinding (unwind) für JIT-kompilierte Funktionen zu ermöglichen.
  • In Qt Quick wurde im Objekt TableView die Möglichkeit zum Ausblenden von Spalten und Zeilen in Tabellen hinzugefügt.
  • In Qt Quick Controls 2 wurde der Typ SplitView für die horizontale oder vertikale Anordnung von Elementen mit einer sichtbaren Trennlinie zwischen den einzelnen Elementen hinzugefügt. Für Symbole wurde eine Eigenschaft hinzugefügt, die das Caching steuert.
  • Der Web-Engine Qt WebEngine wurde auf Chromium 73 aktualisiert und um einen integrierten PDF-Viewer ergänzt, der als internes Plugin implementiert ist. In dieser Version wurde auch ein Speicher für lokale Client-Zertifikate sowie die Unterstützung von Zertifikaten aus QML hinzugefügt. Zudem wurde die API für Web-Benachrichtigungen implementiert. Die Unterstützung zur Bestimmung von URL-Anforderungsinterceptoren wurde realisiert.
  • Im Qt Network-Modul wurde die Unterstützung für SSL-Sockets um sichere Kanäle (Secure Channel) und die Möglichkeit zur Überprüfung des Zertifikatsstatus mittels OCSP (Online Certificate Status Protocol) erweitert. Für die Unterstützung von SSL auf Linux und Android kommt eine neue Version der OpenSSL-Bibliothek 1.1 zum Einsatz;
  • Im Qt Multimedia-Modul wurde die Unterstützung für nahtlose Wiedergabe (ohne Pausen zwischen unterschiedlichem Inhalt, gesteuert durch die Eigenschaft flushMode) für den QML-Typ VideoOutput hinzugefügt. Für Windows und macOS wurde die Nutzung des GStreamer-Frameworks ermöglicht. Auf Android wurde die Unterstützung von Audio-Rollen implementiert;
  • Das Qt KNX-Modul wurde aktualisiert und unterstützt den gleichnamigen Standard zur Steuerung der Gebäudeautomation. Eine API zur Einrichtung sicherer clientseitiger Verbindungen zum KNXnet-Server wurde hinzugefügt, die für die geschützte Übertragung von Nachrichten auf den KNX-Bus und zur Steuerung von KNX-fähigen Geräten genutzt werden kann;
  • Das experimentelle Entwicklungslabel des C++-APIs im Qt OPC UA-Modul, das die Unterstützung des industriellen Kommunikationsstandards OPC/UA gewährleistet, wurde entfernt. Eine experimentelle API für QML wurde hinzugefügt;
  • Ein neues experimentelles Modul für das Qt CoAP (Constrained Application Protocol) wurde hinzugefügt, das die Client-Seite des M2M-Protokolls implementiert, das für die Erstellung von Netzwerken aus Internet der Dinge-Geräten verwendet wird. Es wurde Unterstützung für DTLS (Datagram TLS) über UDP implementiert;
  • Fehlerbehebungen und Verbesserungen wurden im Modulpaket „Qt for Python“ vorgenommen, das die Entwicklung grafischer Anwendungen in Python mit Qt5 ermöglicht (Python-Entwickler erhalten Zugriff auf den Großteil der C++ API von Qt). Qt for Python basiert auf dem Modul PySide2 und setzt dessen Entwicklung fort (im Wesentlichen wird die erste Versionsveröffentlichung von PySide mit Unterstützung für Qt 5 unter einem neuen Namen angeboten);
  • Ein neues experimentelles Modul wurde hinzugefügt Qt Lottie, das eine erweiterte API für QML bereitstellt, die das Rendern von Grafik und Animationen ermöglicht, die im JSON-Format mithilfe des Bodymovin-Plugins von Adobe After Effects exportiert wurden. Mit QtLottie kann ein Designer Animationseffekte in seiner bevorzugten Anwendung vorbereiten, während ein Entwickler die exportierten Dateien direkt an die Benutzeroberfläche von Anwendungen in QtQuick anbinden kann. QtLottie umfasst eine integrierte Mikromotor zur Ausführung von Animationen, Zuschneiden, Layer-Verarbeitung und weiteren Effekten. Der Motor ist über das QML-Element LottieAnimation zugänglich, das aus QML-Code verwaltet werden kann, ähnlich wie bei anderen QtQuick-Elementen;
  • Im Qt Wayland Compositor, einem multithreaded Rendering-System für eingebettete Geräte basierend auf dem Wayland-Protokoll, wird die Unterstützung für die Protokolle linux-dmabuf-unstable-v1 und wp_viewporter gewährleistet. In den Plattformkomponenten für Wayland wurde die Unterstützung für das Protokoll fullscreen-shell-unstable-v1 hinzugefügt;
  • Im Modul zur Unterstützung der Android-Plattform wurde die Möglichkeit hinzugefügt, native Dialoge für die Arbeit mit Dateien zu verwenden. Die Anforderungen an die Mindestversion der Plattform wurden auf Android 5.0 (API Level 21) erhöht;
  • In Qt 3D wurde die Unterstützung für den Import und Export von OpenGL-Textur-Handlern hinzugefügt. Erste Unterstützung für den Import von glTF 2.0-Szenen wurde implementiert;
  • Die Module Qt Script, Qt Quick Controls 1 und Qt XmlPatterns wurden als veraltet erklärt und werden in einer der nächsten Versionen entfernt.
    Das Modul Qt Canvas 3D wurde entfernt.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster