On Windows, NativeFormat settings are stored in the following registry paths:
Note: On Windows, for 32-bit programs running in WOW64 mode, settings are stored in the following registry path: HKEY_LOCAL_MACHINE\Software\WOW6432node.
I couldn't find a "MySoft" in any of those locations.
I have never distributed my own software;
however I like the idea of having the settings in the program folder.
This raises the issue of overwriting it when installing new versions.
Ideally I would have the installer ask about overwriting user files.
This way the settings file is in the same place for all systems.
Requiring that Windows users modify the registry is not desirable for several reasons.
With that said... I still have no idea where these settings are... ;D
As we already use the QSettings class from Qt to make things platform independent, we should not force the user to fiddle around in the registry or delete config files in hidden folders.
We should offer a function, e.g. in application preferences, to reset all settings. QSettings has the ability to remove whole groups, independent from OS. So we can delete whole groups or overwrite keys with a set of hard coded default values for that.
I don't stay on top of LibreCAD settings, to decide which way is better, removing or overwriting. But I remember, that I've recognised RS_Settings class as a refactoring candidate in past.
Another idea I had recently is an expert view for preferences. Many programs offer these editable table views of preferences which are not included in the standard GUI screens. But I'm not sure if there is a good solution with QSettings/RS_Settings classes. This may need a move to a database for storing settings, e.g. SQLite, which is supported by Qt.
investing less than half an hour into Search function can save hours or days of waiting for a solution
That's nice that Qt supports SQLite... work smarter not harder;
however, I do like settings files that a person can open and manipulate with a text editor.
I read the intro section of the roaming user profile page,
and my first thought is that by taking that work away from Windows you can actually improve LibreCAD.
I imagine a popup at launch time that allows you to select a profile, which would just be an xml file.
Of course we would need a checkbox for "never ask this again". ;-]
You could also make a File-> Profile entry for switching.
The reason I think the profile selection idea would be an improvement is:
a single user could switch between multiple program configurations easily.
Backing up settings would also be a lot easier if it was an xml file.
1. Start Regedit and optionally navigate to Computer\HKEY_CURRENT_USER\SOFTWARE\LibreCAD
2. File, Export, Ensure selected branch is HKEY_CURRENT_USER\SOFTWARE\LibreCAD, enter Filename eg MyLibreCadSettings, Save
LibreCad settings can easily be restored by double clicking on the *.reg file and prompts will appear to open RegEdit if required and to add the contents of the file to the registry.