GTK (set de instrumente)

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
GTK
software
Siglă
Widget GTK + 3.12.0
Widget GTK + 3.12.0
Tip Biblioteca de grafică (nu este listată )
Dezvoltator Fundația GNOME și proiectul GNU
Data primei versiuni 14 aprilie 1998 ; Acum 23 de ani
Ultima versiune 4.2.1 (4 mai 2021)
Sistem de operare Linux
Microsoft Windows
macOS
Limba C.
Licență GNU LGPL v2.1 și GNU Lesser General Public License
( licență gratuită )
Limbă Multilingv
Site-ul web gtk.org/

GTK (anterior GTK + [1] , acronim care înseamnă GIMP ToolKit ) în informatică , este un set de instrumente (set de instrumente, principalul fiind biblioteca libgtk) pentru crearea de interfețe grafice . Dezvoltat în C , suportă nativ sistemul Windows X , Wayland și mediul grafic Microsoft Windows . Este software gratuit (parte a proiectului GNU ) sub licență LGPL .

Setul de instrumente, conceput inițial ca ajutor de programare pentru binecunoscutul program grafic GIMP , a câștigat popularitate ocolind Motif și devenind o parte fundamentală a mediului desktop GNOME .

Limba

GTK folosește limbajul de programare extins C , datorită GLib și GObject , paradigma de programare orientată obiect . GTK oferă legături pentru limbi precum C ++ , Perl , Ruby , Java și Python ( PyGTK ). Alții au adăugat, de asemenea, suport pentru alte limbi, cum ar fi Ada , Fortran , D , Haskell , Pascal , PHP , Pike și C # datorită Mono (Gtk #). De asemenea, puteți utiliza HTML5 ca ieșire vizualizând interfața browserului. [2]

Cod care nu este legat de grafică

GTK conținea inițial unele funcții de utilitate care nu erau strict legate de grafică, cum ar fi furnizarea de structuri de date , liste legate și arbori binari . Aceste utilități generale, împreună cu sistemul de obiecte numit GObject, sunt acum migrate într-o bibliotecă separată, GLib , pe care programatorii o pot folosi în continuare pentru a dezvolta cod care nu necesită o interfață grafică. Un exemplu tipic al acestei abordări este proiectul GStreamer . Biblioteca GLib este întreținută chiar de dezvoltatorii GTK.

Datorită extensibilității, portabilității și bunătății tehnice, a fost ales ca o componentă pentru alte seturi de instrumente widget, cum ar fi wxWidgets .

Platforme

Inițial, setul de instrumente GTK era destinat doar sistemului X Window , care rămâne însă platforma de referință. În prezent poate fi instalat pe Microsoft Windows (de la versiunea 2.8 este necesară Windows 2000 sau o versiune ulterioară), DirectFB și Quartz ( Mac OS X Tiger sau o versiune superioară, încă în curs de dezvoltare) și, de asemenea, cu noul protocol grafic de referință pe GNU / Linux Wayland .

Aspect

Editorul de textgedit ”, creat cu GTK + 2

Utilizatorul final poate configura aspectul interfeței după bunul său plac datorită posibilității de a schimba tema utilizată. Este astfel posibil să se imite aspectul altor biblioteci sau alte medii, inclusiv Windows 95 , Motif , Qt sau NeXTSTEP . Temele pot fi configurate din versiunea 3 prin CSS [3] și pot gestiona margini rotunjite, animații și transparențe.

GtkBuilder este sistemul pentru crearea aspectului interfețelor grafice fără a scrie cod. Interfața grafică a aplicației este descrisă în XML , fișierul este încărcat la pornirea aplicației și creează toate obiectele grafice. Editorul Glade vă permite să creați interfața grafică în modul WYSIWYG . Fișierele de interfață XML sunt independente de limbajul utilizat de aplicație.

Istorie

GTK + 2

GTK + 2 dezvoltat cu intenția de a înlocui și îmbunătăți GTK +. Printre noile caracteristici [4] , adăugate treptat deja de GTK + original, se numără:

  • un manager de teme (introdus deja în versiunea 1.2.0 dar refăcut ulterior pentru a permite personalizarea fiecărui element grafic)
  • gestionarea îmbunătățită a redării textului internațional cu Pango (introdus în versiunea 1.3.1)
  • un API mai flexibil în urma mișcării logicii obiectelor din biblioteca GObject (din versiunea 1.3.1)
  • tranziția completă la Unicode cu adoptarea șirurilor UTF-8 (de la versiunea 1.3.2)
  • accesibilitatea pentru persoanele cu dizabilități s-a îmbunătățit cu utilizarea bibliotecii ATK (începând cu versiunea 1.3.5)

Cu toate acestea, GTK + 2 nu este compatibil cu GTK + 1, iar programatorii trebuie să migreze vechiul cod.

Începând cu versiunea 2.8, GTK + 2 depinde de biblioteca Cairo pentru a reda interfața utilizând grafică vectorială 2D.

GTK + 3

Widgeturi GTK + 3.12

