GNOME Office

Sven Herzberg (of
Criawips fame)
has started to put some effort in making the
, specifically on the plugin system it contains, which was intended
to be used by GNOME
applications, but which hasn’t been used yet (mainly because we
wanted the Gnumeric plugin system to be merged).

So, at least one point of my API
might start rolling. The idea of the plugin system in libgnomeoffice
is that there is a
to, of course, load the plugins, a
to be implemented by plugins, and a set of generic interfaces that are
implemented in the plugins (like the
service interface

Some work that needs to be done:

  • Convert all services to interfaces, so they can be directly implemented by the
    GOfficePlugin class.
  • Create new generic interfaces, and add new plugins implementing those interfaces.
    Although, as the intent is to have the plugin system generic enough to be used
    by any application, the interfaces need to be well thought and designed (the
    current ones are more a proof of concept than anything else).

So, if anyone is interested in all this work (which might one day, if successful, end up
in GTK/GLib/whatever), please contact GNOME
Office mailing list



Just uploaded the photos I took during this past christmas.
As every year, a lot of good food and drink, but this time with snow, a lot of snow,
3 days with all plenty of snow! But the best thing was the Conan comics I bought
Conan & Belit
while in Madrid.
The 3 books contain the whole series of Conan and Belit, one of the most famous
series of Conan.


For anyone interested in watching live images from the Huygens
probe descent to Titan, you can do it at NASA TV.

GTK Enterprise/Extended/Foundation Classes

After seeing the GNOME 3.0
library wiki page
, and the, possibly, plans for removing libgnome*,
and given the need there will ever be for specialized classes that don’t fit
into neither GLib nor GTK, I’ve started wondering about what I’ve called, with
little imagination, the GTK Enterprise/Extended/Foundation classes.
That is, yes, a new library, not like libgnome* where we put things that
don’t fit in other places, but as a set of high level classes for enterprise
class applications, that, making use of the platform libraries, provide an
easy way of creating professional applications. Things that could fit here are:

  • An Application class, not for having an application’s main
    window, but as an easy way for applications to register services to be called
    from other applications. All enterprise/extended/foundation classes used
    by the application could be automatically registered as services via the
    Application class and thus make them available
    to external applications.
  • Document management classes, to make it easier to write document-oriented
    code. This could be similar to the classes in Microsoft Office’s VBA. As mentioned,
    all classes of this kind used by the application could be registered, through
    the Application class, as services, and so we could
    write other applications that manage any document-oriented applications via
    these interfaces.
  • A plugin system that makes it easy for applications to be extended by plugins.
    Also, a set of standard plugin interfaces, that can be used by any application.
  • Related to this plugin system, there could be plugin interfaces for scripting,
    so that applications could support extension by scripts (like the one in
    the gnome-office
    CVS module
  • High level classes for accessing standard D-BUS services. Also, base classes
    for making the implementation of standard interfaces much easier than using
    D-BUS directly.

Not sure if this will be of interest to people, but I think having something of this
kind could help a lot in bringing new developers, since making full featured
applications, that can be easily extended and reused, would be a big win for
GTK/GNOME as a development platform.