Show multi failsafe to x7 UI (#5471)
* Show multi failsafe to x7 UI * Cosmetics * Fix also horus ui and remove useless ifs
This commit is contained in:
@@ -1059,28 +1059,26 @@ void menuModelSetup(event_t event)
|
|||||||
case ITEM_MODEL_EXTERNAL_MODULE_FAILSAFE: {
|
case ITEM_MODEL_EXTERNAL_MODULE_FAILSAFE: {
|
||||||
uint8_t moduleIdx = CURRENT_MODULE_EDITED(k);
|
uint8_t moduleIdx = CURRENT_MODULE_EDITED(k);
|
||||||
ModuleData &moduleData = g_model.moduleData[moduleIdx];
|
ModuleData &moduleData = g_model.moduleData[moduleIdx];
|
||||||
if (IS_MODULE_PXX(moduleIdx)) {
|
lcdDrawTextAlignedLeft(y, STR_FAILSAFE);
|
||||||
lcdDrawTextAlignedLeft(y, STR_FAILSAFE);
|
lcdDrawTextAtIndex(MODEL_SETUP_2ND_COLUMN, y, STR_VFAILSAFE, moduleData.failsafeMode, menuHorizontalPosition == 0 ? attr : 0);
|
||||||
lcdDrawTextAtIndex(MODEL_SETUP_2ND_COLUMN, y, STR_VFAILSAFE, moduleData.failsafeMode, menuHorizontalPosition == 0 ? attr : 0);
|
if (moduleData.failsafeMode == FAILSAFE_CUSTOM)
|
||||||
if (moduleData.failsafeMode == FAILSAFE_CUSTOM)
|
lcdDrawText(MODEL_SETUP_2ND_COLUMN + MODEL_SETUP_SET_FAILSAFE_OFS, y, STR_SET, menuHorizontalPosition == 1 ? attr : 0);
|
||||||
lcdDrawText(MODEL_SETUP_2ND_COLUMN + MODEL_SETUP_SET_FAILSAFE_OFS, y, STR_SET, menuHorizontalPosition == 1 ? attr : 0);
|
if (attr) {
|
||||||
if (attr) {
|
if (moduleData.failsafeMode != FAILSAFE_CUSTOM)
|
||||||
if (moduleData.failsafeMode != FAILSAFE_CUSTOM)
|
menuHorizontalPosition = 0;
|
||||||
menuHorizontalPosition = 0;
|
if (menuHorizontalPosition == 0) {
|
||||||
if (menuHorizontalPosition == 0) {
|
if (editMode > 0 || p1valdiff) {
|
||||||
if (editMode > 0 || p1valdiff) {
|
CHECK_INCDEC_MODELVAR_ZERO(event, moduleData.failsafeMode, FAILSAFE_LAST);
|
||||||
CHECK_INCDEC_MODELVAR_ZERO(event, moduleData.failsafeMode, FAILSAFE_LAST);
|
if (checkIncDec_Ret) SEND_FAILSAFE_NOW(moduleIdx);
|
||||||
if (checkIncDec_Ret) SEND_FAILSAFE_NOW(moduleIdx);
|
|
||||||
}
|
|
||||||
} else if (menuHorizontalPosition == 1) {
|
|
||||||
s_editMode = 0;
|
|
||||||
if (moduleData.failsafeMode == FAILSAFE_CUSTOM && event == EVT_KEY_FIRST(KEY_ENTER)) {
|
|
||||||
g_moduleIdx = moduleIdx;
|
|
||||||
pushMenu(menuModelFailsafe);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
lcdDrawSolidFilledRect(MODEL_SETUP_2ND_COLUMN, y, LCD_W - MODEL_SETUP_2ND_COLUMN, 8);
|
|
||||||
}
|
}
|
||||||
|
} else if (menuHorizontalPosition == 1) {
|
||||||
|
s_editMode = 0;
|
||||||
|
if (moduleData.failsafeMode == FAILSAFE_CUSTOM && event == EVT_KEY_FIRST(KEY_ENTER)) {
|
||||||
|
g_moduleIdx = moduleIdx;
|
||||||
|
pushMenu(menuModelFailsafe);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
lcdDrawSolidFilledRect(MODEL_SETUP_2ND_COLUMN, y, LCD_W - MODEL_SETUP_2ND_COLUMN, 8);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1042,32 +1042,30 @@ void menuModelSetup(event_t event)
|
|||||||
case ITEM_MODEL_EXTERNAL_MODULE_FAILSAFE:
|
case ITEM_MODEL_EXTERNAL_MODULE_FAILSAFE:
|
||||||
{
|
{
|
||||||
uint8_t moduleIdx = CURRENT_MODULE_EDITED(k);
|
uint8_t moduleIdx = CURRENT_MODULE_EDITED(k);
|
||||||
if (IS_MODULE_PXX(moduleIdx) || IS_MODULE_MULTIMODULE(moduleIdx)) {
|
ModuleData & moduleData = g_model.moduleData[moduleIdx];
|
||||||
ModuleData & moduleData = g_model.moduleData[moduleIdx];
|
lcdDrawTextAlignedLeft(y, STR_FAILSAFE);
|
||||||
lcdDrawTextAlignedLeft(y, STR_FAILSAFE);
|
lcdDrawTextAtIndex(MODEL_SETUP_2ND_COLUMN, y, STR_VFAILSAFE, moduleData.failsafeMode, menuHorizontalPosition==0 ? attr : 0);
|
||||||
lcdDrawTextAtIndex(MODEL_SETUP_2ND_COLUMN, y, STR_VFAILSAFE, moduleData.failsafeMode, menuHorizontalPosition==0 ? attr : 0);
|
if (moduleData.failsafeMode == FAILSAFE_CUSTOM) lcdDrawText(MODEL_SETUP_2ND_COLUMN + MODEL_SETUP_SET_FAILSAFE_OFS, y, STR_SET, menuHorizontalPosition==1 ? attr : 0);
|
||||||
if (moduleData.failsafeMode == FAILSAFE_CUSTOM) lcdDrawText(MODEL_SETUP_2ND_COLUMN + MODEL_SETUP_SET_FAILSAFE_OFS, y, STR_SET, menuHorizontalPosition==1 ? attr : 0);
|
if (attr) {
|
||||||
if (attr) {
|
if (moduleData.failsafeMode != FAILSAFE_CUSTOM) {
|
||||||
if (moduleData.failsafeMode != FAILSAFE_CUSTOM) {
|
menuHorizontalPosition = 0;
|
||||||
menuHorizontalPosition = 0;
|
}
|
||||||
|
if (menuHorizontalPosition == 0) {
|
||||||
|
if (s_editMode > 0) {
|
||||||
|
CHECK_INCDEC_MODELVAR_ZERO(event, moduleData.failsafeMode, FAILSAFE_LAST);
|
||||||
|
if (checkIncDec_Ret) SEND_FAILSAFE_NOW(moduleIdx);
|
||||||
}
|
}
|
||||||
if (menuHorizontalPosition == 0) {
|
}
|
||||||
if (s_editMode > 0) {
|
else if (menuHorizontalPosition == 1) {
|
||||||
CHECK_INCDEC_MODELVAR_ZERO(event, moduleData.failsafeMode, FAILSAFE_LAST);
|
s_editMode = 0;
|
||||||
if (checkIncDec_Ret) SEND_FAILSAFE_NOW(moduleIdx);
|
if (moduleData.failsafeMode==FAILSAFE_CUSTOM && event==EVT_KEY_FIRST(KEY_ENTER)) {
|
||||||
}
|
g_moduleIdx = moduleIdx;
|
||||||
}
|
pushMenu(menuModelFailsafe);
|
||||||
else if (menuHorizontalPosition == 1) {
|
|
||||||
s_editMode = 0;
|
|
||||||
if (moduleData.failsafeMode==FAILSAFE_CUSTOM && event==EVT_KEY_FIRST(KEY_ENTER)) {
|
|
||||||
g_moduleIdx = moduleIdx;
|
|
||||||
pushMenu(menuModelFailsafe);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
lcdDrawFilledRect(MODEL_SETUP_2ND_COLUMN, y, LCD_W - MODEL_SETUP_2ND_COLUMN - MENUS_SCROLLBAR_WIDTH, 8);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
lcdDrawFilledRect(MODEL_SETUP_2ND_COLUMN, y, LCD_W - MODEL_SETUP_2ND_COLUMN - MENUS_SCROLLBAR_WIDTH, 8);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -942,33 +942,31 @@ bool menuModelSetup(event_t event)
|
|||||||
case ITEM_MODEL_EXTERNAL_MODULE_FAILSAFE:
|
case ITEM_MODEL_EXTERNAL_MODULE_FAILSAFE:
|
||||||
{
|
{
|
||||||
uint8_t moduleIdx = CURRENT_MODULE_EDITED(k);
|
uint8_t moduleIdx = CURRENT_MODULE_EDITED(k);
|
||||||
if (IS_MODULE_PXX(moduleIdx)) {
|
|
||||||
ModuleData & moduleData = g_model.moduleData[moduleIdx];
|
ModuleData & moduleData = g_model.moduleData[moduleIdx];
|
||||||
lcdDrawText(MENUS_MARGIN_LEFT, y, STR_FAILSAFE);
|
lcdDrawText(MENUS_MARGIN_LEFT, y, STR_FAILSAFE);
|
||||||
lcdDrawTextAtIndex(MODEL_SETUP_2ND_COLUMN, y, STR_VFAILSAFE, moduleData.failsafeMode, menuHorizontalPosition==0 ? attr : 0);
|
lcdDrawTextAtIndex(MODEL_SETUP_2ND_COLUMN, y, STR_VFAILSAFE, moduleData.failsafeMode, menuHorizontalPosition==0 ? attr : 0);
|
||||||
if (moduleData.failsafeMode == FAILSAFE_CUSTOM) {
|
if (moduleData.failsafeMode == FAILSAFE_CUSTOM) {
|
||||||
drawButton(MODEL_SETUP_2ND_COLUMN + MODEL_SETUP_SET_FAILSAFE_OFS, y, STR_SET, menuHorizontalPosition==1 ? attr : 0);
|
drawButton(MODEL_SETUP_2ND_COLUMN + MODEL_SETUP_SET_FAILSAFE_OFS, y, STR_SET, menuHorizontalPosition==1 ? attr : 0);
|
||||||
|
}
|
||||||
|
if (attr) {
|
||||||
|
if (moduleData.failsafeMode != FAILSAFE_CUSTOM)
|
||||||
|
menuHorizontalPosition = 0;
|
||||||
|
if (menuHorizontalPosition==0) {
|
||||||
|
if (s_editMode>0) {
|
||||||
|
CHECK_INCDEC_MODELVAR_ZERO(event, moduleData.failsafeMode, FAILSAFE_LAST);
|
||||||
|
if (checkIncDec_Ret) SEND_FAILSAFE_NOW(moduleIdx);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (attr) {
|
else if (menuHorizontalPosition==1) {
|
||||||
if (moduleData.failsafeMode != FAILSAFE_CUSTOM)
|
s_editMode = 0;
|
||||||
menuHorizontalPosition = 0;
|
if (moduleData.failsafeMode==FAILSAFE_CUSTOM && event==EVT_KEY_FIRST(KEY_ENTER)) {
|
||||||
if (menuHorizontalPosition==0) {
|
g_moduleIdx = moduleIdx;
|
||||||
if (s_editMode>0) {
|
pushMenu(menuModelFailsafe);
|
||||||
CHECK_INCDEC_MODELVAR_ZERO(event, moduleData.failsafeMode, FAILSAFE_LAST);
|
|
||||||
if (checkIncDec_Ret) SEND_FAILSAFE_NOW(moduleIdx);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (menuHorizontalPosition==1) {
|
|
||||||
s_editMode = 0;
|
|
||||||
if (moduleData.failsafeMode==FAILSAFE_CUSTOM && event==EVT_KEY_FIRST(KEY_ENTER)) {
|
|
||||||
g_moduleIdx = moduleIdx;
|
|
||||||
pushMenu(menuModelFailsafe);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
lcdDrawSolidFilledRect(MODEL_SETUP_2ND_COLUMN, y, LCD_W - MODEL_SETUP_2ND_COLUMN - 2, 8, TEXT_COLOR);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
lcdDrawSolidFilledRect(MODEL_SETUP_2ND_COLUMN, y, LCD_W - MODEL_SETUP_2ND_COLUMN - 2, 8, TEXT_COLOR);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user