From b8027138af18d9b8af3726f7946dcd3c6f2d2dd8 Mon Sep 17 00:00:00 2001 From: zyj Date: Wed, 25 Oct 2023 15:29:55 +0800 Subject: [PATCH] =?UTF-8?q?1.=E5=AE=9E=E7=8E=B0=E8=AE=BE=E7=BD=AE=E7=95=8C?= =?UTF-8?q?=E9=9D=A2=E7=9A=84SD=E5=8D=A1=E6=A0=BC=E5=BC=8F=E5=8C=96?= =?UTF-8?q?=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UIFlowMenuCommonConfirmEventCallback.c | 25 ++++++++-- .../UIFlowMenuCommonOptionEventCallback.c | 13 +++++ .../UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c | 47 +++++++++++++++++++ 3 files changed, 80 insertions(+), 5 deletions(-) diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonConfirm/UIFlowMenuCommonConfirmEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonConfirm/UIFlowMenuCommonConfirmEventCallback.c index 49a42f213..b3ca161cf 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonConfirm/UIFlowMenuCommonConfirmEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonConfirm/UIFlowMenuCommonConfirmEventCallback.c @@ -4,7 +4,7 @@ #include "UIFlowLVGL/UIFlowMenuCommonConfirm/UIFlowMenuCommonConfirmAPI.h" #include "UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgAPI.h" #include - +#include "sf_sd_common.h" static UINT32 gBKGEvt = 0; static UINT32 gExeEvt = 0; @@ -174,11 +174,13 @@ void UIFlowMenuCommonConfirm_OnChildScrClose(lv_obj_t* obj, const LV_USER_EVENT_ set_indev_keypad_group(msgbox); if(msg){ - const char* msgbox_text = lv_msgbox_get_text(msgbox); const char* erase_text = lv_plugin_get_string(LV_PLUGIN_STRING_ID_STRID_ERASE_THIS)->ptr; - if(msg->event == NVTRET_WAITMOMENT || strcmp(msgbox_text, erase_text) == 0){ + if(msg->event == NVTRET_WAITMOMENT || + msg->event == NVTRET_FORMAT || + strcmp(msgbox_text, erase_text) == 0) + { UIFlowMenuCommonConfirm_CloseScr(); } } @@ -259,8 +261,18 @@ static void UIFlowMenuCommonConfirm_MessageBox_ValueChanged(lv_obj_t* obj, uint3 // #endif UIFlowMenuCommonConfirm_CloseScr(); - - + } else if (gBKGEvt == NVTEVT_BKW_FORMAT_CARD) { + if(sf_in_card_exist() == TRUE) + { + lv_obj_set_hidden(msgbox, true); + UIFlowWrnMsgAPI_Open_StringID(LV_PLUGIN_STRING_ID_STRING_FORMATING, 20000); + BKG_PostEvent(NVTEVT_BKW_FORMAT_CARD); + } + else + { + lv_obj_set_hidden(msgbox, true); + UIFlowWrnMsgAPI_Open_StringID(LV_PLUGIN_STRING_ID_STRING_NO_SD, 3000); + } } else if (gBKGEvt) { DBG_FUNC("gBKGEvt=%d\r\n",gBKGEvt); lv_plugin_scr_open(wait_moment_scr, &string_id_please_wait); @@ -286,6 +298,7 @@ static void UIFlowMenuCommonConfirm_MessageBox_ValueChanged(lv_obj_t* obj, uint3 void UIFlowMenuCommonConfirmEventCallback(lv_obj_t* obj, lv_event_t event) { + printf("[%s]event:%d\n", __FUNCTION__, event); switch(event) { @@ -323,6 +336,8 @@ void UIFlowMenuCommonConfirmEventCallback(lv_obj_t* obj, lv_event_t event) void message_box_confirm_msg_event_callback(lv_obj_t* obj, lv_event_t event) { + printf("[%s]event:%d\n", __FUNCTION__, event); + switch(event) { diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonOption/UIFlowMenuCommonOptionEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonOption/UIFlowMenuCommonOptionEventCallback.c index 9166bd2b0..dfa4751dc 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonOption/UIFlowMenuCommonOptionEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonOption/UIFlowMenuCommonOptionEventCallback.c @@ -3,6 +3,7 @@ #include "UIFlowLVGL/UIFlowLVGL.h" #include "UIApp/Network/UIAppNetwork.h" #include +#include "UIFlowLVGL/UIFlowMenuCommonConfirm/UIFlowMenuCommonConfirmAPI.h" #if HUNTING_CAMERA_MCU == ENABLE #include #endif @@ -145,6 +146,7 @@ static int is_message_item(lv_obj_t* obj) case IDM_FORMAT_SD: { printf("[is_message_item]IDM_FORMAT_SD\n"); + UIFlowMenuCommonConfirmAPI_Open(IDM_FORMAT); return MESSAGE_ITEM_TRUE; } case IDM_DATE_AND_TIME: @@ -639,6 +641,17 @@ static void UIFlowMenuCommonOption_ChildScrClose(lv_obj_t* obj) set_indev_keypad_group(obj); + TM_MENU* pMenu = TM_GetMenu(); + TM_PAGE* pPage; + TM_ITEM* pItem; + pPage = &pMenu->pPages[pMenu->SelPage]; + pItem = &pPage->pItems[pPage->SelItem]; + UINT16 itemID = pItem->ItemId; + + if(itemID == IDM_FORMAT_SD) + { + lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0)); + } } static void UIFlowMenuCommonOption_ScrOpen(lv_obj_t* obj, const void *data) diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c index 34aad73d1..90c6fc07f 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c @@ -2,6 +2,7 @@ #include "UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgAPI.h" #include "UIFlowLVGL/UIFlowLVGL.h" #include +#include "sf_sd_common.h" /************************************************************** * static variables @@ -124,10 +125,42 @@ void UIFlowWrnMsgEventCallback_OnOpen(lv_obj_t* obj) +} + +static void UIFlowWrnMsg_OnNVTMSG(lv_obj_t* obj, const LV_USER_EVENT_NVTMSG_DATA* msg) +{ + NVTEVT message=msg->paramArray[ONDONE_PARAM_INDEX_CMD]; + switch(msg->event) + { + case NVTEVT_BACKGROUND_DONE: + switch (message) + { + case NVTEVT_BKW_FORMAT_CARD: + { + int ret = sf_get_card_statu(); + if(ret == CMD_FORMAT_SD_OK) + { + lv_plugin_msgbox_set_text(msgbox, LV_PLUGIN_STRING_ID_STRING_COMPLETED); + } + else + { + lv_plugin_msgbox_set_text(msgbox, LV_PLUGIN_STRING_ID_STRING_FORMAT_ERR); + } + lv_msgbox_start_auto_close(msgbox, 3000); + printf("[%s]start auto close 3000ms", __FUNCTION__); + break; + } + default: + break; + } + default: + break; + } } void UIFlowWrnMsgEventCallback(lv_obj_t* obj, lv_event_t event) { + printf("[%s]event:%d\n", __FUNCTION__, event); switch(event) { @@ -155,6 +188,14 @@ void UIFlowWrnMsgEventCallback(lv_obj_t* obj, lv_event_t event) break; } + case LV_USER_EVENT_NVTMSG: + { + const LV_USER_EVENT_NVTMSG_DATA* msg = (const LV_USER_EVENT_NVTMSG_DATA*)lv_event_get_data(); + + UIFlowWrnMsg_OnNVTMSG(obj, msg); + break; + } + default: break; @@ -195,6 +236,7 @@ void message_box_wrnmsg_OnKey(lv_obj_t* msgbox, uint32_t key) void message_box_wrnmsg_event_callback(lv_obj_t* obj, lv_event_t event) { + printf("[%s]event:%d\n", __FUNCTION__, event); switch (event) { case LV_EVENT_KEY: @@ -220,6 +262,11 @@ void message_box_wrnmsg_event_callback(lv_obj_t* obj, lv_event_t event) /* reset pointer of msgbox */ msgbox = NULL; + if(msgID == LV_PLUGIN_STRING_ID_STRING_NO_SD || msgID == LV_PLUGIN_STRING_ID_STRING_FORMATING) + { + evt = NVTRET_FORMAT; + } + /* parent is UIFlowWrnMsg */ if(evt != NVTEVT_NULL){ lv_plugin_scr_close(lv_obj_get_parent(obj), gen_nvtmsg_data(evt, 0));