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
Index: tcl/start.tcl
===================================================================
--- tcl/start.tcl (revision 3499)
+++ tcl/start.tcl (working copy)
@@ -424,6 +424,8 @@
set analysis(boardSize) 2
set analysis(boardType) Arrows
set analysis(boardSeqNumColor) black
+set analysis(boardSeqL0Color) white
+set analysis(boardSeqL1Color) gray40
# Colors
Index: tcl/tools/analysis.tcl
===================================================================
--- tcl/tools/analysis.tcl (revision 3499)
+++ tcl/tools/analysis.tcl (working copy)
@@ -3782,7 +3782,7 @@
# Show an arrow between start and end squares
set coord [::board::mark::GetArrowCoords $board $sq_start $sq_end [expr $::board::arrowLength*0.33]]
- $board create line $coord -fill [expr {($im+$ply) % 2 ? "grey40" : "white"}] -arrow last -width 2 -arrowshape {5 7 3} -tag bvm
+ $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
Index: tcl/menus.tcl
===================================================================
--- tcl/menus.tcl (revision 3499)
+++ 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(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)
scidBooksDir scidBasesDir
::book::lastBook1 ::book::lastBook2 ::book::lastTuning ::book::sortAlpha
::book::showTwo ::book::oppMovesVisible ::gbrowser::size
Index: tcl/tools/analysis.tcl
===================================================================
--- tcl/tools/analysis.tcl (revision 3501)
+++ tcl/tools/analysis.tcl (working copy)
@@ -2395,6 +2395,7 @@
::utils::tooltip::Set $w.b.alllines $tr(AddAllVariations)
bind $w.b.alllines <Button-3> "addAllVariations $n 2"
+ set analysis(boardSeqPVSel$n) [lrange {0 1 2 3 4 5 6 7 8 9} 0 0]
spinbox $w.b.multipv -from 1 -to 8 -increment 1 -textvar analysis(multiPVCount$n) -justify center \
-width 2 -font font_Small -command "changePVSize $n"
::utils::tooltip::Set $w.b.multipv $tr(Lines)
@@ -2782,6 +2783,12 @@
sendToEngine $n "setoption name MultiPV value $analysis(multiPVCount$n)"
}
}
+
+ set analysis(boardSeqPVSel$n) [lrange {0 1 2 3 4 5 6 7 8 9} 0 [expr $analysis(multiPVCount$n)-1]]
+ if {[winfo exists .analysisWin$n.frame.pvsel]} {
+ .analysisWin$n.frame.pvsel selection set 0
+ }
+
}
@@ -3687,8 +3694,19 @@
button $w.frame.close -image arrow_close -font font_Small -relief flat -command "
set analysis(showBoard$n) 0
pack forget $w.frame"
+ pack $w.frame.bd $w.frame.close -side left -anchor n
- pack $w.frame.bd $w.frame.close -side left -anchor n
+ if {$analysis(boardType$n) == "Sequential"} {
+ listbox $w.frame.pvsel -listvariable analysis(boardSeqPVSel$n) -width 0 -height 0 -exportselection false
+ $w.frame.pvsel selection set 0
+ ::utils::tooltip::Set $w.frame.pvsel {select multipv pv to view}
+ bind $w.frame.pvsel <<ListboxSelect>> "
+ set analysis(boardSeqLengthSeen$n) 0
+ set analysis(boardSeqDepthSeen$n) 0
+ updateAnalysisBoard $n redraw"
+ pack $w.frame.close $w.frame.pvsel -side top -anchor n
+ }
+
bind $w.frame.bd.bd <Button-2> "
$w.frame.bd.bd delete var bvm
nextBoardType $n"
@@ -3868,6 +3886,8 @@
}
} else {
# Hanish's feature
+ set pvsel [.analysisWin$n.frame.pvsel curselection]
+ set pvmoves [lindex [lindex $analysis(multiPVraw$n) $pvsel] 2]
if {[sc_pos moves] == {}} {
set analysis(boardSeqLengthSeen$n) 0
set analysis(boardSeqDepthSeen$n) 0
@@ -3874,12 +3894,12 @@
} else {
# Show some amount of the initial part of the Main PV using thin arrows
if {$analysis(uci$n) &&
- ([llength $moves] > $analysis(boardSeqLengthSeen$n)/2 ||
+ ([llength $pvmoves] > $analysis(boardSeqLengthSeen$n)/2 ||
$analysis(depth$n) > ($analysis(boardSeqDepthSeen$n)+1) ||
$analysis(scoremate$n) != 0)} {
- set analysis(boardSeqLengthSeen$n) [llength $moves]
+ set analysis(boardSeqLengthSeen$n) [llength $pvmoves]
set analysis(boardSeqDepthSeen$n) $analysis(depth$n)
- boardVisualizeMoves $bd.bd $n $moves
+ boardVisualizeMoves $bd.bd $n $pvmoves
} else {
$bd.bd raise bvm
}
_______________________________________________
Scidvspc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/scidvspc-users