1.删除文件功能完成

2.完成设置界面部分功能
This commit is contained in:
zyj 2023-10-23 11:30:35 +08:00
parent 74062bd831
commit 0a4ce6f506
9 changed files with 586 additions and 54 deletions

View File

@ -59,39 +59,69 @@ void ChkKeySoundComm(void)
} }
#if _TODO
static BOOL gbNoFile = TRUE;
static void xUIPlay_Filesys_DelCB(FIND_DATA *pFindData, BOOL *bDelete, UINT32 Param1, UINT32 Param2) static void xUIPlay_Filesys_DelCB(FIND_DATA *pFindData, BOOL *bDelete, UINT32 Param1, UINT32 Param2)
{ {
INT32 fileNum;
UINT32 fileType;
UINT32 filterType = (DCF_GetDBInfo(DCF_INFO_VALID_FILE_FMT) | DCF_GetDBInfo(DCF_INFO_DEP_FILE_FMT));
UINT8 attrib;
attrib = pFindData->attrib;
DBG_IND("FileName = %s\r\n", pFindData->FATMainName);
fileNum = DCF_IsValidFile(pFindData->FATMainName, pFindData->FATExtName, &fileType);
if (!M_IsReadOnly(attrib) && fileNum && (filterType & fileType)) {
*bDelete = TRUE;
} else {
*bDelete = FALSE;
gbNoFile = FALSE;
}
} }
static void xUIPlay_Filesys_LockCB(FIND_DATA *pFindData, BOOL *bApply, UINT32 Param1, UINT32 Param2) static void xUIPlay_Filesys_LockCB(FIND_DATA *pFindData, BOOL *bApply, UINT32 Param1, UINT32 Param2)
{ {
INT32 fileNum;
UINT32 fileType;
UINT32 filterType = (DCF_GetDBInfo(DCF_INFO_VALID_FILE_FMT) | DCF_GetDBInfo(DCF_INFO_DEP_FILE_FMT));
DBG_IND("FileName = %s\r\n", pFindData->FATMainName);
fileNum = DCF_IsValidFile(pFindData->FATMainName, pFindData->FATExtName, &fileType);
if (fileNum && (filterType & fileType)) {
*bApply = TRUE;
} else {
*bApply = FALSE;
}
} }
static void xUIPlay_FList_DCF_DelAll(void) static void xUIPlay_FList_DCF_DelAll(void)
{ {
SDCFDIRINFO dirinfo;
char path[DCF_FULL_FILE_PATH_LEN];
BOOL ret;
UINT32 i, uiMaxDirNum;
uiMaxDirNum = DCF_GetDBInfo(DCF_INFO_MAX_DIR_ID);
for (i = 100; i <= uiMaxDirNum; i++) {
// check if folder has file
ret = DCF_GetDirInfo(i, &dirinfo);
if (ret /*&& dirinfo.uiNumOfDcfObj*/) {
// delete all in one folder
DCF_GetDirPath(i, path);
gbNoFile = TRUE;
FileSys_DelDirFiles(path, xUIPlay_Filesys_DelCB);
// delete empty folder
if (gbNoFile) {
if (FileSys_DeleteDir(path) != FST_STA_OK) {
DBG_ERR("Failed to Delete %s.\r\n", path);
} }
static ER xUIPlay_FList_DCF_DelFile(UINT32 cmdID)
{
return E_OK;
} }
static void xUIPlay_FList_DCF_LockAll(BOOL bLock)
{
} }
}
#endif DCF_Refresh();
}
static ER xUIPlay_FList_FDB_ProtectFile(UINT32 cmdID) static ER xUIPlay_FList_FDB_ProtectFile(UINT32 cmdID)
{ {
FILEDB_HANDLE FileDBHdl = 0; FILEDB_HANDLE FileDBHdl = 0;
@ -156,11 +186,26 @@ FDB_Protect_Err:
DBG_ERR("cmdID=%d\r\n", cmdID); DBG_ERR("cmdID=%d\r\n", cmdID);
return E_OK; return E_OK;
} }
static void xUIPlay_FList_DCF_LockAll(BOOL bLock)
{
SDCFDIRINFO dirinfo = {0};
char path[DCF_FULL_FILE_PATH_LEN] = {0};
UINT32 i, uiMaxDirNum;
uiMaxDirNum = DCF_GetDBInfo(DCF_INFO_MAX_DIR_ID);
for (i = 100; i <= uiMaxDirNum; i++) {
// check if folder has file
if (DCF_GetDirInfo(i, &dirinfo)) {
if (dirinfo.uiNumOfDcfObj) {
DCF_GetDirPath(i, path);
FileSys_LockDirFiles(path, bLock, xUIPlay_Filesys_LockCB);
}
}
}
}
static ER xUIPlay_FList_DCF_ProtectFile(UINT32 cmdID) static ER xUIPlay_FList_DCF_ProtectFile(UINT32 cmdID)
{ {
#if _TODO
char filePath[DCF_FULL_FILE_PATH_LEN]; char filePath[DCF_FULL_FILE_PATH_LEN];
UINT32 index, i, uiThisFileFormat, tmpFileType; UINT32 index, i, uiThisFileFormat, tmpFileType;
BOOL bLock; BOOL bLock;
@ -190,8 +235,7 @@ static ER xUIPlay_FList_DCF_ProtectFile(UINT32 cmdID)
} }
xUIPlay_FList_DCF_LockAll(bLock); xUIPlay_FList_DCF_LockAll(bLock);
} }
#endif //DBG_IND("ProtectTime = %04d ms \r\n", Perf_GetDuration() / 1000);
return E_OK; return E_OK;
} }
@ -314,9 +358,54 @@ static ER xUIPlay_FList_FDB_DelFile(UINT32 cmdID)
return E_SYS; return E_SYS;
} }
static ER xUIPlay_FList_DCF_DelFile(UINT32 cmdID)
{
DBG_IND("cmdID=%d\r\n", cmdID);
if (cmdID == PB_DELETE_ONE) {
//#NT#2016/05/24#Ben Wang -begin
//#NT#Fix the coverity issue.
UINT32 index, uiThisFileFormat, i, tmpFileType;
//#NT#2016/05/24#Ben Wang -end
CHAR filePath[DCF_FULL_FILE_PATH_LEN] = {0};
index = DCF_GetCurIndex();
uiThisFileFormat = DCF_GetDBInfo(DCF_INFO_CUR_FILE_TYPE);
for (i = 0; i <= DCF_FILE_TYPE_NUM; i++) {
tmpFileType = 0x0001 << i;
if (uiThisFileFormat & tmpFileType) {
if (DCF_GetObjPath(index, uiThisFileFormat, filePath)) {
if (FST_STA_OK == FileSys_DeleteFile(filePath)) {
DCF_DelDBfile(filePath);
}
}
}
}
} else if (cmdID == PB_DELETE_ALL) {
char filePath[DCF_FULL_FILE_PATH_LEN];
BOOL ret;
UINT8 attrib = 0;
UINT32 DirID = 0, FileID = 0, Index = 0, uiThisFileFormat = 0;
BOOL isCurrFileReadOnly = FALSE;
Index = DCF_GetDBInfo(DCF_INFO_CUR_INDEX);
DCF_GetObjInfo(Index, &DirID, &FileID, &uiThisFileFormat);
DCF_GetObjPath(Index, uiThisFileFormat, filePath);
ret = FileSys_GetAttrib(filePath, &attrib);
if ((ret == E_OK) && M_IsReadOnly(attrib) == TRUE) {
isCurrFileReadOnly = TRUE;
}
// --------- delete all files -----------------------
xUIPlay_FList_DCF_DelAll();
if (isCurrFileReadOnly) {
Index = DCF_GetIndexByID(DirID, FileID);
DCF_SetCurIndex(Index);
}
DCF_Refresh();
}
return E_OK;
}
void UIPlay_Protect(PLAY_PROTECT_CMD Command) void UIPlay_Protect(PLAY_PROTECT_CMD Command)
{ {
UINT32 useFileDB = 0; UINT32 useFileDB = 0;
@ -333,8 +422,14 @@ void UIPlay_Protect(PLAY_PROTECT_CMD Command)
void UIPlay_Delete(UINT32 Command) void UIPlay_Delete(UINT32 Command)
{ {
UINT32 index = 0; UINT32 index = 0;
UINT32 useFileDB = 0;
useFileDB = UI_GetData(FL_IsUseFileDB);
if (useFileDB) {
xUIPlay_FList_FDB_DelFile(Command); xUIPlay_FList_FDB_DelFile(Command);
}else{
xUIPlay_FList_DCF_DelFile(Command);
}
PB_GetParam(PBPRMID_CURR_FILESEQ, &index); PB_GetParam(PBPRMID_CURR_FILESEQ, &index);

View File

@ -2,6 +2,7 @@
#include "PrjInc.h" #include "PrjInc.h"
#include "UIFlowLVGL/UIFlowMenuCommonItem/TabMenu.h" #include "UIFlowLVGL/UIFlowMenuCommonItem/TabMenu.h"
#include "UIWnd/UIFlow.h" #include "UIWnd/UIFlow.h"
#include "sf_systemMng.h"
TMDEF_BEGIN_OPTIONS(CAMERA_MODE) TMDEF_BEGIN_OPTIONS(CAMERA_MODE)
TMDEF_OPTION_TEXT_S(CAMERA_MODE_PHOTO, TM_OPTION_ENABLE) TMDEF_OPTION_TEXT_S(CAMERA_MODE_PHOTO, TM_OPTION_ENABLE)
@ -99,7 +100,7 @@ int General_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
case IDM_IMAGE_SIZE: case IDM_IMAGE_SIZE:
{ {
puiPara->ImgSize = uwOption; puiPara->ImgSize = uwOption;
printf("\033[33m[General_MenuCallback]set CamMode:%d\033[0m\n", uwOption); printf("\033[33m[General_MenuCallback]set ImgSize:%d\033[0m\n", uwOption);
break; break;
} }
case IDM_VIDEO_SIZE: case IDM_VIDEO_SIZE:
@ -112,12 +113,9 @@ int General_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
puiPara->VideoLenth = uwOption; puiPara->VideoLenth = uwOption;
break; break;
} }
case IDM_NIGHT_MODE:
{
break;
}
case IDM_FLASH_POWER: case IDM_FLASH_POWER:
{ {
puiPara->VideoLenth = uwOption;
break; break;
} }
case IDM_SENSITIVITY: case IDM_SENSITIVITY:
@ -694,3 +692,135 @@ void Option_Operating_Time_Key(lv_obj_t* obj, uint32_t key)
} }
} }
// --------------------------------------------------------------------------
// DateTime
// --------------------------------------------------------------------------
static int DateTimeIndex = 0;
static lv_obj_t* DateTimeMatrixObj = NULL;
static char DateTimeMOBuf[3] = "00";
static char DateTimeDDBuf[3] = "00";
static char DateTimeYYBuf[5] = "0000";
static char DateTimeHHBuf[3] = "00";
static char DateTimeMIBuf[3] = "00";
static char DateTimeSSBuf[3] = "00";
static const char* DateTimeMap[12] =
{
DateTimeMOBuf,
":",
DateTimeDDBuf,
":",
DateTimeYYBuf,
" ",
DateTimeHHBuf,
":",
DateTimeMIBuf,
":",
DateTimeSSBuf,
""
};
static void update_DateTime_Time_msg(lv_obj_t* obj)
{
// UIMenuStoreInfo *puiPara = sf_ui_para_get();
lv_btnmatrix_set_focused_btn(DateTimeMatrixObj, DateTimeIndex);
}
void show_DateTime_page(lv_obj_t* obj)
{
OperatingTimeIndex = 0;
init_Matrix_style();
UIMenuStoreInfo *puiPara = sf_ui_para_get();
SF_PARA_TIME_S tmptime;
if(puiPara->DateAuto == SF_DATE_AUTO)
{
tmptime.Year = 2023;
tmptime.Mon = 1;
tmptime.Day = 1;
tmptime.Hour = 8;
tmptime.Min = 0;
tmptime.Sec = 0;
}
snprintf(DateTimeMOBuf, 3, "%02d", tmptime.Mon);
snprintf(DateTimeDDBuf, 3, "%02d", tmptime.Day);
snprintf(DateTimeYYBuf, 5, "%04d", tmptime.Year);
snprintf(DateTimeHHBuf, 3, "%02d", tmptime.Hour);
snprintf(DateTimeMIBuf, 3, "%02d", tmptime.Min);
snprintf(DateTimeSSBuf, 3, "%02d", tmptime.Sec);
DateTimeMatrixObj = lv_btnmatrix_create(obj, NULL);
lv_obj_set_hidden(DateTimeMatrixObj, false);
lv_obj_set_click(DateTimeMatrixObj, true);
lv_obj_set_drag(DateTimeMatrixObj, false);
lv_obj_set_pos(DateTimeMatrixObj, 25, 58);
lv_obj_set_size(DateTimeMatrixObj, 270, 140);
lv_btnmatrix_set_map(DateTimeMatrixObj, DateTimeMap);
lv_btnmatrix_set_one_check(DateTimeMatrixObj, true);
lv_btnmatrix_set_align(DateTimeMatrixObj, LV_LABEL_ALIGN_CENTER);
lv_btnmatrix_set_focused_btn(DateTimeMatrixObj,0);
lv_btnmatrix_set_one_check(DateTimeMatrixObj, false);
lv_btnmatrix_set_btn_width(DateTimeMatrixObj, 0, 2);
lv_btnmatrix_set_btn_width(DateTimeMatrixObj, 2, 2);
lv_btnmatrix_set_btn_width(DateTimeMatrixObj, 4, 3);
lv_btnmatrix_set_btn_width(DateTimeMatrixObj, 6, 2);
lv_btnmatrix_set_btn_width(DateTimeMatrixObj, 8, 2);
lv_btnmatrix_set_btn_width(DateTimeMatrixObj, 10, 2);
lv_btnmatrix_set_btn_width(DateTimeMatrixObj, 5, 2);
lv_obj_add_style(DateTimeMatrixObj, 0, &gMatrixStylebg);
lv_obj_add_style(DateTimeMatrixObj, 1, &gMatrixStylebtn);
}
void hidde_DateTime_page(void)
{
if(DateTimeMatrixObj)
{
lv_obj_del(DateTimeMatrixObj);
}
}
void Option_DateTime_Key(lv_obj_t* obj, uint32_t key)
{
if(DateTimeMatrixObj == NULL)
{
printf("DateTimeMatrixObj is NULL");
return;
}
// char result[2];
UIMenuStoreInfo *puiPara = sf_ui_para_get();
printf("key:%d\n",key);
switch(key)
{
case LV_USER_KEY_NEXT:
printf("\033[33m[Option_DateTime_Key]s\033[0m\n");
update_DateTime_Time_msg(obj);
break;
case LV_USER_KEY_PREV:
printf("\033[33m[Option_DateTime_Key]w\033[0m\n");
update_DateTime_Time_msg(obj);
break;
case LV_USER_KEY_LEFT:
printf("\033[33m[Option_DateTime_Key]a\033[0m\n");
DateTimeIndex = (DateTimeIndex - 2 + 12) % 12;
update_DateTime_Time_msg(obj);
break;
case LV_USER_KEY_RIGHT:
printf("\033[33m[Option_DateTime_Key]d\033[0m\n");
DateTimeIndex = (DateTimeIndex + 2) % 12;
update_DateTime_Time_msg(obj);
break;
case LV_KEY_ENTER:
printf("\033[33m[Option_DateTime_Key]SELECT\033[0m\n");
puiPara->DateAuto = SF_DATE_MANUAL;
lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0));
hidde_DateTime_page();
break;
default:
break;
}
}

