GTK (kit d'eines)

De la Viquipèdia, l'enciclopèdia lliure.
Saltar a la navegació Saltar a la cerca
GTK
programari
Logotip
Giny GTK + 3.12.0
Giny GTK + 3.12.0
Tipus Biblioteca de gràfics (no apareix a la llista )
Desenvolupador Fundació GNOME i projecte GNU
Data de la primera versió 14 d’abril de 1998 ; Fa 23 anys
Última versió 4.2.1 (4 de maig de 2021)
Sistema operatiu Linux
Microsoft Windows
macOS
Llenguatge C.
Llicència GNU LGPL v2.1 i GNU Lesser General Public License
( llicència gratuïta )
Llengua Multilingüe
Lloc web gtk.org/

GTK (anteriorment GTK + [1] , acrònim que significa GIMP ToolKit ) en informàtica , és un conjunt d'eines (el conjunt d'eines, principalment la biblioteca libgtk) per crear interfícies gràfiques . Desenvolupat en C , és compatible amb l’entorn gràfic X Window System , Wayland i Microsoft Windows . És programari lliure (que forma part del projecte GNU ) amb llicència LGPL .

El conjunt d’eines, dissenyat originalment com a ajut per a la programació del conegut programa gràfic GIMP , va guanyar popularitat saltant Motif i convertint-se en una part fonamental de l’ entorn d’ escriptori GNOME .

Llenguatge

GTK utilitza el llenguatge de programació C estès, gràcies a GLib i GObject , el paradigma de programació orientat a objectes . GTK proporciona enllaços per a llenguatges com C ++ , Perl , Ruby , Java i Python ( PyGTK ). Altres també han afegit suport per a altres idiomes com Ada , Fortran , D , Haskell , Pascal , PHP , Pike i C # gràcies a Mono (Gtk #). També podeu utilitzar HTML5 com a sortida visualitzant la interfície del navegador. [2]

Codi no relacionat amb gràfics

GTK inicialment contenia algunes funcions d’utilitat que no estaven estrictament relacionades amb els gràfics, com ara proporcionar estructures de dades , llistes enllaçades i arbres binaris . Aquestes utilitats generals, juntament amb el sistema d'objectes anomenat GObject, ara es migren a una biblioteca independent, GLib , que els programadors encara poden utilitzar per desenvolupar codi que no requereixi una interfície gràfica. Un exemple típic d’aquest enfocament és el projecte GStreamer . Els mateixos desenvolupadors de GTK mantenen la biblioteca GLib.

A causa de la seva extensibilitat, portabilitat i bondat tècnica, s'ha escollit com a component per a altres jocs d'eines de widgets, com wxWidgets .

Plataformes

Originalment, el kit d'eines GTK estava destinat només al sistema X Window , que no obstant això continua sent la plataforma de referència. Actualment es pot instal·lar a Microsoft Windows (a partir de la versió 2.8 es requereix Windows 2000 o superior), DirectFB i Quartz ( Mac OS X Tiger o superior, encara en desenvolupament) i també amb el nou protocol gràfic de referència a GNU / Linux Wayland .

Aspecte

L' editor de text " gedit ", creat amb GTK + 2

L’usuari final pot configurar l’aspecte de la interfície al seu gust gràcies a la possibilitat de canviar el tema utilitzat. Per tant, és possible emular l'aparença d'altres biblioteques o altres entorns, inclosos Windows 95 , Motif , Qt o NeXTSTEP . Els temes es poden configurar des de la versió 3 mitjançant CSS [3] i poden gestionar vores arrodonides, animacions i transparències.

GtkBuilder és el sistema per crear el disseny d’interfícies gràfiques sense escriure codi. La interfície gràfica de l'aplicació es descriu en XML , el fitxer es carrega quan s'inicia l'aplicació i es creen tots els objectes gràfics. L'editor Glade us permet construir la interfície gràfica en mode WYSIWYG . Els fitxers d'interfície XML són independents del llenguatge utilitzat per l'aplicació.

Història

GTK + 2

GTK + 2 es va desenvolupar amb la intenció de substituir i millorar GTK +. Entre les novetats [4] , que el GTK + original va afegir gradualment, es troben:

  • un gestor de temes (ja introduït a la versió 1.2.0 però reelaborat posteriorment per permetre la personalització de cada element gràfic)
  • Maneig millorat de la representació de text internacional amb Pango (introduït a la versió 1.3.1)
  • una API més flexible que segueix el moviment de la lògica d'objectes a la biblioteca GObject (de la versió 1.3.1)
  • la transició completa a Unicode amb l'adopció de cadenes UTF-8 (a partir de la versió 1.3.2)
  • S'ha millorat l'accessibilitat per a discapacitats amb l'ús de la biblioteca ATK (a partir de la versió 1.3.5)

Tot i això, GTK + 2 no és compatible amb GTK + 1 i els programadors han de migrar el seu codi antic.

A partir de la versió 2.8, GTK + 2 depèn de la biblioteca del Caire per representar la interfície mitjançant gràfics vectorials 2D.

GTK + 3

