Re: [Gimp-developer] GIMP and GTK+2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

"Robin Rowe" <rower@xxxxxxxxxxxxxxx> writes:

> May I ask a question about the various versions of GIMP and GTK+ 2?
> Which versions of GIMP use 1.2x GTK+ and which ones are 2.x GTK+
> versions?

gimp-1.2  <->  gtk+-1.2
gimp-1.3  <->  gtk+-2.x

> In your GTK+ evolution, what did GIMP gain by going to GTK+ 2 and
> what difficulties had to be overcome? What issues, if any, are there
> with GTK+ 2 today?

most important for The GIMP is probably that fact that the object
system has been moved out of GTK+ into GLib/GObject which allows to do
a much cleaner separation between the GIMP core and the user
interface. Of course The GIMP also benefits from all the other
improvements to GLib and GTK+. Here are a few things that come to
mind:

 - improved key navigation
 - much better i18n
 - one encoding that rules them all
 - new widgets (stock icons, treeview, textview, ...)

Especially GObject has a whole bunch of nifty features that were not
present in the object system that comes with GTK+-1.2. As an example
I'd suggest you take a look at the newly introduced GimpConfig system
(used to handle user preferences) or check how libgimpmodule allows to
load color selector widgets at runtime.

We could make a lot more use of the new widgets, especially
GtkTreeView, but haven't done yet due to lack of time. The plan is to
reimplement GimpContainerListView using GtkTreeView for GIMP-1.4.

If you ever compiled one of the latest GIMP development releases you
will have noticed that we still make use of deprecated GTK+
widgets. Most certainly even the next stable GIMP release will still
use some deprecated GTK+ functions but it's our long-term goal to get
the GIMP code completely deprecation-free.


Salut, Sven

[Index of Archives]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [GIMP for Windows]     [KDE]     [GEGL]     [Gimp's Home]     [Gimp on GUI]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux