[GRASS-dev] v.digit: Qt or wxWidgets

Sören Gebbert soerengebbert at gmx.de
Sat May 20 18:15:01 EDT 2006


Dear developers,

On Saturday 20 May 2006 22:14, Michael Barton wrote:
> I am very much in favor of continuing to develop and improve the GRASS GUI.
> Since we've come back to the question of GUI platforms, I have a question
> that might help to clarify things somewhat.
> 
> Why do we need/want switch from TclTk? After working with it for the past
> several months and seeing the kind of work that Cedric Shock has done, I'm
> very impressed. 

That question bothers me too!

Is there no way to implement v.digit and nviz in Tcl/Tk? Do we really need to
use GTK+, wxWidgets or Qt? If so, we have additional dependencies in grass and the look and
feel of the grass gui will differ between the "normal" GUI and v.digit + nviz.
A lot of new problems will appear, depedency problems, version problems, stability problems (especially with GTK+)... . 

I think with Qt, wxWindows or GTK+ we may develop a very sophisticated GUI, but which one 
of us has experience with those toolkits? I only know a bit of Qt and fltk (Im a big fan of C++) and
learning them needs a lot of time.
Programming a good! new GUI is a large and very complex piece of work.
And a lot of work has been done by Michael and Cedric to improve the existing GUI and they are doing very well,
and i like it very much. :)
And AFAIK many developers have experience with TclTk. So i think we need a good reason to move from Tcl/Tk to
another toolkit.

And if somebody really want to extend an existing nice gui with an object orientated approach, qgis or jgrass
will appreciate any help. ;) ...  just kidding ...

Just my two cent
Best regards
Soeren
 
> Because I want GRASS to have a very good UI, I am not opposed to moving to a
> new GUI development platform. But it would be helpful to understand the
> reasons for doing so.
> 
> Thanks
> Michael
> __________________________________________
> Michael Barton, Professor of Anthropology
> School of Human Evolution & Social Change
> Center for Social Dynamics & Complexity
> Arizona State University
> 
> phone: 480-965-6213
> fax: 480-965-7671
> www: http://www.public.asu.edu/~cmbarton
> 
> 
> 
> > From: Glynn Clements <glynn at gclements.plus.com>
> > Date: Sat, 20 May 2006 12:50:54 +0100
> > To: John Gillette <JGillette at rfmd.com>
> > Cc: <grass-dev at grass.itc.it>
> > Subject: Re: [GRASS-dev] v.digit: Qt or wxWidgets
> > 
> > 
> > John Gillette wrote:
> > 
> >>> AFAICT, the main obstacles are v.digit and NVIZ. v.digit
> >>> needs a decision on a suitable toolkit (probably either Qt or
> >>> wxWidgets) and a volunteer. NVIZ requires someone to update
> >>> Togl to 1.7 and to conditionalise the GLX-specific code in do_zoom.c.
> >> 
> >> Glynn:
> >> (1) I'd like to see the code written in C, as opposed to C++.
> >>     I think more developers and users are going to know C. This
> >>     lets users be able to trouble shoot and find bugs.
> >>     [full disclosure: I only know C.]
> > 
> > That would be nice. Unfortunately, both Qt and wxWidgets use a C++
> > API. GTK uses C, but the native MacOSX version is currently "alpha"
> > quality.
> > 
> > Actually, the MacOSX port seems a bit further along than I had
> > realised. In that case, GTK might be a viable option. If the native
> > MacOSX version isn't stable enough for normal use, the X11 version of
> > GTK can be used until the native version has matured.
> > 
> > The status page is here:
> > 
> > http://developer.imendio.com/wiki/Gtk_Mac_OS_X/Things_to_do
> > 
> >> (2) I looked at wxWidgets after the last time you mentioned it.
> >>     I assume you can use it with C?
> > 
> > No. The API is C++ (i.e. each widget is a C++ object).
> > 
> >> (3) I didn't understand the relationship between wxWidgets and GTK.
> >>     Can you explain some of this?
> > 
> > wxWidgets provides a common interface to a variety of different GUI
> > toolkits: GTK, Motif, raw Xlib, Win32, and Mac (Carbon and
> > "non-Carbon").
> > 
> > The basic WX widgets are usually wrappers around the widgets provided
> > by the underlying toolkit. More complex widgets have to be implemented
> > by wxWidgets itself (as do all of the widgets for the raw Xlib
> > version).
> > 
> > The net result is a wxWidgets application should have a native look
> > and feel. Other GUI toolkits tend to implement all of the widgets
> > themselves, which mean that an application tends to look and behave
> > the same on all platforms.
> > 
> >> (4) GTK is not on your list. Can you explain your thinking about
> >>     which you prefer or which kit you would use?
> > 
> > I had excluded GTK because there didn't appear to be a usable native
> > version for MacOSX. If the native MacOSX version is likely to be
> > usable in the near future, then GTK would be a viable option (and the
> > fact that it's API is in C gives it an advantage over Qt and
> > wxWidgets).
> > 
> >> Perhaps by virtue of asking these questions it means I am not
> >> qualified to work on v.digit but I get excited (and frustrated)
> >> about the possibility of having a window based v.digit program.
> >> 
> >> If we could discuss it a little and then have Glynn just make a
> >> decision [1], I would run off and start learning that toolkit. I
> >> already learned some GTK.
> > 
> > It would be useful if someone with a Mac could provide feedback on the
> > current state of GTK on MacOSX.
> > 
> > -- 
> > Glynn Clements <glynn at gclements.plus.com>
> > 
> > 
> 
> _______________________________________________
> grass-dev mailing list
> grass-dev at grass.itc.it
> http://grass.itc.it/mailman/listinfo/grass-dev
> 
> 




More information about the grass-dev mailing list