View File

@ -10,9 +10,12 @@ extern void show_Delay_page(lv_obj_t* obj);
extern void hidde_Delay_page(void); extern void hidde_Delay_page(void);
extern void show_Operating_Time_page(lv_obj_t* obj); extern void show_Operating_Time_page(lv_obj_t* obj);
extern void hidde_Operating_Time_page(void); extern void hidde_Operating_Time_page(void);
extern void show_DateTime_page(lv_obj_t* obj);
extern void hidde_DateTime_page(void);
extern void Option_Sensitivity_Key(lv_obj_t* obj, uint32_t key); extern void Option_Sensitivity_Key(lv_obj_t* obj, uint32_t key);
extern void Option_Delay_Key(lv_obj_t* obj, uint32_t key); extern void Option_Delay_Key(lv_obj_t* obj, uint32_t key);
extern void Option_Operating_Time_Key(lv_obj_t* obj, uint32_t key); extern void Option_Operating_Time_Key(lv_obj_t* obj, uint32_t key);
extern void Option_DateTime_Key(lv_obj_t* obj, uint32_t key);
#endif #endif

View File

@ -735,6 +735,8 @@ enum _MENU_IDS {
IDS_BATTERY_TYPE_LITHIUM = LV_PLUGIN_STRING_ID_STRING_LITHIUM, IDS_BATTERY_TYPE_LITHIUM = LV_PLUGIN_STRING_ID_STRING_LITHIUM,
IDS_BATTERY_TYPE_LITH_PACK = LV_PLUGIN_STRING_ID_STRING_LITH_PACK, IDS_BATTERY_TYPE_LITH_PACK = LV_PLUGIN_STRING_ID_STRING_LITH_PACK,
IDS_SD_LOOP = LV_PLUGIN_STRING_ID_STRING_SD_LOOP, IDS_SD_LOOP = LV_PLUGIN_STRING_ID_STRING_SD_LOOP,
IDS_SD_LOOP_OFF = LV_PLUGIN_STRING_ID_STRID_OFF,
IDS_SD_LOOP_ON = LV_PLUGIN_STRING_ID_STRID_ON,
IDS_CAMERA_FW_UPGRADE = LV_PLUGIN_STRING_ID_STRING_CAMERA_FW_UPGRADE, IDS_CAMERA_FW_UPGRADE = LV_PLUGIN_STRING_ID_STRING_CAMERA_FW_UPGRADE,
IDS_MODULE_FW_UPGRADE = LV_PLUGIN_STRING_ID_STRING_MODE_FW_UPGRADE, IDS_MODULE_FW_UPGRADE = LV_PLUGIN_STRING_ID_STRING_MODE_FW_UPGRADE,
IDS_RESET = LV_PLUGIN_STRING_ID_STRING_RESET, IDS_RESET = LV_PLUGIN_STRING_ID_STRING_RESET,

View File

@ -9,6 +9,8 @@ TMDEF_OPTION_TEXT_S(BATTERY_TYPE_LITHIUM, TM_OPTION_ENABLE)
TMDEF_OPTION_TEXT_S(BATTERY_TYPE_LITH_PACK, TM_OPTION_ENABLE) TMDEF_OPTION_TEXT_S(BATTERY_TYPE_LITH_PACK, TM_OPTION_ENABLE)
TMDEF_END_OPTIONS() TMDEF_END_OPTIONS()
TMDEF_BEGIN_OPTIONS(SD_LOOP) TMDEF_BEGIN_OPTIONS(SD_LOOP)
TMDEF_OPTION_TEXT_S(SD_LOOP_OFF, TM_OPTION_ENABLE)
TMDEF_OPTION_TEXT_S(SD_LOOP_ON, TM_OPTION_ENABLE)
TMDEF_OPTION_TEXT_S(END, TM_OPTION_ENABLE) TMDEF_OPTION_TEXT_S(END, TM_OPTION_ENABLE)
TMDEF_END_OPTIONS() TMDEF_END_OPTIONS()
TMDEF_BEGIN_OPTIONS(CAMERA_FW_UPGRADE) TMDEF_BEGIN_OPTIONS(CAMERA_FW_UPGRADE)
@ -43,5 +45,33 @@ TMDEF_EMNU(gMoreMenu, MORE, More_MenuCallback)
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
int More_MenuCallback(UINT32 uiMessage, UINT32 uiParam) int More_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
{ {
UIMenuStoreInfo *puiPara = sf_ui_para_get();
// printf(" ====================================================== \n");
printf("\033[33m[More_MenuCallback]uiMessage:%d uiParam:%d\033[0m\n", uiMessage, uiParam);
UINT16 uwItemId;
UINT16 uwOption;
if (uiMessage == TMM_CONFIRM_OPTION)
{
uwItemId = LO_WORD(uiParam);
uwOption = HI_WORD(uiParam);
switch (uwItemId)
{
case IDM_BATTERY_TYPE:
{
puiPara->BatteryType = uwOption;
printf("\033[33m[Send_MenuCallback]BatteryType:%d\033[0m\n", puiPara->BatteryType);
break;
}
case IDM_SD_LOOP:
{
puiPara->SdLoopSwitch = uwOption;
printf("\033[33m[Send_MenuCallback]SdLoopSwitch:%d\033[0m\n", puiPara->SdLoopSwitch);
break;
}
default:
break;
}
}
return TMF_PROCESSED; return TMF_PROCESSED;
} }

View File

@ -323,7 +323,7 @@ static void update_Camera_Info_msg(lv_obj_t* obj)
} }
break; break;
case 5: case 5:
sprintf(tmpStr, "MOD:\n"); sprintf(tmpStr, "MOD:%s\n", puiPara->ModuleVer);
strcat(CamInfoStr, tmpStr); strcat(CamInfoStr, tmpStr);
break; break;
default: default:
@ -355,7 +355,7 @@ static void update_Camera_Info_msg(lv_obj_t* obj)
strcat(CamInfoStr, tmpStr); strcat(CamInfoStr, tmpStr);
break; break;
case 4: case 4:
sprintf(tmpStr, "BLE:\n"); sprintf(tmpStr, "BLE:%s\n", puiPara->BluSsid);
strcat(CamInfoStr, tmpStr); strcat(CamInfoStr, tmpStr);
default: default:
break; break;

