[GRASS5] New gui.tcl generic user interface

benducke at compuserve.de benducke at compuserve.de
Tue Mar 14 03:04:54 EST 2006


Cedric,

that's beautiful. Thanks for your great work.
To make it even prettier, I suggest, just like I would for
gis, to use non-bold fonts in the GUI forms. This
looks more elegant and fits more text in one line.
Look at NVIZ: it just looks nicer!

Actually, this would probably be the time to create a module
that lets users choose their prefered screen fonts (GUI and
console output), GUI colours and other things such as
tear-off menus True/False in gis.m.
This will also be useful once Tcl/Tk 8.5 comes out with a
lot more options on how to customize GUI look and feel.

Both gis.m and the runtime GUIs should in my opinion respect
these settings that should be saved per mapset.

Regarding GUI form settings: you just hinted me to the fact
that it would be useful to save both GUI size and coordinates
as well as values for options so they can be recalled.
It would be great if, e.g. there would be a little icon "restore last
settings" that would automatically fill in those
saved option values. This would probably also require a "Clear all
settings" button.

How did you go about default size for runtime GUIs? Right now
this is awful and you need to resize practically every form
to be able to use it.

Maybe it would be worth saving the size, positions and option values of
all open forms upon user logout and restoring everything on the
next login. At least gis.m should provide such session management.

Best,

Benjamin

----- Originalnachricht -----
Von: Cedric Shock <cedricgrass at shockfamily.net>
Datum: Dienstag, 14. März 2006 4:34 am
Betreff: [GRASS5] New gui.tcl generic user interface

> Good evening,
> 
> I have hammered out a new gui.tcl. This is the file that produces 
> the generic 
> graphical user interface for all of the other programs.
> 
> 
> Screenshots:
> 
> g.region, as it first comes up:
> http://www.shockfamily.net/cedric/grass/newgui1.png
> 
> Sample output:
> http://www.shockfamily.net/cedric/grass/newgui2.png
> 
> A fake test-script that shows guisections for a command like g.region
> http://www.shockfamily.net/cedric/grass/newgui3.png
> 
> Output showing errors and progress bar:
> http://www.shockfamily.net/cedric/grass/newgui7.png
> 
> File selection, very wide due to extremely long description text. 
> This module 
> would benefit from labels:
> http://www.shockfamily.net/cedric/grass/newgui4.png
> 
> Multiple selection, same deal:
> http://www.shockfamily.net/cedric/grass/newgui5.png
> 
> Dropdown box, nothing has changed:
> http://www.shockfamily.net/cedric/grass/newgui6.png
> 
> 
> Changes:
> 
> Options and Output are now displayed in tabs instead of panes
> 
> There is a new command label which shows the current command as it 
> is edited. 
> It has a button for copying the command to the clipboard. (Might be 
> worth 
> noting in wish 2074)
> 
> Programs reporting guisections will have a tab made for options in 
> each 
> toplevel section. Finer section grouping is obeyed, but no labels 
> are created 
> or displayed.
> 
> The options frames scroll with the mouse wheel.
> 
> If possible the window opens wide enough to display its contents. 
> This is 
> accomplished by adding a binding to the scrolled frames which 
> report their 
> widths to their parent frames.
> 
> Programs using the label and description attributes on options or 
> tabs will 
> now have the description displayed as balloon help.
> 
> The help button is not enabled if no help file exists for the 
> program. (closes 
> wish 3799)
> 
> The type and required text for options is displayed right justified.
> 
> Module information is displayed differently. Both the label and 
> description 
> are displayed if available. Module is displayed with an icon if a 
> matching 
> one can be found in $(GISBASE)/etc/icons. See /gui/icons/README for 
> more 
> information.
> 
> Buttons for file selection are displayed with an open file icon.
> 
> Buttons for selecting database elements and symbols are displayed 
> with an icon 
> if a matching one can be found in $(GISBASE)/etc/icons.
> 
> It is now possible to determine when a command has finished 
> executing. Output 
> text has an added graphic along with the command text when the 
> command is 
> run. When the command finishes another graphic is displayed along 
> with the 
> text "Done."
> 
> 
> Testing:
> Ran lots of different commands both from the console and from 
> gis.m. Only 
> tested against tcl/tk 8.4 on Ubuntu Linux.
> 
> 
> Patch:
> Patch of lib/gis/gui.tcl and gui/Makefile is attached
> 
> gui.tcl also needs icons. To get the icons directory do the 
> following in 
> grass6/:
> tar xvfz gui-icons.tar.gz
> 
> I believe a "make install" is all that is needed, but I'm not sure.
> 
> 
> Enjoy,
> 
> Cedric Shock
> 




More information about the grass-dev mailing list