[ltk-user] Socket problem....
Kenny Tilton
ktilton at nyc.rr.com
Thu Feb 9 23:39:28 UTC 2006
Thomas F. Burdick wrote:
>On 2/9/06, Kenny Tilton <ktilton at nyc.rr.com> wrote:
>
>
>>Peter Herth wrote:
>>
>>
>>
>>>I actually do withdraw windows as soon as they are created to fill
>>>them in the background. So that works with all my programs.
>>>
>>>
>>Good to know, thx. Yeah, worked for me, too, until I did Something.
>>Programming! :)
>>
>>
>
>This is purely subjective (I haven't written up test cases to find out
>for sure), but it seems like the fastest way to do things is to
>withdraw the toplevel, pack from innermost to outermost, then
>normalize it.
>
Yep. And if I want to get diabolical I can, instead of sending TK
commands as they come up during a propagation, I can save them up and,
at the end of any given propagation (as the ultimate step in
unfinished-business handling) sort them and write them all to the stream
in one blast.
Of course this means Cells needs to accept before, after, around,
whatever callbacks to be kicked off after every propagation. Maybe
during propagation there is something in the Cells API to register an
"after" callback. Possibly one-time or permanent, not that I see a big
cost to registering on each propagation.
This does not seem kludgy to me. One thing Cells does is neatly organize
the multitudinous state changes arising from some initial state change.
OTOH, as I am discovering with Tk, sometimes this well-ordered system
has to deal with less well-ordered systems. Tk is a little fragile when
it comes to things like:
set .w1 "boo"
<create a listbox with textvariable .w1 and items including "boo">
No dice. The order must be reversed or the list does not see the value
.w1. ie, The usual problem with imperative vs. declarative.
So a reasonable extension to Cells is a mechanism for talking to
external systems sensitive to the ordering of perturbations. But I will
wait until Tk proves it needs this or until some other use case comes along.
ken
More information about the ltk-user
mailing list