Improve password screen.

This commit is contained in:
xiaojiazhu 2023-11-15 17:09:05 +08:00
parent 4640033758
commit 03673dad1a
7 changed files with 197 additions and 32 deletions

View File

@ -165,6 +165,11 @@ int General_MenuCallback(UINT32 uiMessage, UINT32 uiParam)
puiPara->PirDelayTime.Hour = 0;
puiPara->PirDelayTime.Min = 0;
puiPara->PirDelayTime.Sec = 30;
} else if (SF_OFF == puiPara->PirDelaySwitch)
{
puiPara->PirDelayTime.Hour = 0;
puiPara->PirDelayTime.Min = 0;
puiPara->PirDelayTime.Sec = 15;
}
break;
}

View File

@ -431,7 +431,7 @@ static const char* SendTimeMap_1[BUTTON_NUM_4] =
// static int CameraInfoIndex = 0;
// static lv_obj_t *CameraInfolabel = NULL;
static lv_obj_t *SendTypeImage = NULL;
static lv_obj_t* CameraNameImage = NULL;
static lv_obj_t* SelectedImage = NULL;
static lv_obj_t * btnm = NULL;
static const char * map[] = {"1", "2", ""};
@ -452,13 +452,13 @@ static void update_send_time_msg(lv_obj_t* obj)
lv_btnmatrix_set_focused_btn(SendTimeMatrixObj_0, gMatrixIndex);
lv_btnmatrix_set_map(SendTimeMatrixObj_0, SendTimeMap_0);
offset = gMatrixIndex > 3 ? 32 : 0;
lv_obj_set_x(CameraNameImage, (32 + 32 * gMatrixIndex + offset));
lv_obj_set_x(SelectedImage, (32 + 32 * gMatrixIndex + offset));
}
if(NULL != SendTimeMatrixObj_1)
{
lv_btnmatrix_set_focused_btn(SendTimeMatrixObj_1, gMatrixIndex);
lv_btnmatrix_set_map(SendTimeMatrixObj_1, SendTimeMap_1);
lv_obj_set_x(CameraNameImage, (112 + 32 * gMatrixIndex));
lv_obj_set_x(SelectedImage, (112 + 32 * gMatrixIndex));
}
if(NULL != btnm)
{
@ -486,7 +486,7 @@ void show_send_time_page(lv_obj_t* obj, const int sendType)
SendTimeMatrixObj_1 = NULL;
SendTimeMatrixObj_0 = NULL;
btnm = NULL;
CameraNameImage = NULL;
SelectedImage = NULL;
init_Matrix_style();
@ -553,19 +553,19 @@ void show_send_time_page(lv_obj_t* obj, const int sendType)
lv_obj_set_hidden(container_send_time_0_scr_uiflowmenucommonoption, false);
}
CameraNameImage = lv_img_create(obj, NULL);
lv_obj_set_hidden(CameraNameImage, false);
lv_obj_set_click(CameraNameImage, false);
lv_obj_set_drag(CameraNameImage, false);
lv_obj_set_size(CameraNameImage, 32, 88);
lv_img_set_src(CameraNameImage, &sf_pwd_down_up);
SelectedImage = lv_img_create(obj, NULL);
lv_obj_set_hidden(SelectedImage, false);
lv_obj_set_click(SelectedImage, false);
lv_obj_set_drag(SelectedImage, false);
lv_obj_set_size(SelectedImage, 32, 88);
lv_img_set_src(SelectedImage, &sf_pwd_down_up);
if(ONCE_DAY != gSendType)
{
lv_obj_set_pos(CameraNameImage, 32, 78);
lv_obj_set_pos(SelectedImage, 32, 78);
}
else
{
lv_obj_set_pos(CameraNameImage, 112, 78);
lv_obj_set_pos(SelectedImage, 112, 78);
}
if(FOUR_TIME_DAY == gSendType)
@ -605,10 +605,10 @@ void hidde_send_time_page(void)
lv_obj_del(btnm);
btnm = NULL;
}
if(CameraNameImage)
if(SelectedImage)
{
lv_obj_del(CameraNameImage);
CameraNameImage = NULL;
lv_obj_del(SelectedImage);
SelectedImage = NULL;
}
lv_obj_set_hidden(container_send_time_0_scr_uiflowmenucommonoption, true);
lv_obj_set_hidden(container_send_time_1_scr_uiflowmenucommonoption, true);

