* Add options to disable radio and model menu tabs.
- Update radio and model data structs
- UI for color LCD radios
- Convert existing 'noGlobalFunctions' property.
- Language strings.
* Make 'theme' control specific to color LCD radios.
* Add B&W radio UI.
* Simplify code, reduce compiled code size.
Fix page count display on model select tab.
Fix GVARS for 212x64 radios.
* Collapse timer sections if timer is off.
* Remove 'Use global functions' checkbox from B&W model setup.
* Make preflight checks, throttle and view options sections expand & collapse (default collapsed).
* Fix build.
* Add view options to companion data classes, save and load values in YAML files.
Fix scrolling for radio setup view options.
* Add Companion UI for view option settings.
* Remove 'Mixes' from list of tabs that can be hidden.
* Updated Companion UI from elecpower.
* Use view options flags to enable/disable functionality:
- skip heli mixer logic if heli not enabled
- Remove heli, gvars and telemetry options from source selection if not enabled
* Remove 'flight mode', 'curve' and 'global variable' settings from input & mix editors if option disabled.
* Rename 'View Options' to 'Enabled Features'.
Put GVAR option under Flight Mode and indent text.
Make relationship between FM and GV more obvious.
* Remove global variable option dependency on flight modes.
Hide FM1-FM8 in global variables if flight modes hidden.
* Hide 'Custom Mixer Scripts' in source selection menu popup if disabled.
* Add translation strings for Hebrew language file.
* Fix typo. Add comment for double call to setCurrentTab.
* Add support for the '1x' repeat option for 'Play Script' special functions.
* Add Companion and B&W radio support.
* Fix B&W radio logic and layout.
* Add translation hooks.
* chore(lua): revert useless c light function change
This change was part of the eLua LTR patches (based on 5.1), whereby this feature was already integrated in Lua 5.2.
* feat(lua): port of NodeMCU Lua53 read-only tables
# Conflicts:
# radio/src/lua/CMakeLists.txt
# radio/src/lua/api_general.cpp
* fix(nv14): missing SDRAM definition
* fix: l_mathop
* fix: use float functions in drawPower()
* fix: ltable resize
* fix: correct name is "bit32"
* fix: first Lua context must be closed last
As the lookup cache is attached to that one
* Revert to Lua using double
* Ensure byte-code compatibility
* Fix possible compatibility issue with `lua_typename`/`luaL_typename`
* Fix Bitmap symbol table
* Re-add table lib for COLORLCD
* fixes the non-terminated fixed-string problem in lua-mixer-script
added some useful info to the script-line
make the popup menu to delete a script
* removed unneccessary comments
* intermediate fix
* tried to obey all comments to the code
and to eliminate further potential buffer-overflows
* fixed typo
* fixed async loading of lua scripts and update of widget
cleanup
* removed GCC pragmas (clang warn about them)
remove constexpr qualification (gcc accepts them because gcc-builtins are already constexpr, clang still warns about them)
* removed merge marker
* The set/reset switches for a logical switch are only processed if the are valid.
* Revert "The set/reset switches for a logical switch are only processed if the are valid."
This reverts commit c238108415aec39f64ba6bae4c86cfb3ea4713bc.
* fix handling of default values in mixer scripts
* revised the use of default value to be consistent to the past usage
* Limited autoformatting
Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
* Relax assumptions about when Lua is called in foreground and background
* Start Lua cycle timer both in foreground and background
Do not assume that background/foreground alternates
* Lua is called at every Standalone GUI cycle instead of 5 Hz
Since Lua preempts every 50 ms or so, the GUI should remain responsive.
* In standalone script, only call Lua once per GUI cycle, to avoid messing up buffer handling.
* Revamped error reporting for Standalone and Telemetry Lua scripts
* Font size for Lua error is reduced from XL to L on color if LCD_W < LCD_H
* In drawTextLines, also possible linebreaks for opening brackets.
* Smaller font for error message on tall color screen
* Make titlebar height match font size on narrow LCD
* Fixed a bug where a standalone Lua script w/o a run function will hang the GUI on non-color radios
* Prevent Lua standalone window from opening if Lua failed on load
* Fixed scroll down key in TX12 simulator
Copied key definitions from TX16S
* Fixed the Lua error trying to call nil value when no scripts are loaded.
* I messed up in the previous commit; now it does not freeze and it does not call nil.
The function luaResume(...) assumes that it is called alternatingly in the background and the foreground.
But on color LCD radios it is only called in the foreground by standalone and tools script, so it got stuck waiting for a foreground call.