* Change ThemeFile class to use generic YAML parser instead of hard wired code.
Fix handling of empty input lines in YAML parser.
Increase size of YAML parser variables to handle theme 'info' property length.
* Update comment.
* Fix error.
* Proper fix for blank lines in YAML file.
* Fix YAML blank line handling (attempt 3).
* Ensure theme YAML file is backward compatible.
* Store selected theme in radio settings instead of selectedtheme.txt file.
On start, if radio settings theme is empty, try and load from selectedtheme.txt file.
In Companion, save/load the selected theme in the radio settings YAML file; but no UI to select theme.
* Update selected theme name in radio.yml if the theme name was edited.
* Only save 'selectedTheme' in Companion on color LCD radios.
PR #2995 didn't take into account the data model storage actually does change when you change a variable name.
Boxer yaml generation was missed in earlier PR.
* chore: Run `generate-yaml.sh`
* chore(cpn): carryTrim -> trimSource
* fix(build): Boxer missing from `generate-yaml`
* dodgy attempt to read old carryTrim
* fix: Don't break the byte boundary + reorder
* fix(yaml): indentation for attributes that should not be output
* chore: Regenerate YAML after rebase
---------
Co-authored-by: raphaelcoeffic <raphael.coeffic@frafos.com>
* Clean up some errors introduced in PR #1363
- Cleaning up bad YAML definitions
- Reverted renaming of 'jitterfilter' radio setting in storage/conversions/yaml/ files
* Add a custom attribute to allow for backward compatibility
* Prevent custom attributes without a 'write' function to output a tag
* companion - read but don't write old name
Co-authored-by: Raphael Coeffic <raphael.coeffic@frafos.com>
Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
This is the case for curves inside mixes, which would previously prevent outputting all attributes following the `curve` attribute: `delayUp`, `delayDown`, `speedUp`, `speedDown` and `name`.