[ghemical-devel] Re: about versions and organizing tasks

Tommi Hassinen thassine at messi.uku.fi
Wed Apr 12 05:21:59 EDT 2006


On Tue, 11 Apr 2006, Michael Banck wrote:

> On Tue, Apr 11, 2006 at 03:25:43PM +0300, Tommi Hassinen wrote:
>>
>> Just FYI, I'm still thinking whether VERSION_2_BRANCH and HEAD really
>> should look the same, or should I change some of the GTK gui-elements into
>> OpenGL-rendered ones (I mean the main menu and toolbar buttons). The
>> change would help porting the program to other platforms in future.
>
> Oh, why that?  GTK+ is fairly portable in theory, and it provides a
> common look 'n feel at least on GNU/Linux.

Hello,

I thought about this more yesterday evening, and I think I have found a 
solution ; I'll explain it later.

The reason I started worrying about portability and OpenGL gui, is about 
longer-term plans and strategies. In addition to desktop apps, the net and 
web browsers are getting more important in future. I have been learning 
about them, and I would like to be ready to do something with them when 
the time is right. Now when a new stable release is coming, it's time to 
make important decisions for the future, and to make sure we are not 
"painting ourselves in a corner", limiting our choices in future.

Perhaps at some point in future we would like to have an OpenGL-based 
browser plugin (let's call it "npghemical" for the NPAPI plugin 
programming interface) for displaying molecules on web pages. It would be 
easiest to use an OpenGL-only gui for a plugin like that. Of course there 
is already Jmol which is doing very good job at displaying molecules using 
a java applet ; therefore it's uncertain whether a native plugin is worth 
the effort, time will tell.

> I think the current GUI could need some face-lifting to look more
> GNOMEish, but I didn't have the time to look into this so far (and I'm
> no GTK hacker (yet?)).
>
> If you commit to a GTK GUI, maybe we could get help from some of the
> GNOME artists (for our icons), UI and usability people.
>
> Otherwise, maybe reducing the GUI to a thin layer around the GL canvas
> and motivating people to write e.g. native Cocoa and Windows GUIs would
> make sense?

I agree on the benefits of GTK (also those mentioned in Geoff's mail). It 
is definitely so that the "flagship version" is now and in future the GTK 
version (re-implementing all those glade-dialogs alone would be a horrible 
job). There are good chances that the GTK version can be ported on other 
platforms (win32, MacOS) in future.

In additon to the GTK version, I'm trying to do things at HEAD version so 
that also other native desktop app versions could be made (like win32, 
MacOs). I have limited interest for a win32 version (I used to know the 
win32 API ~10 years ago) but it's not a big priority. I have seen that 
writing code for a couple of platforms simultaneously will result in a 
better quality result, and I have no interest to work on a GLUT version 
anymore (ghemical-1 used to have one) since no-one would ever use it. 
Perhaps there would be use for even a limited win32-version.

Like I mentioned, I found a solution how I can leave room for other future 
developments (like a plugin version) as well : I can take some stuff out 
from ghemical source tree and make a new library of it (let's call it 
libghemicalviews for now). The new library contains code for rendering 
different views using OpenGL commands but is agnostic to all platform- 
dependent "widget sets".

Regards,

 	Tommi



More information about the ghemical-devel mailing list