GTK 4.0 levereras med förbättringar för att utföra grafiska gränssnitt, dataöverföring och mer

Några dagar sedan lanseringen av den nya versionen av GTK 4.0 tillkännagavs, version som var under utveckling i flera månader och som blir den nya stabila grenen av projektet. Den här nya versionen presenterar mycket intressanta funktioner, av vilka vi kan lyfta fram förbättringarna i medieuppspelning.

GTK är en uppsättning mjukvarubibliotek för att skapa grafiska gränssnitt.GTK utvecklades ursprungligen för behoven hos GIMP bildbehandlingsprogram. Idag är dess omfattning inte längre begränsad till bara GIMP, utan används i andra projekt. Till exempel GTK är hjärtat i GNU nätverksobjektmodellmiljön (GNOME), men den kan också användas för att skriva applikationer för andra Linux-miljöer, samt applikationer avsedda för Microsoft Windows och Apple macOS.

"GTK 4.0 är resultatet av det hårda arbetet från ett litet team av dedikerade utvecklare. Vi kommer att ha en separat artikel för att gå igenom statistiken, men den snabba sammanfattningen är att sedan version 3.89.1 november 2016 har vi lagt till över 18,000 20 commits och gjort över XNUMX utvecklingsbyggen.

”Grattis och ett stort tack till alla som deltog i denna insats, och i synnerhet till Benjamin, Emmanuele, Timm, Carlos, Jonas och Christian! «

Om den nya versionen av GTK 4.0

GTK 4.0 introducerar nya widgets och ändringar av befintliga element, inbyggt stöd för medieuppspelning, GPU-accelerationsförbättringar, som att arbeta med din ny Vulkan-renderingsmotor och bättre kompatibilitet med macOS. Vi kan också märka förbättringar i dataöverföring, omdesignade shaders, GPU-accelererad rullning, förbättringar i OpenGL-rendering utöver Vulkan-arbete, återställning av arbete i HTMl5 Broadway, bättre Windows-stöd etc.

Låt oss titta på några punkter lite mer ingående.

Mediehantering i GT4

  • GTK 4 kommer att göra det lättare för GTK-applikationer att visa animationer; oavsett om det är programmatisk animation, webbm-arkiv eller livestreaming.
  • GTK 4 ger ett nytt API som heter GdkPaintable som inspirerades av Houdinis CSS-satsning. Det är väldigt flexibelt (allt du kan rita kan vara en GdkPaintable). Innehåll kan ändras storlek (som svg) eller ändras över tid (som webm).
  • Om du har mer specialiserade behov kan allt som kan fångas i en GtkSnapshot konverteras till en ritning med gtk_snapshot_to_paintable( ). Om du skapar en anpassad widget som vill rita ett objekt att måla, är det väldigt enkelt. Ring bara gdk_paintable_snapshot( ).
  • Du kan ha multimediakontroll med hjälp av GtkVideo-widgeten.

Dataöverföring i GTK4

Traditionella metoder för överföring av data Användarinitierade mellan skrivbordsapplikationer är urklipp eller dra och släpp. GTK+ stöder dessa metoder men fram till GTK3 var API:erna som verktygslådan hade för denna typ av dataöverföring tunt förklädda kopior av motsvarande X11 API:er. Detta är inte alltför överraskande, eftersom hela GDK API har modellerats på X11. Tyvärr inkluderar implementeringen resultat som inkrementella överföringar och strängformatkonverteringar.

För GTK4 beslutade teamet att överge detta tillvägagångssätt., väljer en modernisering. Detta är konceptet för det nya tillvägagångssättet:

"Om data som din app vill skicka inte är en sträng, är det förmodligen ett objekt, som GFile, GdkTexture eller GdkRGBA. Applikationen på den mottagande sidan kanske inte använder GTK eller GLib och känner därför inte till dessa typer. Och även om det gör det, finns det inget sätt att överföra objekt från en process till en annan i ett stycke.

"Inom den fungerar dataöverföringen genom att skicka en filbeskrivning från källapplikationen och destinationsapplikationen som läser en ström av byte. Protokollen för urklipp och DND använder mimetyper som text/uri-list, image/png eller application/x-color för att identifiera formatet för byteströmmen.

"Att skicka ett objekt innebär att förhandla fram ett dataformat som är kompatibelt med båda sidor, serialisera objektet på källsidan till en byteström av det formatet, överföra data och deserialisera objektet på destinationssidan. «

Dessutom, GTK4 kommer med nya API:er.

"Det första API vi introducerar för att hantera dessa typer är GdkContentFormats-objektet. Den kan innehålla en lista med format, som kan vara GTypes eller mime. Vi använder GdkContentFormats-objekt för att beskriva de format som en applikation kan erbjuda data i, samt i vilka format en applikation kan ta emot data.

Fuente: https://blog.gtk.org/


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.