On Nov 20, 2010, at 11:08 AM, Alexander Wagner wrote:

> On 11/19/10 22:10, Israel Chauca F. wrote:
> 
> Hi!
> 
>>>> I'm trying to use the new Cocoa based build of Tk, but Scid exits after 
>>>> this message:
>>>> num matched toplevel windows does not equal num children
>>>> It happens in updateBoard around line 1513 of end.tcl, any pointers about 
>>>> how to proceed debugging it? I'm not sure what the message means.
>>> 
>>> Could this be a docking issue? Ie. did you try classical mode?
>> 
>> Right on the spot! I changed the docking setting with an older version and 
>> then I could use the new Cocoa based build of Scid.
>> 
>> The problem with the wrong path is gone. The garble pieces are gone, but the 
>> colorless board on the Setup Board window under Aqua theme is still there.
> 
> This sounds promising.
> 
>> I tracked the docking problem and this patch fixes it here:
>> 
>> diff --git a/tcl/main.tcl b/tcl/main.tcl
>> index 2ea02e9..cba3f92 100644
>> --- a/tcl/main.tcl
>> +++ b/tcl/main.tcl
>> @@ -897,8 +897,8 @@ proc updateBoard {args} {
>>     updateEpdWins
>>     if {[winfo exists .analysisWin1]} { updateAnalysis 1 }
>>     if {[winfo exists .analysisWin2]} { updateAnalysis 2 }
>> -    # if {[winfo exists .treeWin]} { ::tree::refresh }
>> -    ::tree::refresh
>> +    if {[winfo exists .treeWin]} { ::tree::refresh }
>> +    # ::tree::refresh
>>     if {[winfo exists .commentWin]} { ::commenteditor::Refresh }
>>     if {[::tb::isopen]} { ::tb::results }
>>     updateMenuStates
>> 
>> It seems weird to me that the if block was skipped for the .treeWin, but 
>> since it seems to work everywhere else and it's commented out I suppose 
>> there was some problem with it.
> 
> Well, I have to explore this in more depth, but I guess(!) that if you open 
> the tree in your patched version it just might not get any refresh. Each tree 
> window would need it's own name and unlike the comment editor we can have 
> multiple trees, so I think [winfo exists .treeWin] will never be true.

You're right, the tree window is not refreshed.

> Funny effect: why does refreshing the tree scramble the display in Cocoa? Any 
> idea here?

After more testing, this part of the first line of ::tree::refresh seems to be 
problematic:

  wm stackorder .

If I place just that line at the beginning I get the same message:

  num matched toplevel windows does not equal num children

Ideas?

Israel
------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
Spend less time writing and  rewriting code and more time creating great
experiences on the web. Be a part of the beta today
http://p.sf.net/sfu/msIE9-sfdev2dev
_______________________________________________
Scid-users mailing list
Scid-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/scid-users

Reply via email to