GTK+

GTK+ is a multi-platform toolkit for creating graphical user
interfaces. Offering a complete set of widgets, GTK+ is suitable for
projects ranging from small one-off projects to complete application
suites.

GTK+ is free software and part of the GNU Project. However, the
licensing terms for GTK+, the GNU LGPL, allow it to be used by all
developers, including those developing proprietary software, without
any license fees or royalties.

GTK+ is based on three libraries developed by the GTK+ team:

  • GLib is the low-level core library that forms the basis of GTK+ and GNOME. It provides data structure handling for C, portability
    wrappers, and interfaces for such runtime functionality as an event
    loop, threads, dynamic loading, and an object system.

  • Pango is a library for layout and rendering of text, with an emphasis on internationalization. It forms the core of
    text and font handling for GTK+-2.0.
  • The ATK library provides a set of interfaces for accessibility. By supporting the ATK interfaces, an application or toolkit can
    be used with such tools as screen readers, magnifiers,
    and alternative input devices.

GTK+ has been designed from the ground up to support a range of
languages, not only C/C++. Using GTK+ from languages such as Perl and
Python (especially in combination with the Glade GUI builder) provides
an effective method of rapid application development.