mapper icon indicating copy to clipboard operation
mapper copied to clipboard

JSON based Mapper configuration

Open dl3sdo opened this issue 2 years ago • 1 comments

In addition to the configuration of Mapper through the 'Settings' GUI where a dedicated control element is needed for each setting, this commit implements a lightweight mechanism by using a JSON configuration file that allows to easily configure a variety of settings. The 'Settings' GUI is extended by the possibility to select and remember the JSON configuration to be used as default configuration. An additional dialog allows to load and save JSON configuration and provides a simple, i.e., not context-sensitive, text editor. The validity of the JSON format is checked and deviations to Mapper's default JSON configuration can be shown and resolved.

As examples for its usage it closes #2087 and closes #1961, thus superseding #2088 and #2154.

JSON_Configuration_Dialog

Note: this is currently just a POC and there are some TODOs:

  • when the 'Settings' dialog is reset or canceled, also the JSON settings should be reset
  • the code needs proper comments and maybe some refactoring
  • a test should be added

However, before continuing I need feedback whether this kind of JSON based configuration is desired at all.

dl3sdo avatar May 22 '23 19:05 dl3sdo

I think this is just great. If more config options can find its way down here, that would be awesome. Also custom colors for scribbling might perhaps be stored in here (#1738)? That way you can switch to another OO Mapper instance / device and keep all your preferences in a single file 🥳

jmacura avatar Jun 13 '23 21:06 jmacura