A Qt 6.11 keretrendszer kiadása

A Qt Company közzétette a Qt 6.11 keretrendszer kiadását, amelyben folytatták a Qt 6 ágból származó funkcionalitás stabilizálását és növelését. A Qt 6.11 támogatja a Windows 10+, macOS 13+, Linux (Ubuntu 22.04/24.04, openSUSE 15.6/16, SUSE 15 SP6, RHEL 8.10/9.6/10, Debian 11.6/12), iOS 17+, Android 9+(API 23+), webOS, WebAssembly, INTEGRITY, VxWorks, FreeRTOS és QNX platformokat. A Qt komponensek forráskódja LGPLv3 és GPLv2 licenc alatt érhető el. A Qt 6.11 közbenső kiadásnak számít, amelynek nyilvános támogatása 6 hónapig tart (+ további 6 hónap a kereskedelmi felhasználók számára).

A Qt 6.11 főbb változásai:

  • Hozzáadták a Qt Canvas Painter modult, amely API-t biztosít a hardveresen gyorsított 2D-tartalom rendereléséhez, figyelembe véve a HTML Canvas 2D Context specifikációt. A rendereléshez az RHI (Rendering Hardware Interface) motort használják, amely támogatja a különböző 3D API-kat (OpenGL, Vulkan, Metal és Direct 3D), lehetővé téve jelentős teljesítménynövekedés elérését. A végzett tesztek szerint a Qt Canvas Painter kétszer gyorsabb volt a QPainter-hez képest OpenGL backenddel egy tipikus Lenovo ThinkPad P16 Gen 2 laptopon, ötször gyorsabb egy költségkímélő Lenovo Tab M10 HD Android táblagépen, és tízszer gyorsabb egy prémium Samsung Galaxy Tab S8 Android táblagépen.
    A Qt 6.11 keretrendszer kiadása

    A Qt Canvas Painter nemcsak a magas teljesítményt kínálja, hanem támogatja az olyan fejlett funkciókat is, mint a testreszabható élsimítás (antialiasing), az árnyékok és a keretgradiens (QCanvasBoxGradient és QCanvasBoxShadow szintén CSS box-shadow tulajdonság), hálós mintázatok (QCanvasGridPattern), egyedi shader ecsetek és szín-effektusok, amelyek módosítják a átlátszóságot, fényerőt, kontrasztot és telítettséget.

    A Qt 6.11 keretrendszer kiadása
  • A Qt Quick 3D modul funkciói közel állnak a játékmotorok lehetőségeihez. Fokozották a SSGI (Screen Space Global Illumination) renderelési technika támogatását, amely a fényvisszaverődés szimulálására szolgál a posztfeldolgozás során (alternatíva a világítási térkép (lightmap) sütésére), valamint az SSR (Screen Space Reflections) támogatását, amely lehetővé teszi a valós idejű fényvisszaverődések reális megjelenítését. A mozgó objektumok simítási algoritmusát javították a mozgásvektorok generálásával minden egyes objektumhoz. Testreszabható renderelő átjárók (render-pass) valósultak meg, amelyeket közvetlenül a QML-ből lehet használni rétegmaszkokhoz, posztfeldolgozási hatásokhoz és szín szerinti objektummeghatározáshoz (color picking). Új API-k kerültek bevezetésre rétegekhez és címkékhez, amelyek lehetővé teszik a különböző renderelő átjárók kezelését, elemek aktiválását a renderelési csővezeték (render pipeline) különböző szakaszaiban és az irányítási pufferekbe való átirányítást.
    A Qt 6.11 keretrendszer kiadása
  • Bővítették a Qt Graphs modul lehetőségeit. Bevezették a CustomSeries típust, amely lehetővé teszi egyedi grafikonok létrehozását, ahol az adatelemek megjelenítéséért az általunk megadott delegált felelős. A 3D grafikákban támogatják a tengelyek több példányának használatát, például a QBar3DSeries-hoz külön tengelyek használhatók a rowAxis, valueAxis és columnAxis esetében, míg a QScatter3DSeries és QSurface3DSeries esetén külön tengelyek az axisX, axisY és axisZ számára. Új tulajdonságokat adtak hozzá, amelyek lehetővé teszik a színek felülírását a különböző tengelyek számára, a grafikonokhoz tartozó gradiens beállítását, a vonalak stílusának megváltoztatását, a címkék pozicionálását. Példaként bemutatják a testreszabott 2D és 3D grafikonok létrehozását - Wind Turbine Dashboard.
    A Qt 6.11 keretrendszer kiadása
  • Bevezették a kísérleti Qt TaskTree modult, amely deklaratív megközelítést kínál aszinkron feladatok létrehozásához és végrehajtásához C++ nyelven. A Qt TaskTree kulcskomponensei a következők: „receptek” - újra felhasználható objektumok, amelyek az aszinkron munkafolyamatot írják le; „csoportok” - amelyek a gyermekfeladatokra vonatkozó politikákat határoznak meg; egy „tároló” az adatok megosztására a feladatok között; „iterátorok” ciklusokhoz és feladatok újbóli végrehajtásához. A Qt TaskTree megoldja az API-k közötti inkompatibilitás problémáját azáltal, hogy különböző aszinkron API-kat egy egységes interfésszé alakít.
    A Qt 6.11 keretrendszer kiadása
  • Bővítettek a munkafolyamatok lehetőségein, amelyek animált vektorgrafikát hoznak létre SVG és Lottie formátumú képekből. Stabilizálták a Qt Quick VectorImage modult és az lottietoqml eszközt. Támogatást kaptak a morfing animációk, az SVG maszkok, az SVG szimbólumok és a maszkoló rétegek (matte layer, más réteg láthatóságának kezelésére).
  • A Qt Quick Controls-ba új DoubleSpinBox komponens került, a DialogButtonBox-ban pedig bevezették a gombok alapértelmezett kezelésének lehetőségét. A RectangularShadow effektusban független sarkradiusz-vezérlést valósítottak meg.
  • A Qt Widgets-ben a QWizard opciót kapott a StretchBanner; a QAbstractItemView-ban megvalósították a keyboardSearchFlags paramétert a keresési viselkedés beállításához a billentyűk lenyomása közben; a QColumnView-hoz egy tulajdonság került, amely a megtekintés láthatóságát vezérli.
  • Új Qt OpenAPI modul került hozzáadásra, amely lehetővé teszi a HTTP-ügyfél kódjának generálását, amely a Qt Networks RESTful API-t használja, az OpenAPI specifikáció alapján YAML formátumban.
  • A Qt GRPC modulhoz egy mechanizmus került, amely a kérések és válaszok áramlásának és tartalmának kezelését szolgálja.
  • A Qt HTTP Server modulban bővítették a limitek kezelésének eszközeit, és javították a válaszok feldolgozását a munkafolyamatban. A QNetworkRequest-ban lehetőség nyílt a TCP Keep Alive beállítására (alapértelmezés szerint az inaktív kapcsolatok 2 perc után automatikusan megszűnnek).
  • A QML Language Server, amely az IDE-kkel való integrációt szolgálja, információt kapott a QML típus kódjának C++-ban való meghatározásának helyéről, hogy megkönnyítse a navigációt az IDE-ben a QML és C++ között – C++ kód alkalmazásakor a QML objektumok az azonosítóik alapján kereshetők, és egyszerűen bejárható a QML kontextusok hierarchiája.
  • A QRangeModel-hez bevezetésre került a QRangeModelAdapter osztály, amely C++ API-t kínál a modelladatok módosítására, a QAbstractItemModel protokollon keresztül való interakcióval, ezáltal megkönnyítve az adatok átadását a backend C++ kódjából a Qt Quick vagy Qt Widget felé.
  • Támogatást kaptak az Android 16 platformhoz. Megvalósították a Google Play Feature Delivery funkcionalitást az alkalmazás csomagokra bontásához (a fő csomag azonnal települ a Google Play-ből, míg a továbbiak szükség szerint töltődnek be). Android Automotive számára megvalósították a Qt indításának támogatását Android-függőségek nélkül, hogy gyorsan elindulhasson a renderelés.

