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_EMNU(gGeneralMenu, GENERAL, General_MenuCallback)
extern void set_menu_changed(int value);
// --------------------------------------------------------------------------
// Menu Callback
// --------------------------------------------------------------------------
int General_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
{
UIMenuStoreInfo *puiPara = sf_ui_para_get();
set_menu_changed(1);
// printf(" ====================================================== \n");
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_EMNU(gMoreMenu, MORE, More_MenuCallback)
extern void set_menu_changed(int value);
// --------------------------------------------------------------------------
// Menu Callback
// --------------------------------------------------------------------------
@ -58,12 +59,14 @@ int More_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
case IDM_BATTERY_TYPE:
{
puiPara->BatteryType = uwOption;
set_menu_changed(1);
printf("\033[33m[Send_MenuCallback]BatteryType:%d\033[0m\n", puiPara->BatteryType);
break;
}
case IDM_SD_LOOP:
{
puiPara->SdLoopSwitch = uwOption;
set_menu_changed(1);
printf("\033[33m[Send_MenuCallback]SdLoopSwitch:%d\033[0m\n", puiPara->SdLoopSwitch);
break;
}

View File

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

View File

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

View File

@ -29,7 +29,10 @@ BOOL PrevSel_Img = false;
#define MENU_LUCK -1
#define MENU_UNLUCK 0
#define MENU_CLOSED 1
#define MENU_HAS_CHANGED 1
#define MENU_HAS_NOT_CHANGED 0
static int gMenuLuck = MENU_CLOSED;
static int gMenuChanged = MENU_HAS_NOT_CHANGED;
int is_menu_screen_luck(void)
{
return gMenuLuck;
@ -38,6 +41,10 @@ lv_obj_t *menu_opened_get(void)
{
return menu_item;
}
void set_menu_changed(int value)
{
gMenuChanged = value;
}
static BOOL sf_is_4g_module_usb_update_file_exist(UINT8 *updateFname)
{
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;
//static int flag = 0;
SysSetFlag(pItem->SysFlag, SelOption);
set_menu_changed(MENU_HAS_CHANGED);
pCurMenu = TM_GetTabMenu(pMenu->SelPage);
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));
@ -1040,7 +1048,12 @@ static void UIFlowMenuCommonItem_ScrClose(lv_obj_t* obj)
{
DBG_DUMP("%s\r\n", __func__);
sf_set_keep_alive_time(DEFAULT_GO_TO_WORK_MODE_TIME_S);
Save_MenuInfo();
if (MENU_HAS_CHANGED == gMenuChanged)
{
printf(" gui save menu info.\n");
gMenuChanged = MENU_HAS_NOT_CHANGED;
Save_MenuInfo();
}
LV_MenuItem_OnClose(obj);
gMenuLuck = MENU_CLOSED;
#if HUNTING_CAMERA_MCU == ENABLE