### WARNING ### - The following will probably do the head in of many of you, as no doubt it qualifies as complex. Hopefully it won't matter, if I get things right, but those of you wanting more control, will need to be aware of the pitfalls of doing so.
It has occurred to me, that there is an even bigger dilemma with Download location, than I have already mentioned.
Currently my program allows you to set what we can call the main default location for games, plus the use of an alphanumeric sub-folder. The 'gogrepo.py' script does not support the alpha folders (as I have already mentioned), when you request it to do a DOWNLOAD ALL. Because of that, I will be adding my own version of DOWNLOAD ALL, that does support alpha folders.
For those who are not clear on what that means, here are path examples for one game - Ruiner.
(Supported by 'gogrepo.py' when doing an DOWNLOAD ALL)
D:\GOG GAMES\ruiner
(Not supported, except by my GOGRepo GUI)
D:\GOG GAMES\R\ruiner
That means, that if you are going to use the alphanumeric sub-folder option, you can only use one method of DOWNLOAD ALL ... that provided by my GOGRepo GUI.
Most of you probably won't bother with the alphanumeric sub-folder option, so it won't be an issue for you, and you will be able to use either DOWNLOAD ALL method.
But ......
Another issue has come to light.
You can set the default download location on-the-fly. This means, that if you wanted to, you could change it per game. It would be extra trouble to do so, browsing for each game in fact. Because of this, we have a real problem, unless my program stores destination location for each game.
Here is an example of what could occur, out of an endless number, for one game - ASYLUM Demo.
(Supported by 'gogrepo.py' when doing an DOWNLOAD ALL)
D:\GOG GAMES\asylum_demo
(Not supported, except by my GOGRepo GUI)
D:\GOG GAMES\A\asylum_demo
(Not currently supported at all, except when working individually with the selected game)
D:\GOG GAMES\Demos\asylum_demo
(Or with the additional alphanumeric sub-folder option)
D:\GOG GAMES\Demos\A\asylum_demo
I can't really prevent users doing something like this, so I guess I need to support it.
Currently I have it in mind, to offer two main Download location choices (3 or 4 really).
(1) Default (plus option of alphanumeric sub-folder).
(2) Specific (plus option of alphanumeric sub-folder).
I am tempted to not offer the alphanumeric sub-folder option for Specific.
In practice this means, that when you either start downloading a game or adding it to the queue, the destination needs to be stored for that game for later recall. Added to that, the program will need to check for a Specific download location already set, and use that if found, instead of the Default.
If you go for the traditional method of Default download location only, with no option, then you will be able to use all the standard 'gogrepo.py' abilities. Plus you can also use the queuing download alternative provided by GOGRepo GUI.
However, if you want a bit more control and flexibility, then you will be able to do so ... at the cost mentioned.
Regardless of your choice, it seems I need to cater for both ... even if I disallow the alphanumeric sub-folder option for both methods. In theory, I could just go with warning the user not to set specific download locations, but I am not sure that is the smartest approach.
Post edited June 29, 2020 by Timboli