Fixed bug 9676.

This commit is contained in:
xiaojiazhu 2023-11-07 14:13:28 +08:00
parent f43927a29c
commit d9f7089394
7 changed files with 58 additions and 12 deletions

View File

@ -1,5 +1,6 @@
// #include "MenuQR.h" // #include "MenuQR.h"
#include "PrjInc.h" #include "PrjInc.h"
#include "UIFlowLVGL/UIFlowMenuCommonItem/MenuId.h"
#include "UIFlowLVGL/UIFlowMenuCommonItem/TabMenu.h" #include "UIFlowLVGL/UIFlowMenuCommonItem/TabMenu.h"
#include "UIInfo/UIInfo.h" #include "UIInfo/UIInfo.h"
#include "UIWnd/UIFlow.h" #include "UIWnd/UIFlow.h"
@ -42,7 +43,7 @@ TMDEF_OPTION_TEXT_S(FLASH_POWER_HIGH, TM_OPTION_ENABLE)
TMDEF_OPTION_TEXT_S(FLASH_POWER_LOW, TM_OPTION_ENABLE) TMDEF_OPTION_TEXT_S(FLASH_POWER_LOW, TM_OPTION_ENABLE)
TMDEF_END_OPTIONS() TMDEF_END_OPTIONS()
TMDEF_BEGIN_OPTIONS(SENSITIVITY) TMDEF_BEGIN_OPTIONS(SENSITIVITY)
TMDEF_OPTION_TEXT_S(SENSITIVITY, TM_OPTION_ENABLE) TMDEF_OPTION_TEXT_S(SENSITIVITY_NUMBER, TM_OPTION_ENABLE)
TMDEF_END_OPTIONS() TMDEF_END_OPTIONS()
TMDEF_BEGIN_OPTIONS(DELAY) TMDEF_BEGIN_OPTIONS(DELAY)
TMDEF_OPTION_TEXT_S(DELAY_OFF, TM_OPTION_ENABLE) TMDEF_OPTION_TEXT_S(DELAY_OFF, TM_OPTION_ENABLE)
@ -309,6 +310,25 @@ static lv_obj_t *SensitivityValueLabel = NULL;
#define DIG_PIR_LEVEL 10 #define DIG_PIR_LEVEL 10
static char gPirSensitivity = 0; static char gPirSensitivity = 0;
UINT8 gDigPirLevel[DIG_PIR_LEVEL] = {200, 38, 30, 24, 18, 16, 10, 9, 8, 7}; UINT8 gDigPirLevel[DIG_PIR_LEVEL] = {200, 38, 30, 24, 18, 16, 10, 9, 8, 7};
unsigned int get_dig_pir_level(void)
{
UIMenuStoreInfo *puiPara = sf_ui_para_get();
int resutl = -1;
for (int i = 0; i < DIG_PIR_LEVEL; i++)
{
if (gDigPirLevel[i] == puiPara->DigitPirSensitivity)
{
resutl = i;
break;
}
}
// lv_plugin_string_t* tmpPluginStr = NULL;
// char* tmpstr = NULL;
// tmpPluginStr = (lv_plugin_string_t*)lv_plugin_get_string(IDS_SENSITIVITY_NUMBER);
// tmpstr = (char*)tmpPluginStr->ptr;
// snprintf(tmpstr, 1, "%d", resutl);
return resutl;
}
void show_Sensitivity_page(lv_obj_t* obj) void show_Sensitivity_page(lv_obj_t* obj)
{ {
char result[2]; char result[2];
@ -434,6 +454,7 @@ static void update_Delay_msg(lv_obj_t* obj)
snprintf(DelaySSBuf, 3, "%02d", puiPara->PirDelayTime.Sec); snprintf(DelaySSBuf, 3, "%02d", puiPara->PirDelayTime.Sec);
lv_btnmatrix_set_focused_btn(DelayMatrixObj, DelayIndex); lv_btnmatrix_set_focused_btn(DelayMatrixObj, DelayIndex);
lv_btnmatrix_set_map(DelayMatrixObj, DelayMap);
} }
void show_Delay_page(lv_obj_t* obj) void show_Delay_page(lv_obj_t* obj)
@ -596,6 +617,7 @@ static void update_Operating_Time_msg(lv_obj_t* obj)
snprintf(OperatingTimeMMBuf2, 3, "%02d", puiPara->WorkTime[0].StopTime.Min); snprintf(OperatingTimeMMBuf2, 3, "%02d", puiPara->WorkTime[0].StopTime.Min);
lv_btnmatrix_set_focused_btn(OperatingTimeMatrixObj, OperatingTimeIndex); lv_btnmatrix_set_focused_btn(OperatingTimeMatrixObj, OperatingTimeIndex);
lv_btnmatrix_set_map(OperatingTimeMatrixObj, OperatingTimeMap);
} }
void show_Operating_Time_page(lv_obj_t* obj) void show_Operating_Time_page(lv_obj_t* obj)
@ -778,9 +800,10 @@ static void update_DateTime_Time_msg(lv_obj_t* obj)
snprintf(DateTimeSSBuf, 3, "%02d", gDateTime.Sec); snprintf(DateTimeSSBuf, 3, "%02d", gDateTime.Sec);
lv_btnmatrix_set_focused_btn(DateTimeMatrixObj, DateTimeIndex); lv_btnmatrix_set_focused_btn(DateTimeMatrixObj, DateTimeIndex);
lv_btnmatrix_set_map(DateTimeMatrixObj, DateTimeMap);
} }
void show_DateTime_page(lv_obj_t* obj) void show_DateTime_page(lv_obj_t* obj, int defaultTime)
{ {
OperatingTimeIndex = 0; OperatingTimeIndex = 0;
DateTimeIndex = 0; DateTimeIndex = 0;
@ -790,13 +813,23 @@ void show_DateTime_page(lv_obj_t* obj)
// UIMenuStoreInfo *puiPara = sf_ui_para_get(); // UIMenuStoreInfo *puiPara = sf_ui_para_get();
// SF_PARA_TIME_S tmptime; // SF_PARA_TIME_S tmptime;
// if(puiPara->DateAuto == SF_DATE_AUTO) // if(puiPara->DateAuto == SF_DATE_AUTO)
// if(DEFAULT_TIME_SET_TRUE == defaultTime)
{ {
gDateTime.Year = 2023; struct tm Curr_DateTime ={0};
gDateTime.Mon = 1; Curr_DateTime = hwclock_get_time(TIME_ID_CURRENT);
gDateTime.Day = 1; // gDateTime.Year = 2023;
gDateTime.Hour = 8; // gDateTime.Mon = 1;
gDateTime.Min = 0; // gDateTime.Day = 1;
gDateTime.Sec = 0; // gDateTime.Hour = 8;
// gDateTime.Min = 0;
// gDateTime.Sec = 0;
// printf("================================%d-%d-%d %d:%d:%d\n", Curr_DateTime.tm_year + 1900, Curr_DateTime.tm_mon + 1, Curr_DateTime.tm_mday, Curr_DateTime.tm_hour, Curr_DateTime.tm_min, Curr_DateTime.tm_sec);
gDateTime.Year = Curr_DateTime.tm_year;
gDateTime.Mon = Curr_DateTime.tm_mon;
gDateTime.Day = Curr_DateTime.tm_mday;
gDateTime.Hour = Curr_DateTime.tm_hour;
gDateTime.Min = Curr_DateTime.tm_min;
gDateTime.Sec = Curr_DateTime.tm_sec;
} }
snprintf(DateTimeMOBuf, 3, "%02d", gDateTime.Mon); snprintf(DateTimeMOBuf, 3, "%02d", gDateTime.Mon);
snprintf(DateTimeDDBuf, 3, "%02d", gDateTime.Day); snprintf(DateTimeDDBuf, 3, "%02d", gDateTime.Day);

View File

@ -4,13 +4,20 @@
extern TM_MENU gGeneralMenu; extern TM_MENU gGeneralMenu;
extern TM_ITEM gTM_ITEMS_GENERAL[]; extern TM_ITEM gTM_ITEMS_GENERAL[];
enum DEFAULT_TIME_SET
{
DEFAULT_TIME_SET_TRUE = 0,
DEFAULT_TIME_SET_FALSE,
DEFAULT_TIME_SET_END
};
extern void show_Sensitivity_page(lv_obj_t* obj); 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 show_Operating_Time_page(lv_obj_t* obj);
extern void hidde_Operating_Time_page(void); extern void hidde_Operating_Time_page(void);
extern void show_DateTime_page(lv_obj_t* obj); extern void show_DateTime_page(lv_obj_t* obj, int defaultTime);
extern void hidde_DateTime_page(void); extern void hidde_DateTime_page(void);
extern void Option_Sensitivity_Key(lv_obj_t* obj, uint32_t key); extern void Option_Sensitivity_Key(lv_obj_t* obj, uint32_t key);
@ -18,4 +25,5 @@ extern void Option_Delay_Key(lv_obj_t* obj, uint32_t key);
extern void Option_Operating_Time_Key(lv_obj_t* obj, uint32_t key); extern void Option_Operating_Time_Key(lv_obj_t* obj, uint32_t key);
extern void Option_DateTime_Key(lv_obj_t* obj, uint32_t key); extern void Option_DateTime_Key(lv_obj_t* obj, uint32_t key);
extern unsigned int get_dig_pir_level(void);
#endif #endif

View File

@ -704,6 +704,7 @@ enum _MENU_IDS {
IDS_FLASH_POWER_HIGH = LV_PLUGIN_STRING_ID_STRING_HIGH, IDS_FLASH_POWER_HIGH = LV_PLUGIN_STRING_ID_STRING_HIGH,
IDS_FLASH_POWER_LOW = LV_PLUGIN_STRING_ID_STRING_LOW, IDS_FLASH_POWER_LOW = LV_PLUGIN_STRING_ID_STRING_LOW,
IDS_SENSITIVITY = LV_PLUGIN_STRING_ID_STRING_SENSITIVITY, IDS_SENSITIVITY = LV_PLUGIN_STRING_ID_STRING_SENSITIVITY,
IDS_SENSITIVITY_NUMBER = LV_PLUGIN_STRING_ID_STRING_SENSITIVITY,
IDS_DELAY = LV_PLUGIN_STRING_ID_STRING_DELAY, IDS_DELAY = LV_PLUGIN_STRING_ID_STRING_DELAY,
IDS_DELAY_OFF = LV_PLUGIN_STRING_ID_STRID_OFF, IDS_DELAY_OFF = LV_PLUGIN_STRING_ID_STRID_OFF,
IDS_DELAY_ON = LV_PLUGIN_STRING_ID_STRID_ON, IDS_DELAY_ON = LV_PLUGIN_STRING_ID_STRID_ON,

View File

@ -674,6 +674,7 @@ static void update_Password_msg(lv_obj_t* obj)
snprintf(PasswordBuf6, 2, "%c", puiPara->PwdStr[5]); snprintf(PasswordBuf6, 2, "%c", puiPara->PwdStr[5]);
lv_btnmatrix_set_focused_btn(PasswordMatrixObj, PasswordIndex); lv_btnmatrix_set_focused_btn(PasswordMatrixObj, PasswordIndex);
lv_btnmatrix_set_map(PasswordMatrixObj, PasswordMap);
} }
void show_Password_page(lv_obj_t* obj) void show_Password_page(lv_obj_t* obj)
@ -778,6 +779,7 @@ static lv_obj_t *CameraInfolabel = NULL;
static int CameraInfoisHidden = 1; static int CameraInfoisHidden = 1;
static lv_obj_t *CameraInfoTabLabel = NULL; static lv_obj_t *CameraInfoTabLabel = NULL;
static lv_obj_t * btnm = NULL; static lv_obj_t * btnm = NULL;
static const char * map[] = {"1", "2", "3", ""};
static void update_Camera_Info_msg(lv_obj_t* obj) static void update_Camera_Info_msg(lv_obj_t* obj)
{ {
static lv_style_t LabelStyle = {0}; static lv_style_t LabelStyle = {0};
@ -908,6 +910,7 @@ static void update_Camera_Info_msg(lv_obj_t* obj)
} }
lv_btnmatrix_set_focused_btn(btnm, CameraInfoIndex); lv_btnmatrix_set_focused_btn(btnm, CameraInfoIndex);
lv_btnmatrix_set_map(btnm, map);
lv_label_set_text(CameraInfolabel, CamInfoStr); lv_label_set_text(CameraInfolabel, CamInfoStr);
} }
@ -941,7 +944,6 @@ void show_Camera_Info_page(lv_obj_t* obj)
color.full = 0x2; lv_style_set_text_color(&style_btn, LV_STATE_DEFAULT, color); color.full = 0x2; lv_style_set_text_color(&style_btn, LV_STATE_DEFAULT, color);
color.full = 0xc8;lv_style_set_text_color(&style_btn, LV_STATE_FOCUSED, color); color.full = 0xc8;lv_style_set_text_color(&style_btn, LV_STATE_FOCUSED, color);
static const char * map[] = {"1", "2", "3", ""};
btnm = lv_btnmatrix_create(lv_scr_act(), NULL); btnm = lv_btnmatrix_create(lv_scr_act(), NULL);
lv_btnmatrix_set_map(btnm, map); lv_btnmatrix_set_map(btnm, map);

