diff --git a/radio/src/gui/Taranis/menus.h b/radio/src/gui/Taranis/menus.h index 6640661ea..34cf838d0 100755 --- a/radio/src/gui/Taranis/menus.h +++ b/radio/src/gui/Taranis/menus.h @@ -326,7 +326,8 @@ extern uint8_t s_warning_info_flags; #define NAVIGATION_MENUS #define MENU_ADD_ITEM(s) s_menu[s_menu_count++] = s -#define MENU_MAX_LINES 6 +#define MENU_MAX_LINES 11 +#define MENU_MAX_DISPLAY_LINES 6 #define MENU_ADD_SD_ITEM(s) MENU_ADD_ITEM(s) #define MENU_LINE_LENGTH (LEN_MODEL_NAME+12) extern const char *s_menu[MENU_MAX_LINES]; diff --git a/radio/src/gui/Taranis/navigation.cpp b/radio/src/gui/Taranis/navigation.cpp index b4ace4091..93d4d0e78 100755 --- a/radio/src/gui/Taranis/navigation.cpp +++ b/radio/src/gui/Taranis/navigation.cpp @@ -42,6 +42,7 @@ horzpos_t m_posHorz; int8_t s_editMode; uint8_t s_noHi; uint8_t calibrationState; +int s_source = MIXSRC_NONE; #if defined(AUTOSWITCH) int8_t checkIncDecMovedSwitch(int8_t val) @@ -70,6 +71,61 @@ INIT_STOPS(stops100, 3, -100, 0, 100) INIT_STOPS(stops1000, 3, -1000, 0, 1000) INIT_STOPS(stopsSwitch, 15, SWSRC_FIRST, CATEGORY_END(-SWSRC_FIRST_LOGICAL_SWITCH), CATEGORY_END(-SWSRC_FIRST_TRIM), CATEGORY_END(-SWSRC_LAST_SWITCH+1), 0, CATEGORY_END(SWSRC_LAST_SWITCH), CATEGORY_END(SWSRC_FIRST_TRIM-1), CATEGORY_END(SWSRC_FIRST_LOGICAL_SWITCH-1), SWSRC_LAST) +void onLongEnterPress(const char *result) +{ + if (result == STR_MENU_INPUTS) { + for (int i = MIXSRC_FIRST_INPUT; i <= MIXSRC_LAST_INPUT; i++) { + if (isInputAvailable(i)) { + s_source = i; + break; + } + } + } +#if defined(LUA_MODEL_SCRIPTS) + if (result == STR_MENU_LUA) { + for (int i = MIXSRC_FIRST_LUA; i <= MIXSRC_LAST_LUA; i++) { + if (isSourceAvailable(i)) { + s_source = i; + break; + } + } + } +#endif + if (result == STR_MENU_STICKS) + s_source = MIXSRC_FIRST_STICK; + if (result == STR_MENU_POTS) + s_source = MIXSRC_FIRST_POT; + if (result == STR_MENU_MAX) + s_source = MIXSRC_MAX; + if (result == STR_MENU_HELI) + s_source = MIXSRC_FIRST_HELI; + if (result == STR_MENU_TRIMS) + s_source = MIXSRC_FIRST_TRIM; + if (result == STR_MENU_SWITCHES) + s_source = MIXSRC_FIRST_SWITCH; + if (result == STR_MENU_TRAINER) + s_source = MIXSRC_FIRST_TRAINER; + + if (result == STR_MENU_CHANNELS) { + for (int i = MIXSRC_FIRST_CH; i <= MIXSRC_LAST_CH; i++) { + if (isSourceAvailable(i)) { + s_source = i; + break; + } + } + } + + if (result == STR_MENU_TELEMETRY) { + for (int i = 0; i < TELEM_VALUES_MAX; i++) { + TelemetrySensor * sensor = & g_model.telemetrySensors[i]; + if (sensor->isAvailable()) { + s_source = MIXSRC_FIRST_TELEM + 3*i; + break; + } + } + } +} + int checkIncDec(unsigned int event, int val, int i_min, int i_max, unsigned int i_flags, IsValueAvailable isValueAvailable, const CheckIncDecStops &stops) { int newval = val; @@ -207,6 +263,68 @@ int checkIncDec(unsigned int event, int val, int i_min, int i_max, unsigned int else { checkIncDec_Ret = 0; } + + if (i_flags & INCDEC_SOURCE) { + if (event == EVT_KEY_LONG(KEY_ENTER)) { + killEvents(event); + s_source = MIXSRC_NONE; + + if (i_min <= MIXSRC_FIRST_INPUT && i_max >= MIXSRC_FIRST_INPUT) { + bool available = false; + for (int i = MIXSRC_FIRST_INPUT; i <= MIXSRC_LAST_INPUT; i++) { + if (isInputAvailable(i)) { + available = true; + break; + } + } + if (available) + MENU_ADD_ITEM(STR_MENU_INPUTS); + } +#if defined(LUA_MODEL_SCRIPTS) + if (i_min <= MIXSRC_FIRST_LUA && i_max >= MIXSRC_FIRST_LUA) { + bool available = false; + for (int i = MIXSRC_FIRST_LUA; i <= MIXSRC_LAST_LUA; i++) { + if (isSourceAvailable(i)) { + available = true; + break; + } + } + if (available) + MENU_ADD_ITEM(STR_MENU_LUA); + } +#endif + if (i_min <= MIXSRC_FIRST_STICK && i_max >= MIXSRC_FIRST_STICK) MENU_ADD_ITEM(STR_MENU_STICKS); + if (i_min <= MIXSRC_FIRST_POT && i_max >= MIXSRC_FIRST_POT) MENU_ADD_ITEM(STR_MENU_POTS); + if (i_min <= MIXSRC_MAX && i_max >= MIXSRC_MAX) MENU_ADD_ITEM(STR_MENU_MAX); +#if defined(HELI) + if (i_min <= MIXSRC_FIRST_HELI && i_max >= MIXSRC_FIRST_HELI) MENU_ADD_ITEM(STR_MENU_HELI); +#endif + if (i_min <= MIXSRC_FIRST_TRIM && i_max >= MIXSRC_FIRST_TRIM) MENU_ADD_ITEM(STR_MENU_TRIMS); + if (i_min <= MIXSRC_FIRST_SWITCH && i_max >= MIXSRC_FIRST_SWITCH) MENU_ADD_ITEM(STR_MENU_SWITCHES); + if (i_min <= MIXSRC_FIRST_TRAINER && i_max >= MIXSRC_FIRST_TRAINER) MENU_ADD_ITEM(STR_MENU_TRAINER); + if (i_min <= MIXSRC_FIRST_CH && i_max >= MIXSRC_FIRST_CH) MENU_ADD_ITEM(STR_MENU_CHANNELS); + + if (i_min <= MIXSRC_FIRST_TELEM && i_max >= MIXSRC_FIRST_TELEM) { + bool available = false; + for (int i = 0; i < TELEM_VALUES_MAX; i++) { + TelemetrySensor * sensor = & g_model.telemetrySensors[i]; + if (sensor->isAvailable()) { + available = true; + break; + } + } + if (available) + MENU_ADD_ITEM(STR_MENU_TELEMETRY); + } + menuHandler = onLongEnterPress; + } + if (s_source != MIXSRC_NONE) { + newval = s_source; + if (s_source != MIXSRC_MAX) + s_editMode = 1; + s_source = MIXSRC_NONE; + } + } return newval; } @@ -229,6 +347,7 @@ void onLongMenuPress(const char *result) } } + tmr10ms_t menuEntryTime; void check(const char *name, check_event_t event, uint8_t curr, const MenuFuncP *menuTab, uint8_t menuTabSize, const pm_uint8_t *horTab, uint8_t horTabMax, vertpos_t rowcount, uint8_t flags) diff --git a/radio/src/gui/Taranis/popups.cpp b/radio/src/gui/Taranis/popups.cpp index 36646b54f..895d9c97b 100755 --- a/radio/src/gui/Taranis/popups.cpp +++ b/radio/src/gui/Taranis/popups.cpp @@ -127,18 +127,18 @@ const char * displayMenu(uint8_t event) { const char * result = NULL; - uint8_t display_count = min(s_menu_count, (uint16_t)MENU_MAX_LINES); + uint8_t display_count = min(s_menu_count, (uint16_t)MENU_MAX_DISPLAY_LINES); uint8_t y = (display_count >= 5 ? MENU_Y - FH - 1 : MENU_Y); drawFilledRect(MENU_X, y, MENU_W, display_count * (FH+1) + 2, SOLID, ERASE); lcd_rect(MENU_X, y, MENU_W, display_count * (FH+1) + 2); for (uint8_t i=0; i display_count) { - displayScrollbar(MENU_X+MENU_W-1, y+1, MENU_MAX_LINES * (FH+1), s_menu_offset, s_menu_count, MENU_MAX_LINES); + displayScrollbar(MENU_X+MENU_W-1, y+1, MENU_MAX_LINES * (FH+1), s_menu_offset, s_menu_count, display_count); } switch(event) { @@ -152,9 +152,9 @@ const char * displayMenu(uint8_t event) result = STR_UPDATE_LIST; } else { - s_menu_item = display_count - 1; - if (s_menu_count > MENU_MAX_LINES) { - s_menu_offset = s_menu_count - display_count; + s_menu_item = min(display_count, (uint8_t)MENU_MAX_DISPLAY_LINES)-1; + if (s_menu_count > MENU_MAX_DISPLAY_LINES) { + s_menu_offset = s_menu_count - MENU_MAX_DISPLAY_LINES; result = STR_UPDATE_LIST; } } @@ -179,7 +179,7 @@ const char * displayMenu(uint8_t event) break; CASE_EVT_ROTARY_BREAK case EVT_KEY_BREAK(KEY_ENTER): - result = s_menu[s_menu_item]; + result = s_menu[s_menu_item+s_menu_offset]; // no break case EVT_KEY_BREAK(KEY_EXIT): s_menu_count = 0; diff --git a/radio/src/myeeprom.h b/radio/src/myeeprom.h index 383422e50..af4a513d7 100644 --- a/radio/src/myeeprom.h +++ b/radio/src/myeeprom.h @@ -1766,10 +1766,11 @@ enum MixSources { MIXSRC_LAST_LUA = MIXSRC_FIRST_LUA+(MAX_SCRIPTS*MAX_SCRIPT_OUTPUTS)-1, #endif - MIXSRC_Rud, LUA_EXPORT("rud", "Rudder") - MIXSRC_Ele, LUA_EXPORT("ele", "Elevator") - MIXSRC_Thr, LUA_EXPORT("thr", "Throttle") - MIXSRC_Ail, LUA_EXPORT("ail", "Aileron") + MIXSRC_FIRST_STICK, + MIXSRC_Rud = MIXSRC_FIRST_STICK, LUA_EXPORT("rud", "Rudder") + MIXSRC_Ele, LUA_EXPORT("ele", "Elevator") + MIXSRC_Thr, LUA_EXPORT("thr", "Throttle") + MIXSRC_Ail, LUA_EXPORT("ail", "Aileron") MIXSRC_FIRST_POT, #if defined(PCBTARANIS) @@ -1812,14 +1813,16 @@ enum MixSources { MIXSRC_MAX, - MIXSRC_CYC1, LUA_EXPORT("cyc1", "Cyclic 1") - MIXSRC_CYC2, LUA_EXPORT("cyc2", "Cyclic 2") - MIXSRC_CYC3, LUA_EXPORT("cyc3", "Cyclic 3") + MIXSRC_FIRST_HELI, + MIXSRC_CYC1 = MIXSRC_FIRST_HELI, LUA_EXPORT("cyc1", "Cyclic 1") + MIXSRC_CYC2, LUA_EXPORT("cyc2", "Cyclic 2") + MIXSRC_CYC3, LUA_EXPORT("cyc3", "Cyclic 3") - MIXSRC_TrimRud, LUA_EXPORT("trim-rud", "Rudder trim") - MIXSRC_TrimEle, LUA_EXPORT("trim-ele", "Elevator trim") - MIXSRC_TrimThr, LUA_EXPORT("trim-thr", "Throttle trim") - MIXSRC_TrimAil, LUA_EXPORT("trim-ail", "Aileron trim") + MIXSRC_FIRST_TRIM, + MIXSRC_TrimRud = MIXSRC_FIRST_TRIM, LUA_EXPORT("trim-rud", "Rudder trim") + MIXSRC_TrimEle, LUA_EXPORT("trim-ele", "Elevator trim") + MIXSRC_TrimThr, LUA_EXPORT("trim-thr", "Throttle trim") + MIXSRC_TrimAil, LUA_EXPORT("trim-ail", "Aileron trim") MIXSRC_FIRST_SWITCH, diff --git a/radio/src/translations.cpp b/radio/src/translations.cpp index 8414e8863..fe3d2aeef 100644 --- a/radio/src/translations.cpp +++ b/radio/src/translations.cpp @@ -588,6 +588,17 @@ const pm_char STR_BLCOLOR[] PROGMEM = TR_BLCOLOR; const pm_char STR_SCRIPT[] PROGMEM = TR_SCRIPT; const pm_char STR_INPUTS[] PROGMEM = TR_INPUTS; const pm_char STR_OUTPUTS[] PROGMEM = TR_OUTPUTS; + const pm_char STR_MENU_INPUTS[] PROGMEM = TR_MENU_INPUTS; + const pm_char STR_MENU_LUA[] PROGMEM = TR_MENU_LUA; + const pm_char STR_MENU_STICKS[] PROGMEM = TR_MENU_STICKS; + const pm_char STR_MENU_POTS[] PROGMEM = TR_MENU_POTS; + const pm_char STR_MENU_MAX[] PROGMEM = TR_MENU_MAX; + const pm_char STR_MENU_HELI[] PROGMEM = TR_MENU_HELI; + const pm_char STR_MENU_TRIMS[] PROGMEM = TR_MENU_TRIMS; + const pm_char STR_MENU_SWITCHES[] PROGMEM = TR_MENU_SWITCHES; + const pm_char STR_MENU_TRAINER[] PROGMEM = TR_MENU_TRAINER; + const pm_char STR_MENU_CHANNELS[] PROGMEM = TR_MENU_CHANNELS; + const pm_char STR_MENU_TELEMETRY[] PROGMEM = TR_MENU_TELEMETRY; #endif #if MENUS_LOCK == 1 diff --git a/radio/src/translations.h b/radio/src/translations.h index 74eb7f43d..c0e857fc6 100644 --- a/radio/src/translations.h +++ b/radio/src/translations.h @@ -798,6 +798,17 @@ extern const pm_char STR_BLCOLOR[]; extern const pm_char STR_SCRIPT[]; extern const pm_char STR_INPUTS[]; extern const pm_char STR_OUTPUTS[]; + extern const pm_char STR_MENU_INPUTS[]; + extern const pm_char STR_MENU_LUA[]; + extern const pm_char STR_MENU_STICKS[]; + extern const pm_char STR_MENU_POTS[]; + extern const pm_char STR_MENU_MAX[]; + extern const pm_char STR_MENU_HELI[]; + extern const pm_char STR_MENU_TRIMS[]; + extern const pm_char STR_MENU_SWITCHES[]; + extern const pm_char STR_MENU_TRAINER[]; + extern const pm_char STR_MENU_CHANNELS[]; + extern const pm_char STR_MENU_TELEMETRY[]; #endif #if MENUS_LOCK == 1 diff --git a/radio/src/translations/cz.h.txt b/radio/src/translations/cz.h.txt index 7794b600a..d1a5740f6 100644 --- a/radio/src/translations/cz.h.txt +++ b/radio/src/translations/cz.h.txt @@ -1065,6 +1065,18 @@ #define TR_FILTER "Filter" #define TR_TELEMETRYFULL "All telemetry slots full!" +#define TR_MENU_INPUTS "Inputs" +#define TR_MENU_LUA "Lua scripts" +#define TR_MENU_STICKS "\307Sticks" +#define TR_MENU_POTS "\310Pots" +#define TR_MENU_MAX "MAX" +#define TR_MENU_HELI "Cyclic" +#define TR_MENU_TRIMS "\313Trims" +#define TR_MENU_SWITCHES "\312Switches" +#define TR_MENU_TRAINER "Trainer" +#define TR_MENU_CHANNELS "Channels" +#define TR_MENU_TELEMETRY "Telemetry" + #define ZSTR_RSSI "RSSI" #define ZSTR_SWR "SWR" #define ZSTR_A1 "A1" diff --git a/radio/src/translations/de.h.txt b/radio/src/translations/de.h.txt index 6ea81624b..78bc14793 100644 --- a/radio/src/translations/de.h.txt +++ b/radio/src/translations/de.h.txt @@ -1064,6 +1064,18 @@ #define TR_FILTER "Filter" #define TR_TELEMETRYFULL "All telemetry slots full!" +#define TR_MENU_INPUTS "Inputs" +#define TR_MENU_LUA "Lua scripts" +#define TR_MENU_STICKS "\307Sticks" +#define TR_MENU_POTS "\310Pots" +#define TR_MENU_MAX "MAX" +#define TR_MENU_HELI "Cyclic" +#define TR_MENU_TRIMS "\313Trims" +#define TR_MENU_SWITCHES "\312Switches" +#define TR_MENU_TRAINER "Trainer" +#define TR_MENU_CHANNELS "Channels" +#define TR_MENU_TELEMETRY "Telemetry" + #define ZSTR_RSSI "RSSI" #define ZSTR_SWR "SWR" #define ZSTR_A1 "A1" diff --git a/radio/src/translations/en.h.txt b/radio/src/translations/en.h.txt index ec3a2f59d..671926bde 100644 --- a/radio/src/translations/en.h.txt +++ b/radio/src/translations/en.h.txt @@ -1064,6 +1064,18 @@ #define TR_FILTER "Filter" #define TR_TELEMETRYFULL "All telemetry slots full!" +#define TR_MENU_INPUTS "Inputs" +#define TR_MENU_LUA "Lua scripts" +#define TR_MENU_STICKS "\307Sticks" +#define TR_MENU_POTS "\310Pots" +#define TR_MENU_MAX "MAX" +#define TR_MENU_HELI "Cyclic" +#define TR_MENU_TRIMS "\313Trims" +#define TR_MENU_SWITCHES "\312Switches" +#define TR_MENU_TRAINER "Trainer" +#define TR_MENU_CHANNELS "Channels" +#define TR_MENU_TELEMETRY "Telemetry" + #define ZSTR_RSSI "RSSI" #define ZSTR_SWR "SWR" #define ZSTR_A1 "A1" diff --git a/radio/src/translations/es.h.txt b/radio/src/translations/es.h.txt index f1e1c24e8..aa401c9be 100644 --- a/radio/src/translations/es.h.txt +++ b/radio/src/translations/es.h.txt @@ -1000,6 +1000,18 @@ #define TR_FILTER "Filter" #define TR_TELEMETRYFULL "All telemetry slots full!" +#define TR_MENU_INPUTS "Inputs" +#define TR_MENU_LUA "Lua scripts" +#define TR_MENU_STICKS "\307Sticks" +#define TR_MENU_POTS "\310Pots" +#define TR_MENU_MAX "MAX" +#define TR_MENU_HELI "Cyclic" +#define TR_MENU_TRIMS "\313Trims" +#define TR_MENU_SWITCHES "\312Switches" +#define TR_MENU_TRAINER "Trainer" +#define TR_MENU_CHANNELS "Channels" +#define TR_MENU_TELEMETRY "Telemetry" + #define ZSTR_RSSI "RSSI" #define ZSTR_SWR "SWR" #define ZSTR_A1 "A1" diff --git a/radio/src/translations/fi.h.txt b/radio/src/translations/fi.h.txt index 8b35c8ba6..f8840baf6 100644 --- a/radio/src/translations/fi.h.txt +++ b/radio/src/translations/fi.h.txt @@ -1000,6 +1000,18 @@ #define TR_FILTER "Filter" #define TR_TELEMETRYFULL "All telemetry slots full!" +#define TR_MENU_INPUTS "Inputs" +#define TR_MENU_LUA "Lua scripts" +#define TR_MENU_STICKS "\307Sticks" +#define TR_MENU_POTS "\310Pots" +#define TR_MENU_MAX "MAX" +#define TR_MENU_HELI "Cyclic" +#define TR_MENU_TRIMS "\313Trims" +#define TR_MENU_SWITCHES "\312Switches" +#define TR_MENU_TRAINER "Trainer" +#define TR_MENU_CHANNELS "Channels" +#define TR_MENU_TELEMETRY "Telemetry" + #define ZSTR_RSSI "RSSI" #define ZSTR_SWR "SWR" #define ZSTR_A1 "A1" diff --git a/radio/src/translations/fr.h.txt b/radio/src/translations/fr.h.txt index 201573513..d7a743ac0 100644 --- a/radio/src/translations/fr.h.txt +++ b/radio/src/translations/fr.h.txt @@ -1060,6 +1060,18 @@ #define TR_FILTER "Filtrage" #define TR_TELEMETRYFULL "Plus de capteurs libres!" +#define TR_MENU_INPUTS "Entrées" +#define TR_MENU_LUA "Scripts Lua" +#define TR_MENU_STICKS "\307Manches" +#define TR_MENU_POTS "\310Pots" +#define TR_MENU_MAX "MAX" +#define TR_MENU_HELI "Cyclique" +#define TR_MENU_TRIMS "\313Trims" +#define TR_MENU_SWITCHES "\312Inters" +#define TR_MENU_TRAINER "Ecolage" +#define TR_MENU_CHANNELS "Canaux" +#define TR_MENU_TELEMETRY "Télémesure" + #define ZSTR_RSSI "RSSI" #define ZSTR_SWR "SWR" #define ZSTR_A1 "A1" diff --git a/radio/src/translations/it.h.txt b/radio/src/translations/it.h.txt index 987ed947e..fca313d46 100644 --- a/radio/src/translations/it.h.txt +++ b/radio/src/translations/it.h.txt @@ -1000,6 +1000,18 @@ #define TR_FILTER "Filter" #define TR_TELEMETRYFULL "All telemetry slots full!" +#define TR_MENU_INPUTS "Inputs" +#define TR_MENU_LUA "Lua scripts" +#define TR_MENU_STICKS "\307Sticks" +#define TR_MENU_POTS "\310Pots" +#define TR_MENU_MAX "MAX" +#define TR_MENU_HELI "Cyclic" +#define TR_MENU_TRIMS "\313Trims" +#define TR_MENU_SWITCHES "\312Switches" +#define TR_MENU_TRAINER "Trainer" +#define TR_MENU_CHANNELS "Channels" +#define TR_MENU_TELEMETRY "Telemetry" + #define ZSTR_RSSI "RSSI" #define ZSTR_SWR "SWR" #define ZSTR_A1 "A1" diff --git a/radio/src/translations/pl.h.txt b/radio/src/translations/pl.h.txt index a88fee4ea..9d6f0de17 100644 --- a/radio/src/translations/pl.h.txt +++ b/radio/src/translations/pl.h.txt @@ -998,6 +998,18 @@ #define TR_FILTER "Filter" #define TR_TELEMETRYFULL "All telemetry slots full!" +#define TR_MENU_INPUTS "Inputs" +#define TR_MENU_LUA "Lua scripts" +#define TR_MENU_STICKS "\307Sticks" +#define TR_MENU_POTS "\310Pots" +#define TR_MENU_MAX "MAX" +#define TR_MENU_HELI "Cyclic" +#define TR_MENU_TRIMS "\313Trims" +#define TR_MENU_SWITCHES "\312Switches" +#define TR_MENU_TRAINER "Trainer" +#define TR_MENU_CHANNELS "Channels" +#define TR_MENU_TELEMETRY "Telemetry" + #define ZSTR_RSSI "RSSI" #define ZSTR_SWR "SWR" #define ZSTR_A1 "A1" diff --git a/radio/src/translations/pt.h.txt b/radio/src/translations/pt.h.txt index 7c7299a2e..ed4c5044f 100644 --- a/radio/src/translations/pt.h.txt +++ b/radio/src/translations/pt.h.txt @@ -1000,6 +1000,18 @@ #define TR_FILTER "Filter" #define TR_TELEMETRYFULL "All telemetry slots full!" +#define TR_MENU_INPUTS "Inputs" +#define TR_MENU_LUA "Lua scripts" +#define TR_MENU_STICKS "\307Sticks" +#define TR_MENU_POTS "\310Pots" +#define TR_MENU_MAX "MAX" +#define TR_MENU_HELI "Cyclic" +#define TR_MENU_TRIMS "\313Trims" +#define TR_MENU_SWITCHES "\312Switches" +#define TR_MENU_TRAINER "Trainer" +#define TR_MENU_CHANNELS "Channels" +#define TR_MENU_TELEMETRY "Telemetry" + #define ZSTR_RSSI "RSSI" #define ZSTR_SWR "SWR" #define ZSTR_A1 "A1" diff --git a/radio/src/translations/se.h.txt b/radio/src/translations/se.h.txt index de897e54a..82bfe4e87 100644 --- a/radio/src/translations/se.h.txt +++ b/radio/src/translations/se.h.txt @@ -1000,6 +1000,18 @@ #define TR_FILTER "Filter" #define TR_TELEMETRYFULL "All telemetry slots full!" +#define TR_MENU_INPUTS "Inputs" +#define TR_MENU_LUA "Lua scripts" +#define TR_MENU_STICKS "\307Sticks" +#define TR_MENU_POTS "\310Pots" +#define TR_MENU_MAX "MAX" +#define TR_MENU_HELI "Cyclic" +#define TR_MENU_TRIMS "\313Trims" +#define TR_MENU_SWITCHES "\312Switches" +#define TR_MENU_TRAINER "Trainer" +#define TR_MENU_CHANNELS "Channels" +#define TR_MENU_TELEMETRY "Telemetry" + #define ZSTR_RSSI "RSSI" #define ZSTR_SWR "SWR" #define ZSTR_A1 "A1"