Merge branch 'Branch_S550_GUI' of gitlab.sifar.tech:linux-em-group/s530-ntk into branch_s550_fast_gui

This commit is contained in:
xiaojiazhu 2023-10-23 14:36:06 +08:00
commit 510b11920d
9 changed files with 1275 additions and 283 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)
{
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)
{
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)
{
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);
}
}
}
}
DCF_Refresh();
}
static ER xUIPlay_FList_DCF_DelFile(UINT32 cmdID)
{
return E_OK;
}
static void xUIPlay_FList_DCF_LockAll(BOOL bLock)
{
}
#endif
static ER xUIPlay_FList_FDB_ProtectFile(UINT32 cmdID)
{
FILEDB_HANDLE FileDBHdl = 0;
@ -156,11 +186,26 @@ FDB_Protect_Err:
DBG_ERR("cmdID=%d\r\n", cmdID);
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)
{
#if _TODO
char filePath[DCF_FULL_FILE_PATH_LEN];
UINT32 index, i, uiThisFileFormat, tmpFileType;
BOOL bLock;
@ -190,8 +235,7 @@ static ER xUIPlay_FList_DCF_ProtectFile(UINT32 cmdID)
}
xUIPlay_FList_DCF_LockAll(bLock);
}
#endif
//DBG_IND("ProtectTime = %04d ms \r\n", Perf_GetDuration() / 1000);
return E_OK;
}
@ -314,9 +358,54 @@ static ER xUIPlay_FList_FDB_DelFile(UINT32 cmdID)
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)
{
UINT32 useFileDB = 0;
@ -333,8 +422,14 @@ void UIPlay_Protect(PLAY_PROTECT_CMD Command)
void UIPlay_Delete(UINT32 Command)
{
UINT32 index = 0;
xUIPlay_FList_FDB_DelFile(Command);
UINT32 useFileDB = 0;
useFileDB = UI_GetData(FL_IsUseFileDB);
if (useFileDB) {
xUIPlay_FList_FDB_DelFile(Command);
}else{
xUIPlay_FList_DCF_DelFile(Command);
}
PB_GetParam(PBPRMID_CURR_FILESEQ, &index);

View File

@ -2,6 +2,7 @@
#include "PrjInc.h"
#include "UIFlowLVGL/UIFlowMenuCommonItem/TabMenu.h"
#include "UIWnd/UIFlow.h"
#include "sf_systemMng.h"
TMDEF_BEGIN_OPTIONS(CAMERA_MODE)
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:
{
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;
}
case IDM_VIDEO_SIZE:
@ -112,12 +113,9 @@ int General_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
puiPara->VideoLenth = uwOption;
break;
}
case IDM_NIGHT_MODE:
{
break;
}
case IDM_FLASH_POWER:
{
puiPara->VideoLenth = uwOption;
break;
}
case IDM_SENSITIVITY:
@ -150,119 +148,122 @@ int General_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
return TMF_PROCESSED;
}
// static lv_style_t gMatrixStylebg;
// static lv_style_t gMatrixStylebtn;
// static void _init_Matrix_style()
// {
// static int isinitialized = 0;
// if(initialized)
// break;
// --------------------------------------------------------------------------
// 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_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(0x02, 0xff, 0xff, 0xff) ; 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);
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;
// }
isinitialized = 1;
}
// --------------------------------------------------------------------------
// Sensitivity
@ -362,29 +363,464 @@ void Option_Sensitivity_Key(lv_obj_t* obj, uint32_t key)
// --------------------------------------------------------------------------
// Delay
// --------------------------------------------------------------------------
static int DelayIndex = 0;
static lv_obj_t* DelayMatrixObj = NULL;
static char DelayHHBuf[3] = "00";
static char DelayMMBuf[3] = "00";
static char DelaySSBuf[3] = "00";
static const char* DelayMap[6] =
{
DelayHHBuf,
":",
DelayMMBuf,
":",
DelaySSBuf,
""
};
static void update_Delay_msg(lv_obj_t* obj)
{
UIMenuStoreInfo *puiPara = sf_ui_para_get();
snprintf(DelayHHBuf, 3, "%02d", puiPara->PirDelayTime.Hour);
snprintf(DelayMMBuf, 3, "%02d", puiPara->PirDelayTime.Min);
snprintf(DelaySSBuf, 3, "%02d", puiPara->PirDelayTime.Sec);
lv_btnmatrix_set_focused_btn(DelayMatrixObj, DelayIndex);
}
void show_Delay_page(lv_obj_t* obj)
{
// lv_obj_t *button_matrix_1 = lv_btnmatrix_create(parent, NULL);
// lv_obj_set_hidden(button_matrix_1, false);
// lv_obj_set_click(button_matrix_1, true);
// lv_obj_set_drag(button_matrix_1, false);
// lv_obj_set_pos(button_matrix_1, 21, 58);
// lv_obj_set_size(button_matrix_1, 272, 140);
// static const char* button_matrix_1_LVGLPropertyBtnmatrixButtonsText[] = {"Btn1","Btn2","Btn3",""," "," "," ","1",""};
// lv_btnmatrix_set_map(button_matrix_1, button_matrix_1_LVGLPropertyBtnmatrixButtonsText);
// lv_btnmatrix_set_one_check(button_matrix_1, false);
// lv_btnmatrix_set_focused_btn(button_matrix_1,1);
// lv_btnmatrix_set_one_check(button_matrix_1, false);
// lv_obj_add_style(button_matrix_1, 0, &button_matrix_1_s0);
// lv_obj_add_style(button_matrix_1, 1, &button_matrix_1_s1);
DelayIndex = 0;
init_Matrix_style();
UIMenuStoreInfo *puiPara = sf_ui_para_get();
if(!puiPara->PirDelaySwitch)
{
puiPara->PirDelayTime.Hour = 0;
puiPara->PirDelayTime.Min = 0;
puiPara->PirDelayTime.Sec = 30;
}
snprintf(DelayHHBuf, 3, "%02d", puiPara->PirDelayTime.Hour);
snprintf(DelayMMBuf, 3, "%02d", puiPara->PirDelayTime.Min);
snprintf(DelaySSBuf, 3, "%02d", puiPara->PirDelayTime.Sec);
DelayMatrixObj = lv_btnmatrix_create(obj, NULL);
lv_obj_set_hidden(DelayMatrixObj, false);
lv_obj_set_click(DelayMatrixObj, true);
lv_obj_set_drag(DelayMatrixObj, false);
lv_obj_set_pos(DelayMatrixObj, 92, 58);
lv_obj_set_size(DelayMatrixObj, 136, 140);
lv_btnmatrix_set_map(DelayMatrixObj, DelayMap);
lv_btnmatrix_set_one_check(DelayMatrixObj, true);
lv_btnmatrix_set_align(DelayMatrixObj, LV_LABEL_ALIGN_CENTER);
lv_btnmatrix_set_focused_btn(DelayMatrixObj,0);
lv_btnmatrix_set_one_check(DelayMatrixObj, false);
lv_obj_add_style(DelayMatrixObj, 0, &gMatrixStylebg);
lv_obj_add_style(DelayMatrixObj, 1, &gMatrixStylebtn);
}
void hidde_Delay_page(void)
{
if(DelayMatrixObj)
{
lv_obj_del(DelayMatrixObj);
}
}
void Option_Delay_Key(lv_obj_t* obj, uint32_t key)
{
if(DelayMatrixObj == NULL)
{
printf("DelayMatrixObj 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_Sensitivity_Key]s\033[0m\n");
if(DelayIndex == 0)
{
if(puiPara->PirDelayTime.Hour > 0 && puiPara->PirDelayTime.Hour <= 23)
puiPara->PirDelayTime.Hour--;
else
puiPara->PirDelayTime.Hour = 23;
}
else if(DelayIndex == 2)
{
if(puiPara->PirDelayTime.Min > 0 && puiPara->PirDelayTime.Min <= 59)
puiPara->PirDelayTime.Min--;
else
puiPara->PirDelayTime.Min = 59;
}
else if(DelayIndex == 4)
{
if(puiPara->PirDelayTime.Sec > 0 && puiPara->PirDelayTime.Sec <= 59)
puiPara->PirDelayTime.Sec--;
else
puiPara->PirDelayTime.Sec = 59;
}
if(puiPara->PirDelayTime.Min == 0 && (puiPara->PirDelayTime.Sec >= 0 && puiPara->PirDelayTime.Sec < 5))
puiPara->PirDelayTime.Sec = 59;
update_Delay_msg(obj);
break;
case LV_USER_KEY_PREV:
printf("\033[33m[Option_Sensitivity_Key]w\033[0m\n");
if(DelayIndex == 0)
{
if(puiPara->PirDelayTime.Hour >= 23)
puiPara->PirDelayTime.Hour = 0;
else
puiPara->PirDelayTime.Hour++;
}
else if(DelayIndex == 2)
{
if(puiPara->PirDelayTime.Min >= 59)
puiPara->PirDelayTime.Min = 0;
else
puiPara->PirDelayTime.Min++;
}
else if(DelayIndex == 4)
{
if(puiPara->PirDelayTime.Sec == 59)
puiPara->PirDelayTime.Sec = 0;
else
puiPara->PirDelayTime.Sec++;
}
if(puiPara->PirDelayTime.Min == 0 && (puiPara->PirDelayTime.Sec >= 0 && puiPara->PirDelayTime.Sec < 5))
puiPara->PirDelayTime.Sec = 5;
update_Delay_msg(obj);
break;
case LV_USER_KEY_LEFT:
printf("\033[33m[Option_Sensitivity_Key]a\033[0m\n");
DelayIndex = (DelayIndex - 2 + 6) % 6;
update_Delay_msg(obj);
break;
case LV_USER_KEY_RIGHT:
printf("\033[33m[Option_Sensitivity_Key]d\033[0m\n");
DelayIndex = (DelayIndex + 2) % 6;
update_Delay_msg(obj);
break;
case LV_KEY_ENTER:
printf("\033[33m[Option_Sensitivity_Key]SELECT\033[0m\n");
puiPara->PirDelaySwitch = 1;
lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0));
hidde_Delay_page();
break;
default:
break;
}
}
// --------------------------------------------------------------------------
// Operating Time
// --------------------------------------------------------------------------
static int OperatingTimeIndex = 0;
static lv_obj_t* OperatingTimeMatrixObj = NULL;
static char OperatingTimeHHBuf1[3] = "00";
static char OperatingTimeMMBuf1[3] = "00";
static char OperatingTimeHHBuf2[3] = "00";
static char OperatingTimeMMBuf2[3] = "00";
static const char* OperatingTimeMap[8] =
{
OperatingTimeHHBuf1,
":",
OperatingTimeMMBuf1,
" ",
OperatingTimeHHBuf2,
":",
OperatingTimeMMBuf2,
""
};
static void update_Operating_Time_msg(lv_obj_t* obj)
{
UIMenuStoreInfo *puiPara = sf_ui_para_get();
snprintf(OperatingTimeHHBuf1, 3, "%02d", puiPara->WorkTime[0].StartTime.Hour);
snprintf(OperatingTimeMMBuf1, 3, "%02d", puiPara->WorkTime[0].StartTime.Min);
snprintf(OperatingTimeHHBuf2, 3, "%02d", puiPara->WorkTime[0].StopTime.Hour);
snprintf(OperatingTimeMMBuf2, 3, "%02d", puiPara->WorkTime[0].StopTime.Min);
lv_btnmatrix_set_focused_btn(OperatingTimeMatrixObj, OperatingTimeIndex);
}
void show_Operating_Time_page(lv_obj_t* obj)
{
OperatingTimeIndex = 0;
init_Matrix_style();
UIMenuStoreInfo *puiPara = sf_ui_para_get();
if(!puiPara->WorkTime1Switch)
{
puiPara->WorkTime[0].StartTime.Hour = 0;
puiPara->WorkTime[0].StartTime.Min = 0;
puiPara->WorkTime[0].StopTime.Hour = 0;
puiPara->WorkTime[0].StopTime.Min = 0;
}
snprintf(OperatingTimeHHBuf1, 3, "%02d", puiPara->WorkTime[0].StartTime.Hour);
snprintf(OperatingTimeMMBuf1, 3, "%02d", puiPara->WorkTime[0].StartTime.Min);
snprintf(OperatingTimeHHBuf2, 3, "%02d", puiPara->WorkTime[0].StopTime.Hour);
snprintf(OperatingTimeMMBuf2, 3, "%02d", puiPara->WorkTime[0].StopTime.Min);
OperatingTimeMatrixObj = lv_btnmatrix_create(obj, NULL);
lv_obj_set_hidden(OperatingTimeMatrixObj, false);
lv_obj_set_click(OperatingTimeMatrixObj, true);
lv_obj_set_drag(OperatingTimeMatrixObj, false);
lv_obj_set_pos(OperatingTimeMatrixObj, 65, 58);
lv_obj_set_size(OperatingTimeMatrixObj, 190, 140);
lv_btnmatrix_set_map(OperatingTimeMatrixObj, OperatingTimeMap);
lv_btnmatrix_set_one_check(OperatingTimeMatrixObj, true);
lv_btnmatrix_set_align(OperatingTimeMatrixObj, LV_LABEL_ALIGN_CENTER);
lv_btnmatrix_set_focused_btn(OperatingTimeMatrixObj,0);
lv_btnmatrix_set_one_check(OperatingTimeMatrixObj, false);
lv_obj_add_style(OperatingTimeMatrixObj, 0, &gMatrixStylebg);
lv_obj_add_style(OperatingTimeMatrixObj, 1, &gMatrixStylebtn);
}
void hidde_Operating_Time_page(void)
{
if(OperatingTimeMatrixObj)
{
lv_obj_del(OperatingTimeMatrixObj);
}
}
void Option_Operating_Time_Key(lv_obj_t* obj, uint32_t key)
{
if(OperatingTimeMatrixObj == NULL)
{
printf("OperatingTimeMatrixObj 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_Operating_Time_Key]s\033[0m\n");
if(OperatingTimeIndex == 0)
{
if(puiPara->WorkTime[0].StartTime.Hour > 0 && puiPara->WorkTime[0].StartTime.Hour <= 23)
puiPara->WorkTime[0].StartTime.Hour--;
else
puiPara->WorkTime[0].StartTime.Hour = 23;
}
else if(OperatingTimeIndex == 2)
{
if(puiPara->WorkTime[0].StartTime.Min > 0 && puiPara->WorkTime[0].StartTime.Min <= 59)
puiPara->WorkTime[0].StartTime.Min--;
else
puiPara->WorkTime[0].StartTime.Min = 59;
}
else if(OperatingTimeIndex == 4)
{
if(puiPara->WorkTime[0].StopTime.Hour > 0 && puiPara->WorkTime[0].StopTime.Hour <= 23)
puiPara->WorkTime[0].StopTime.Hour--;
else
puiPara->WorkTime[0].StopTime.Hour = 23;
}
else if(OperatingTimeIndex == 6)
{
if(puiPara->WorkTime[0].StopTime.Min > 0 && puiPara->WorkTime[0].StopTime.Min <= 59)
puiPara->WorkTime[0].StopTime.Min--;
else
puiPara->WorkTime[0].StopTime.Min = 59;
}
update_Operating_Time_msg(obj);
break;
case LV_USER_KEY_PREV:
printf("\033[33m[Option_Operating_Time_Key]w\033[0m\n");
if(OperatingTimeIndex == 0)
{
if(puiPara->WorkTime[0].StartTime.Hour >= 23)
puiPara->WorkTime[0].StartTime.Hour = 0;
else
puiPara->WorkTime[0].StartTime.Hour++;
}
else if(OperatingTimeIndex == 2)
{
if(puiPara->WorkTime[0].StartTime.Min >= 59)
puiPara->WorkTime[0].StartTime.Min = 0;
else
puiPara->WorkTime[0].StartTime.Min++;
}
else if(OperatingTimeIndex == 4)
{
if(puiPara->WorkTime[0].StopTime.Hour >= 23)
puiPara->WorkTime[0].StopTime.Hour = 0;
else
puiPara->WorkTime[0].StopTime.Hour++;
}
else if(OperatingTimeIndex == 6)
{
if(puiPara->WorkTime[0].StopTime.Min >= 59)
puiPara->WorkTime[0].StopTime.Min = 0;
else
puiPara->WorkTime[0].StopTime.Min++;
}
update_Operating_Time_msg(obj);
break;
case LV_USER_KEY_LEFT:
printf("\033[33m[Option_Operating_Time_Key]a\033[0m\n");
OperatingTimeIndex = (OperatingTimeIndex - 2 + 8) % 8;
update_Operating_Time_msg(obj);
break;
case LV_USER_KEY_RIGHT:
printf("\033[33m[Option_Operating_Time_Key]d\033[0m\n");
OperatingTimeIndex = (OperatingTimeIndex + 2) % 8;
update_Operating_Time_msg(obj);
break;
case LV_KEY_ENTER:
printf("\033[33m[Option_Operating_Time_Key]SELECT\033[0m\n");
puiPara->WorkTime1Switch = 1;
lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0));
hidde_Operating_Time_page();
break;
default:
break;
}
}
// --------------------------------------------------------------------------
// 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

@ -8,8 +8,14 @@ extern void show_Sensitivity_page(lv_obj_t* obj);
extern void hidde_Sensitivity_page(void);
extern void show_Delay_page(lv_obj_t* obj);
extern void hidde_Delay_page(void);
extern void show_Operating_Time_page(lv_obj_t* obj);
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_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_DateTime_Key(lv_obj_t* obj, uint32_t key);
#endif

View File

@ -735,6 +735,8 @@ enum _MENU_IDS {
IDS_BATTERY_TYPE_LITHIUM = LV_PLUGIN_STRING_ID_STRING_LITHIUM,
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_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_MODULE_FW_UPGRADE = LV_PLUGIN_STRING_ID_STRING_MODE_FW_UPGRADE,
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_END_OPTIONS()
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_END_OPTIONS()
TMDEF_BEGIN_OPTIONS(CAMERA_FW_UPGRADE)
@ -43,5 +45,33 @@ TMDEF_EMNU(gMoreMenu, MORE, More_MenuCallback)
// --------------------------------------------------------------------------
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;
}

View File

@ -81,6 +81,126 @@ int Qr_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
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;
}
// --------------------------------------------------------------------------
// QR CODE
// --------------------------------------------------------------------------
char *qr_code_str = "{\"imei\":\"%s\",\"verizonICCID\":\"%s\",\"attICCID\":\"%s\",\"isEsim\":%s}";
static lv_obj_t *qr = NULL;
static lv_obj_t *label = NULL;
@ -132,71 +252,88 @@ void hidde_qr_picture_page(void)
// Password
// --------------------------------------------------------------------------
static int PasswordIndex = 0;
static lv_obj_t* PasswordArray[4];
static lv_obj_t* PasswordMatrixObj = NULL;
static char PasswordBuf1[2] = "0";
static char PasswordBuf2[2] = "0";
static char PasswordBuf3[2] = "0";
static char PasswordBuf4[2] = "0";
static char PasswordBuf5[2] = "0";
static char PasswordBuf6[2] = "0";
static const char* PasswordMap[7] =
{
PasswordBuf1,
PasswordBuf2,
PasswordBuf3,
PasswordBuf4,
PasswordBuf5,
PasswordBuf6,
""
};
static void update_Password_msg(lv_obj_t* obj)
{
UIMenuStoreInfo *puiPara = sf_ui_para_get();
snprintf(PasswordBuf1, 2, "%c", puiPara->PwdStr[0]);
snprintf(PasswordBuf2, 2, "%c", puiPara->PwdStr[1]);
snprintf(PasswordBuf3, 2, "%c", puiPara->PwdStr[2]);
snprintf(PasswordBuf4, 2, "%c", puiPara->PwdStr[3]);
snprintf(PasswordBuf5, 2, "%c", puiPara->PwdStr[4]);
snprintf(PasswordBuf6, 2, "%c", puiPara->PwdStr[5]);
lv_btnmatrix_set_focused_btn(PasswordMatrixObj, PasswordIndex);
}
void show_Password_page(lv_obj_t* obj)
{
// char result[2];
// UIMenuStoreInfo *puiPara = sf_ui_para_get();
// lv_color_t color = {0};
PasswordIndex = 0;
// CameraNameIndex = 0;
// static lv_style_t Camera_Name_style;
// lv_style_init(&Camera_Name_style);
// STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&Camera_Name_style, LV_STATE_DEFAULT, color);
// STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_text_color(&Camera_Name_style, LV_STATE_DEFAULT, color);
// lv_style_set_text_font(&Camera_Name_style,LV_STATE_DEFAULT,&sf_ui_text_bold_20_8bpp);
// STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&Camera_Name_style, LV_STATE_FOCUSED, color);
// STYLE_COLOR_PROP(0x06, 0x24, 0xfd, 0x0d) ; lv_style_set_text_color(&Camera_Name_style, LV_STATE_FOCUSED, color);
init_Matrix_style();
// for(int i = 0; i < 4; i++) {
// if (!(puiPara->CamNameStr[i] >= '0' && puiPara->CamNameStr[i] <= '9') &&
// !(puiPara->CamNameStr[i] >= 'A' && puiPara->CamNameStr[i] <= 'Z') &&
// puiPara->CamNameStr[i] != ' ')
// {
// memset(puiPara->CamNameStr, ' ', 4);
// break;
// }
// }
UIMenuStoreInfo *puiPara = sf_ui_para_get();
if(!puiPara->PwdSwitch)
{
memset(puiPara->PwdStr, '0' ,sizeof(puiPara->PwdStr));
}
snprintf(PasswordBuf1, 2, "%c", puiPara->PwdStr[0]);
snprintf(PasswordBuf2, 2, "%c", puiPara->PwdStr[1]);
snprintf(PasswordBuf3, 2, "%c", puiPara->PwdStr[2]);
snprintf(PasswordBuf4, 2, "%c", puiPara->PwdStr[3]);
snprintf(PasswordBuf5, 2, "%c", puiPara->PwdStr[4]);
snprintf(PasswordBuf6, 2, "%c", puiPara->PwdStr[5]);
// for(int i = 0; i < 6; i++)
// {
// sprintf(result, "%c", puiPara->CamNameStr[i]);
// CameraNameArray[i] = lv_label_create(obj, NULL);
// lv_obj_set_pos(CameraNameArray[i], 78+32*i, 108);
// lv_obj_set_size(CameraNameArray[i], 14, 24);
// lv_obj_add_style(CameraNameArray[i], 0, &Camera_Name_style);
// lv_obj_set_state(CameraNameArray[i], LV_STATE_DEFAULT);
// lv_label_set_text(CameraNameArray[i], result);
// }
// lv_obj_set_state(CameraNameArray[CameraNameIndex], LV_STATE_FOCUSED);
PasswordMatrixObj = lv_btnmatrix_create(obj, NULL);
lv_obj_set_hidden(PasswordMatrixObj, false);
lv_obj_set_click(PasswordMatrixObj, true);
lv_obj_set_drag(PasswordMatrixObj, false);
lv_obj_set_pos(PasswordMatrixObj, 92, 58);
lv_obj_set_size(PasswordMatrixObj, 136, 140);
lv_btnmatrix_set_map(PasswordMatrixObj, PasswordMap);
lv_btnmatrix_set_one_check(PasswordMatrixObj, true);
lv_btnmatrix_set_align(PasswordMatrixObj, LV_LABEL_ALIGN_CENTER);
lv_btnmatrix_set_focused_btn(PasswordMatrixObj,0);
lv_btnmatrix_set_one_check(PasswordMatrixObj, false);
lv_obj_add_style(PasswordMatrixObj, 0, &gMatrixStylebg);
lv_obj_add_style(PasswordMatrixObj, 1, &gMatrixStylebtn);
}
void hidde_Password_page(void)
{
PasswordIndex = 0;
for(int i = 0; i < 4; i++)
if(PasswordMatrixObj)
{
if(PasswordArray[i])
{
lv_obj_del(PasswordArray[i]);
}
lv_obj_del(PasswordMatrixObj);
}
}
void Option_Password_Key(lv_obj_t* obj, uint32_t key)
{
for(int i = 0; i < 4; i++)
if(PasswordMatrixObj == NULL)
{
if(PasswordArray[i] == NULL)
{
printf("CameraNameArray is NULL");
return;
}
printf("PasswordMatrixObj is NULL");
return;
}
// UIMenuStoreInfo *puiPara = sf_ui_para_get();
UIMenuStoreInfo *puiPara = sf_ui_para_get();
// char result[2];
// char tmpchar;
// char* p;
@ -206,18 +343,33 @@ void Option_Password_Key(lv_obj_t* obj, uint32_t key)
{
case LV_USER_KEY_NEXT:
printf("\033[33m[Option_Password_Key]s\033[0m\n");
if(PasswordIndex >= 0 && PasswordIndex <= 5)
{
puiPara->PwdStr[PasswordIndex] = (puiPara->PwdStr[PasswordIndex] - '0' + 10 - 1) % 10 + '0';
}
update_Password_msg(obj);
break;
case LV_USER_KEY_PREV:
printf("\033[33m[Option_Password_Key]w\033[0m\n");
if(PasswordIndex >= 0 && PasswordIndex <= 5)
{
puiPara->PwdStr[PasswordIndex] = (puiPara->PwdStr[PasswordIndex] - '0' + 1) % 10 + '0';
}
update_Password_msg(obj);
break;
case LV_USER_KEY_LEFT:
printf("\033[33m[Option_Password_Key]a\033[0m\n");
PasswordIndex = (PasswordIndex + 6 - 1) % 6;
update_Password_msg(obj);
break;
case LV_USER_KEY_RIGHT:
printf("\033[33m[Option_Password_Key]d\033[0m\n");
PasswordIndex = (PasswordIndex + 1) % 6;
update_Password_msg(obj);
break;
case LV_KEY_ENTER:
printf("\033[33m[Option_Password_Key]SELECT\033[0m\n");
puiPara->PwdSwitch = 1;
lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0));
hidde_Password_page();
break;
@ -323,7 +475,7 @@ static void update_Camera_Info_msg(lv_obj_t* obj)
}
break;
case 5:
sprintf(tmpStr, "MOD:\n");
sprintf(tmpStr, "MOD:%s\n", puiPara->ModuleVer);
strcat(CamInfoStr, tmpStr);
break;
default:
@ -355,7 +507,7 @@ static void update_Camera_Info_msg(lv_obj_t* obj)
strcat(CamInfoStr, tmpStr);
break;
case 4:
sprintf(tmpStr, "BLE:\n");
sprintf(tmpStr, "BLE:%s\n", puiPara->BluSsid);
strcat(CamInfoStr, tmpStr);
default:
break;

