From e38725ab0ab2ee29936b490a0352e9f8015732b8 Mon Sep 17 00:00:00 2001 From: Bertrand Songis Date: Tue, 16 Apr 2019 17:58:50 +0200 Subject: [PATCH] Add confirmation dialog before deleting a receiver --- radio/src/gui/128x64/model_setup.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/radio/src/gui/128x64/model_setup.cpp b/radio/src/gui/128x64/model_setup.cpp index 86bfdf421..cfd2549b0 100644 --- a/radio/src/gui/128x64/model_setup.cpp +++ b/radio/src/gui/128x64/model_setup.cpp @@ -281,6 +281,16 @@ void onPXX2BindMenu(const char * result) } } +void onResetReceiverConfirm(const char * result) +{ + if (result == STR_OK) { + uint8_t moduleIdx = CURRENT_MODULE_EDITED(menuVerticalPosition - HEADER_LINE); + uint8_t receiverIdx = CURRENT_RECEIVER_EDITED(menuVerticalPosition - HEADER_LINE); + moduleSettings[moduleIdx].mode = MODULE_MODE_RESET; + removePXX2Receiver(moduleIdx, receiverIdx); + } +} + void onPXX2ReceiverMenu(const char * result) { uint8_t moduleIdx = CURRENT_MODULE_EDITED(menuVerticalPosition - HEADER_LINE); @@ -307,8 +317,7 @@ void onPXX2ReceiverMenu(const char * result) memclear(&reusableBuffer.moduleSetup.pxx2, sizeof(reusableBuffer.moduleSetup.pxx2)); reusableBuffer.moduleSetup.pxx2.resetReceiverIndex = receiverIdx; reusableBuffer.moduleSetup.pxx2.resetReceiverFlags = (result == STR_RESET ? 0xFF : 0x01); - moduleSettings[moduleIdx].mode = MODULE_MODE_RESET; - removePXX2Receiver(moduleIdx, receiverIdx); + POPUP_CONFIRMATION(result == STR_RESET ? "Reset to factory settings?" : "Delete the receiver?", onResetReceiverConfirm); } else { removePXX2ReceiverIfEmpty(moduleIdx, receiverIdx);