[GRASS-dev] Re: tcltk 8.3 and v.digit toolbox

Hamish hamish_nospam at yahoo.com
Sun Oct 8 05:03:34 EDT 2006

Michael Barton wrote:
> It turns out that bwidget LabelFrame is not just a drop in replacement
> for the tk 8.4 labelframe. For one thing, LabelFrame seems buggy in
> the version of bwidgets that GRASS uses and the frame border will not
> draw with a label there. Second the options are slightly different.

Yes, I can't get a frame border either. Thanks for translating the options.

There are (Very Good) bwidget instructions and demo.tcl in the GRASS 5
source code. (hopefully you found them?)

[should we copy into GRASS 6 lib/external/bwidget?
 252K    demo/
 368K    BWman/

cd grass-5.4.0/src/libes/bwidget/demo/
wish demo.tcl

in the demo the LabelFrames borders work correctly, so I think it is
something we are overlooking (???).

> If you want to replace the labelframe statement in toolbox.tcl (ca.
> Line 223) with the following and see what happens,

I do want to replace it for 6.2,

> On my Mac, running x11, it creates the label but does not draw the
> box, no matter what I do. This is problematic, but maybe it at least
> runs on 8.3.

As it works in demo/demo.tcl, I think it's a fixable bug on our behalf.
( somewhere :-/  window parent/child relationship? lack of content?)

> Again, I can't say if there are any other 8.4 features that won't run
> on 8.3, so I'm not sure it's worth it anyway.

.. but but but .. are there bwidget replacements for those we can use?

=== (lib/external/bwidget/README.grass) ========
only requires 2 lines of code in your Tcl/Tk script to use the new widgets.
Some of the new widgets include

    On mouse over help balloons
    Tabbed notebook panes - like worksheets in Excel
    Directory tree listing
    Combination box or drop down option list
    Progress bar
    Many others

seems to me that there should be replacements, and we don't (really)
have to worry about finding any we don't know about until we get an
error report. And then it's a (hopefully) quick fix. We are pretty
sure this is the only v.digit problem, and pretty sure that d.m is ok
(so I'm not as worried about gis.m).

> LabelFrame .bpf -bd 1 -relief groove -side top -anchor n \
>     -text [G_msg "mouse button actions (left, right, center)"]

works for me (besides missing border). I expect it will work on all
platforms (I can't see why it wouldn't).

An immediate solution: adding "-background HoneyDew" makes the
"-relief groove -borderwidth 1" failure less important.


More information about the grass-dev mailing list