完成General页面的Operating Time功能
This commit is contained in:
parent
5bad061dfb
commit
74062bd831
|
@ -519,3 +519,178 @@ void Option_Delay_Key(lv_obj_t* obj, uint32_t key)
|
||||||
break;
|
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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -8,8 +8,11 @@ extern void show_Sensitivity_page(lv_obj_t* obj);
|
||||||
extern void hidde_Sensitivity_page(void);
|
extern void hidde_Sensitivity_page(void);
|
||||||
extern void show_Delay_page(lv_obj_t* obj);
|
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 hidde_Operating_Time_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);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -81,6 +81,9 @@ static void UIFlowMenuCommonOption_CloseScr(lv_obj_t* obj)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
// Secondary interface is other display
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
#define MESSAGE_ITEM_TRUE 1
|
#define MESSAGE_ITEM_TRUE 1
|
||||||
#define MESSAGE_ITEM_FALSE 0
|
#define MESSAGE_ITEM_FALSE 0
|
||||||
static int is_message_item(lv_obj_t* obj)
|
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:
|
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:
|
case IDM_IMAGE_SIZE:
|
||||||
{
|
|
||||||
printf("[is_message_item]IDM_IMAGE_SIZE\n");
|
|
||||||
return MESSAGE_ITEM_FALSE;
|
|
||||||
}
|
|
||||||
case IDM_VIDEO_SIZE:
|
case IDM_VIDEO_SIZE:
|
||||||
{
|
|
||||||
printf("[is_message_item]IDM_VIDEO_SIZE\n");
|
|
||||||
return MESSAGE_ITEM_FALSE;
|
|
||||||
}
|
|
||||||
case IDM_VIDEA_LENGTH:
|
case IDM_VIDEA_LENGTH:
|
||||||
{
|
|
||||||
printf("[is_message_item]IDM_VIDEA_LENGTH\n");
|
|
||||||
return MESSAGE_ITEM_FALSE;
|
|
||||||
}
|
|
||||||
case IDM_FLASH_POWER:
|
case IDM_FLASH_POWER:
|
||||||
{
|
break;
|
||||||
printf("[is_message_item]IDM_FLASH_POWER\n");
|
|
||||||
return MESSAGE_ITEM_FALSE;
|
|
||||||
}
|
|
||||||
case IDM_SENSITIVITY:
|
case IDM_SENSITIVITY:
|
||||||
{
|
{
|
||||||
printf("[is_message_item]IDM_SENSITIVITY\n");
|
printf("[is_message_item]IDM_SENSITIVITY\n");
|
||||||
|
@ -587,9 +557,13 @@ static void LV_MenuOption_OnSelected(lv_obj_t* obj)
|
||||||
if (pItem->ItemId == IDM_LANGUAGE) {
|
if (pItem->ItemId == IDM_LANGUAGE) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
// 3th interface is other display
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
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)
|
||||||
&& pOption->TextId == IDS_CAMERA_NAME_ON)
|
&& pOption->TextId == IDS_CAMERA_NAME_ON)
|
||||||
{
|
{
|
||||||
lv_obj_set_hidden(container_main_menu_scr_uiflowmenucommonoption, true);
|
lv_obj_set_hidden(container_main_menu_scr_uiflowmenucommonoption, true);
|
||||||
|
@ -605,6 +579,9 @@ static void LV_MenuOption_OnSelected(lv_obj_t* obj)
|
||||||
case IDM_DELAY:
|
case IDM_DELAY:
|
||||||
show_Delay_page(obj);
|
show_Delay_page(obj);
|
||||||
break;
|
break;
|
||||||
|
case IDM_OPERATING_TIME:
|
||||||
|
show_Operating_Time_page(obj);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -849,6 +826,15 @@ void UIFlowMenuCommonOptionEventCallback(lv_obj_t* obj, lv_event_t event)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case IDM_OPERATING_TIME:
|
case IDM_OPERATING_TIME:
|
||||||
|
if(isSetting)
|
||||||
|
{
|
||||||
|
Option_Operating_Time_Key(obj, *key);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
UIFlowMenuCommonOption_Key(obj, *key);
|
||||||
|
}
|
||||||
|
break;
|
||||||
case IDM_FORMAT_SD:
|
case IDM_FORMAT_SD:
|
||||||
case IDM_DATE_AND_TIME:
|
case IDM_DATE_AND_TIME:
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user