Google
 
   
Login
Username:

Password:


Lost Password?

Register now!
Search
Main Menu
top books
Polls
What do you think about php-deluxe.net?
Excellent!
Cool
Hmm..not bad
What the hell is this?
encyclopedia
recommendation
compare webbrowser
Freenet DSL
Who's Online
13 user(s) are online (11 user(s) are browsing encyclopedia)

Members: 0
Guests: 13

more...
browser tip
Unix Befehle
manual of unix befehle
recommendation!
Sponsored
partner

GIMP Toolkit

Initially created for the graphics program the GIMP, the GIMP Toolkit — abbreviated as GTK+ — is one of the two most popular widget toolkits for the X Window System, intended for creating graphical user interfaces. GTK+ and Qt toolkit have supplanted Motif (widget toolkit), previously the most widely-used X widget toolkit.

Licensed under the GNU Lesser General Public License, GTK+ is free software (and open source) Software, and is part of the GNU Project.

=Programming languages=

GTK+ uses the C programming language, although its designers use an object-oriented paradigm. The GNOME platform bindings provide for C plus plus (gtkmm), Perl, Ruby programming language, Java programming language and Python programming language (PyGTK) bindings; others have written bindings for many other programming languages (including Ada programming language, D programming language, Haskell programming language, PHP, and all Microsoft .NET programming languages).

Unlike a number of other widget toolkits, GTK+ isn t based on Xt. There are pros and cons about this. On the pro side, it allows GTK+ to be available on other systems and to be much more flexible. On the con, it doesn t have access to the X resource database, which is the traditional way for customizing X11 applications.

=Look and feel=

The end-user can configure the look of the toolkit, down to offering a number of different display engines . Engines exist which emulate the look of other popular toolkits or platforms, like Windows 95, Motif (widget toolkit), Qt toolkit or NEXTSTEP.

=Environments that use GTK+=

The GNOME environment uses GTK+ as a base, which means that programs written for GNOME use GTK+ as their toolkit. Not only GNOME applications use 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 and Maemo, Nokia s internet tablet framework, also use GTK+ as a base. GTK+ can also run under Microsoft Windows. Some of the more unusual ports include DirectFB and Ncurses.

= Non-graphics-related code =

GTK+ initially contained some utility routines that did not strictly relate to graphics, for instance providing such data structures as linked lists and binary trees. Such general utilities, along with the object system called GObject, have now migrated into a separate library, Glib, which programmers use regularly to develop code that does not require a graphical interface.

=GTK+ 2=

GTK+ 2 is being developed with the intention of succeeding GTK+. Its new features include improved text rendering using Pango, a new theme engine, improved accessibility using ATK, complete transition to Unicode using UTF-8 strings and a more flexible API. However, GTK+ 2 lacks compatibility with GTK+ 1, and programmers must port applications to it. Some programs continue to use GTK+ 1, as the original version remains in use, is faster, offers less complexity than GTK+ 2, and is more suitable for embedded applications than GTK+ 2. Starting with version 2.8 GTK+ 2 relies on the Cairo (graphics) library for rendering which introduced vector-graphics in GTK+ 2.

=Future developments=

*Project Ridley is an attempt to consolidate several libraries that are currently external to GTK+, including: libgnome, libgnomeui, libgnomeprint22, libgnomeprintui22, libglade, libgnomecanvas, libegg, libeel and gtkglext.

=External links=

*[http://www.gtk.org/ GTK+ homepage] *[http://libre.adacore.com/GtkAda GtkAda], an Ada API to GTK+ *[http://gtkmm.org/ gtkmm], a C++ API to GTK+ *[http://haskell.org/gtk2hs/ Gtk2Hs], a Haskell API to GTK+ *[http://gtk-sharp.sourceforge.net/ Gtk#], a Microsoft .NET API to GTK+ *[http://live.gnome.org/ProjectRidley Project Ridley] *[http://www.nabble.com/Gtk%2B-f1329.html GTK+ Forum] - an unofficial forum archiving all GTK mailing lists.
  • [http://gtk.alkia.org/ Runtime for Windows and package for Dev-Cpp]