GTK (toolkit)
Creato inizialmente per il programma di grafica GIMP, il GIMP Toolkit, abbreviato come GTK+, è uno dei widget toolkit per creare interfacce utente più popolari per X Window System: infatti è il toolkit usato dal Desktop Environment Gnome. GTK+ e Qt (usato dal DE KDE) hanno sostituito Motif, una volta il più diffuso widget toolkit per X

Distribuito secondo la LGPL, GTK+ è software libero (e open source, distrubuito come parte del progetto GNU).
Linguaggio
GTK+ usa il linguaggio di programmazione C esteso grazie a Glib e GObject al paradigma della programmazione orientata agli oggetti. L'utilizzo di GLib ha facilitato la greazione di bindings per linguaggi come il C++, il Perl, il Ruby, il Java e Python. Per la sua estendibilità, portabilità, e bontà tecnica è stato scelto come componente per altri widget toolkit: i più noti sono WxWidget, e il toolkit di Gnome
Aspetto
L'utente finale può configurare a suo piacimento il toolkit, visto che vengono offerti "motori" per diverse piattaforme. Esistono motori che possono emulare l'aspetto di diversi toolkit o piattaforme, come Windows 95, Motif, Qt o NeXTSTEP.
Ambienti per GTK+
L'ambiente GNOME usa Gtk+ come base, il che significa che ogni programma scritto per GNOME usa GTK+ come suo toolkit. Non lo usano solo le applicazioni GNOME, visto che ogni programma GTK+ (o anche un programma GNOME) può girare sugli altri desktop enviroments, come KDE o XFce. Anche il GPE Palmtop Environment usa GTK+ come base. GTK+ gira anche su Microsoft Windows. Alcuni dei porting più inusali comprendono DirectFB e ncurses.
Codice non collegato alla grafica
GTK+ inizialmente conteneva alcune utility che non erano strettamente collegate alla grafica, per esempio forniva la gestione di strutture dati come le liste connesse o gli alberi binari. Queste utility così generali, insieme con il sistema di gestione degli oggetti GObject, sono ora migrate in una libreria separata, Glib, che ora i programmatori usano spesso anche se sviluppano codice che non richiede un'interfaccia grafica.
GTK+ 2
GTK+ 2 si è sviluppato con l'intenzione di succedere a GTK+. Tra le nuove caratteristiche bisogna ricordare la gestione migliorata del testo con Pango, un nuovo gestore dei temi, l'accessibilità migliorata attraverso ATK, la completa traduzione verso lo Unicode usando stringhe UTF-8 ed una API più flessibile.
Il principale problema di GTK+ 2 è la completa mancanza di compatibilità con GTK+ 1. Questo ha fatto sì che alcune applicazioni usino tuttora le GTK+ 1, perché in alcuni casi offre meno complessità delle GTK+ 2.
Collegamenti esterni
- (EN) GTK+ homepage