Hi Steve,

To help view deeper/longer into the PV from the analysis engine, allow
the spinbox of visualisation depth to be increased upto 64 from
initial limit which I had previously set at 8.

At the same time to avoid cluttering the board with seq numbers, now
move seq numbers will be shown only for the last few moves relative to
the specified visualisation depth.

NOTE1: Purposefully calculating the window of seq numbers to show
relative to user set visualisation depth and not the number of moves
in the pv, so that if reqd user can indirectly avoid any and all seq
numbers from being shown on the board, by setting the vis depth to be
much larger than the current engine pv depth. So that board shows only
the move visualisation lines/arrows and not any seq numbers.

Users can control the window/amount of seq numbers to show, through options.dat.

Also I have reduced the font size by 20% so that it doesnt occupy too
much of the square spaces. Also I have uncommented the text
shadow/highlight plotting and made the gradient logic create a very
light shade rather than a darker shade.

NOTE2: This patch is generated relative to the two patches which I
submitted on the mailing list yesterday.

On Tue, Dec 17, 2024 at 2:52 AM C Hanish Menon <hanish...@gmail.com> wrote:
>
> Hi Steve,
>
> Attaching two patches
>
> 1. Define variables which get managed through options.dat, for the
> colors used wrt BoardVisualiseMoves Odd and Even lines, so that user
> can configure/change the same if required.
>
> 2. Allow user to select which engine PV from among MultiPVs to show on
> analysis board wrt moves visualisation.
>
>
>
> --
> Keep ;-)
> HanishKVC



-- 
Keep ;-)
HanishKVC
Index: tcl/menus.tcl
===================================================================
--- tcl/menus.tcl	(revision 3505)
+++ tcl/menus.tcl	(working copy)
@@ -983,7 +983,7 @@
     gameInfo(show) gameInfo(photos) gameInfo(wrap) gameInfo(showStatus) 
     gameInfo(fullComment) gameInfo(showMarks) gameInfo(showMenu) gameInfo(showTool) 
     gameInfo(showMaterial) gameInfo(showFEN) gameInfo(showButtons) gameInfo(showTB) 
-    analysis(mini) engines(F2) engines(F3) engines(F4) analysis(logMax) analysis(logName) analysis(maxPly) analysis(lowPriority) analysis(boardSize) analysis(boardType) analysis(showBoard) analysis(showEngineInfo) analysis(wrapPV) analysis(boardSeqNumColor) analysis(boardSeqL0Color) analysis(boardSeqL1Color)
+    analysis(mini) engines(F2) engines(F3) engines(F4) analysis(logMax) analysis(logName) analysis(maxPly) analysis(lowPriority) analysis(boardSize) analysis(boardType) analysis(showBoard) analysis(showEngineInfo) analysis(wrapPV) analysis(boardSeqNumColor) analysis(boardSeqL0Color) analysis(boardSeqL1Color) analysis(boardSeqNumWin)
     scidBooksDir scidBasesDir 
     ::book::lastBook1 ::book::lastBook2 ::book::lastTuning ::book::sortAlpha 
     ::book::showTwo ::book::oppMovesVisible ::gbrowser::size 
Index: tcl/start.tcl
===================================================================
--- tcl/start.tcl	(revision 3505)
+++ tcl/start.tcl	(working copy)
@@ -424,6 +424,7 @@
 set analysis(boardSize) 2
 set analysis(boardType) Arrows
 set analysis(boardSeqNumColor) black
+set analysis(boardSeqNumWin) 6
 set analysis(boardSeqL0Color) white
 set analysis(boardSeqL1Color) gray40
 
Index: tcl/tools/analysis.tcl
===================================================================
--- tcl/tools/analysis.tcl	(revision 3505)
+++ tcl/tools/analysis.tcl	(working copy)
@@ -2454,7 +2454,7 @@
   }
 
   set analysis(boardSeqCount$n) 3
-  spinbox $w.b.seqCount -from 1 -to 8 -increment 1 -textvar analysis(boardSeqCount$n) -justify center \
+  spinbox $w.b.seqCount -from 1 -to 64 -increment 1 -textvar analysis(boardSeqCount$n) -justify center \
     -width 2 -font font_Small -command "
       set analysis(boardSeqLengthSeen$n) 0
       set analysis(boardSeqDepthSeen$n) 0
@@ -3686,7 +3686,7 @@
     ::board::new $w.frame.bd [expr {$analysis(boardSize) * 5 + 20}] 0 $::board::_flip(.main.board)
 
     # Hmmm - all boards have to have the same font size
-    set fontSize [expr ($analysis(boardSize) * 5 + 20)/2 - 2]
+    set fontSize [expr round((($analysis(boardSize) * 5 + 20)/2 - 2)*0.8)]
     set analysis(boardSeqFont) "{courier 10 pitch} $fontSize bold"
 
     set ::board::_coords($w.frame.bd) $::boardCoords
@@ -3779,6 +3779,7 @@
   global analysis
 
   $board delete bvm
+  set mcStartText [expr $analysis(boardSeqCount$n)-$analysis(boardSeqNumWin)]
   set im -1
   set mc 0
   set ply [sc_pos location]
@@ -3803,10 +3804,12 @@
       $board create line $coord -fill [expr {($im+$ply) % 2 ? $analysis(boardSeqL1Color) : $analysis(boardSeqL0Color)}] -arrow last -width 2 -arrowshape {5 7 3} -tag bvm
 
       # and the move number midway along the line
-
+      if {$mc <= $mcStartText} {
+        continue
+      }
       set xmid [expr ([lindex $coord 0] + [lindex $coord 2]) / 2]
       set ymid [expr ([lindex $coord 1] + [lindex $coord 3]) / 2]
-      # $board create text [expr $xmid+1] [expr $ymid+1] -fill [gradient $analysis(boardSeqNumColor) -.5] -font $analysis(boardSeqFont) -text $mc -anchor c -tag bvm
+      $board create text [expr $xmid+1] [expr $ymid+1] -fill [gradient $analysis(boardSeqNumColor) 0.8] -font $analysis(boardSeqFont) -text $mc -anchor c -tag bvm
       $board create text $xmid $ymid -fill $analysis(boardSeqNumColor) -font $analysis(boardSeqFont) -text $mc -anchor c -tag bvm
     }
   }
_______________________________________________
Scidvspc-users mailing list
Scidvspc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/scidvspc-users

Reply via email to