ISOs:
Would be easy enough: Just provide options on multi-SKU ISOs to pick a SKU - if selected, that SKU's data is permanently saved to the user for future use (if already saved, it's overridden)
Existing Windows Installs:
On Windows Vista and onwards, we'd need to figure out a way to obtain the SKU of the Windows installation. On Windows XP, every SKU has the same files as one-another, except for MCE and Starter which can be determined by having Media Center installed and possibly either lack of files or the presence of the Starter-exclusive wallpaper respectively.
For non-MCE-non-Starter, just save the files in their joint-SKU forms, and kinda just give them a special treatment SKU where you can pick both Home and Professional at any given time when provided.
For Starter and MCE, treat them as separate SKU options, however.
Managing saved SKUs:
Add a menu option to access currently saved SKUs, where you can then delete the saved data of SKUs you don't need anymore (they won't be deleted from the already converted GTs, however, but after doing so you will need to supply files again for that SKU when converting themes)
SKUs of the same ISO should share non-SKU-specific files with one-another - once used for one SKU, future SKUs will only extract SKU-specific files from the ISO/install.
Selecting ISOs or Windows installs
Before selecting a SKU, you will need to pick an ISO or Windows installation.
For Windows installations, a permanent note of where the Windows installation was located path-wise will be made while extracting its contents.
For ISOs, a permanent note of their md5sum will be made while extracting its contents.
When accessing the SKU selector on future rounds, you will be able to choose the SKUs you've already saved, skipping re-extraction.
Additionally, if the md5sum matches for ISOs, you will be able to pick all* the SKUs on the ISO to save and use one of for this theme conversion.
*Saved SKUs with missing files will not be displayed as saved SKUs, requiring a re-extraction. Additionally, if non-SKU-specific files're missing, the ISO will need to match md5sum-checks to list saved SKUs, and when converting all files, including non-SKU-specific ones, will be re-extracted. Saved SKUs with a full file-set, however, will never be made available in the 'Unsaved Editions' list.
NOTE: Stuff like icon sets, and so on planned in the future, will be named after the OS branding detected in the files. If no OS branding is detected, simply let the user decide what it should be called. Additionally, to prevent confusion subtitle each used ISO and Windows installation in ISO/install select with their ISO filename or drive name respectively.
**If an ISO or Windows installation selected was already used, just select the respective used option automatically instead of saving anything from them automatically.
When the selectors should open
ISOs and installs
Always. ISOs and installs of the past will be listed as options, along with "Use disk image file...", "Use disc...", and "Use an existing Windows installation...", along with a "Use Feren OS styling..." option if Inspire is installed and a "Use KDE Plasma styling..." option if the OS style specified supports it.
SKUs
When one of the following criteria is met:
The only saved SKU of that ISO is the Starter SKU, unless the option "Just use Starter." is enabled (will be a visible checkbox in the SKU selector on these specific conditions, otherwise visible in Settings under the label "Use Starter automatically if it is the only available edition of Windows"
The ISO/saved SKU list contains more than 1 available SKU
SKU selection
ISOs: Would be easy enough: Just provide options on multi-SKU ISOs to pick a SKU - if selected, that SKU's data is permanently saved to the user for future use (if already saved, it's overridden)
Existing Windows Installs: On Windows Vista and onwards, we'd need to figure out a way to obtain the SKU of the Windows installation. On Windows XP, every SKU has the same files as one-another, except for MCE and Starter which can be determined by having Media Center installed and possibly either lack of files or the presence of the Starter-exclusive wallpaper respectively.
For non-MCE-non-Starter, just save the files in their joint-SKU forms, and kinda just give them a special treatment SKU where you can pick both Home and Professional at any given time when provided.
For Starter and MCE, treat them as separate SKU options, however.
Managing saved SKUs:
SKUs of the same ISO should share non-SKU-specific files with one-another - once used for one SKU, future SKUs will only extract SKU-specific files from the ISO/install.
Selecting ISOs or Windows installs
Before selecting a SKU, you will need to pick an ISO or Windows installation.
For Windows installations, a permanent note of where the Windows installation was located path-wise will be made while extracting its contents.
For ISOs, a permanent note of their md5sum will be made while extracting its contents.
When accessing the SKU selector on future rounds, you will be able to choose the SKUs you've already saved, skipping re-extraction.
Additionally, if the md5sum matches for ISOs, you will be able to pick all* the SKUs on the ISO to save and use one of for this theme conversion.
*Saved SKUs with missing files will not be displayed as saved SKUs, requiring a re-extraction. Additionally, if non-SKU-specific files're missing, the ISO will need to match md5sum-checks to list saved SKUs, and when converting all files, including non-SKU-specific ones, will be re-extracted. Saved SKUs with a full file-set, however, will never be made available in the 'Unsaved Editions' list.
NOTE: Stuff like icon sets, and so on planned in the future, will be named after the OS branding detected in the files. If no OS branding is detected, simply let the user decide what it should be called. Additionally, to prevent confusion subtitle each used ISO and Windows installation in ISO/install select with their ISO filename or drive name respectively.
**If an ISO or Windows installation selected was already used, just select the respective used option automatically instead of saving anything from them automatically.
When the selectors should open
ISOs and installs
Always. ISOs and installs of the past will be listed as options, along with "Use disk image file...", "Use disc...", and "Use an existing Windows installation...", along with a "Use Feren OS styling..." option if Inspire is installed and a "Use KDE Plasma styling..." option if the OS style specified supports it.
SKUs
When one of the following criteria is met: