- add save model(s) to context menu and toolbar
- new storage functions to support single model write
- modified yml storage format write functions
- default save directory is application sd card TEMPLATES
- model name used as default file name
* Add new model actions to application settings
* Add new model prompt action
* Tweak wording
* Add new model action template
* Open individual model yml files
* Tidy up after importing template
* Add create default and edit to prompt options
* Fix edit mode to display the edit dialog after model creation when selected in settings
- fix Companion yaml model read and write
- B&W radios treat bit values the same as color to avoid unnecessary complication for Companion and radio conversions
- B&W radios default is therefore off for all pots and sliders
- B&W radios fix runtime warnings check
- all radios fix to save last pot or slider position when checked and mode AUTO on change of model or power off
- all radios do not display Pots Warning in model setup if no pots or sliders supported
- parse the yaml file and if successful open as a new document in a Models and Settings window
- warn the user that no radio conversion has been possible as source radio flavour unknown
- populate radio settings with default values based on current radio profile
* Do not list OFF on VCP menu if internal RF module is set to CRSF to allow pass-through flashing.
Set USB-VCP automatically to CLI when CRSF mode is selected for internal module and it was previously OFF. Activate CLI when iCRSF is selected.
* Companion part
Co-authored-by: elecpower <neilh713@tpg.com.au>
* fix: Prevent potential wordsplitting of variables
* chore: Remove need for separate cpn 32bit script
* Build script tag/branch/PR auto-detection
* Teach companion about VERSION_TAG
* Update some constant names
* Only one companion build script
* Actually use `VERSION_SUFFIX` in about screen 🤦
* Add space
* Remove line that was only for testing 32bit build
* Remove hyphen between win and bits
* Show codename in Settings -> Version
* cpn: Only show codename on tagged versions
* Update about screen also
* Double quotes around codename on colorlcd
* Update copyright year
* About screen should use VERSION_TAG when set
CMake: Use ExternalProject_Add() to split by toolchain
Splits targets between native and cross-compiled targets, provides a cleaner solution to problems raised by compiling for example on Apple silicon, and better managing dependencies by allowing for object libraries in a cleaner way.
Imported from open-flysky/Flysky-OpenTX-Test-Branch
* companion: Don't nuke `stickDeadZone` setting
* Implement data storage properly
* Add missing check for NV14 storage struct sizes
* Formatting
* Use one less byte in the packed data struct
Thanks @raphaelcoeffic :)
* Move setting of stickDeadZone default
* Use a Choice combo rather than NumberEdit
* Good riddance magic number
* Also set default stick zone if setting is missing
* Teach tests about `STICK_DEAD_ZONE`
* Tweak choice width
* Cpn NV14 add stick dead zone to hardware and section labels
* Cpn NV14 align default pot names to radio
Co-authored-by: elecpower <neilh713@tpg.com.au>
* Allow trainer modes OFF and Master-Multi for all radios
* Change Trainer mode Off to the standard OFF
* fix: German for Trainer OFF, Master and Slave
* feat: Add option for rotary encoder direction
Based heavily on opentx/opentx#8852 by @3djc
* companion ui elements
* Cleanup
* Hook up UI, reading setting from yaml
* Teach simulator about rotEncDirection
* Simu and radio default scroll direction correction
Otherwise the "default" would be the opposite to how it has always been
* Remove what will be a confict with fix in #1586
* Wasn't using rotEncDirection consistently
* Zorro RE dir is opp to TX16, TX12, TPro, X9D+2019