További érdekesség, hogy nemrég megjelent a Qt Creator 19 integrált fejlesztői környezet, amely a Qt könyvtár használatával lehetővé teszi a platformfüggetlen alkalmazások készítését. Támogatja a klasszikus C++ programok fejlesztését, valamint a QML nyelv használatát is, amelyben a JavaScript-t használják a forgatókönyvek meghatározására, míg az interfész elemeinek struktúráját és paramétereit CSS-szerű blokkok határozzák meg. A kész építmények Linuxra, Windowsra és maсOS-re készültek.

Az újdonságok között emelkedik ki a minimap mód (Preferences > Text Editor > Display > Enable minimap), amely a görgetősáv mellett az összes tartalom mini-vázlatát jeleníti meg, lehetővé téve, hogy egyszerre átfogó képet kapjunk a teljes kódra. Beépítve található egy egyszerű MCP-szerver az AI-asszisztensek integrálásához, amely lehetővé teszi fájlok és projektek megnyitását, építések indítását és hibakeresést. Az építések beállítása külső eszközökön egyszerűsödött — hozzáadódott a Run Auto-Detection gomb, amely automatikusan meghatározza a Qt verzióját, a fordítót, a hibakeresőt és a CMake-t a készülék regisztrációját követően. Megvalósult a közvetlen hozzáférés támogatása a csatlakoztatott eszközök, Android-eszközök és emulátorok fájlrendszereihez.

A Qt 6.11 keretrendszer kiadása


Forrás: opennet.ru
Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster