* Allow switches on the connected radio to control switches in the simulator via the joystick interface.
* Merge configurable radio joystick interface from banyaszg.
* Add two more 'axis' channels to companion.
* Fix 6POS from USB joystick to simulator.
* Reduce data size.
* Fix build error on B&W radios.
* Add 'Companion' button mode to work with the button logic in the Companion app.
* Build Companion joystick setup layout at runtime.
Change #define names for simulator joystick.
Allow 15 axes and 32 buttons.
Initial support for trim sliders.
* Remove custom joystick button type for companion - use 3 buttons per switch in companion to control simulator switch state.
* Fix joystick constructor calls parameters. Connect some radio joystick trims to simulator widgets.
* Restore 'companion' button type to reduce number of buttons needed. Make trims work via buttons in USB joystick.
* Connect joystick trim buttons to simulator widgets.
* Use companion source names for trims.
* Add encode / decode of usb joystick custom settings to Companion.
* Convert to lvgl layouts.
Update language files.
* Fix generated YAML storage files.
* Fix initialisation error when editing button channel. Cleanup code.
* Fix rebase.
* Fix refresh of joystick channel list view after editing an entry.
Companion joystick config window uses two columns.
* Fix vertical joystick inversion bug.
Change stick axis labels.
---------
Co-authored-by: Phil Mitchell <phil.a.mitchell@gmail.com>
* Refactoring
* Fix current release id and process dlg events
* enh: Process updates dialog add select/deselect all components
* Change Expression to Pattern
* Add preference option to Companion to disable the 'Cannot open joystick, joystick disabled' popup warning when starting the simulator.
* Don't erase joystick settings if user opens preferences dialog while joystick is not connected.
Remove reference to "Ubuntu" font family for 'Radio Type' label in preferences dialog (generates warning on MacOS).
* Adjust the column sizes for the logical switches in the lust view and the channel monitor footer to fit largest V2 value for 'Edge' function.
* Cleanup code.
* Created tts_jp.cpp and added "TR_VOICE_JAPANESE" to the *.h file.
* Commented out once because the build did not work
* fix: Define `JP` as a TTS language,
- Fixes the undefined reference to `jpLanguagePack` error
- put things in alphabetical order as the comment suggests it should be
* chore: Add `JP` to Companion voice language list
---------
Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
* Elevate telemetry screen count from 5 to 10 on color radios.
* Cpn increase max custom screens
* fix(color): Missing Add tab button on max-1
addTab was not called when adding screens dynamically
---------
Co-authored-by: elecpower <neilh713@tpg.com.au>
Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
* Implement DISPLAY_TRIMS_CHANGE option for color LCD trim widget.
Refactor code.
* Change data type to prevent build tests failing.
* Display trim value to the side like B&W radios.
* Add padding to 'Trims' and 'Throttle' setup pages.
* Add padding to pre-flight checks page.
Make button size consistent.
Fit more buttons per row,
Display proper pot and slider names for center beeps.
* Add padding to radio setup pages (Sound, Vario, Haptic, Alarm, Backlight and GPS).
Move backlight inactivity timer to its own line and add a label (requires translation).
* Update translation.
* Hide Backlight controls that are not relevant to the backlight mode selected.
* Update translation.
* Update translation.
* Update translation.
* Update translation.
* Update translation.
* Display time on main screen and telemetry for B&W radios.
Fix position for timer0 display on telemetry screen (was off screen).
* Put the time between the trim bars.
Center the stick boxes and the pot/slider bars.
* Remove code for unsupported radios.
* Fixes for B&W radio UI screens.
* Fix curve display to fit new size. Adjust curve for better horizontal symmetry. Adjust position crosshair to better fit curve line.
* fix(cpn): Model print global and special functions
* fix(cpn): Model print sf/gf adjust gvar abbreviate further
* fix(cpn): Model print gf/sf move to table format
* fix(cpn): Model print gf housekeeping
* Add external module to hardware settings
* Use serial port aux1 rather than radio profile externalaccessmod
Move module conversion function from OpenTxFirmare to ModuleData
* Remove externalaccessmod from radio profile options
* Unnecessary CMake option HARDWARE_EXTERNAL_ACCESS_MOD removed.
---------
Co-authored-by: rotorman <risto.koiva@web.de>
* Simplify layouts code, use data driven layout definition.
Generate icon bitmap at runtime to account for screen orientation.
Move old layout png images to companion folder (still used in companion).
* Align buffer for bitmap.
* Use 'free' instead 'delete' for bitmap buffer to avoid failed build test.
* Convert theme select, theme edit and color edit pages to LVGL flex.
Add 'Edit Color' string to language files (requires translations).
Simplify theme edit 'onCancel' logic.
Fix size of buttons in ConfirmDialog for portrait layout.
Truncate item strings in ListBox to fit available space.
Set window background color on Page and TabsGroup classes instead of using 'paint' function.
Replace strncpy and strncat with strAppend - avoid possible unterminated strings and string overrun.
Truncate display of long name and author strings in theme pages.
* Revert code to truncate ListBox entry strings as it causes other issues.
* Adjust layout for theme color editor to fit large hex string size.
* Remove unnecessary copying of the ThemeFile object being edited.
Refresh TabsGroup page background color when theme changes.
* Set selected theme in list on long press as well as short press.
Comment out unused 'title' in ListBox.
* Handle default theme like custom themes on SD card:
- show logo when selecting theme
- support background_WxH.png names for background images
Use f_stat( via isFileAvailable) instead of opening and closing files to check for existence.
* Remove debug print.
* Fix rebase.