Företaget Qt Company har slÀppt Qt 6.9-ramverket, som fortsÀtter arbetet med att stabilisera och utöka funktionaliteten i Qt 6-grenen. I Qt 6.9 har stöd lagts till för plattformar som Windows 10+, macOS 12+, Linux (Ubuntu 22.04/24.04, openSUSE 15.5, SUSE 15 SP5, RHEL 8.10/9.4, Debian 11.6), iOS 16+, Android 9+(API 23+), webOS, WebAssembly, INTEGRITY, VxWorks, FreeRTOS och QNX. KÀllkoden för Qt-komponenter levereras under licenserna LGPLv3 och GPLv2. Qt 6.9 har status som ett interimistiskt slÀpp, som kommer att ha allmÀn support i 6 mÄnader (+ ytterligare 6 mÄnader för kommersiella anvÀndare).
Huvudsakliga Àndringar i Qt 6.9:
- Utvecklingen av Qt Graphs-modulen har fortsatt, som Àr avsedd för att skapa 2D- och 3D-diagram samt för att visualisera stora samlingar av snabbt förÀnderliga data. Modulen anvÀnder Qt Quick 3D och RHI (Rendering Hardware Interface) rendering motor, som stöder olika 3D-API:er (OpenGL, Vulkan, Metal och Direct 3D). I den nya versionen har stöd för transparens lagts till i QML-typen Surface3D, klassen QSpline3DSeries har implementerats för att rita data som 3D-splines, och ytterligare anpassningsmöjligheter för diagram, axlar och etiketter har lagts till. Det har blivit möjligt att infoga diagram i applikationer baserade pÄ Qt Quick 3D, med hjÀlp av egenskapen "importScene" i scener baserade pÄ View3D. InstÀllningarna för inmatningsparametrar i 2D-diagram har förenklats. I QGraphsView har stöd för exakt placering av det rektangulÀra omrÄdet (plotArea) för diagrammet lagts till.

- Möjlighet att identifiera emoji-koder i texten och anvÀnda korrekta fÀrgtypsnitt för att visa dem har implementerats. I QFontDatabase har en ny API lagts till för att vÀlja typsnittsfamilj för emoji. För nÀrvarande stöds typsnitt i formaten CBDT och COLRv1. Om sÄ önskas kan parsering av emoji inaktiveras.


- En API för att skapa grÀnssnitt dÀr grÀnsytor blandas med innehÄllet och inte distraherar anvÀndaren (innehÄllet tÀcker hela fönstrets utrymme utan nÄgon markering av rubriken) har lagts till. För att expandera applikationens grÀnssnittsomrÄde till hela fönstret har flaggan Qt.ExpandedClientAreaHint lagts till, och för att markera omrÄden med funktionselement, sÄsom rubrik, sidfot och meny, som inte ska korsa applikationens interna grÀnssnittselement, har egenskapen "SafeArea" implementerats i Qt Quick.

- Qt SVG-modulen har fÄtt inledande stöd för CSS-animationer, som för nÀrvarande bara gÀller egenskaperna "color", "fill", "stroke" och "transform".
- Arbetet med att förbÀttra prestandan har genomförts.
- PÄ system med hybrid-CPU:er, utrustade med separata högpresterande och energieffektiva kÀrnor, har QThread fÄtt möjlighet att ge schemalÀggaren en hint om vilken typ av CPU-kÀrnor den angivna trÄden bör köras pÄ.
- För applikationer som anvÀnder QQuickPaintedItem med OpenGL har renderingslÀget FramebufferObject tillÄtits, dÀr hÄrdvaruacceleration anvÀnds.
- I RHI-backend (Rendering Hardware Interface) för OpenGL ES har ett tillÀgg aktiverats som stödjer multisamplad rendering, vilket gör det möjligt att öka prestandan för Qt Quick och Qt Quick 3D pÄ moderna GPU:er.
- I RHI-backend för Direct 3D har en separat trÄd lagts till för att övervaka avslutningen av vertikal synkronisering (vblank), vilket har minskat latensen i interaktiva grÀnssnitt.
- I alla RHI-backends, utom OpenGL, har stöd för mekanismen Variable Rate Shading (VRS) lagts till, vilket sÀkerstÀller att applikationer för virtuell verklighet baserade pÄ Quick 3D XR kan rendera med hÀnsyn till anvÀndarens siktlinje.
- I Qt Quick har ett nytt element, RectangularShadow, föreslagits för att minska CPU-belastningen vid anvÀndning av skugg- och glöd-effekter i grÀnssnittet.
- I klassen QHeaderView har minnesanvÀndningen minskat avsevÀrt nÀr storleksÀndring och omgruppering av sektioner Àr avstÀngda.
- I Quick 3D har tekniken »Weighted Blended« implementerats, som möjliggör rendering av genomskinliga objekt utan att utföra separata djupsorteringsoperationer. Den implementerade tekniken eliminerar uppkomsten av artefakter pÄ grund av felaktig sortering, vilket uppstÄr nÀr objekt överlappar varandra. NÀr det gÀller CPU-belastning och minnesanvÀndning Àr den nya metoden identisk med den gamla.

- Modulen Qt Network Authorization har lagts till, som tillhandahÄller API för autentisering via protokollen OAuth1 och OAuth2, som kan anvÀndas för att fÄ Ätkomst till onlinetjÀnster utan att avslöja anvÀndarens lösenord.
- Arbetet med att förstÀrka skyddet av Qt HTTP Server-modulen har genomförts. I QHttpServerConfiguration har möjligheten att begrÀnsa det maximala antalet inkommande förfrÄgningar lagts till. I QHttp2Configuration har stöd för att stÀlla in det maximala antalet samtidigt skapade strömmar lagts till för HTTP/2-klienter.
- I QML Language Server, implementeringen servern LSP (Language Server Protocol) för QML ger information om QML:s struktur, vilket möjliggör visning av en hierarkisk representation av QML-strukturen i kodredigerare och integrerade utvecklingsmiljöer.
- I Qt Quick har en ny komponent, ContextMenu, lagts till, vilket förenklar bindningen av kontextmenyer till element som öppnas vid plattformsspecifika hÀndelser, sÄsom högerklick. För komponenterna TextField och TextArea har standardkontextmenyer lagts till.
KĂ€lla: opennet.ru