Ginys GTK + 3.12

La versió 3 es va publicar el 10 de febrer de 2011 [5] i inclou les funcions destacades següents:

  • El component gràfic GDK es fa independent de X11
  • El Caire s’utilitza per a cada operació gràfica
  • XInput2 s’utilitza per a la manipulació d’entrada, gestors de suport i multitacte
  • va fer disponible una API per a la creació de temes basats en CSS
  • ginys nous disponibles
  • decoració de finestres del costat del client

GTK 4

Llançat el setembre de 2020, representa l’últim desenvolupament de GTK. [6] La nova versió inclou un nou motor de representació Vulkan i OpenGL , millora el suport de Wayland i un millor rendiment. [7]

Alliberament

Versió familiar Data de llançament inicial Millora principal Darrera versió menor
1.0 Arxivat el 12 d’agost de 2014 a Internet Archive . 14 d’abril de 1998 Primera versió estable 1.0.6
1.2 27 de febrer de 1999 Ginys nous (GtkFontSelector, GtkPacker, GtkItemFactory, GtkCTree, GtkInvisible, GtkCalendar, GtkLayout, GtkPlug, GtkSocket) 1.2.10
2.0 11 de març del 2002 S'ha traslladat la gestió d'objectes a GLib (GObject) i al suport unicode amb codificació UTF-8 2.0.9
2.2 22 de desembre de 2002 Suport multicap 2.2.4
2.4 16 de març del 2004 Ginys nous (GtkFileChooser, GtkComboBox, GtkComboBoxEntry, GtkExpander, GtkFontButton, GtkColorButton) 2.4.14
2.6 16 de desembre de 2004 Ginys nous (GtkIconView, GtkAboutDialog i GtkCellView) 2.6.10
2.8 13 d'agost de 2005 Integració amb El Caire 2.8.20
2.10 3 de juliol del 2006 Ginys nous (GtkStatusIcon, GtkAssistant, GtkLinkButton, GtkRecentChooser) i suport d'impressió (GtkPrintOperation) 2.10.14
2.12 14 de setembre de 2007 Nou sistema per generar la interfície a partir d'un fitxer XML (GtkBuilder) 2.12.12
2.14 4 de setembre de 2008 Suport de càrrega JPEG2000 i segellat opcional de propietats (ja no són públics) 2.14.7
2.16 13 de març de 2009 Notícies GtkOrientable, advertència de bloqueig de majúscules quan introduïu contrasenyes. Millores a GtkScale, GtkStatusIcon, GtkFileChooser. 2.16.6
2.18 25 de setembre de 2009 Nou GtkInfoBar, GtkLabel amb URL incrustats, finestres del costat del client.
Millores a GtkEntry, GtkBuilder, GtkFileChooser i a la interfície d'impressió.
2.18.8
2,20 23 de març de 2010 Notícies GtkSpinner, GtkCellRendererSpinner, GtkOffscreenWindow.
Les millores a GtkFileChooser, el maneig del teclat i les dades d’introspecció de GDK ara s’inclouen a GTK +.
2.20.1
2,22 23 de setembre de 2010 gdk-pixbuf es va traslladar a un mòdul separat, les operacions de dibuix GDK ja es fan completament des del Caire, moltes dades internes s'han fet privades i es poden amagar en preparació del GTK + 3. 2.22.0
2,24 30 de gener de 2011 S'ha afegit un nou widget ComboBox (GtkComboBoxText), el dorsal d' impressió de copes pot enviar treballs d'impressió en PDF, GtkBuilder té suport per a etiquetes de text i menús de botons d'eines i s'han afegit moltes correccions d'anotacions d'introspecció. 2.24.12
3.0 10 de febrer de 2011 El Caire, menys dependència de X11, XInput2, API de tema basada en CSS 3.0.12
3.2 25 de setembre de 2011 Nous dorsals experimentalsWayland i HTML5 , nou diàleg d'elecció de tipus de lletra, nous ginys: GtkLockButton i GtkOverlay 3.2.4
3.4 26 de març de 2012 Menú d'assistència a GtkApplication, un nou selector de colors, suport afegit per a dispositius tàctils, suport afegit per al desplaçament continu, GtkScrolledWindow farà un desplaçament cinètic amb dispositius tàctils, compatibilitat amb OS X millorada, aquesta és la primera versió de GTK + 3 que funciona bé a Windows , El backend de Wayland s’ha actualitzat a la versió actual de l’API de Wayland i ara és molt més complet, els botons de rotació tenen un nou aspecte, Accessibilitat: el suport d’accés a la vista d’esquema s’ha reescrit i funciona millor ara, un suport més complet per als temes CSS. 3.4.4
3.6 24 de setembre de 2012 GtkSearchEntry, GtkMenuButton, GtkLevelBar. Botons de rotació vertical. Animacions CSS, ombres borroses. Suport per a transicions de fades i temes creuats. 3.6.3
4.0 17 de setembre de 2020 Nou motor de representació Vulkan i OpenGL. Millor suport a Wayland i millors actuacions. 4.0.1
4.2 30 de març de 2020 Nou motor de representació NGL (basat en OpenGL de totes maneres) en totes les plataformes compatibles amb GTK

