From: Andy C. <an...@ac...> - 2008-01-04 13:19:40
|
On trying our software with 8.5.0, we have discovered that our workaround to replace system dialogs: proc ::tk_messageBox {args} { return [eval tk::MessageBox $args] } was causing dialogs to fail. This was because the tcl code (in mshbox.tcl) is doing this: if {$data(-icon) ne ""} { if {$windowingsystem eq "aqua" || ([winfo depth $w] < 4) || $tk_strictMotif} { ttk::label $w.bitmap -bitmap $data(-icon) -background $bg } else { problem: ttk::label does not have -bitmap replacing 'ttk:label' with 'label' fixes this and gets the old dialogs working again. Whilst it's unlikely that others will discover this 'bug', I do think it should be corrected -either by using 'label' instead of 'ttk::label' (the easiest method) or by converting the code to use images rather than bitmaps. Can we get this done for the next release? (note that we are not sure if we still need this workaround since we haven't yet done extensive testing to see if the intermittent dialog hangs we were getting have gone with 8.5.0) Andy www.inivis.com |
From: Jeff H. <je...@ac...> - 2008-01-04 20:22:32
|
Andy Colebourne wrote: > was causing dialogs to fail. This was because the tcl code (in > mshbox.tcl) is doing this: > > if {$data(-icon) ne ""} { > if {$windowingsystem eq "aqua" > || ([winfo depth $w] < 4) || $tk_strictMotif} { > ttk::label $w.bitmap -bitmap $data(-icon) -background $bg > } else { > > problem: ttk::label does not have -bitmap > > replacing 'ttk:label' with 'label' fixes this and gets the old dialogs > working again. Yes, but I think the real solution is to ignore any option but the canvas-based else clause in that function now. > Whilst it's unlikely that others will discover this 'bug', I do think > it should be corrected -either by using 'label' instead of > 'ttk::label' (the easiest method) or by converting the code to use > images rather than bitmaps. Can we get this done for the next release? Surely, one way or the other. > (note that we are not sure if we still need this workaround since we > haven't yet done extensive testing to see if the intermittent dialog > hangs we were getting have gone with 8.5.0) This of course answers my biggest concern of "why?" you use it. Jeff |
From: Andy C. <an...@ac...> - 2008-01-04 20:47:21
|
>=20 > This of course answers my biggest concern of "why?" you use it. >=20 We are still getting occasional hangs from dialogs e.g. quit? = yes/no/cancel. I have had a few today with 8.5.0. It -may- have something to do with = the main window not being in focus when the dialog pops up e.g. main window = not in focus and the close icon is clicked, popping up a quit dialog. It doesn't always hang though. I'll work on a small sample script and see if I can duplicate it. Andy www.inivis.com |