GTK 4.0 dolazi s poboljšanjima za izvođenje grafičkih sučelja, prijenosa podataka i još mnogo toga

Prije nekoliko dana najavljeno je izdanje nove verzije GTK 4.0, inačici koja je bila u razvoju nekoliko mjeseci i koja postaje nova stabilna grana projekta. Ova nova verzija predstavlja vrlo zanimljive značajke, od kojih možemo istaknuti poboljšanja u reprodukciji medija.

GTK je skup softverskih knjižnica za stvaranje grafičkih sučeljaGTK je izvorno razvijen za potrebe GIMP softvera za obradu slika. Trenutno njegov opseg više nije ograničen samo na GIMP, već se koristi u drugim projektima. Na primjer, GTK je u središtu okruženja GNU mrežnog objektnog modela (GNOME), ali se također može koristiti za pisanje aplikacija za druga Linux okruženja, kao i aplikacija za Microsoft Windows i Apple macOS.

“GTK 4.0 rezultat je napornog rada malog tima posvećenih programera. Imat ćemo zasebni članak koji će preispitati statistiku, ali kratki sažetak je da smo od studenog 3.89.1. verzije 2016 dodali preko 18,000 obveza i napravili preko 20 razvojnih izdanja.

„Čestitamo i veliko hvala svima koji su sudjelovali u ovom naporu, a posebno Benjaminu, Emmanueleu, Timmu, Carlosu, Jonasu i Christianu! «

O novoj verziji GTK 4.0

GTK 4.0 uvodi nove widgete i promjene postojećih elemenata, ugrađena podrška za reprodukciju medija, poboljšanja GPU ubrzanja, poput rada na vašem novi Vulkanov mehanizam za prikazivanje i bolju kompatibilnost s macOS-om. Također možemo primijetiti poboljšanja u prijenosu podataka, redizajnirane sjene, GPU ubrzano pomicanje, poboljšanja u OpenGL prikazivanju izvan Vulkanovog posla, obnavljanje posla u HTMl5 Broadwayu, bolju podršku za Windows itd.

Pogledajmo neke točke malo dublje.

Upravljanje medijima u GT4

  • GTK 4 omogućit će GTK aplikacijama lakši prikaz animacija; bila to programska animacija, webm arhiva ili prijenos uživo.
  • GTK 4 donosi novi API nazvan GdkPaintable koji je nadahnut CSS Houdini naporima. Vrlo je fleksibilan (sve što možete nacrtati može biti GdkPaintable). Sadržaj se može mijenjati (poput svg) ili mijenjati s vremenom (poput webm).
  • Ako imate više specijaliziranih potreba, sve što se može uhvatiti u GtkSnapshot može se pretvoriti u crtež pomoću gtk_snapshot_to_paintable (). Ako izrađujete prilagođeni widget koji želi nacrtati objekt za bojanje, vrlo je jednostavan. Dovoljno je nazvati gdk_paintable_snapshot ().
  • Multimedijsku kontrolu možete imati pomoću widgeta GtkVideo.

Prijenos podataka u GTK4

Tradicionalne metode prijenosa podataka Korisnički pokrenuti između stolnih aplikacija su međuspremnik ili povucite i ispustite. GTK + podržava ove metode, ali do GTK3, API-ji u alatu za ovu vrstu prijenosa podataka bili su fino prikrivene kopije odgovarajućih X11 API-ja. To nije previše iznenađujuće, budući da je cijeli GDK API modeliran u X11. Nažalost, implementacija uključuje rezultate kao što su inkrementalni prijenosi i pretvorbe u formatu niza.

Za GTK4, tim je odlučio napustiti ovaj pristup, odlučujući se za modernizaciju. Ovo je koncept novog pristupa:

„Ako podaci koje vaša aplikacija želi poslati nisu niz, to je vjerojatno objekt, poput GFile, GdkTexture ili GdkRGBA. Aplikacija na strani primatelja ne smije koristiti GTK ili GLib i stoga nije upoznata s tim vrstama. Pa čak i ako to učinite, ne postoji način za premještanje predmeta iz jednog procesa u drugi u komadu.

„Unutar njega prijenos podataka funkcionira slanjem deskriptora datoteke iz izvorne aplikacije i odredišne ​​aplikacije čitanjem toka bajtova. Protokoli za međuspremnik i DND koriste mimičke vrste kao što su text / uri-list, image / png ili application / x-color za prepoznavanje formata bajt toka.

Slanje objekta uključuje pregovaranje o dvostrano kompatibilnom formatu podataka, serializiranje objekta na izvornoj strani u bajtni tok tog formata, prijenos podataka i deserijaliziranje objekta na odredišnoj strani. «

Osim toga, GTK4 dolazi s novim API-ima.

„Prvi API koji uvodimo za rukovanje ovim vrstama je objekt GdkContentFormats. Može sadržavati popis formata, koji mogu biti GTypes ili mime. Objekte GdkContentFormats koristimo za opisivanje formata u kojima aplikacija može ponuditi podatke, kao i formate u kojima aplikacija može primati podatke ”.

izvor: https://blog.gtk.org/


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.