View File

@ -51,11 +51,11 @@ int Send_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
// 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;
// UINT16 uwOption; UINT16 uwOption;
if (uiMessage == TMM_CONFIRM_OPTION) if (uiMessage == TMM_CONFIRM_OPTION)
{ {
uwItemId = LO_WORD(uiParam); uwItemId = LO_WORD(uiParam);
// uwOption = HI_WORD(uiParam); uwOption = HI_WORD(uiParam);
switch (uwItemId) switch (uwItemId)
{ {
case IDM_MAX_NUM_DAY: case IDM_MAX_NUM_DAY:
@ -65,7 +65,8 @@ int Send_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
} }
case IDM_SETTINGS_CHECK: case IDM_SETTINGS_CHECK:
{ {
// printf("\033[33m[Send_MenuCallback]SendMaxNum:%d\033[0m\n", puiPara->SendMaxNum); puiPara->GprsMode = uwOption;
printf("\033[33m[Send_MenuCallback]GprsMode:%d\033[0m\n", puiPara->GprsMode);
break; break;
} }
case IDM_SEND_TYPE: case IDM_SEND_TYPE:
@ -80,6 +81,7 @@ int Send_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
} }
case IDM_GPS: case IDM_GPS:
{ {
puiPara->GpsSendFlag = uwOption;
printf("\033[33m[Send_MenuCallback]GpsSendFlag:%d\033[0m\n", puiPara->GpsSendFlag); printf("\033[33m[Send_MenuCallback]GpsSendFlag:%d\033[0m\n", puiPara->GpsSendFlag);
break; break;
} }
@ -92,3 +94,214 @@ int Send_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
} }
return TMF_PROCESSED; return TMF_PROCESSED;
} }
// --------------------------------------------------------------------------
// Common Function
// --------------------------------------------------------------------------
static lv_style_t gMatrixStylebg;
static lv_style_t gMatrixStylebtn;
static void init_Matrix_style(void)
{
static int isinitialized = 0;
if(isinitialized)
return;
lv_color_t color = {0};
lv_style_init(&gMatrixStylebg);
lv_style_set_pad_top(&gMatrixStylebg,LV_STATE_DEFAULT,0);
lv_style_set_pad_bottom(&gMatrixStylebg,LV_STATE_DEFAULT,0);
lv_style_set_pad_left(&gMatrixStylebg,LV_STATE_DEFAULT,0);
lv_style_set_pad_right(&gMatrixStylebg,LV_STATE_DEFAULT,0);
lv_style_set_pad_inner(&gMatrixStylebg,LV_STATE_DEFAULT,0);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_DISABLED, color);
lv_style_init(&gMatrixStylebtn);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
lv_style_set_value_font(&gMatrixStylebtn,LV_STATE_DEFAULT,&sf_ui_text_bold_20_8bpp);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
lv_style_set_text_font(&gMatrixStylebtn,LV_STATE_DEFAULT,&sf_ui_text_bold_20_8bpp);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0xc8, 0x00, 0x00, 0x00) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
isinitialized = 1;
}
// --------------------------------------------------------------------------
// MaxNum
// --------------------------------------------------------------------------
static lv_obj_t *MaxNumTitleLabel = NULL;
static lv_obj_t *MaxNumValueLabel = NULL;
void show_MaxNum_page(lv_obj_t* obj)
{
init_Matrix_style();
UIMenuStoreInfo *puiPara = sf_ui_para_get();
if(!puiPara->SendMaxNum)
{
puiPara->SendMaxNum = 1;
}
MaxNumTitleLabel = lv_label_create(obj, NULL);
lv_obj_set_pos(MaxNumTitleLabel, 133, 159);
lv_obj_set_size(MaxNumTitleLabel, 54, 24);
lv_obj_add_style(MaxNumTitleLabel, 0, &gMatrixStylebtn);
lv_obj_set_state(MaxNumTitleLabel, LV_STATE_DEFAULT);
lv_label_set_text(MaxNumTitleLabel, "01-99");
char result[3];
sprintf(result, "%02d", puiPara->SendMaxNum);
MaxNumValueLabel = lv_label_create(obj, NULL);
lv_obj_set_pos(MaxNumValueLabel, 145, 93);
lv_obj_set_size(MaxNumValueLabel, 30, 24);
lv_obj_add_style(MaxNumValueLabel, 0, &gMatrixStylebtn);
lv_obj_set_state(MaxNumValueLabel, LV_STATE_DEFAULT);
lv_label_set_text(MaxNumValueLabel, result);
}
void hidde_MaxNum_page(void)
{
if(MaxNumTitleLabel)
{
lv_obj_del(MaxNumTitleLabel);
}
if(MaxNumValueLabel)
{
lv_obj_del(MaxNumValueLabel);
}
}
void Option_MaxNum_Key(lv_obj_t* obj, uint32_t key)
{
if(MaxNumTitleLabel == NULL || MaxNumValueLabel == NULL)
{
printf("MaxNum is NULL");
return;
}
char result[3];
UIMenuStoreInfo *puiPara = sf_ui_para_get();
printf("key:%d\n",key);
switch(key)
{
case LV_USER_KEY_NEXT:
printf("\033[33m[Option_MaxNum_Key]s\033[0m\n");
if(puiPara->SendMaxNum > 1 && puiPara->SendMaxNum <= 99)
puiPara->SendMaxNum--;
else
puiPara->SendMaxNum = 99;
sprintf(result, "%d", puiPara->SendMaxNum);
lv_label_set_text(MaxNumValueLabel, result);
break;
case LV_USER_KEY_PREV:
printf("\033[33m[Option_MaxNum_Key]w\033[0m\n");
if(puiPara->SendMaxNum >= 1 && puiPara->SendMaxNum < 99)
puiPara->SendMaxNum++;
else
puiPara->SendMaxNum = 1;
sprintf(result, "%d", puiPara->SendMaxNum);
lv_label_set_text(MaxNumValueLabel, result);
break;
case LV_USER_KEY_LEFT:
printf("\033[33m[Option_MaxNum_Key]a\033[0m\n");
break;
case LV_USER_KEY_RIGHT:
printf("\033[33m[Option_MaxNum_Key]d\033[0m\n");
break;
case LV_KEY_ENTER:
printf("\033[33m[Option_MaxNum_Key]SELECT\033[0m\n");
lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0));
hidde_MaxNum_page();
break;
default:
break;
}
}