View File

@ -756,7 +756,7 @@ static void UIFlowMenuCommonItem_ScrOpen(lv_obj_t* obj)
LV_MenuItem_OnOpen(obj);
#if HUNTING_CAMERA_MCU == ENABLE
sf_set_menu_open(TRUE);
// sf_set_menu_open(TRUE);
#endif
}
@ -867,6 +867,7 @@ static void UIFlowMenuCommonItem_ChildScrClose(lv_obj_t* obj,const LV_USER_EVENT
}
}
// sf_set_menu_open(FALSE);
}

View File

@ -8,7 +8,10 @@
static int PasswordIndex = 0;
static int PasswordWrongTimes = 0;
// static lv_obj_t* button_matrix_password_scr_uiflowpassword = NULL;
static lv_obj_t* SelectedImage = NULL;
static lv_obj_t* SendTimeMatrixObj_0 = NULL;
static lv_style_t gMatrixStylebg;
static lv_style_t gMatrixStylebtn;
static char PasswordBuf1[2] = {'0'};
static char PasswordBuf2[2] = {'0'};
static char PasswordBuf3[2] = {'0'};
@ -41,16 +44,154 @@ static void set_indev_keypad_group(lv_obj_t* obj)
lv_indev_t* indev = lv_plugin_find_indev_by_type(LV_INDEV_TYPE_KEYPAD);
lv_indev_set_group(indev, gp);
}
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(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebg, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebg, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebg, LV_STATE_DISABLED, color);
lv_style_init(&gMatrixStylebtn);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x23, 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_1bpp);
STYLE_COLOR_PROP(0x02, 0x00, 0x00, 0x00) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
lv_style_set_text_font(&gMatrixStylebtn,LV_STATE_DEFAULT,&sf_ui_text_bold_20_1bpp);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_DEFAULT, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x02, 0x00, 0x00, 0x00) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_CHECKED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x22, 0x00, 0x00, 0x00) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_FOCUSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x02, 0x00, 0x00, 0x00) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_EDITED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x02, 0x00, 0x00, 0x00) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_HOVERED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x02, 0x00, 0x00, 0x00) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_PRESSED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_bg_grad_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_border_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_outline_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_shadow_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_pattern_recolor(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_value_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x02, 0x00, 0x00, 0x00) ; lv_style_set_text_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
STYLE_COLOR_PROP(0x23, 0x00, 0x00, 0x00) ; lv_style_set_text_sel_bg_color(&gMatrixStylebtn, LV_STATE_DISABLED, color);
isinitialized = 1;
}
static void UIFlowPassword_ScrOpen(lv_obj_t* obj)
{
init_Matrix_style();
SendTimeMatrixObj_0 = lv_btnmatrix_create(obj, NULL);
lv_obj_set_hidden(SendTimeMatrixObj_0, false);
lv_obj_set_click(SendTimeMatrixObj_0, true);
lv_obj_set_drag(SendTimeMatrixObj_0, false);
lv_obj_set_pos(SendTimeMatrixObj_0, 69, 102);
lv_obj_set_size(SendTimeMatrixObj_0, 192, 80);
lv_btnmatrix_set_map(SendTimeMatrixObj_0, PasswordMap);
lv_btnmatrix_set_one_check(SendTimeMatrixObj_0, true);
lv_btnmatrix_set_align(SendTimeMatrixObj_0, LV_LABEL_ALIGN_CENTER);
lv_btnmatrix_set_focused_btn(SendTimeMatrixObj_0,0);
lv_btnmatrix_set_one_check(SendTimeMatrixObj_0, false);
lv_obj_add_style(SendTimeMatrixObj_0, 0, &gMatrixStylebg);
lv_obj_add_style(SendTimeMatrixObj_0, 1, &gMatrixStylebtn);
SelectedImage = lv_img_create(obj, NULL);
lv_obj_set_hidden(SelectedImage, false);
lv_obj_set_click(SelectedImage, false);
lv_obj_set_drag(SelectedImage, false);
lv_obj_set_size(SelectedImage, 32, 88);
lv_img_set_src(SelectedImage, &sf_pwd_down_up);
lv_obj_set_pos(SelectedImage, 69, 99);
sf_set_keep_alive_time(PASSWORD_SCREEN_GO_TO_WORK_MODE_TIME_S);
set_indev_keypad_group(obj);
memset(PwdStr, '0', sizeof(PwdStr));
PwdStr[PASSWORD_LENGTH - 1] = '\0';
lv_btnmatrix_set_map(button_matrix_password_scr_uiflowpassword, PasswordMap);
// lv_btnmatrix_set_map(button_matrix_password_scr_uiflowpassword, PasswordMap);
}
static void UIFlowPassword_ScrClose(lv_obj_t* obj)
{
if(SelectedImage)
{
lv_obj_del(SelectedImage);
SelectedImage = NULL;
}
sf_set_keep_alive_time(DEFAULT_GO_TO_WORK_MODE_TIME_S);
}
void OpenPasswordScreen(void)
@ -68,14 +209,16 @@ static void update_Password_msg(lv_obj_t* obj)
snprintf(PasswordBuf5, 2, "%c", PwdStr[4]);
snprintf(PasswordBuf6, 2, "%c", PwdStr[5]);
lv_btnmatrix_set_focused_btn(button_matrix_password_scr_uiflowpassword, PasswordIndex);
lv_btnmatrix_set_map(button_matrix_password_scr_uiflowpassword, PasswordMap);
lv_btnmatrix_set_focused_btn(SendTimeMatrixObj_0, PasswordIndex);
lv_btnmatrix_set_map(SendTimeMatrixObj_0, PasswordMap);
int offset = 0;
lv_obj_set_x(SelectedImage, (69 + 32 * PasswordIndex + offset));
}
static void UIFlowPassword_Key(lv_obj_t* obj, uint32_t key)
{
if(button_matrix_password_scr_uiflowpassword == NULL)
if(SendTimeMatrixObj_0 == NULL)
{
printf("button_matrix_password_scr_uiflowpassword is NULL");
printf("SendTimeMatrixObj_0 is NULL");
return;
}
#define OFFSET 31
@ -103,7 +246,7 @@ static void UIFlowPassword_Key(lv_obj_t* obj, uint32_t key)
case LV_USER_KEY_LEFT:
printf("\033[33m[UIFlowPassword_Key]a\033[0m\n");
PasswordIndex = (PasswordIndex + 6 - 1) % 6;
lv_obj_set_pos(label_select_scr_uiflowpassword, 74 + OFFSET * PasswordIndex, 139);
// lv_obj_set_pos(label_select_scr_uiflowpassword, 74 + OFFSET * PasswordIndex, 139);
update_Password_msg(obj);
break;
case LV_USER_KEY_RIGHT:
@ -114,7 +257,7 @@ static void UIFlowPassword_Key(lv_obj_t* obj, uint32_t key)
break;
}
PasswordIndex = (PasswordIndex + 1) % 6;
lv_obj_set_pos(label_select_scr_uiflowpassword, 74 + OFFSET * PasswordIndex, 139);
// lv_obj_set_pos(label_select_scr_uiflowpassword, 74 + OFFSET * PasswordIndex, 139);
update_Password_msg(obj);
break;
case LV_KEY_ENTER:
@ -134,14 +277,15 @@ static void UIFlowPassword_Key(lv_obj_t* obj, uint32_t key)
PasswordWrongTimes ++;
if (10 == PasswordWrongTimes)
{
UIFlowWrnMsgAPI_Open_StringID(LV_PLUGIN_STRING_ID_STRID_GOOD_BYE, 1000 * 2);
// UIFlowWrnMsgAPI_Open_StringID(LV_PLUGIN_STRING_ID_STRID_GOOD_BYE, 1000 * 2);
Ux_PostEvent(NVTEVT_SYSTEM_SHUTDOWN, 1, APP_POWER_OFF_NORMAL);
PasswordWrongTimes = 0;
}
else
{
UIFlowWrnMsgAPI_Open_StringID(LV_PLUGIN_STRING_ID_STRID_PLEASE_INSERT_SD, 1000 * 2);
// UIFlowWrnMsgAPI_Open_StringID(LV_PLUGIN_STRING_ID_STRID_PLEASE_INSERT_SD, 1000 * 2);
}
lv_label_set_text(label_tips_scr_uiflowpassword,"Password error,Pls enter again");
}
break;
default:

