Tools
Following Seth’s
post on “Factories, Refineries and Tools“, I’ve been
thinking that a possible solution to the problem might be to heavily use D&D;
for the communication between the programs. That is, we could make applications
be a set of tools, represented by the different toolbar buttons, etc,
available in the application. You could then drag an item (image, text, whatever)
from another application and drop it on the button (which represents a tool).
An example of this could be a graphic in Gnumeric, which you drag to a button
in The Gimp’s toolbox, and that will apply the given filter (if that’s what
the button represents) on the dragged image, which will then be shown in Gnumeric
with the filter applied. The same, for instance, for a text table dragged from
Abiword to a GNOME-DB window representing a database table; in that case, the
action would be to add the records from the table in Abiword to the database.
Another thing, on which I intended to work a little bit but had no time to even
start was to extensively use the MIME actions extension system, so that applications
will always have a set of those actions for the MIME types they support. Of course,
this is not really what Seth was talking about, I guess, but at least it will
allow us to have a more tool/action-oriented interface. This might be specially
important with the spatial Nautilus, where, from what I’ve found out from my
usage of it so far, it misses a way to really replace the terminal. I find myself too
many times running the ‘terminal-here’ Nautilus script, or writing more scripts
to do what I usually do on the command line. So having an extensive set of tools
that operate on the files you are seeing in Nautilus is a must, at least for me.
As examples of this, there could be, if you install a graphics manipulation app,
like The Gimp, actions such as ‘rotate’, ‘resize’, etc, for graphic files, or,
for a directory containing a CVS module, actions to update, add, remove, etc, the
files on it.
GNOME-DB
I’m preparing the 1.0.1 release, which will be out soon, probably next Monday. This
release includes several fixes, included one for a crash reported by Gnumeric users.