The new 2.10.x series of the RGtk2 package has recently become available on
CRAN. RGtk2 is a package for creating graphical user interfaces (GUI's) in R
and is similar in purpose to the tcltk package. RGtk2 binds to and enables
the extension of the GTK+ user interface library, as well as several other
libraries that are integrated with GTK+. The gWidgetsRGtk2 package provides
an RGtk2 implementation of the elegant toolkit-independent gWidgets API. The
cairoDevice package allows embedding of R graphics inside RGtk2 interfaces.

RGtk2 2.10.x (currently at 2.10.9-1) brings several major improvements:

* Updated bindings to the latest stable versions of all bound libraries,
which include: GTK+, GDK, GdkPixbuf, Cairo, Pango and libglade.
* The ability to create new GObject classes, including new types of widgets,
entirely from within R.
* The compilation of RGtk2 now conditions on the versions of the libraries
installed on the system. This means that RGtk2 has the same dependencies as
the original 2.8.x series, but if newer versions of libraries (ie GTK+
2.10.x) are available, it will bind to the new API.
* Much of the C-level API has been registered to be callable from the C code
of other packages (allowing packages binding other GObject-based libraries
to borrow from RGtk2).
* Many, many bugfixes and minor improvements.

RGtk2 offers several advantages over tcltk:

* Many more features (too many more to list)
* Arguably cleaner API
* Integration with gWidgets (via gWidgetsRGtk2); see the 'pmg' package for
an example of this in action.
* The ability to create new types of widgets from scratch.
* Support for building GUI's using the point-and-click interface design tool
Glade (via libglade); see the 'rattle' package for example.
* Extras: Cairo vector graphics, GdkPixbuf image manipulation, etc.

RGtk2 as well as all other packages mentioned here are available on CRAN.

Michael Lawrence

	[[alternative HTML version deleted]]