View File

@ -391,6 +391,8 @@ static void update_send_time_msg(lv_obj_t* obj)
{ {
lv_btnmatrix_set_focused_btn(SendTimeMatrixObj_1, gMatrixIndex); lv_btnmatrix_set_focused_btn(SendTimeMatrixObj_1, gMatrixIndex);
} }
lv_btnmatrix_set_map(SendTimeMatrixObj_0, SendTimeMap_0);
lv_btnmatrix_set_map(SendTimeMatrixObj_1, SendTimeMap_1);
} }
void show_send_time_page(lv_obj_t* obj, const int sendType) void show_send_time_page(lv_obj_t* obj, const int sendType)
{ {

View File

@ -705,7 +705,7 @@ static void UIFlowMenuCommonItem_ScrOpen(lv_obj_t* obj)
{ {
DBG_DUMP("UIFlowMenuCommonItem_ScrOpen\r\n"); DBG_DUMP("UIFlowMenuCommonItem_ScrOpen\r\n");
get_dig_pir_level();
/*********************************************************************************** /***********************************************************************************
* Add Menu Screen into group and set group to keypad indev * Add Menu Screen into group and set group to keypad indev
***********************************************************************************/ ***********************************************************************************/

View File

@ -624,7 +624,7 @@ static void LV_MenuOption_OnSelected(lv_obj_t* obj)
show_Operating_Time_page(obj); show_Operating_Time_page(obj);
break; break;
case IDM_DATE_AND_TIME: case IDM_DATE_AND_TIME:
show_DateTime_page(obj); show_DateTime_page(obj, DEFAULT_TIME_SET_TRUE);
break; break;
case IDM_MAX_NUM_DAY: case IDM_MAX_NUM_DAY:
show_MaxNum_page(obj); show_MaxNum_page(obj);