related topics
{system, computer, user}
{math, number, function}
{style, bgcolor, rowspan}
{film, series, show}
{work, book, publish}

GTK+ (GIMP Toolkit) is a cross-platform widget toolkit for creating graphical user interfaces. It is one of the most popular toolkits for the X Window System, along with FLTK and Qt.

GTK+ was initially created for the GNU Image Manipulation Program (GIMP), a raster graphics editor, in 1997 by Spencer Kimball and Peter Mattis, members of eXperimental Computing Facility (XCF) at University of California, Berkeley.

GTK+ is licensed under the LGPL free software license and is part of the GNU Project, which aims to create a whole free-software operating system.



GTK+ is an object-oriented widget toolkit written in the C programming language; object-orientation is achieved by using the GLib object system. On the X11 display server, GTK+ uses Xlib to draw widgets. Using Xlib provides flexibility and allows GTK+ to be used on platforms where the X Window System is unavailable. While GTK+ is primarily targeted at the X Window System, other platforms are supported, including Microsoft Windows, DirectFB and Quartz on Mac OS X.

GTK+ can be configured to change the look of the widgets drawn; this is done using different display engines. Several display engines exist which try to emulate the look of the native widgets on the platform in use.

Programming language bindings

A library written in one programming language may be used in another programming language if bindings are written; GTK+ has bindings in many languages.[1]

Full article ▸

related documents
Segmentation fault
System analysis
IBM 1620 Model II
Core dump
Escape sequence
Streaming SIMD Extensions
Mutual exclusion
Source Mage GNU/Linux
Electrical network
Visual DialogScript
Allegro library
Berkeley DB
Video coding
Modifier key
Wireless Markup Language
Parallel algorithm
HTTP 404
Abstract Window Toolkit
Simple DirectMedia Layer
Nautilus (file manager)
Computing platform
Revision Control System
Turbo Pascal
Application binary interface
LZ77 and LZ78
Java Platform, Enterprise Edition