View File

@ -51,11 +51,11 @@ int Send_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
// printf(" ====================================================== \n");
printf("\033[33m[Send_MenuCallback]uiMessage:%d uiParam:%d\033[0m\n", uiMessage, uiParam);
UINT16 uwItemId;
// UINT16 uwOption;
UINT16 uwOption;
if (uiMessage == TMM_CONFIRM_OPTION)
{
uwItemId = LO_WORD(uiParam);
// uwOption = HI_WORD(uiParam);
uwOption = HI_WORD(uiParam);
switch (uwItemId)
{
case IDM_MAX_NUM_DAY:
@ -65,7 +65,8 @@ int Send_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
}
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;
}
case IDM_SEND_TYPE:
@ -80,6 +81,7 @@ int Send_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
}
case IDM_GPS:
{
puiPara->GpsSendFlag = uwOption;
printf("\033[33m[Send_MenuCallback]GpsSendFlag:%d\033[0m\n", puiPara->GpsSendFlag);
break;
}
@ -91,4 +93,215 @@ int Send_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
}
}
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_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

View File

@ -81,6 +81,9 @@ static void UIFlowMenuCommonOption_CloseScr(lv_obj_t* obj)
}
#endif
// --------------------------------------------------------------------------
// Secondary interface is other display
// --------------------------------------------------------------------------
#define MESSAGE_ITEM_TRUE 1
#define MESSAGE_ITEM_FALSE 0
static int is_message_item(lv_obj_t* obj)
@ -121,44 +124,11 @@ static int is_message_item(lv_obj_t* obj)
}
case IDM_CAMERA_MODE:
{
printf("[is_message_item]IDM_CAMERA_MODE\n");
// for (i = 0; i < pItem->Count; i++) {
// //check option if disable
// TM_CheckOptionStatus(pMenu, &itemIndex, TRUE);
// if(itemIndex > pItem->Count){
// break;
// }
// enableIndex[i] = itemIndex;
// //DBG_DUMP("%s enableIndex=%d :%d\r\n", __func__,i,enableIndex[i]);
// OptionEN_Num = i;
// if(enableIndex[i] == SelOption){
// Selindex = i;
// }
// itemIndex++;
// }
return MESSAGE_ITEM_FALSE;
}
case IDM_IMAGE_SIZE:
{
printf("[is_message_item]IDM_IMAGE_SIZE\n");
return MESSAGE_ITEM_FALSE;
}
case IDM_VIDEO_SIZE:
{
printf("[is_message_item]IDM_VIDEO_SIZE\n");
return MESSAGE_ITEM_FALSE;
}
case IDM_VIDEA_LENGTH:
{
printf("[is_message_item]IDM_VIDEA_LENGTH\n");
return MESSAGE_ITEM_FALSE;
}
case IDM_FLASH_POWER:
{
printf("[is_message_item]IDM_FLASH_POWER\n");
return MESSAGE_ITEM_FALSE;
}
break;
case IDM_SENSITIVITY:
{
printf("[is_message_item]IDM_SENSITIVITY\n");
@ -171,22 +141,23 @@ static int is_message_item(lv_obj_t* obj)
return MESSAGE_ITEM_FALSE;
}
case IDM_OPERATING_TIME:
{
printf("[is_message_item]IDM_OPERATING_TIME\n");
return MESSAGE_ITEM_FALSE;
}
break;
case IDM_FORMAT_SD:
{
printf("[is_message_item]IDM_FORMAT_SD\n");
return MESSAGE_ITEM_TRUE;
}
case IDM_DATE_AND_TIME:
{
printf("[is_message_item]IDM_DATE_AND_TIME\n");
return MESSAGE_ITEM_FALSE;
}
break;
case IDM_MAX_NUM_DAY:
case IDM_SETTINGS_CHECK:
case IDM_SEND_TYPE:
case IDM_CHECK_IN_PHOTO:
case IDM_GPS:
break;
default:
break;
break;
}
return MESSAGE_ITEM_FALSE;
}
@ -226,7 +197,7 @@ static void LV_MenuCommonOption_UpdateContent(TM_MENU *pMenu)
TM_ITEM *pItem;
TM_OPTION *pOption;
UINT32 i;
UINT16 startIndex = 0;
// UINT16 startIndex = 0;
UINT16 itemIndex = 0;
#if 1
UINT16 SelOption = 0;
@ -318,14 +289,14 @@ static void LV_MenuCommonOption_UpdateContent(TM_MENU *pMenu)
//find startIndex
TM_FindStartIndex(pMenu, pItem->Count, &startIndex);
DBG_DUMP("%s startIndex=%d\r\n", __func__,startIndex);
// //find startIndex
// TM_FindStartIndex(pMenu, pItem->Count, &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
for (i = 0; i < pItem->Count; i++) {
DBG_DUMP("%s enableIndex=%d :%d\r\n", __func__,i,enableIndex[i]);
@ -495,10 +466,10 @@ static void LV_MenuOption_OnNext(lv_obj_t* obj)
// DBG_DUMP("%s SelOption=%d\r\n", __func__,SelOption);
SelOption++;
if (SelOption == pItem->Count){
// Close current UI Window now
SysSetFlag(pItem->SysFlag, PrevOption);
lv_plugin_scr_close(obj, NULL);
// UIFlowMenuCommonOption_CloseScr(obj);
// // Close current UI Window now
// SysSetFlag(pItem->SysFlag, PrevOption);
// lv_plugin_scr_close(obj, NULL);
// // UIFlowMenuCommonOption_CloseScr(obj);
}else{
SysSetFlag(pItem->SysFlag, SelOption);
lv_plugin_menu_select_next_item(menu_item);
@ -518,10 +489,10 @@ static void LV_MenuOption_OnPrev(lv_obj_t* obj)
pItem = &pPage->pItems[pPage->SelItem];
SelOption = SysGetFlag(pItem->SysFlag);
if (SelOption == 0) {
// Close current UI Window now
SysSetFlag(pItem->SysFlag, PrevOption);
lv_plugin_scr_close(obj, NULL);
// UIFlowMenuCommonOption_CloseScr(obj);
// // Close current UI Window now
// SysSetFlag(pItem->SysFlag, PrevOption);
// lv_plugin_scr_close(obj, NULL);
// // UIFlowMenuCommonOption_CloseScr(obj);
} else {
SelOption--;
SysSetFlag(pItem->SysFlag, SelOption);
@ -587,9 +558,18 @@ static void LV_MenuOption_OnSelected(lv_obj_t* obj)
if (pItem->ItemId == IDM_LANGUAGE) {
}
// --------------------------------------------------------------------------
// 3th interface is other display
// --------------------------------------------------------------------------
if((pItem->ItemId == IDM_PASSWORD ||
pItem->ItemId == IDM_CAMERA_NAME)
&& pOption->TextId == IDS_CAMERA_NAME_ON)
pItem->ItemId == IDM_CAMERA_NAME ||
pItem->ItemId == IDM_DELAY ||
pItem->ItemId == IDM_OPERATING_TIME ||
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);
isSetting = 1;
@ -601,6 +581,17 @@ static void LV_MenuOption_OnSelected(lv_obj_t* obj)
case IDM_CAMERA_NAME:
show_Camera_Name_page(obj);
break;
case IDM_DELAY:
show_Delay_page(obj);
break;
case IDM_OPERATING_TIME:
show_Operating_Time_page(obj);
break;
case IDM_DATE_AND_TIME:
show_DateTime_page(obj);
break;
case IDM_MAX_NUM_DAY:
show_MaxNum_page(obj);
default:
break;
}
@ -709,18 +700,18 @@ static void UIFlowMenuCommonOption_Key(lv_obj_t* obj, uint32_t key)
LV_MenuOption_OnPrev(obj);
break;
}
case LV_KEY_RIGHT:
{
LV_MenuOption_OnSelected(obj);
break;
}
// case LV_KEY_RIGHT:
// {
// LV_MenuOption_OnSelected(obj);
// break;
// }
// case LV_USER_KEY_SELECT:
// {
// LV_MenuOption_OnSelected(obj);
// break;
// }
case LV_USER_KEY_SELECT:
{
LV_MenuOption_OnSelected(obj);
break;
}
//
case LV_KEY_ENTER:
{
LV_MenuOption_OnSelected(obj);
@ -783,10 +774,10 @@ void UIFlowMenuCommonOptionEventCallback(lv_obj_t* obj, lv_event_t event)
lv_plugin_menu_set_selected_item_released(menu_item);
break;
case LV_EVENT_CLICKED:
printf("\033[33m[UIFlowMenuCommonOptionEventCallback]LV_EVENT_CLICKED\033[0m\n");
// LV_MenuOption_OnSelected(obj);
break;
// case LV_EVENT_CLICKED:
// printf("\033[33m[UIFlowMenuCommonOptionEventCallback]LV_EVENT_CLICKED\033[0m\n");
// LV_MenuOption_OnSelected(obj);
// break;
case LV_EVENT_KEY:
{
@ -835,9 +826,71 @@ void UIFlowMenuCommonOptionEventCallback(lv_obj_t* obj, lv_event_t event)
Option_Sensitivity_Key(obj, *key);
break;
case IDM_DELAY:
if(isSetting)
{
Option_Delay_Key(obj, *key);
}
else
{
UIFlowMenuCommonOption_Key(obj, *key);
}
break;
case IDM_OPERATING_TIME:
if(isSetting)
{
Option_Operating_Time_Key(obj, *key);
}
else
{
UIFlowMenuCommonOption_Key(obj, *key);
}
break;
case IDM_FORMAT_SD:
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;
default:
break;