--- tcl/windows/tree.tcl.orig	2011-02-25 22:25:20.000000000 +1000
+++ tcl/windows/tree.tcl	2011-02-25 22:51:51.000000000 +1000
@@ -80,7 +80,7 @@
   set tree(locked$baseNumber) 0
   set tree(base$baseNumber) $baseNumber
   set tree(status$baseNumber) ""
-  set tree(bestMax$baseNumber) 50
+  set tree(bestMax$baseNumber) 20
   set tree(order$baseNumber) "frequency"
   trace variable tree(bestMax$baseNumber) w "::tree::doTrace bestMax"
   set tree(bestRes$baseNumber) "1-0 0-1 1/2 *"
@@ -969,37 +969,25 @@
   set w .treeBest$baseNumber
   if {! [winfo exists .treeWin$baseNumber]} { return }
   if {! [winfo exists $w]} {
-    toplevel $w
+    ::createToplevel $w
+
     ::setTitle $w "Scid: $::tr(TreeBestGames) $baseNumber: [file tail [sc_base filename $baseNumber]]"
     setWinLocation $w
+    setWinSize $w
     bind $w <Escape> "destroy $w"
     bind $w <F1> {helpWindow Tree Best}
     pack [ttk::frame $w.b] -side bottom -fill x
     pack [ttk::frame $w.opt] -side bottom -fill x
-    set pane [::utils::pane::Create $w.pane blist bpgn 520 320 0.6]
-    ::utils::pane::SetRange $w.pane 0.3 0.8
-    pack $pane -side top -expand true -fill both
-    ttk::scrollbar $pane.blist.ybar -command "$pane.blist.list yview" -takefocus 0
-    listbox $pane.blist.list -background white -yscrollcommand "$pane.blist.ybar set" -font font_Small
-    pack $pane.blist.ybar -side right -fill y
-    pack $pane.blist.list -side left -fill both -expand yes
-    bind $pane.blist.list <<ListboxSelect>> "::tree::bestPgn $baseNumber"
-    bind $pane.blist.list <Double-Button-1> "::tree::bestBrowse $baseNumber"
-    
-    ttk::scrollbar $pane.bpgn.ybar -command "$pane.bpgn.text yview" -takefocus 0
-    text $pane.bpgn.text -width 50 -height 20 -background gray90 \
-        -cursor top_left_arrow -yscrollcommand "$pane.bpgn.ybar set" -wrap word \
-        -state disabled -font font_Small
-    pack $pane.bpgn.ybar -side right -fill y
-    pack $pane.bpgn.text -side left -fill both -expand yes
-    set t $pane.bpgn.text
-    bind $t <ButtonPress-1> "::pgn::ShowBoard $pane.bpgn.text 4 %x %y %X %Y"
-    bind $t <ButtonRelease-1> ::pgn::HideBoard
-    bind $t <ButtonPress-$::MB2> "::pgn::ShowBoard $pane.bpgn.text 4 %x %y %X %Y"
-    bind $t <ButtonRelease-$::MB2> ::pgn::HideBoard
-    bind $t <ButtonPress-$::MB3> "::pgn::ShowBoard $pane.bpgn.text 4 %x %y %X %Y"
-    bind $t <ButtonRelease-$::MB3> :::pgn::HideBoard
-    
+
+    frame $w.blist
+pack $w.blist -side top -expand true -fill both
+    ttk::scrollbar $w.blist.ybar -command "$w.blist.list yview" -takefocus 0
+    listbox $w.blist.list  -yscrollcommand "$w.blist.ybar set" -font font_Small
+    pack $w.blist.ybar -side right -fill y
+    pack $w.blist.list -side left -fill both -expand yes
+    bind $w.blist.list <<ListboxSelect>> "::tree::bestPgn $baseNumber"
+    bind $w.blist.list <Double-Button-1> "::tree::bestBrowse $baseNumber"
+
     ttk::label $w.opt.lmax -text $::tr(TreeBest:) -font font_Small
     set m [tk_optionMenu $w.opt.max tree(bestMax$baseNumber) 10 20 50 100 200 500]
     $m configure -font font_Small
@@ -1020,12 +1008,14 @@
     pack $w.opt.lmax $w.opt.max -side left -padx 0 -pady 2
     pack $w.opt.lres $w.opt.res -side left -padx 0 -pady 2
     bind $w <Configure> "recordWinSize $w"
-    focus $w.pane.blist.list
+    focus $w.blist.list
+  ::createToplevelFinalize $w
+
   } elseif {$bpress == 1} {
        focus $w
        raise $w
   }
-  $w.pane.blist.list delete 0 end
+  $w.blist.list delete 0 end
   set tree(bestList$baseNumber) {}
   set count 0
   
@@ -1035,17 +1025,17 @@
     incr count
     # listbox widget does not like ' character
     set line [ string map { "'" "\'" } $line ]
-    $w.pane.blist.list insert end "[format %02d $count]:  $line"
+    $w.blist.list insert end "[format %02d $count]:  $line"
     lappend tree(bestList$baseNumber) $idx
   }
-  catch {$w.pane.blist.list selection set 0}
+  catch {$w.blist.list selection set 0}
   ::tree::bestPgn $baseNumber
 }
 
 ################################################################################
 proc ::tree::bestLoad { baseNumber } {
   global tree
-  if {[catch {set sel [.treeBest$baseNumber.pane.blist.list curselection]}]} { return }
+  if {[catch {set sel [.treeBest$baseNumber.blist.list curselection]}]} { return }
   if {[catch {set g [lindex $tree(bestList$baseNumber) $sel]}]} { return }
   # if {$tree(locked$baseNumber)} { sc_base switch $tree(base$baseNumber) }
   sc_base switch $tree(base$baseNumber)
@@ -1055,7 +1045,7 @@
 ################################################################################
 proc ::tree::bestMerge { baseNumber } {
   global tree
-  if {[catch {set sel [.treeBest$baseNumber.pane.blist.list curselection]}]} { return }
+  if {[catch {set sel [.treeBest$baseNumber.blist.list curselection]}]} { return }
   if {[catch {set gnum [lindex $tree(bestList$baseNumber) $sel]}]} { return }
   set base $baseNumber
   if {$tree(locked$baseNumber)} { set base $tree(base$baseNumber) }
@@ -1065,7 +1055,7 @@
 ################################################################################
 proc ::tree::bestBrowse { baseNumber } {
   global tree
-  if {[catch {set sel [.treeBest$baseNumber.pane.blist.list curselection]}]} { return }
+  if {[catch {set sel [.treeBest$baseNumber.blist.list curselection]}]} { return }
   if {[catch {set gnum [lindex $tree(bestList$baseNumber) $sel]}]} { return }
   set base $baseNumber
   if {$tree(locked$baseNumber)} { set base $tree(base$baseNumber) }
@@ -1075,34 +1065,14 @@
 ################################################################################
 proc ::tree::bestPgn { baseNumber } {
   global tree
-  set t .treeBest$baseNumber.pane.bpgn.text
-  $t configure -state normal
-  $t delete 1.0 end
-  if {[catch {set sel [.treeBest$baseNumber.pane.blist.list curselection]}]} { return }
+  if {[catch {set sel [.treeBest$baseNumber.blist.list curselection]}]} { return }
   if {[catch {set g [lindex $tree(bestList$baseNumber) $sel]}]} { return }
-  
+
   set base $baseNumber
-  
+
   if {[catch {sc_game summary -base $base -game $g header} header]} { return }
   if {[catch {sc_game summary -base $base -game $g moves} moves]} { return }
   if {[catch {sc_filter value $base $g} ply]} { return }
-  $t tag configure header -foreground darkBlue
-  $t tag configure start -foreground darkRed
-  $t insert end $header header
-  $t insert end "\n\n"
-  set m 0
-  set moves [::trans $moves]
-  foreach move $moves {
-    incr m
-    if {$m < $ply} {
-      $t insert end $move start
-    } else {
-      $t insert end $move
-    }
-    $t insert end " "
-  }
-  
-  $t configure -state disabled
 }
 
 ################################################################################
