-
-
Notifications
You must be signed in to change notification settings - Fork 155
Open
Labels
plannedNote: Feature planned for a later releaseNote: Feature planned for a later releaserefactoringEnhancement: Code refactoring neededEnhancement: Code refactoring neededuser interfaceComponent: General user interfaceComponent: General user interface
Milestone
Description
This is a structural/refactoring task.
The user preferences are currently stored in the main config file, and mixed in with system state settings. Instead, it may be useful to store them in a way similar to how Manuscript Build settings are stored. They have a dictionary describing their data type and default value, a mirror dictionary with all the translation strings, and standard getter and setter functions.
The CONFIG object can still read and populate from this object at startup, but the point here is to centralise the preference so that:
- The GUI label of all Preferences are kept in once place, reducing duplicate translations.
- There is a record of the default value, allowing a reset to default, as requested in Restoring default preferences #1080.
- It is possible to select settings for Project override quite easily, and a standard way of generating the override files through the same data object.
Metadata
Metadata
Assignees
Labels
plannedNote: Feature planned for a later releaseNote: Feature planned for a later releaserefactoringEnhancement: Code refactoring neededEnhancement: Code refactoring neededuser interfaceComponent: General user interfaceComponent: General user interface