mirror of
https://github.com/opentx/opentx.git
synced 2025-07-26 01:35:21 +03:00
xlite antenna selection menu (#5801)
This commit is contained in:
parent
b02344ffc5
commit
0c09c07cd2
12 changed files with 63 additions and 32 deletions
|
@ -64,6 +64,9 @@ enum MenuModelSetupItems {
|
|||
ITEM_MODEL_INTERNAL_MODULE_CHANNELS,
|
||||
ITEM_MODEL_INTERNAL_MODULE_BIND,
|
||||
ITEM_MODEL_INTERNAL_MODULE_FAILSAFE,
|
||||
#if defined(PCBXLITE)
|
||||
ITEM_MODEL_INTERNAL_MODULE_ANTENNA,
|
||||
#endif
|
||||
#endif
|
||||
#if defined(CPUARM)
|
||||
ITEM_MODEL_EXTERNAL_MODULE_LABEL,
|
||||
|
@ -176,6 +179,9 @@ enum MenuModelSetupItems {
|
|||
#elif defined(CPUM64)
|
||||
#define CURSOR_ON_CELL (true)
|
||||
#define MODEL_SETUP_MAX_LINES ((IS_PPM_PROTOCOL(protocol)||IS_DSM2_PROTOCOL(protocol)||IS_PXX_PROTOCOL(protocol)) ? HEADER_LINE+ITEM_MODEL_SETUP_MAX : HEADER_LINE+ITEM_MODEL_SETUP_MAX-1)
|
||||
#elif defined(PCBXLITE)
|
||||
#define CURSOR_ON_CELL (menuHorizontalPosition >= 0)
|
||||
#define MODEL_SETUP_MAX_LINES ((IS_PPM_PROTOCOL(protocol)||IS_DSM2_PROTOCOL(protocol)||IS_PXX_PROTOCOL(protocol)) ? HEADER_LINE+ITEM_MODEL_SETUP_MAX : HEADER_LINE+ITEM_MODEL_SETUP_MAX-1)
|
||||
#else
|
||||
#define CURSOR_ON_CELL (true)
|
||||
#define MODEL_SETUP_MAX_LINES ((IS_PPM_PROTOCOL(protocol)||IS_DSM2_PROTOCOL(protocol)||IS_PXX_PROTOCOL(protocol)) ? HEADER_LINE+ITEM_MODEL_SETUP_MAX : HEADER_LINE+ITEM_MODEL_SETUP_MAX-1)
|
||||
|
@ -233,6 +239,15 @@ void onBindMenu(const char * result)
|
|||
|
||||
void menuModelSetup(event_t event)
|
||||
{
|
||||
#if defined(PCBXLITE)
|
||||
// Switch to external antenna confirmation
|
||||
bool newAntennaSel;
|
||||
if (warningResult) {
|
||||
warningResult = 0;
|
||||
g_model.moduleData[INTERNAL_MODULE].pxx.external_antenna = XJT_EXTERNAL_ANTENNA;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(PCBTARANIS)
|
||||
MENU_TAB({ HEADER_LINE_COLUMNS 0, TIMER_ROWS, TIMER_ROWS, TIMER_ROWS, 0, 1, 0, 0, 0, 0, 0, CASE_CPUARM(LABEL(PreflightCheck)) CASE_CPUARM(0) 0, NUM_SWITCHES-1, NUM_POTS, NUM_STICKS+NUM_POTS+NUM_SLIDERS+NUM_ROTARY_ENCODERS-1, 0,
|
||||
LABEL(InternalModule),
|
||||
|
@ -240,6 +255,9 @@ void menuModelSetup(event_t event)
|
|||
INTERNAL_MODULE_CHANNELS_ROWS,
|
||||
IF_INTERNAL_MODULE_ON(HAS_RF_PROTOCOL_MODELINDEX(g_model.moduleData[INTERNAL_MODULE].rfProtocol) ? (uint8_t)2 : (uint8_t)1),
|
||||
IF_INTERNAL_MODULE_ON(FAILSAFE_ROWS(INTERNAL_MODULE)),
|
||||
#if defined(PCBXLITE)
|
||||
IF_INTERNAL_MODULE_ON(0),
|
||||
#endif
|
||||
LABEL(ExternalModule),
|
||||
EXTERNAL_MODULE_MODE_ROWS,
|
||||
MULTIMODULE_SUBTYPE_ROWS(EXTERNAL_MODULE)
|
||||
|
@ -1136,6 +1154,19 @@ void menuModelSetup(event_t event)
|
|||
}
|
||||
break;
|
||||
|
||||
#if defined(PCBXLITE)
|
||||
case ITEM_MODEL_INTERNAL_MODULE_ANTENNA:
|
||||
newAntennaSel = editChoice(MODEL_SETUP_2ND_COLUMN, y, STR_ANTENNASELECTION, STR_VANTENNATYPES, g_model.moduleData[INTERNAL_MODULE].pxx.external_antenna, 0, 1, attr, event);
|
||||
if (newAntennaSel != g_model.moduleData[INTERNAL_MODULE].pxx.external_antenna && newAntennaSel == XJT_EXTERNAL_ANTENNA) {
|
||||
POPUP_CONFIRMATION(STR_ANTENNACONFIRM1);
|
||||
const char * w = STR_ANTENNACONFIRM2;
|
||||
SET_WARNING_INFO(w, strlen(w), 0);
|
||||
}
|
||||
else {
|
||||
g_model.moduleData[INTERNAL_MODULE].pxx.external_antenna = newAntennaSel;
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
case ITEM_MODEL_EXTERNAL_MODULE_OPTIONS:
|
||||
{
|
||||
uint8_t moduleIdx = CURRENT_MODULE_EDITED(k);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue