Fixed:Save config when menu setting not happened.

This commit is contained in:
xiaojiazhu 2024-01-05 16:09:26 +08:00
parent 16a81773d0
commit f205d43323
5 changed files with 28 additions and 2 deletions

View File

@ -86,12 +86,14 @@ TMDEF_PAGE_TEXT_ICON(GENERAL)
TMDEF_END_PAGES() TMDEF_END_PAGES()
TMDEF_EMNU(gGeneralMenu, GENERAL, General_MenuCallback) TMDEF_EMNU(gGeneralMenu, GENERAL, General_MenuCallback)
extern void set_menu_changed(int value);
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
// Menu Callback // Menu Callback
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
int General_MenuCallback(UINT32 uiMessage, UINT32 uiParam) int General_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
{ {
UIMenuStoreInfo *puiPara = sf_ui_para_get(); UIMenuStoreInfo *puiPara = sf_ui_para_get();
set_menu_changed(1);
// printf(" ====================================================== \n"); // printf(" ====================================================== \n");
printf("\033[33m[General_MenuCallback]uiMessage:%d uiParam:%d\033[0m\n", uiMessage, uiParam); printf("\033[33m[General_MenuCallback]uiMessage:%d uiParam:%d\033[0m\n", uiMessage, uiParam);

View File

@ -40,6 +40,7 @@ TMDEF_PAGE_TEXT_ICON(MORE)
TMDEF_END_PAGES() TMDEF_END_PAGES()
TMDEF_EMNU(gMoreMenu, MORE, More_MenuCallback) TMDEF_EMNU(gMoreMenu, MORE, More_MenuCallback)
extern void set_menu_changed(int value);
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
// Menu Callback // Menu Callback
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
@ -58,12 +59,14 @@ int More_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
case IDM_BATTERY_TYPE: case IDM_BATTERY_TYPE:
{ {
puiPara->BatteryType = uwOption; puiPara->BatteryType = uwOption;
set_menu_changed(1);
printf("\033[33m[Send_MenuCallback]BatteryType:%d\033[0m\n", puiPara->BatteryType); printf("\033[33m[Send_MenuCallback]BatteryType:%d\033[0m\n", puiPara->BatteryType);
break; break;
} }
case IDM_SD_LOOP: case IDM_SD_LOOP:
{ {
puiPara->SdLoopSwitch = uwOption; puiPara->SdLoopSwitch = uwOption;
set_menu_changed(1);
printf("\033[33m[Send_MenuCallback]SdLoopSwitch:%d\033[0m\n", puiPara->SdLoopSwitch); printf("\033[33m[Send_MenuCallback]SdLoopSwitch:%d\033[0m\n", puiPara->SdLoopSwitch);
break; break;
} }

View File

@ -67,7 +67,7 @@ TMDEF_PAGE_TEXT_ICON(QR)
TMDEF_PAGE_TEXT_ICON(QR) TMDEF_PAGE_TEXT_ICON(QR)
TMDEF_END_PAGES() TMDEF_END_PAGES()
TMDEF_EMNU(gQrMenu, QR, Qr_MenuCallback) TMDEF_EMNU(gQrMenu, QR, Qr_MenuCallback)
extern void set_menu_changed(int value);
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
// Menu Callback // Menu Callback
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
@ -97,6 +97,7 @@ int Qr_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
{ {
puiPara->PwdSwitch = uwOption; puiPara->PwdSwitch = uwOption;
memset(puiPara->PwdStr, '0' ,sizeof(puiPara->PwdStr)); memset(puiPara->PwdStr, '0' ,sizeof(puiPara->PwdStr));
set_menu_changed(1);
} }
printf("password switch %d\n", puiPara->PwdSwitch); printf("password switch %d\n", puiPara->PwdSwitch);
break; break;
@ -107,6 +108,7 @@ int Qr_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
if(tmpSelected != puiPara->CamNameSwitch) if(tmpSelected != puiPara->CamNameSwitch)
{ {
puiPara->CamNameSwitch = tmpSelected; puiPara->CamNameSwitch = tmpSelected;
set_menu_changed(1);
memset(puiPara ->CamNameStr,'\0', sizeof(puiPara ->CamNameStr)); memset(puiPara ->CamNameStr,'\0', sizeof(puiPara ->CamNameStr));
sprintf(puiPara ->CamNameStr, "%s", "REVE"); sprintf(puiPara ->CamNameStr, "%s", "REVE");
} }
@ -1050,6 +1052,7 @@ void Option_Password_Key(lv_obj_t* obj, uint32_t key)
update_Password_msg(obj); update_Password_msg(obj);
break; break;
case LV_KEY_ENTER: case LV_KEY_ENTER:
set_menu_changed(1);
lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0)); lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0));
hidde_Password_page(); hidde_Password_page();
break; break;
@ -1266,6 +1269,7 @@ void Option_CAMERA_INFO_Key_Long_Press(lv_obj_t* obj, uint32_t key)
{ {
case LV_USER_KEY_NEXT: case LV_USER_KEY_NEXT:
puiPara->QLogSwitch = puiPara->QLogSwitch ? 0 : 1; puiPara->QLogSwitch = puiPara->QLogSwitch ? 0 : 1;
set_menu_changed(1);
CameraInfoQlogisHidden = 0; CameraInfoQlogisHidden = 0;
update_Camera_Info_msg(obj); update_Camera_Info_msg(obj);
break; break;
@ -1275,6 +1279,7 @@ void Option_CAMERA_INFO_Key_Long_Press(lv_obj_t* obj, uint32_t key)
{ {
puiPara->QLogSwitch = 0; puiPara->QLogSwitch = 0;
} }
set_menu_changed(1);
CameraInfoDebugisHidden = 0; CameraInfoDebugisHidden = 0;
update_Camera_Info_msg(obj); update_Camera_Info_msg(obj);
break; break;
@ -1535,6 +1540,7 @@ void Option_Camera_Name_Key(lv_obj_t* obj, uint32_t key)
update_Camera_Name_msg(obj); update_Camera_Name_msg(obj);
break; break;
case LV_KEY_ENTER: case LV_KEY_ENTER:
set_menu_changed(1);
lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0)); lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0));
hidde_Camera_Name_page(); hidde_Camera_Name_page();
break; break;

View File

@ -45,6 +45,7 @@ TMDEF_END_PAGES()
TMDEF_EMNU(gSendMenu, SEND, Send_MenuCallback) TMDEF_EMNU(gSendMenu, SEND, Send_MenuCallback)
extern void set_menu_changed(int value);
static lv_style_t gStyleLabel0; static lv_style_t gStyleLabel0;
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
@ -53,6 +54,7 @@ static lv_style_t gStyleLabel0;
int Send_MenuCallback(UINT32 uiMessage, UINT32 uiParam) int Send_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
{ {
UIMenuStoreInfo *puiPara = sf_ui_para_get(); UIMenuStoreInfo *puiPara = sf_ui_para_get();
set_menu_changed(1);
// printf(" ====================================================== \n"); // printf(" ====================================================== \n");
printf("\033[33m[Send_MenuCallback]uiMessage:%d uiParam:%d\033[0m\n", uiMessage, uiParam); printf("\033[33m[Send_MenuCallback]uiMessage:%d uiParam:%d\033[0m\n", uiMessage, uiParam);
UINT16 uwItemId; UINT16 uwItemId;

View File

@ -29,7 +29,10 @@ BOOL PrevSel_Img = false;
#define MENU_LUCK -1 #define MENU_LUCK -1
#define MENU_UNLUCK 0 #define MENU_UNLUCK 0
#define MENU_CLOSED 1 #define MENU_CLOSED 1
#define MENU_HAS_CHANGED 1
#define MENU_HAS_NOT_CHANGED 0
static int gMenuLuck = MENU_CLOSED; static int gMenuLuck = MENU_CLOSED;
static int gMenuChanged = MENU_HAS_NOT_CHANGED;
int is_menu_screen_luck(void) int is_menu_screen_luck(void)
{ {
return gMenuLuck; return gMenuLuck;
@ -38,6 +41,10 @@ lv_obj_t *menu_opened_get(void)
{ {
return menu_item; return menu_item;
} }
void set_menu_changed(int value)
{
gMenuChanged = value;
}
static BOOL sf_is_4g_module_usb_update_file_exist(UINT8 *updateFname) static BOOL sf_is_4g_module_usb_update_file_exist(UINT8 *updateFname)
{ {
DIR *dirp = NULL; DIR *dirp = NULL;
@ -469,6 +476,7 @@ static void LV_MenuItem_OnSelected(lv_obj_t* obj)
SelOption = SysGetFlag(pItem->SysFlag) == SWITCH_OFF ? SWITCH_ON : SWITCH_OFF; SelOption = SysGetFlag(pItem->SysFlag) == SWITCH_OFF ? SWITCH_ON : SWITCH_OFF;
//static int flag = 0; //static int flag = 0;
SysSetFlag(pItem->SysFlag, SelOption); SysSetFlag(pItem->SysFlag, SelOption);
set_menu_changed(MENU_HAS_CHANGED);
pCurMenu = TM_GetTabMenu(pMenu->SelPage); pCurMenu = TM_GetTabMenu(pMenu->SelPage);
TM_MENU_CALLBACK(pCurMenu, TMM_CONFIRM_OPTION, MAKE_LONG(pItem->ItemId, SelOption)); TM_MENU_CALLBACK(pCurMenu, TMM_CONFIRM_OPTION, MAKE_LONG(pItem->ItemId, SelOption));
// TM_MENU_CALLBACK(MenuList[pMenu->SelPage], TMM_CONFIRM_OPTION, MAKE_LONG(pItem->ItemId, SelOption)); // TM_MENU_CALLBACK(MenuList[pMenu->SelPage], TMM_CONFIRM_OPTION, MAKE_LONG(pItem->ItemId, SelOption));
@ -1040,7 +1048,12 @@ static void UIFlowMenuCommonItem_ScrClose(lv_obj_t* obj)
{ {
DBG_DUMP("%s\r\n", __func__); DBG_DUMP("%s\r\n", __func__);
sf_set_keep_alive_time(DEFAULT_GO_TO_WORK_MODE_TIME_S); sf_set_keep_alive_time(DEFAULT_GO_TO_WORK_MODE_TIME_S);
if (MENU_HAS_CHANGED == gMenuChanged)
{
printf(" gui save menu info.\n");
gMenuChanged = MENU_HAS_NOT_CHANGED;
Save_MenuInfo(); Save_MenuInfo();
}
LV_MenuItem_OnClose(obj); LV_MenuItem_OnClose(obj);
gMenuLuck = MENU_CLOSED; gMenuLuck = MENU_CLOSED;
#if HUNTING_CAMERA_MCU == ENABLE #if HUNTING_CAMERA_MCU == ENABLE