Information AboutGtk+ |
GTK+, or '''The GIMP Toolkit''', is one of the most popular Widget Toolkit s for the X Window System for creating Graphical User Interface s, along with Qt and Motif . GTK+ was initially created for the GNU Image Manipulation Program , a raster graphics editor, in 1997 by Spencer Kimball , Peter Mattis , and Josh MacDonald —all of whom were members of EXperimental Computing Facility (XCF) at UC Berkeley . Licensed under the LGPL , GTK+ is Free (and Open Source ) Software , and is part of the GNU Project . PROGRAMMING LANGUAGES GTK+ uses the interface to GTK+ allowing it to be used from any language with I/O capabilities, including Shell Script s. Languages purpose-written for GTK+ include GOB2 and Vala . Unlike many other widget toolkits, but like Qt , GTK+ isn't based on Xt . The advantage of this is that it allows GTK+ to be available on other systems and to be much more flexible. The disadvantage is that 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 try to emulate the look of other popular toolkits or platforms, like Windows 95 , Motif , Qt or NEXTSTEP . ENVIRONMENTS THAT USE GTK+ 2.0. GTK+ is responsible for managing the interface components of the program, including the menus, buttons, input fields, etc.]]
Those Desktop Environment s are not required to run GTK+ programs, though. If the libraries the program requires are installed, a GTK+ program can run on top of other X11-based environments such as KDE or an X11-plus- Window Manager environment; this includes Mac OS X if X11.app is installed. GTK+ can also run under Microsoft Windows , used by some popular cross-platform applications like Pidgin , as well as The GIMP itself. Some of the more unusual ports include DirectFB and Ncurses . WINDOW MANAGERS Both Metacity and Xfwm4 use GTK+ 2. 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 Tree s. Such general utilities, along with the object system called GObject , have now migrated into a separate library, Glib , which programmers can use to develop code that does not require a graphical interface. GTK+ 2 GTK+ 2 has succeeded GTK+ 1. Its new features include improved text rendering using Pango , a new theme engine, improved accessibility using the Accessibility Toolkit , 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, is less complex than GTK+ 2, and is more suitable for embedded applications than GTK+ 2, though version 2.6 of GTK+ 2 is used on various such applications since it does not rely on the CPU intensive rendering library Cairo , which makes heavy use of floating-point operations. Starting with version 2.8, GTK+ 2 depends on the Cairo library for rendering with vector graphics in GTK+ 2. GTK+ DEVELOPMENT Software development with GTK+ is somewhat systematic, in that handcoding simple and complex graphical elements is very repetitive. Moreover, this process is so systematic that a program, called Glade , allows one to develop graphical applications with an easy to use visual center, such as that used with Visual Basic. 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.http://live.gnome.org/ProjectRidley SEE ALSO REFERENCES EXTERNAL LINKS
|
|
|