[Development] QSettings refactor updates
Eike.Ziller at theqtcompany.com
Mon Oct 13 08:27:41 CEST 2014
On Oct 10, 2014, at 8:16 PM, Adam Light <aclight at gmail.com> wrote:
> On Fri, Oct 10, 2014 at 7:25 AM, Ziller Eike <Eike.Ziller at theqtcompany.com> wrote:
> On Oct 10, 2014, at 3:37 PM, Adam Light <aclight at gmail.com> wrote:
> > On the flip side, our large Qt application runs on Mac and Windows and we're intentionally using QSettings with INI format on both platforms for consistency. Since the storage of settings is really an implementation detail (users should hopefully never need to edit the settings files themselves), it's easier for us if the settings are stored the same way on all platforms.
> Qt Creator intentionally used ini format for “consistency” as well, but:
> * Since the paths are different through the platforms (Windows XP vs Windows vs Linux vs OS X), and have to be, there is not much consistency in the end after all, and
> * Uninstallation process involves manually removing settings and application data, at least on OS X, and there are even uninstallation tools out there which do it for you, if the application follows the platform convention
> So there are IMO very good reasons why someone would want their application to follow platform conventions for application settings. Possibly with a way to opt-in or opt-out.
> Sure, I understand why a developer might want an application to be able to follow platform conventions. I'm just making the case that I think there are valid reasons to *not* follow platform conventions as well. Currently QSettings makes it relatively easy for the developer to decide. But if this new class is eventually going to replace QSettings, I feel that the option should remain for the developer to force the settings to be saved in a consistent way across platforms, not always using the platform convention. Otherwise it's a loss of functionality.
Then we agree ;)
Eike Ziller, Senior Software Engineer - Digia, Qt
Digia Germany GmbH, Rudower Chaussee 13, D-12489 Berlin
Geschäftsführer: Mika Pälsi, Juha Varelius, Anja Wasenius
Sitz der Gesellschaft: Berlin. Registergericht: Amtsgericht Charlottenburg, HRB 144331 B
More information about the Development