GTK
Initially created for the graphics program The GIMP, the GIMP toolkit — abbreviated GTK+ — is one of the two most popular X widget toolkits for creating graphical user interfaces. GTK+ and Qt have supplanted Motif, which at one time was the most widely-used X widget toolkit.
Language used
GTK+ is written in C, although it is designed within an object-oriented paradigm (unlike C++, C does not support object-orientation natively). The toolkit offers bindings for almost all popular programming languages.
The look of the toolkit is configurable by the user, down to offering a number of different display engines. There are engines emulating the look of other popular toolkits or platforms, like Windows 95, Motif, Qt or NEXTSTEP.
The GNOME environment uses GTK+ as a base, which means that programs written for GNOME use GTK+ as their toolkit. GNOME applications are not the only programs using it, though, and any GTK+ program (or GNOME program, for that matter) can run on top of other desktop environments, such as KDE or XFce. The GPE Palmtop Environment is another environment that uses GTK+ as a base. GTK+ is also available for Microsoft Windows. Some of the more unusual ports include framebuffer and ncurses
GTK+ initially contained some utility routines that were not strictly graphics-related, for instance providing such data structures as linked lists and binary trees. This has now been separated into a separate library, Glib, which is regularly used to develop programs that do not have a graphical interface.
GTK+ 2, is the successor of GTK+. Its new features include improved text rendering using Pango, a new theme engine, improved accessibility using ATK and a more flexible API. It is however not compatible with GTK+ 1 and applications need to be ported to it. There are still programs that GTK1 due to the fact that GTK1 is still in use, and is also less complex than GTK2.Look and feel
Environments that use GTK
Non graphics related code
GTK+ 2