Versiunea 3 a fost lansată pe 10 februarie 2011 [5] și include următoarele caracteristici principale:

  • Componenta grafică GDK este independentă de X11
  • Cairo este utilizat pentru fiecare operație grafică
  • XInput2 este utilizat pentru gestionarea intrărilor, gesturi de sprijin și multi-touch
  • a pus la dispoziție un API pentru crearea temelor bazate pe CSS
  • widget-uri noi disponibile
  • decorarea ferestrei din partea clientului

GTK 4

Lansat în septembrie 2020, acesta reprezintă cea mai recentă dezvoltare a GTK. [6] Noua versiune include un nou motor de redare Vulkan și OpenGL , îmbunătățește suportul Wayland și performanțe mai bune. [7]

Eliberare

Versiunea de familie Data lansării inițiale Principalele îmbunătățiri Ultima versiune minoră
1.0 Arhivat 12 august 2014 la Internet Archive . 14 aprilie 1998 Prima versiune stabilă 1.0.6
1.2 27 februarie 1999 Widgeturi noi (GtkFontSelector, GtkPacker, GtkItemFactory, GtkCTree, GtkInvisible, GtkCalendar, GtkLayout, GtkPlug, GtkSocket) 1.2.10
2.0 11 martie 2002 S-a mutat gestionarea obiectelor în GLib (GObject) și suport unicode cu codare UTF-8 2.0.9
2.2 22 decembrie 2002 Suport multi-cap 2.2.4
2.4 16 martie 2004 Widgeturi noi (GtkFileChooser, GtkComboBox, GtkComboBoxEntry, GtkExpander, GtkFontButton, GtkColorButton) 2.4.14
2.6 16 decembrie 2004 Widgeturi noi (GtkIconView, GtkAboutDialog și GtkCellView) 2.6.10
2.8 13 august 2005 Integrare cu cairo 2.8.20
2.10 3 iulie 2006 Widgeturi noi (GtkStatusIcon, GtkAssistant, GtkLinkButton, GtkRecentChooser) și suport pentru imprimare (GtkPrintOperation) 2.10.14
2.12 14 septembrie 2007 Sistem nou pentru generarea interfeței dintr-un fișier XML (GtkBuilder) 2.12.12
2.14 4 septembrie 2008 Suport pentru încărcare JPEG2000 și sigilare opțională a proprietăților (nu mai sunt publice) 2.14.7
2.16 13 martie 2009 Știri GtkOrientable, avertisment Blocare majuscule la introducerea parolelor. Îmbunătățiri în GtkScale, GtkStatusIcon, GtkFileChooser. 2.16.6
2.18 25 septembrie 2009 GtkInfoBar nou, GtkLabel cu URL-uri încorporate, ferestre din partea clientului.
Îmbunătățiri în GtkEntry, GtkBuilder, GtkFileChooser și în interfața de imprimare.
2.18.8
2.20 23 martie 2010 Știri GtkSpinner, GtkCellRendererSpinner, GtkOffscreenWindow.
Îmbunătățirile în GtkFileChooser, manipularea tastaturii și datele de introspecție GDK sunt acum incluse în GTK +.
2.20.1
2.22 23 septembrie 2010 gdk-pixbuf s-a mutat într-un modul separat, operațiile de desen GDK sunt acum complet realizate din Cairo, multe date interne au fost făcute private și pot fi ascunse în pregătirea pentru GTK + 3. 2.22.0
2.24 30 ianuarie 2011 A adăugat un nou ComboBox widget (GtkComboBoxText), cupa de imprimare backend pot trimite lucrările de imprimare în format PDF, GtkBuilder a primit suport pentru etichetele de text și meniuri toolbuttons, și au fost adăugate multe remedieri introspecția adnotată. 2.24.12
3.0 10 februarie 2011 Cairo, mai puțină dependență de X11, XInput2, API tematic bazat pe CSS 3.0.12
3.2 25 septembrie 2011 Noi backend-uri experimentale Wayland și HTML5 , dialog nou pentru alegerea fontului, widget-uri noi: GtkLockButton și GtkOverlay 3.2.4
3.4 26 martie 2012 Meniu de asistență în GtkApplication, un nou selector de culori, suport suplimentar pentru dispozitive tactile, suport suplimentar pentru derulare continuă, GtkScrolledWindow va efectua defilare cinetică cu dispozitive tactile, suport îmbunătățit OS X, aceasta este prima versiune a GTK + 3 care funcționează bine pe Windows , Backland-ul Wayland a fost actualizat la versiunea curentă a API-ului Wayland și este mult mai complet acum, butoanele de rotație au un aspect nou, Accesibilitate: Suportul de acces la vizualizarea conturului a fost rescris și funcționează foarte bine acum, suport mai cuprinzător pentru temele CSS. 3.4.4
3.6 24 septembrie 2012 GtkSearchEntry, GtkMenuButton, GtkLevelBar. Butoane de rotație verticală. Animații CSS, umbre neclare. Suport pentru crossfading și tranziții tematice. 3.6.3
4.0 17 septembrie 2020 Noul motor de redare Vulkan și OpenGL. Suport mai bun pentru Wayland și performanțe mai bune. 4.0.1
4.2 30 martie 2020 Noul motor de redare NGL (oricum bazat pe OpenGL) pe toate platformele acceptate de GTK