View File

@ -4,4 +4,9 @@
extern TM_MENU gSendMenu; extern TM_MENU gSendMenu;
extern TM_ITEM gTM_ITEMS_SEND[]; extern TM_ITEM gTM_ITEMS_SEND[];
extern void show_MaxNum_page(lv_obj_t* obj);
extern void hidde_MaxNum_page(void);
extern void Option_MaxNum_Key(lv_obj_t* obj, uint32_t key);
#endif #endif

View File

@ -141,20 +141,21 @@ static int is_message_item(lv_obj_t* obj)
return MESSAGE_ITEM_FALSE; return MESSAGE_ITEM_FALSE;
} }
case IDM_OPERATING_TIME: case IDM_OPERATING_TIME:
{ break;
printf("[is_message_item]IDM_OPERATING_TIME\n");
return MESSAGE_ITEM_FALSE;
}
case IDM_FORMAT_SD: case IDM_FORMAT_SD:
{ {
printf("[is_message_item]IDM_FORMAT_SD\n"); printf("[is_message_item]IDM_FORMAT_SD\n");
return MESSAGE_ITEM_TRUE; return MESSAGE_ITEM_TRUE;
} }
case IDM_DATE_AND_TIME: case IDM_DATE_AND_TIME:
{ break;
printf("[is_message_item]IDM_DATE_AND_TIME\n");
return MESSAGE_ITEM_FALSE; case IDM_MAX_NUM_DAY:
} case IDM_SETTINGS_CHECK:
case IDM_SEND_TYPE:
case IDM_CHECK_IN_PHOTO:
case IDM_GPS:
break;
default: default:
break; break;
} }
@ -196,7 +197,7 @@ static void LV_MenuCommonOption_UpdateContent(TM_MENU *pMenu)
TM_ITEM *pItem; TM_ITEM *pItem;
TM_OPTION *pOption; TM_OPTION *pOption;
UINT32 i; UINT32 i;
UINT16 startIndex = 0; // UINT16 startIndex = 0;
UINT16 itemIndex = 0; UINT16 itemIndex = 0;
#if 1 #if 1
UINT16 SelOption = 0; UINT16 SelOption = 0;
@ -288,14 +289,14 @@ static void LV_MenuCommonOption_UpdateContent(TM_MENU *pMenu)
//find startIndex // //find startIndex
TM_FindStartIndex(pMenu, pItem->Count, &startIndex); // TM_FindStartIndex(pMenu, pItem->Count, &startIndex);
DBG_DUMP("%s startIndex=%d\r\n", __func__,startIndex); // DBG_DUMP("%s startIndex=%d\r\n", __func__,startIndex);
//draw item form startIndex
itemIndex = startIndex;
// //draw item form startIndex
// itemIndex = startIndex;
itemIndex = 0;
#if 1 #if 1
for (i = 0; i < pItem->Count; i++) { for (i = 0; i < pItem->Count; i++) {
DBG_DUMP("%s enableIndex=%d :%d\r\n", __func__,i,enableIndex[i]); DBG_DUMP("%s enableIndex=%d :%d\r\n", __func__,i,enableIndex[i]);
@ -563,8 +564,12 @@ static void LV_MenuOption_OnSelected(lv_obj_t* obj)
if((pItem->ItemId == IDM_PASSWORD || if((pItem->ItemId == IDM_PASSWORD ||
pItem->ItemId == IDM_CAMERA_NAME || pItem->ItemId == IDM_CAMERA_NAME ||
pItem->ItemId == IDM_DELAY || pItem->ItemId == IDM_DELAY ||
pItem->ItemId == IDM_OPERATING_TIME) pItem->ItemId == IDM_OPERATING_TIME ||
&& pOption->TextId == IDS_CAMERA_NAME_ON) pItem->ItemId == IDM_DATE_AND_TIME ||
pItem->ItemId == IDM_MAX_NUM_DAY)
&& (pOption->TextId == IDS_CAMERA_NAME_ON ||
pOption->TextId == IDS_DATE_AND_TIME_MANUAL ||
pOption->TextId == IDS_MAX_NUM_DAY_NUMBER))
{ {
lv_obj_set_hidden(container_main_menu_scr_uiflowmenucommonoption, true); lv_obj_set_hidden(container_main_menu_scr_uiflowmenucommonoption, true);
isSetting = 1; isSetting = 1;
@ -582,6 +587,11 @@ static void LV_MenuOption_OnSelected(lv_obj_t* obj)
case IDM_OPERATING_TIME: case IDM_OPERATING_TIME:
show_Operating_Time_page(obj); show_Operating_Time_page(obj);
break; break;
case IDM_DATE_AND_TIME:
show_DateTime_page(obj);
break;
case IDM_MAX_NUM_DAY:
show_MaxNum_page(obj);
default: default:
break; break;
} }
@ -837,6 +847,50 @@ void UIFlowMenuCommonOptionEventCallback(lv_obj_t* obj, lv_event_t event)
break; break;
case IDM_FORMAT_SD: case IDM_FORMAT_SD:
case IDM_DATE_AND_TIME: case IDM_DATE_AND_TIME:
if(isSetting)
{
Option_DateTime_Key(obj, *key);
}
else
{
UIFlowMenuCommonOption_Key(obj, *key);
}
break;
case IDM_MAX_NUM_DAY:
if(isSetting)
{
Option_MaxNum_Key(obj, *key);
}
else
{
UIFlowMenuCommonOption_Key(obj, *key);
}
break;
case IDM_SETTINGS_CHECK:
UIFlowMenuCommonOption_Key(obj, *key);
break;
case IDM_SEND_TYPE:
if(isSetting)
{
// Option_Operating_Time_Key(obj, *key);
}
else
{
UIFlowMenuCommonOption_Key(obj, *key);
}
break;
case IDM_CHECK_IN_PHOTO:
case IDM_GPS:
UIFlowMenuCommonOption_Key(obj, *key);
break;
case IDM_BATTERY_TYPE:
case IDM_SD_LOOP:
case IDM_CAMERA_FW_UPGRADE:
case IDM_MODULE_FW_UPGRADE:
case IDM_RESET:
UIFlowMenuCommonOption_Key(obj, *key);
break; break;
default: default:
break; break;