diff --git a/radio/src/gui/128x64/model_telemetry.cpp b/radio/src/gui/128x64/model_telemetry.cpp index 45d3c7471..4a529ae5c 100644 --- a/radio/src/gui/128x64/model_telemetry.cpp +++ b/radio/src/gui/128x64/model_telemetry.cpp @@ -52,6 +52,8 @@ enum MenuModelTelemetryFrskyItems { #define TELEM_COL2 (8*FW) #endif +#define TELEM_COL3 (17 * FW) + #define CHANNELS_ROWS #define SENSOR_ROWS(x) (isTelemetryFieldAvailable(x) ? (uint8_t)0 : HIDDEN_ROW) #define SENSORS_ROWS LABEL(Sensors), SENSOR_ROWS(0), SENSOR_ROWS(1), SENSOR_ROWS(2), SENSOR_ROWS(3), SENSOR_ROWS(4), SENSOR_ROWS(5), SENSOR_ROWS(6), SENSOR_ROWS(7), SENSOR_ROWS(8), SENSOR_ROWS(9), SENSOR_ROWS(10), SENSOR_ROWS(11), SENSOR_ROWS(12), SENSOR_ROWS(13), SENSOR_ROWS(14), SENSOR_ROWS(15), SENSOR_ROWS(16), SENSOR_ROWS(17), SENSOR_ROWS(18), SENSOR_ROWS(19), SENSOR_ROWS(20), SENSOR_ROWS(21), SENSOR_ROWS(22), SENSOR_ROWS(23), SENSOR_ROWS(24), SENSOR_ROWS(25), SENSOR_ROWS(26), SENSOR_ROWS(27), SENSOR_ROWS(28), SENSOR_ROWS(29), SENSOR_ROWS(30), SENSOR_ROWS(31), SENSOR_ROWS(32), SENSOR_ROWS(33), SENSOR_ROWS(34), SENSOR_ROWS(35), SENSOR_ROWS(36), SENSOR_ROWS(37), SENSOR_ROWS(38), SENSOR_ROWS(39), 0, 0, 0, 0, @@ -110,32 +112,21 @@ void onSensorMenu(const char * result) } } -void menuModelTelemetryFrsky(event_t event) +void onDeleteAllSensorsConfirm(const char * result) { - // TODO rather an handler for this - if (warningResult) { - warningResult = 0; + if (result == STR_OK) { for (int i=0; i0 && sub<=ITEM_TELEMETRY_RSSI_ALARM2) - frskySendAlarms(); // update FrSky module when edit mode exited - break; - } - for (uint8_t i=0; iinstance >> 7) & 0x01, (sensor->instance >> 5) & 0x03, 0); + lcdDrawText(lcdNextPos, y, " ", attr); + drawReceiverName(lcdNextPos, y, (sensor->instance >> 7) & 0x01, (sensor->instance >> 5) & 0x03, attr); } if (attr) { g_model.frsky.rssiSource = checkIncDec(event, g_model.frsky.rssiSource, 0, MAX_TELEMETRY_SENSORS, EE_MODEL | NO_INCDEC_MARKS, isRssiSensorAvailable); @@ -269,20 +263,22 @@ void menuModelTelemetryFrsky(event_t event) } case ITEM_TELEMETRY_RSSI_ALARM1: - case ITEM_TELEMETRY_RSSI_ALARM2: { + case ITEM_TELEMETRY_RSSI_ALARM2: + { bool warning = (k==ITEM_TELEMETRY_RSSI_ALARM1); lcdDrawTextAlignedLeft(y, (warning ? STR_LOWALARM : STR_CRITICALALARM)); - lcdDrawNumber(LCD_W, y, warning? g_model.rssiAlarms.getWarningRssi() : g_model.rssiAlarms.getCriticalRssi(), RIGHT | attr, 3); + lcdDrawNumber(TELEM_COL3, y, warning? g_model.rssiAlarms.getWarningRssi() : g_model.rssiAlarms.getCriticalRssi(), attr, 3); if (attr && s_editMode>0) { if (warning) CHECK_INCDEC_MODELVAR(event, g_model.rssiAlarms.warning, -30, 30); else CHECK_INCDEC_MODELVAR(event, g_model.rssiAlarms.critical, -30, 30); - } + } break; } + case ITEM_TELEMETRY_DISABLE_ALARMS: - g_model.rssiAlarms.disabled = editCheckBox(g_model.rssiAlarms.disabled, LCD_W - 10, y, STR_DISABLE_ALARM, attr, event); + g_model.rssiAlarms.disabled = editCheckBox(g_model.rssiAlarms.disabled, TELEM_COL3, y, STR_DISABLE_ALARM, attr, event); break; #if defined(VARIO)