I can't give a behind the scenes answer, but I do know all window type
events (of which cursor would be one) are propagated to all children.
Otherwise, when you changed one widget, none of the other widgets would
know about that change, and your nice GUI would soon be a not-so-nice GUI.
James Bonfield <jkb@... on 04/23/2001
Sent by: incrtcl-users-admin@...
To: Martin.Backe@..., incrtcl-users@...
Subject: Re: [Incrtcl-users] Odd Configure events in tabnotebook
On Mon, Apr 23, 2001 at 10:16:53AM -0700, Martin.Backe@... wrote:
> Off-hand, I'd say the problem is due to your cursor reconfigure for the
> toplevel widget .nb, which get propagated to it's children (a frame AND a
> Instead, try this:
> pack [button $p1.f.pressme -text "Busy" \
> -command "$p1.f configure -cursor watch"]
This is actually a simplified example - the real cursor change comes from a
SetBusy function which notifies all toplevels of the change of cursor. I
it that way - I'm not just interested in having the frame busy, but the
app (as I'm not using a multi-threaded app). I can cure it a number of ways
hacking different things to configure. Even ".nb.canvas configure -cursor
watch" works OK.
However the real issue is why does changing the cursor generate a
event? I cannot see why this should be the case - it doesn't make sense.
less sense is that it is generated with a completely different width and
height (it goes back to the original requested geometry instead of the
I've been trying to analyse it with tcl_traceExec, but it doesn't seem to
what generates the binding call. It simply comes into being, which probably
implies that it's C code whic has set something so that the Tk library will
generate a Configure event. I've even looked in the C code for itk and
cannot see where it comes from. Maybe it's a Tk bug - I certainly cannot
any geometry request code in the tcl or C code for itk and iwidgets.
My current investigation is for borderwidths - these seem to cause
ConfigureNotify event types and it's not something I've explicitly searched
James Bonfield (jkb@...) Tel: 01223 402499 Fax: 01223
Medical Research Council - Laboratory of Molecular Biology,
Hills Road, Cambridge, CB2 2QH, England.
Also see Staden Package WWW site at http://www.mrc-lmb.cam.ac.uk/pubseq/
Incrtcl-users mailing list