View File

@ -47,7 +47,7 @@ static lv_group_t* gp = NULL;
static lv_task_t* task_selftimer = NULL;
static lv_task_t* update_icons_timer = NULL;
#define GO_TO_WORK_MODE_TIME 160
#define PASSWORD_GO_TO_WORK_MODE_TIME_S 50
#define PASSWORD_GO_TO_WORK_MODE_TIME_S 62
static unsigned int ShutDownTime = GO_TO_WORK_MODE_TIME;
static lv_task_t* task_qview = NULL;
@ -1354,7 +1354,7 @@ static void task_update_icons_timer_cb(lv_task_t* task)
UINT16 autoOffTime = sf_get_auto_off_time();
if (autoOffTime >= ShutDownTime && autoOffTime < ShutDownTime + 3)
{
unsigned int autoCloseTime_s = ShutDownTime == GO_TO_WORK_MODE_TIME ? 30 : 10;
unsigned int autoCloseTime_s = ShutDownTime == GO_TO_WORK_MODE_TIME ? 30 : 3;
UIFlowWrnMsgAPI_Open_StringID(LV_PLUGIN_STRING_ID_STRING_ENTER_WORK, 1000 * autoCloseTime_s);
}
return;
@ -1693,8 +1693,12 @@ void UIFlowPhotoEventCallback(lv_obj_t* obj, lv_event_t event)
{
case LV_PLUGIN_EVENT_SCR_OPEN:
UIFlowPhoto_ScrOpen(obj);
if(PASSWORD_SWITCH_ON == puiPara->PwdSwitch)
#define PASSWORD_OPENED 1
#define PASSWORD_NOT_OPENED 0
static int passwordOpened = PASSWORD_NOT_OPENED;
if(PASSWORD_SWITCH_ON == puiPara->PwdSwitch && PASSWORD_NOT_OPENED == passwordOpened)
{
passwordOpened = PASSWORD_OPENED;
OpenPasswordScreen();
ShutDownTime = PASSWORD_GO_TO_WORK_MODE_TIME_S;
}

View File

@ -53,7 +53,8 @@ static void task_msgbox_timer_cb(lv_task_t* task)
}
if(string){
snprintf(buf, BUF_LENGTH, "%s (%ds)\r\n", string->ptr, autoClose/1000);
lv_msgbox_set_text(msgbox, buf);
// lv_msgbox_set_text(msgbox, buf);
lv_label_set_text_fmt(label_msg_scr_uiflowwrnmsg, "%s", buf);
}
}
// update_icons();
@ -116,7 +117,17 @@ void UIFlowWrnMsgAPI_Open_StringID(lv_plugin_res_id id, uint16_t auto_close_time
DBG_DUMP("\r\nUIFlowWrnMsgAPI_Open_StringID msgID:%d",msgID);
{
const lv_plugin_string_t* tmpstr1 = lv_plugin_get_string(msgID);
lv_label_set_text_fmt(label_msg_scr_uiflowwrnmsg, "%s", tmpstr1->ptr);
if(LV_PLUGIN_STRING_ID_STRING_ENTER_WORK == msgID)
{
#define BUF_LENGTH 256
char buf[BUF_LENGTH] = {0};
snprintf(buf, BUF_LENGTH, "%s (%ds)\r\n", tmpstr1->ptr, autoClose/1000);
lv_label_set_text_fmt(label_msg_scr_uiflowwrnmsg, "%s", buf);
}
else
{
lv_label_set_text_fmt(label_msg_scr_uiflowwrnmsg, "%s", tmpstr1->ptr);
}
lv_obj_align(label_msg_scr_uiflowwrnmsg, button_msg_bg_scr_uiflowwrnmsg, 0, 0, 0);
if((msgID == LV_PLUGIN_STRING_ID_STRID_MEMORYERROR)|| \
(msgID == LV_PLUGIN_STRING_ID_STRID_NO_IMAGE))

View File

@ -31,7 +31,7 @@ typedef enum{
FILE_SENDING_GUI_END
} FILE_SENDING_GUI_E;
#define DEFAULT_GO_TO_WORK_MODE_TIME_S 185
#define PASSWORD_SCREEN_GO_TO_WORK_MODE_TIME_S 55
#define PASSWORD_SCREEN_GO_TO_WORK_MODE_TIME_S 60
void sf_mode_detect(void);
int sf_pir_statu_read(void);
void sf_set_pir_power_off_flag(BOOL flag);