Ok... the first draft only worked with up to 1024 games. The in-memory data
structures are a little dynamic and cryptic.
This patch works with the index file directly, and tests ok on Millbase
1.6million games. But it needs more testing of course.
Cheers.

On Sat, Jul 3, 2021 at 10:06 AM Steve A <stevena...@gmail.com> wrote:

> Hmmm - no, it has bugs. I have a corrupted base somehow.
> S.A.
>
> On Sat, Jul 3, 2021 at 9:23 AM Steve A <stevena...@gmail.com> wrote:
>
>> Ok, amazingly there's been two rainy days here :) and I have coded this
>> for anyone with a compiler and wanting to test it. Please unzip and apply
>> the attached patch to source code for 4.21 (or checkout subversion would be
>> much better, and then apply the patch) with something like
>>   patch --dry-run -p0 <reorder.diff
>> then, if no mistakes,
>>   patch -p0 <reorder.diff
>>   make clean install
>> There are now context menus to reorder single games in the gamelist. It
>> seems to work 100%, but *please backup databases*, and test it
>> thoroughly, as It is doing nasty bashing of totally essential data
>> structures and perhaps there are issues with other features i have not
>> seen. I'll probably apply it to subversion before too long.
>> Steve
>>
>> On Sat, Jul 3, 2021 at 1:38 AM John Gray <jdg...@protonmail.com> wrote:
>>
>>> Great! Yes, I'm running Ubuntu 20.04 LTS.
>>>
>>> Sent with ProtonMail <https://protonmail.com/> Secure Email.
>>>
>>> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
>>> On Friday, July 2nd, 2021 at 2:53 AM, Steve A <stevena...@gmail.com>
>>> wrote:
>>>
>>> Ok John, i am coding this.
>>> It's a bit of new stuff for me, but i have the move game up/down working
>>> i think. It is all done inside the gamelist , as a context menu for a game.
>>> Moving a game to a specific game number , and even moving a sequential
>>> group of games should  be possible.
>>>
>>> I don't suppose you are using Linux so we can easily do some testing ?
>>> (Don't worry about CC-ing the mailing list more on this topic.)
>>> Cheers
>>>
>>> On Wed, Jun 30, 2021 at 6:51 AM John Gray <jdg...@protonmail.com> wrote:
>>>
>>>> Hi Steve, thanks for the response. To be clear, I don't really care if
>>>> this functionality exists in the gamelist window specifically. I just want
>>>> to be able to tell scid "move this specific game to a new position (number
>>>> xyz) in the order of the db." I'm happy to do this one game at a time,
>>>> don't care what window I have to use to do it, and would settle for a slow,
>>>> cumbersome process as long as it was faster and less error prone than what
>>>> I described before.
>>>>
>>>> One thing that might do equally well would be if scid could just give
>>>> each game a pgn field called ("sort rank") and allow the user to run
>>>> something from the maintenance window to reassign the value of this field
>>>> to whatever each games *current* position in the DB is ("update sort
>>>> rank"). Don't worry about new functionality to change the order, but give
>>>> the user a quick way to auto-generate a field representing the current
>>>> order which the user could then modify and sort on. So the first game in
>>>> the DB gets the value "1" in this field etc. Then the user could manually
>>>> change game 97's sort rank to 84.5, sort on "sort rank" and the problem is
>>>> solved.
>>>>
>>>> The user can even do this on his own right now to some extent. I can
>>>> use e.g. the "round" field to track the order I want things in. The
>>>> problems are: 1.) I might want "round" for something else so it would be
>>>> cleaner to have a field specifically for sorting 2.) I might not have the
>>>> sort order field on a set of problems I get from somewhere else. It would
>>>> be nice if scid could generate it 3.) the sort numbers will get messy over
>>>> time (pretty soon you will have something like 84.5739). If scid could
>>>> auto-assign each game's current ordinal rank to a dedicated pgn field (that
>>>> was included in the sort options, of course) it would really solve the
>>>> problem.
>>>>
>>>> Thanks in any case.
>>>>
>>>> Sent with ProtonMail <https://protonmail.com/> Secure Email.
>>>>
>>>> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
>>>> On Tuesday, June 29th, 2021 at 8:52 AM, Steve A <stevena...@gmail.com>
>>>> wrote:
>>>>
>>>> > In Chess Assistant it is possible to just highlight a game in the
>>>> game list and use some keyboard shortcut (Ctrl+Arrow maybe?)
>>>>
>>>> I mean, maybe this minimal implentation (to reverse two games order)
>>>> could be done with minimal disruption of the DB backend, mostly inside the
>>>> gamelist widget... But we would have to dual-mode the gamelist as it could
>>>> not be done with a selective filter displayed.
>>>>
>>>> Ttk::treeview is such an ordinary, underpowered thing, and because we
>>>> have to accommodate millions of games, we never populate it properly, only
>>>> the view that we see, which makes many things nasty and complicated.
>>>>
>>>> S.
>>>>
>>>>
>>>>
>>>

Attachment: reorder_new3.diff.gz
Description: application/gzip

_______________________________________________
Scidvspc-users mailing list
Scidvspc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/scidvspc-users

Reply via email to