[ghemical-devel] roadmap for v2.00

Tommi Hassinen thassine@messi.uku.fi
Fri, 11 Apr 2003 12:29:42 +0300 (WET)


Hi.

Here are the most important tasks that I hope to arrange in the future,
and the related version numbers.

	1) properly separate libghemical and ghemical
So this would be the v1.60 once it's ready. I think the separation of
MOPAC7 library is a good idea, especially since we can use the same
scripts, settings (pkg-config?) for all libraries. What about an OpenBabel
library?

	2) need to go GNOME-2
I have made some testing with glade-2 and everything seems to work nicely.
There also is a conversion tool for converting glade-1 .glade files into
glade-2 files which is handy (the setup druid file seems to be troublesome
though).

So, I don't like the idea of converting the app manually into gnome-2,
especially since the gnome-mdi system of gnome-1 is used, and it no longer
exists in gnome-2. So I have planned to make also the app using glade-2 as
much as possible. There could perhaps be new directories

	src/glade_app
	src/glade_dialogs

where the first one would contain the glade application related files
(also the main() function would be here, generated by glade-2) and the
second one would contain the dialog .glade files and libglade-related
code. The directory src/ would mostly contain the current files (gtk+-2,
gnome-2, and OpenGL related things).

Once all this is done, we will have v1.90. Probably during 2003.

	3) components??? bonobo and/or UNO?
For a loooong time I have thought that an interface to a spreadsheet
application would be a very good thing indeed. This raises a question if
the design of the application should be changed into a components-based
one.

Currently Gnome itself and many of the applications have become
component-based. The component system is called bonobo, and for example
the Nautilus file manager is component-based (some even describe it as a
"shell that handles bonobo objects"). So for example a Nautilus file
viewer is a bonobo component that Nautilus uses. And similarly, any
bonobo-aware application could use the same component!

Ok, this sounds great, but it's easier said than done. It seems to me that
the bonobo system is now solid itself, but there are not many tutorials or
books that covers the topic yet. In the long run this component system is
an obvious choice, but is it yet?

My plan currently is to look at the capabilities of glade, and just use
the component approach as much as is currently possible using glade.

What comes to the spreadsheet question, the gnumeric spreadsheet supports
bonobo components, and therefore it could be used. Still, I must say that
I have tried to track the development of gnumeric for a long time already,
but it always seems to go that far ahead that it is constantly dependent
on the very latest versions of many libraries (as an example, I have never
been able to compile the CVS versions of gnumeric :(  , so far I haven't
either found any example code that uses gnumeric as a component or
controls it remotely (please tell me if you find such examples). Then, a
few days ago, it was announced that OpenOffice now has an SDK that does
roughly the same thing:

	http://www.openoffice.org/dev_docs/source/sdk/

I expect that this SDK is less "bleeding edge" than gnumeric and
therefore easier to use, but unfortunately it does not use bonobo model
but a different system called UNO.

Ok, the above plan is a bit ambitious, but I hope that the v2.00 would
contain an interface (two-directional if possible) to a spreadsheet
application.

Regards,

	Tommi