Utilizări

Arrows-folder-categorize.svg Articolele individuale sunt listate la Categorie: Software în GTK +

Medii care utilizează GTK

Bibliotecile GTK sunt o parte integrantă a proiectului GNOME și sunt, prin urmare, fundamentul interfeței de utilizare a oricărui program dezvoltat pentru GNOME. Versatilitatea și ușurința relativă au permis GTK + să fie baza altor medii desktop considerate mai ușoare . De fapt, există o versiune a GNOME dedicată mediilor încorporate GNOME Mobile . Până în prezent, acestea sunt utilizate pentru următoarele medii:

  • GNOME se bazează pe GTK, deci aplicațiile GNOME folosesc GTK
  • Xfce se bazează pe GTK, deși aplicațiile sale de obicei nu depind de multe biblioteci (aceasta este diferența dintre ceea ce este marcat „aplicație GNOME” și ceea ce este pur și simplu „aplicație GTK”).
  • LXDE se bazează pe GTK, acronimul înseamnă „Mediu ușor pentru desktop X11”
  • ROX Desktop este un desktop ușor, cu funcții care provin de la RISC OS GUI
  • GPE Palmtop Environment Linux pe PDA-uri și Linux familiar
  • Maemo (Nokia TabletPC-Mediu Internet)
  • Accesați platforma Linux (succesorul platformei Palm OS PDA )
  • Un laptop pe copil Proiectul de caritate „Un laptop pentru fiecare copil” folosește GTK + și PyGTK
  • Telefonul portabil Openmoko , GPS și Linux, folosește GTK pentru interfață încă de la prima versiune, deși în cele mai recente distribuții acceptă și QT și Enlightenment .

Nu este necesar să utilizați aceste medii grafice pentru a rula programe GTK. Dacă un program necesită biblioteci și acestea sunt instalate, acesta poate funcționa și pe alte medii bazate pe X11, cum ar fi KDE; Aceasta include Mac OS X dacă este instalat X11.app. GTK poate rula, de asemenea, pe Microsoft Windows și este utilizat de unele aplicații cross-platform populare, cum ar fi GIMP și Pidgin. wxWidgets , un set de instrumente GUI multiplataforma, folosește GTK pe toate sistemele Unix. Unele dintre cele mai neobișnuite porturi sunt DirectFB și ncurses .

Administratori de ferestre

Aplicații scrise folosind GTK

Inkscape 1.1 cu sigla vectorială GTK

Unele aplicații open source semnificative pe mai multe platforme care folosesc GTK ca set de instrumente widget:

  • CinePaint (fost FilmGimp) - Editor de imagini raster HDR
  • Ekiga (fost GnomeMeeting) - softphone H.323 / SIP VoIP
  • Evolution - Client de e-mail
  • GIMP - Editor de imagini raster
  • g Mplayer - Player video multi-format
  • GStreamer - Server pentru aplicații multimedia (utilizați numai GLib / GObject)
  • Inkscape - SVG Vector Image Editor
  • K-3D - modelator 3D cu animație
  • Mozilla Seamonkey - Internet Suite (browser, client de mail, editor HTML, chat)
  • Mozilla Firefox - Browser
  • Mozilla Thunderbird - Client de e-mail
  • Netscape - suită de internet (browser, client de mail, editor HTML, chat)
  • Pidgin (fost GAIM) - Program de chat multi-protocol
  • VMware Server 1.x - Mașină virtuală
  • Wireshark (fost Ethereal) - Sniffer, decodare și analizor de pachete

Notă

  1. ^ Emmanuele Bassi, Proiect redenumit în „GTK” , pe mail.gnome.org , 6 februarie 2019. Adus pe 8 februarie 2019 .
  2. ^ Utilizarea GTK + cu Broadway: GTK + 3 Manual de referință , la developer.gnome.org . Adus la 3 aprilie 2021 .
  3. ^ Prezentare generală GTK + CSS: Manual de referință GTK + 3 , la developer.gnome.org . Adus la 3 aprilie 2021 .
  4. ^ ( EN ) Știri introduse în Gtk + 2 , pe baza codului sursă Gtk . Adus la 11 octombrie 2020 (Arhivat din original la 16 iulie 2012) .
  5. ^ GTK + 3.0.0 lansat , la mail.gnome.org . Adus la 3 aprilie 2021 .
  6. ^ (EN) GTK 4.0 - Blog de dezvoltare GTK pe blog.gtk.org. Adus la 3 aprilie 2021 .
  7. ^ GTK 4.0 Toolkit Lansat oficial , pe www.phoronix.com , 16 decembrie 2020. Accesat pe 3 aprilie 2021 .

Alte proiecte

linkuri externe

Controlul autorității VIAF (EN) 179 958 458 · LCCN (EN) n2001062971 · GND (DE) 4618256-1
Software gratuit Free Software Portal : accesați intrările Wikipedia care se ocupă cu software-ul liber