From 4c4764d8281ea8c15bdebf7d995487ebdd2c27c9 Mon Sep 17 00:00:00 2001 From: olliw42 <6089567+olliw42@users.noreply.github.com> Date: Sat, 29 May 2021 17:34:16 +0200 Subject: [PATCH] combo box for pwr off delay (#55) * combo box for pwr off delay * put STR into untranslated, change max to 4s --- radio/src/gui/colorlcd/radio_setup.cpp | 20 ++++--- radio/src/translations.cpp | 1 + radio/src/translations.h | 1 + radio/src/translations/untranslated.h | 77 +++++++++++++------------- 4 files changed, 53 insertions(+), 46 deletions(-) diff --git a/radio/src/gui/colorlcd/radio_setup.cpp b/radio/src/gui/colorlcd/radio_setup.cpp index f2870a528..9a4d64430 100644 --- a/radio/src/gui/colorlcd/radio_setup.cpp +++ b/radio/src/gui/colorlcd/radio_setup.cpp @@ -363,17 +363,19 @@ void RadioSetupPage::build(FormWindow * window) } #if defined(PWR_BUTTON_PRESS) + // Pwr Off Delay + { new StaticText(window, grid.getLabelSlot(), STR_PWR_OFF_DELAY); - edit = new NumberEdit(window, grid.getFieldSlot(), 0, 3, - [=]() -> int32_t { - return 2 - g_eeGeneral.pwrOffSpeed; - }, - [=](int32_t newValue) { - g_eeGeneral.pwrOffSpeed = 2 - newValue; - SET_DIRTY(); - }); - edit->setSuffix("s"); + new Choice(window, grid.getFieldSlot(), STR_PWR_OFF_DELAYS, 0, 3, + [=]() -> int32_t { + return 2 - g_eeGeneral.pwrOffSpeed; + }, + [=](int32_t newValue) { + g_eeGeneral.pwrOffSpeed = 2 - newValue; + SET_DIRTY(); + }); grid.nextLine(); + } #endif #if defined(INTERNAL_GPS) diff --git a/radio/src/translations.cpp b/radio/src/translations.cpp index 05c129587..c7b8b26ea 100644 --- a/radio/src/translations.cpp +++ b/radio/src/translations.cpp @@ -112,6 +112,7 @@ ISTR(BLUETOOTH_MODES); ISTR(TEXT_SIZE); ISTR(SUBTRIMMODES); +ISTR(PWR_OFF_DELAYS); const char STR_POPUPS_ENTER_EXIT[] = TR_POPUPS_ENTER_EXIT; const char STR_OK[] = TR_OK; diff --git a/radio/src/translations.h b/radio/src/translations.h index 0de4687ae..fd5175c44 100644 --- a/radio/src/translations.h +++ b/radio/src/translations.h @@ -330,6 +330,7 @@ extern const char STR_SPLASHSCREEN[]; #if defined(PWR_BUTTON_PRESS) extern const char STR_PWR_ON_DELAY[]; extern const char STR_PWR_OFF_DELAY[]; +extern const char STR_PWR_OFF_DELAYS[]; #endif extern const char STR_THROTTLE_WARNING[]; extern const char STR_SWITCHWARNING[]; diff --git a/radio/src/translations/untranslated.h b/radio/src/translations/untranslated.h index 124b1a8a1..a734e63c6 100644 --- a/radio/src/translations/untranslated.h +++ b/radio/src/translations/untranslated.h @@ -30,44 +30,44 @@ #if defined(PCBX12S) - #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"6P\0" STR_CHAR_POT"S2\0" STR_CHAR_TRIM "L1\0" STR_CHAR_TRIM "L2\0" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" STR_CHAR_POT"JSx" STR_CHAR_POT"JSy" - #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"6P\0" STR_CHAR_POT"S2\0" STR_CHAR_TRIM "L1\0" STR_CHAR_TRIM "L2\0" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" STR_CHAR_POT"JSx" STR_CHAR_POT"JSy" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" #elif defined(PCBX10) - #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"6P\0" STR_CHAR_POT"S2\0" STR_CHAR_POT"EX1" STR_CHAR_POT"EX2" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" STR_CHAR_POT"JSx" STR_CHAR_POT"JSy" - #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"6P\0" STR_CHAR_POT"S2\0" STR_CHAR_POT"EX1" STR_CHAR_POT"EX2" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" STR_CHAR_POT"JSx" STR_CHAR_POT"JSy" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" #elif defined(PCBX9E) - #define TR_POTS_VSRCRAW STR_CHAR_POT"F1\0" STR_CHAR_POT"F2\0" STR_CHAR_POT"F3\0" STR_CHAR_POT"F4\0" STR_CHAR_SLIDER"S1\0" STR_CHAR_SLIDER"S2\0" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" - #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" STR_CHAR_SWITCH"SK\0" STR_CHAR_SWITCH"SL\0" STR_CHAR_SWITCH"SM\0" STR_CHAR_SWITCH"SN\0" STR_CHAR_SWITCH"SO\0" STR_CHAR_SWITCH"SP\0" STR_CHAR_SWITCH"SQ\0" STR_CHAR_SWITCH"SR\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT"F1\0" STR_CHAR_POT"F2\0" STR_CHAR_POT"F3\0" STR_CHAR_POT"F4\0" STR_CHAR_SLIDER"S1\0" STR_CHAR_SLIDER"S2\0" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" STR_CHAR_SWITCH"SK\0" STR_CHAR_SWITCH"SL\0" STR_CHAR_SWITCH"SM\0" STR_CHAR_SWITCH"SN\0" STR_CHAR_SWITCH"SO\0" STR_CHAR_SWITCH"SP\0" STR_CHAR_SWITCH"SQ\0" STR_CHAR_SWITCH"SR\0" #elif defined(PCBXLITE) - #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" - #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" #elif defined(RADIO_FAMILY_JUMPER_T12) - #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" - #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" #elif defined(RADIO_TX12) - #define TR_POTS_VSRCRAW STR_CHAR_POT "S1\0" STR_CHAR_POT "S2\0" - #define TR_SW_VSRCRAW STR_CHAR_SWITCH "SA\0" STR_CHAR_SWITCH "SB\0" STR_CHAR_SWITCH "SC\0" STR_CHAR_SWITCH "SD\0" STR_CHAR_SWITCH "SE\0" STR_CHAR_SWITCH "SF\0" STR_CHAR_SWITCH "SI\0" STR_CHAR_SWITCH "SJ\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT "S1\0" STR_CHAR_POT "S2\0" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH "SA\0" STR_CHAR_SWITCH "SB\0" STR_CHAR_SWITCH "SC\0" STR_CHAR_SWITCH "SD\0" STR_CHAR_SWITCH "SE\0" STR_CHAR_SWITCH "SF\0" STR_CHAR_SWITCH "SI\0" STR_CHAR_SWITCH "SJ\0" #elif defined(RADIO_TX12) #define TR_POTS_VSRCRAW "\310S1\0""\310S2\0" #define TR_SW_VSRCRAW "\312SA\0""\312SB\0""\312SC\0""\312SD\0""\312SE\0""\312SF\0""\312SI\0""\312SJ\0" #elif defined(PCBX7) - #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" - #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" #elif defined(PCBX9LITES) - #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" - #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" #elif defined(PCBX9LITE) - #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" - #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" #elif defined(PCBTARANIS) - #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" STR_CHAR_POT"S3\0" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" - #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" STR_CHAR_POT"S3\0" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" #elif defined(PCBSKY9X) - #define TR_POTS_VSRCRAW "P1\0 ""P2\0 ""P3\0 " - #define TR_SW_VSRCRAW "3POS" "THR\0""RUD\0""ELE\0""AIL\0""GEA\0""TRN\0" + #define TR_POTS_VSRCRAW "P1\0 ""P2\0 ""P3\0 " + #define TR_SW_VSRCRAW "3POS" "THR\0""RUD\0""ELE\0""AIL\0""GEA\0""TRN\0" #elif defined(PCBNV14) - #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" - #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" #endif #if defined(PCBFRSKY) || defined(PCBFLYSKY) @@ -95,18 +95,18 @@ #define TR_CRSF_BAUDRATE "115k""400k" #if defined(MODULE_PROTOCOL_FLEX) -#define TR_MODULE_R9M_LITE "R9ML\0 " +#define TR_MODULE_R9M_LITE "R9ML\0 " #else -#define TR_MODULE_R9M_LITE "R9MLite\0 " +#define TR_MODULE_R9M_LITE "R9MLite\0 " #endif #if defined(COLORLCD) #if defined(BOLD) -#define LEN_FONT_SIZES "\003" -#define TR_FONT_SIZES "STD" +#define LEN_FONT_SIZES "\003" +#define TR_FONT_SIZES "STD" #else -#define LEN_FONT_SIZES "\004" -#define TR_FONT_SIZES "STD\0""BOLD""XXS\0""XS\0 ""L\0 ""XL\0 ""XXL\0" +#define LEN_FONT_SIZES "\004" +#define TR_FONT_SIZES "STD\0""BOLD""XXS\0""XS\0 ""L\0 ""XL\0 ""XXL\0" #endif #endif @@ -119,15 +119,15 @@ #define LEN_INTERNAL_MODULE_PROTOCOLS LEN_EXTERNAL_MODULE_PROTOCOLS #define TR_INTERNAL_MODULE_PROTOCOLS TR_EXTERNAL_MODULE_PROTOCOLS -#define LEN_XJT_ACCST_RF_PROTOCOLS "\004" -#define TR_XJT_ACCST_RF_PROTOCOLS "OFF\0""D16\0""D8\0 ""LR12" +#define LEN_XJT_ACCST_RF_PROTOCOLS "\004" +#define TR_XJT_ACCST_RF_PROTOCOLS "OFF\0""D16\0""D8\0 ""LR12" #if defined(INTERNAL_MODULE_PXX1) || defined(PCBHORUS) -#define LEN_ISRM_RF_PROTOCOLS "\006" -#define TR_ISRM_RF_PROTOCOLS "ACCESS""D16\0 ""LR12" +#define LEN_ISRM_RF_PROTOCOLS "\006" +#define TR_ISRM_RF_PROTOCOLS "ACCESS""D16\0 ""LR12" #else -#define LEN_ISRM_RF_PROTOCOLS "\012" -#define TR_ISRM_RF_PROTOCOLS "OFF\0 ""ACCESS\0 ""ACCST D16\0""ACCST LR12""ACCST D8" +#define LEN_ISRM_RF_PROTOCOLS "\012" +#define TR_ISRM_RF_PROTOCOLS "OFF\0 ""ACCESS\0 ""ACCST D16\0""ACCST LR12""ACCST D8" #endif #define LEN_R9M_PXX2_RF_PROTOCOLS "\006" @@ -163,7 +163,7 @@ #define LEN_MULTI_WBUS_MODE "\004" #define TR_MULTI_WBUS_MODE "WBUS""PPM\0" -#define LEN_MULTI_TELEMETRY_MODE "\007" +#define LEN_MULTI_TELEMETRY_MODE "\007" #define TR_MULTI_TELEMETRY_MODE "Off\0 ""On\0 ""Off+Aux""On+Aux\0" #define LEN_AFHDS3_PROTOCOLS "\x008" @@ -178,6 +178,9 @@ #define LEN_SBUS_INVERSION_VALUES "\014" #define TR_SBUS_INVERSION_VALUES "normal\0 ""not inverted" +#define LEN_PWR_OFF_DELAYS "\002" +#define TR_PWR_OFF_DELAYS "0s""1s""2s""4s" + #define TR_SENSOR_RSSI "RSSI" #define TR_SENSOR_R9PW "R9PW" #define TR_SENSOR_RAS "SWR"