Die Qt Company hat die Veröffentlichung des Frameworks Qt 6.1 bekannt gegeben, in der die Stabilisierung und Erweiterung der FunktionalitĂ€ten des Qt 6-Zweigs fortgesetzt wird. Qt 6.1 bietet UnterstĂŒtzung fĂŒr die Plattformen Windows 10, macOS 10.14+, Linux (Ubuntu 20.04+, CentOS 8.1+, OpenSuSE 15.1+), iOS 13+ und Android (API 23+). Der Quellcode der Qt-Komponenten wird unter den Lizenzen LGPLv3 und GPLv2 bereitgestellt.
Die wichtigsten Verbesserungen in Qt 6.1 beziehen sich hauptsĂ€chlich auf die Integration von Modulen, die in Qt 5.15 verfĂŒgbar waren, aber nicht bereit fĂŒr die Aufnahme in die erste Version von Qt 6 waren. Insbesondere wurden folgende Module hinzugefĂŒgt:
- Active Qt â UnterstĂŒtzung von COM- und ActiveX-Steuerelementen auf der Windows-Plattform.
- Qt Charts â Erstellung von Diagrammen.
- Qt Data Visualization â Visualisierung von statischen und dynamischen Daten.
- Qt Device Utilities â Bestandteil des Pakets Qt for Device Creation.
- Qt Graphical Effect â Schicht zur Vereinfachung der Portierung von Anwendungen auf Qt 6.
- Qt Lottie â rendert Grafiken und Animationen, die im JSON-Format mit dem Bodymovin-Plugin fĂŒr Adobe After Effects exportiert wurden. Beinhaltet einen integrierten Mikromotor zur AusfĂŒhrung von Animationen, Zuschneidungen, Schichten und anderen Effekten.
- Qt State Machine â Framework zur Erstellung von ereignisorientierten Konstruktions und Umsetzung von endlichen Automaten auf Basis von SCXML.
- Qt Virtual Keyboard â Implementierung einer virtuellen Tastatur.
Module, die noch nicht portiert wurden und im LTS-Release Qt 6.2 erwartet werden, das fĂŒr September geplant ist.
- Qt Bluetooth
- Qt Multimedia
- Qt NFC
- Qt Positioning
- Qt Quick Dialogs: Ordner, Nachrichtenfeld
- Qt Remote Objects
- Qt Sensors
- Qt SerialBus
- Qt SerialPort
- Qt WebChannel
- Qt WebEngine
- Qt WebSockets
- Qt WebView
Ănderungen in Qt 6.1:
- In Qt Core wurde an der Benutzerfreundlichkeit und der Vereinfachung der API gearbeitet. Die Methoden removeIf() wurden hinzugefĂŒgt und die Anzahl der Klassen, die die Methode erase_if() unterstĂŒtzen, wurde erweitert. Methoden, die in QString verfĂŒgbar sind, aber in QStringView fehlen, wurden implementiert. PufferĂŒberlaufgeschĂŒtzte Funktionen fĂŒr Addition, Subtraktion und Multiplikation wurden hinzugefĂŒgt. Die UnterstĂŒtzung fĂŒr 16-Bit-Gleitkommawerte wurde verbessert. Die API fĂŒr Property Binding, die in Qt 6.0 eingefĂŒhrt wurde, wurde aktualisiert. Neue Klassen zur Vereinfachung der Integration mit Java, QJniEnvironment und QJniObject wurden hinzugefĂŒgt, die gewöhnlich auf der Android-Plattform benötigt werden.
- Die UnterstĂŒtzung des Grafik-APIs Vulkan 1.1 und 1.2 wurde in Qt Gui verbessert. Eine neue Klasse QUrlResourceProvider wurde eingefĂŒhrt, die in QLabel verwendet wird und es ermöglicht, die Methode loadResource() ohne Neimplementierung und die Erstellung von Unterklassen von QTextDocument zu nutzen. Es wurde die Möglichkeit umgesetzt, benutzerspezifische Funktionen zur Korrektur von Komponenten des Farbraums in der Klasse QColorSpace anzuwenden.
- In Qt Network wurde die Klasse QNetworkInformation eingefĂŒhrt, die es ermöglicht, den Netzwerkstatus im System zu bestimmen. Im HTTP-Cookie-Handler wurde die UnterstĂŒtzung des SameSite-Modus hinzugefĂŒgt.
- In Qt Qml wurden die Optionen QJSPrimitiveValue und QJSManagedValue implementiert, um eine feinere Steuerung der AusfĂŒhrung von JavaScript zu ermöglichen.
- Qt Quick 3D hat die UnterstĂŒtzung fĂŒr das Morphing von Zielanimationen hinzugefĂŒgt und experimentelle UnterstĂŒtzung fĂŒr instanziertes Rendering implementiert, das es ermöglicht, in einem Durchgang viele Kopien Ă€hnlicher Objekte, die in den Randbereichen der Szene platziert sind, zu rendern. Diese Methode beschleunigt das Rendering deutlich, wenn in der Szene viele Ă€hnliche Objekte vorhanden sind. Auf Basis dieser Methode wurde die UnterstĂŒtzung fĂŒr das Rendern von dreidimensionalen Partikeln implementiert.
Quelle: opennet.ru
