Advanced preferences: display default entries consistently
Description (last modified by )
In the advanced preference dialog, we do not show keys and default values for all settings that exist in the software. Instead we fill the list at runtime, whenever the value of a setting is requested in the code.
I noticed this is irritating and users often don't understand this concept.
It would be better, if the list of advanced preferences would consistently show all (or nearly all) available entries.
- Central registry: Basically convert all
StringPropertyand put those properties in a class that is loaded early.
- When JOSM exits, write all known defaults to a cache file (
~/.josm/cache/default_preferences.xml) and load these entries back at next start.
- Static code analysis: Scrape the JOSM source code (or byte code) and collect all preference keys + default values. Then distribute this list in the .jar file and load at runtime.