Usos

Arrows-folder-categorize.svg Els elements individuals es mostren a la categoria: Programari de GTK +

Entorns que utilitzen GTK

Les biblioteques GTK són una part integral del projecte GNOME i, per tant, són la base de la interfície d'usuari de qualsevol programa desenvolupat per GNOME. La versatilitat i la relativa lleugeresa han permès que GTK + sigui la base d'altres entorns d'escriptori considerats més lleugers . De fet, hi ha una versió de GNOME dedicada als entorns incrustats de GNOME Mobile . Fins ara s’utilitzen per als entorns següents:

  • GNOME es basa en GTK, de manera que les aplicacions GNOME utilitzen GTK
  • Xfce es basa en GTK, tot i que les seves aplicacions normalment no depenen de moltes biblioteques (aquesta és la diferència entre el que està marcat com a "aplicació GNOME" i el que és simplement "aplicació GTK").
  • LXDE es basa en GTK, l'acrònim significa "entorn d'escriptori lleuger X11"
  • ROX Desktop és un escriptori lleuger, amb funcions que provenen de la GUI del sistema operatiu RISC
  • GPE Palmtop Environment Linux en PDA i Linux familiar
  • Maemo (Nokia TabletPC-Entorn d'Internet)
  • Accediu a la plataforma Linux (successora de la plataforma Palm OS PDA )
  • Un ordinador portàtil per nen El projecte solidari "Un ordinador portàtil per a cada nen" utilitza GTK + i PyGTK
  • El telèfon Openmoko , de mà GPS i Linux, utilitza GTK per a la interfície des de la primera versió, tot i que en les darreres distribucions també admet QT i Enlightenment .

No cal utilitzar aquests entorns gràfics per executar programes GTK. Si un programa requereix biblioteques i s’instal·len, també pot funcionar en altres entorns basats en X11, com ara KDE; Això inclou Mac OS X si està instal·lat X11.app. GTK també es pot executar a Microsoft Windows i és utilitzat per algunes aplicacions multiplataforma populars com GIMP i Pidgin. wxWidgets , un joc d’eines GUI multiplataforma, utilitza GTK en tots els sistemes Unix. Alguns dels ports més inusuals són DirectFB i ncurses .

Gestors de finestres

Aplicacions escrites amb GTK

Inkscape 1.1 amb el logotip vectorial GTK

Algunes aplicacions de codi obert multiplataforma significatives que utilitzen GTK com a kit d'eines de widgets:

  • CinePaint (abans FilmGimp): editor d'imatges ràster HDR
  • Ekiga (anteriorment GnomeMeeting): telèfon mòbil VoIP H.323 / SIP
  • Evolution : client de correu electrònic
  • GIMP - Editor d'imatges ràster
  • g Mplayer : reproductor de vídeo de diversos formats
  • GStreamer : servidor per a aplicacions multimèdia (només utilitzeu GLib / GObject)
  • Inkscape : editor d'imatges vectorials SVG
  • K-3D : modelador 3D amb animació
  • Mozilla Seamonkey - Internet Suite (navegador, client de correu, editor HTML, xat)
  • Mozilla Firefox : navegador
  • Mozilla Thunderbird : client de correu electrònic
  • Netscape : suite d'Internet (navegador, client de correu, editor HTML, xat)
  • Pidgin (anteriorment GAIM): programa de xat amb protocols múltiples
  • VMware Server 1.x: màquina virtual
  • Wireshark (anteriorment Ethereal): analitzador de paquets, descodificador i descarregador

Nota

  1. ^ Emmanuele Bassi, Projecte canviat a "GTK" , a mail.gnome.org , 6 de febrer de 2019. Obtingut el 8 de febrer de 2019 .
  2. ^ Utilitzant GTK + amb Broadway: Manual de referència GTK + 3 , a developer.gnome.org . Consultat el 3 d'abril de 2021 .
  3. ^ Descripció general de GTK + CSS: Manual de referència de GTK + 3 , a developer.gnome.org . Consultat el 3 d'abril de 2021 .
  4. ^ ( EN ) Notícies introduïdes a Gtk + 2 , basades en el codi font de Gtk . Consultat l'11 d'octubre de 2020 (arxivat de l' original el 16 de juliol de 2012) .
  5. ^ GTK + 3.0.0 llançat , a mail.gnome.org . Consultat el 3 d'abril de 2021 .
  6. ^ (EN) GTK 4.0: bloc de desenvolupament de GTK a blog.gtk.org. Consultat el 3 d'abril de 2021 .
  7. ^ GTK 4.0 Toolkit Publicat oficialment , a www.phoronix.com , 16 de desembre de 2020. Consultat el 3 d'abril de 2021 .

Altres projectes

Enllaços externs

Control de l'autoritat VIAF (EN) 179 958 458 · LCCN (EN) n2001062971 · GND (DE) 4618256-1
Programari lliure Portal de programari lliure : accediu a les entrades de Viquipèdia relacionades amb programari lliure