benini / scid

Other
44 stars 14 forks source link

Reviewgame #150

Closed ukscid closed 1 year ago

ukscid commented 1 year ago

A revision of the "review game" function.

The most important changes: Time selection in seconds It is analyzed only for the player side. Automatic check that the game is always played from the "bottom". If necessary, the board is rotated. Detect when the position has been changed and make a recalculation. Improved display of the results. Many bug fixes.

benini commented 1 year ago

I've started looking over the changes, but I feel it's necessary to clarify some points. I want a new window that can analyze and annotate a game, similar to the functionality found in lichess and chess.com. Once this is in place, uci.tcl and analysis.tcl will be removed, along with any modules that depend on them and are not very good, like reviewgame.

It is also very important to keep in mind that there are many modules in SCID. Using low-level functions like "sc_move forward" should be a last resort. Have you considered whether the user wants the moves to be announced or if there is a DGT board connected? It is also crucial to notify the other modules using the correct function. If you change the current position, it is appropriate to use "::notify::PosChanged." If it is necessary to update the board but the current position remains unchanged, "updateBoard" should be used instead.

benini commented 1 year ago

In the end I don't want to spend much time reviewing this. If you've tested it and believe it's okay, let me know and I'll commit it as it is.