Hi, I'd like to discuss the Save/Load Preferences feature a bit. I've never quite exactly understood what it's supposed to be used for. Here's what I gathered from the code:
- Save Preferences calls SaveProjectSettings(true), asking the user if he wants to save the settings. This isn't the only place it happens, though - it is also called implicitly when plotting and when certain settings have been changed in preferences. - The "Save" dialog displayed by Save Preferences is broken. It asks for a file name, but disregards it and always writes to the active project file. - Load Preferences reloads GROUP_SCH and GROUP_SCH_EDITOR, and _also_ seems to disregard the selected file. - GROUP_SCH is loaded when libraries are loaded. GROUP_SCH_EDITOR is only loaded when "Load Preferences" is selected. I find this all very confusing, and partially broken. I at least insist that we fix the broken save/load dialogs - it shouldn't ask for a file and then ignore the selection. However: Uh... what do people use this for? I'm having a hard time figuring out the use case, and I think most users aren't really going to understand what it does. Keeping in mind that I don't know the use case, what about this: - Stop calling SaveProjectSettings in places that are NOT the "Save Preferences" menu item. This is just confusing, most users are going to assume that if it's something they can trigger with the menu, it's not something that'll just "happen" when certain operations are performed. Perhaps rethink those bits a bit so there's either no need to save anything, or doing it silently would become sensible. - Replace Save/Load Preferences with something like Import/Export Hotkeys. Instead of saving to the project file, save to a separate settings file. This would resolve *my* first major misunderstanding, which is why even though "Save Preferences" saves to the project file, "Load Preferences" doesn't execute at project load. I *think* this is more what it's used for, anyway - just having a place to import and export preferences to. Can someone comment or help dispel my misunderstandings? -- Chris _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp