Differences between current version and revision by previous author of GimpToolKit.
Other diffs: Previous Major Revision, Previous Revision, or view the Annotated Edit History
Newer page: | version 13 | Last edited on Saturday, January 24, 2004 10:42:21 am | by AristotlePagaltzis | |
Older page: | version 10 | Last edited on Sunday, January 18, 2004 7:05:05 am | by MarkusMaier | Revert |
@@ -1,7 +1,18 @@
-The [
Gimp ToolKit | http://www.gtk.org/] was written as the foundation to carry TheGimp. At the time, the only alternatives were Motif, which has a very restrictive license, and [Qt], which wasn't completely FreeSoftware either and is specifically targetted at [C++]. These were both deemed unacceptable for the reasons given, so a new ToolKit was created and released under the [LGPL]. It is nowadays known as just [GTK] and has become a familiar sight ([see some screenshots | http://www.gtk.org/screenshots/]).
+!!!
The Gimp ToolKit
;: [http://www.gtk.org/images/gtk-logo-rgb.gif]
-Many serious applications on Linux, such
as [Gnumeric
], [Evolution
], or AbiWord, to name but
a few obvious examples
, were developed using GTK
and many more have GTK ports available, for example
[Mozilla
], [Vim
] or MidnightCommander
. Entire [DesktopEnvironment]s like [GNOME]
and [XFce
] are built on top of it
. While it's written in
[C
], it
has bindings to many other languages. [C++] was the first to get such
a library, called
[gtkmm
| http://gtkmm
.sf
.net
/] (for __gtk--__
). There's also
[PyGTK
| http://www.daa
.com.au
/~james
/software
/pygtk
/] for
[Python] and [Gtk2-Perl
| http://gtk2
-perl
.sf
.net/] for
[Perl]
. The 2
.x series
of [GTK
] is fully internationalized using
[Pango
] and supports accessibility through
the [ATK] libraries
. (See
[GTK2
] for more information on the 2
.x series
.)
+The [Gimp ToolKit | http://www.gtk.org/] was written
as the foundation to carry
[TheGIMP
]. At the time
, the only alternatives were
[Motif
], which has
a very restrictive license
, and [Qt
], which wasn't completely FreeSoftware either and is specifically targetted at
[C++
]. These were both deemed unacceptable for the reasons given, so a new ToolKit was created
and released under the
[LGPL
]. It is nowadays known as just
[GTK
] and
has become
a familiar sight (
[see some screenshots
| http://www
.gtk
.org/screenshots
/]). Even a
[Windows port
| http://www.gimp
.org
/~tml
/gimp
/win32
/] has been written (
[see some screenshots
| http://gtk
-wimp
.sourceforge
.net/screenshots
/]). Another version called
[Cursed GTK | http://zemljanka
.sourceforge
.net/cursed/] now in development uses [Curses] instead
of [X11
], which allows
[GUI
] applications to run on
the console.
[The screenshots | http://zemljanka
.sourceforge.net/cursed/screenshots/] are rather reminiscent of
[Borland
]'s !TurboVision IDE
for [DOS].
..
-Even
a [Windows port
| http://www
.gimp
.org/~tml/gimp/win32
/] exists
([see some screenshots
| http://gtk-wimp
.sourceforge
.net
/screenshots
/]). Another version called
[Cursed GTK
| http://zemljanka
.sourceforge
.net/cursed
/] now in development uses
[Curses
] instead
of [X11
], which allows
[GUI
] applications
to run on
the console
. [
The screenshots | http:
//zemljanka
.sourceforge.net/cursed/screenshots/
] are rather reminiscent of
[Borland
]'s !TurboVision IDE for
[DOS
]...
+It's the ToolKit of choice for most any serious [GUI] application on [Linux] and other [Unix]oid systems, such as [Gnumeric], [Evolution], or AbiWord. Still other applications developed with wider portability in mind use [GTK] as their default ToolKit on [Linux]; examples are [Vim], [Mozilla], and [OpenOffice.org]. Entire [DesktopEnvironment]s like [GNOME] and [XFce] are built on top of [GTK].
+
+While it's written in [C], it has bindings to many other languages. [C++] was the first to get such
a library, called
[gtkmm
| http://gtkmm
.sf
.net
/] (for __gtk--__). There's also
[PyGTK
| http://www
.daa
.com.au
/~james/software/pygtk
/] for
[Python] and [Gtk2-Perl
| http://gtk2-perl
.sf
.net/] for
[Perl
].
+
+!!! The Next Generation: [GTK2]
+
+[GTK2] is more than just another iteration
of [GTK
]. It is a major redesign that can require considerable modification of existing
[GTK
]-based SourceCode in order
to build against [GTK2]. There are many good reasons to invest
the effort
.
+
+*
The 2.x series is fully internationalized through full [Unicode]
/multi-byte character support
.
+* The new text rendering engine called [Pango
] has no trouble with non-Latin languages and supports
[Xft
] and FontConfig integration, providing beautifully AntiAliasedFonts.
+* The
[ATK
] libraries support accessibility
.
+* The list- and treeview widgets have been rewritten from the ground up following a ModelViewController architecture, which can drastically reduce memory footprint and improve performance for large amounts of data
. Performance has unfortunately actually suffered due to do design decisions taken in favour of greater flexibility, but optimizations for the common cases are being retrofitted as the code matures
.