mirror of
https://gitee.com/Vancouver2017/luban-lite-t3e-pro.git
synced 2025-12-15 10:58:54 +00:00
431 lines
28 KiB
C
431 lines
28 KiB
C
/*
|
||
* Copyright 2025 NXP
|
||
* NXP Confidential and Proprietary. This software is owned or controlled by NXP and may only be used strictly in
|
||
* accordance with the applicable license terms. By expressly accepting such terms or by downloading, installing,
|
||
* activating and/or otherwise using the software, you are agreeing that you have read, and that you agree to
|
||
* comply with and are bound by, such license terms. If you do not agree to be bound by the applicable license
|
||
* terms, then you may not retain, install, activate or otherwise use the software.
|
||
*/
|
||
#include <stdbool.h>
|
||
#include <stdio.h>
|
||
#include <stdlib.h>
|
||
#include <string.h>
|
||
#include <sys/time.h>
|
||
|
||
#include "lvgl.h"
|
||
#include "gui_guider.h"
|
||
#include "events_init.h"
|
||
#include "widgets_init.h"
|
||
#include "custom.h"
|
||
|
||
/*
|
||
时间界面逻辑
|
||
1 进页面 显示最新时间 3个状态同步更新
|
||
同步自动选择的开关状态 ok
|
||
同步2个日期按钮的 允许/禁用状态 ok
|
||
同步最新时间显示 ok
|
||
2 依据是开关状态:
|
||
选择关闭自动更新,则允许点击按钮
|
||
如果跳转到更新时区 年月日时分界面
|
||
1 显示最新的时间和时区
|
||
2 如果点击更改,时间当成本地时间 通过utc+- 转为utc时间 并保存时区
|
||
选择开启自动更新 禁用按钮点击,
|
||
立即向zigbee查询时间,并依据zigbee下发的utc时间和当地时间计算出时区 并保存时区 ok
|
||
*/
|
||
|
||
void setup_scr_dateinfopage(lv_ui *ui)
|
||
{
|
||
time_t now;
|
||
struct tm timeinfo;
|
||
|
||
time(&now);
|
||
localtime_r(&now, &timeinfo);
|
||
|
||
LOG_I("timezone utc:%d",tz_get());
|
||
LOG_I("time==%d:%d:%d:%d:%02d:%02d:%02d:%02d:%02d",
|
||
timeinfo.tm_isdst, //是否为夏时制
|
||
timeinfo.tm_yday, //一年过去的天数
|
||
timeinfo.tm_wday, //星期,1对应星期一
|
||
timeinfo.tm_year+1900, //年,距离1900年的差值,默认是70
|
||
timeinfo.tm_mon+1, //日期:月,从0开始 0~11
|
||
timeinfo.tm_mday, //日期:日,从1开始
|
||
timeinfo.tm_hour, //小时
|
||
timeinfo.tm_min, //分钟
|
||
timeinfo.tm_sec); //秒钟
|
||
//Write codes dateinfopage
|
||
ui->dateinfopage = lv_obj_create(NULL);
|
||
lv_obj_set_size(ui->dateinfopage, 480, 480);
|
||
lv_obj_set_scrollbar_mode(ui->dateinfopage, LV_SCROLLBAR_MODE_OFF);
|
||
|
||
//Write style for dateinfopage, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_color(ui->dateinfopage, lv_color_hex(0x000000), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_dir(ui->dateinfopage, LV_GRAD_DIR_NONE, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write codes dateinfopage_returnbg
|
||
ui->dateinfopage_returnbg = lv_img_create(ui->dateinfopage);
|
||
lv_obj_add_flag(ui->dateinfopage_returnbg, LV_OBJ_FLAG_CLICKABLE);
|
||
lv_img_set_src(ui->dateinfopage_returnbg, LVGL_PATH(returnbg.png));
|
||
lv_img_set_pivot(ui->dateinfopage_returnbg, 50,50);
|
||
lv_img_set_angle(ui->dateinfopage_returnbg, 0);
|
||
lv_obj_set_pos(ui->dateinfopage_returnbg, 23, 27);
|
||
lv_obj_set_size(ui->dateinfopage_returnbg, 14, 26);
|
||
|
||
//Write style for dateinfopage_returnbg, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_img_opa(ui->dateinfopage_returnbg, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write codes dateinfopage_retrunbtn
|
||
ui->dateinfopage_retrunbtn = lv_btn_create(ui->dateinfopage);
|
||
//ui->dateinfopage_retrunbtn_label = lv_label_create(ui->dateinfopage_retrunbtn);
|
||
//lv_label_set_text(ui->dateinfopage_retrunbtn_label, "");
|
||
//lv_label_set_long_mode(ui->dateinfopage_retrunbtn_label, LV_LABEL_LONG_WRAP);
|
||
//lv_obj_align(ui->dateinfopage_retrunbtn_label, LV_ALIGN_CENTER, 0, 0);
|
||
lv_obj_set_style_pad_all(ui->dateinfopage_retrunbtn, 0, LV_STATE_DEFAULT);
|
||
//lv_obj_set_width(ui->displayinfopage_retrunbtn_label, LV_PCT(100));
|
||
lv_obj_set_pos(ui->dateinfopage_retrunbtn, 8, 8);
|
||
lv_obj_set_size(ui->dateinfopage_retrunbtn, 60, 60);
|
||
|
||
//Write style for displayinfopage_retrunbtn, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_retrunbtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_border_width(ui->dateinfopage_retrunbtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_retrunbtn, 5, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_retrunbtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
// lv_obj_set_style_text_color(ui->dateinfopage_retrunbtn, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
// lv_obj_set_style_text_font(ui->dateinfopage_retrunbtn, &lv_font_albbhptR_16, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
// lv_obj_set_style_text_opa(ui->dateinfopage_retrunbtn, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
// lv_obj_set_style_text_align(ui->dateinfopage_retrunbtn, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
|
||
//Write codes dateinfopage_sw_1
|
||
ui->dateinfopage_sw_1 = lv_switch_create(ui->dateinfopage);
|
||
lv_obj_set_pos(ui->dateinfopage_sw_1, 390, 78);
|
||
lv_obj_set_size(ui->dateinfopage_sw_1, 60, 30);
|
||
|
||
//Write style for dateinfopage_sw_1, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_sw_1, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_color(ui->dateinfopage_sw_1, lv_color_hex(0x212121), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_dir(ui->dateinfopage_sw_1, LV_GRAD_DIR_VER, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_color(ui->dateinfopage_sw_1, lv_color_hex(0x212121), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_main_stop(ui->dateinfopage_sw_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_stop(ui->dateinfopage_sw_1, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_border_width(ui->dateinfopage_sw_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_sw_1, 100, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_sw_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write style for dateinfopage_sw_1, Part: LV_PART_INDICATOR, State: LV_STATE_CHECKED.
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_sw_1, 255, LV_PART_INDICATOR|LV_STATE_CHECKED);
|
||
lv_obj_set_style_bg_color(ui->dateinfopage_sw_1, lv_color_hex(0x374c69), LV_PART_INDICATOR|LV_STATE_CHECKED);
|
||
lv_obj_set_style_bg_grad_dir(ui->dateinfopage_sw_1, LV_GRAD_DIR_VER, LV_PART_INDICATOR|LV_STATE_CHECKED);
|
||
lv_obj_set_style_bg_grad_color(ui->dateinfopage_sw_1, lv_color_hex(0x374c69), LV_PART_INDICATOR|LV_STATE_CHECKED);
|
||
lv_obj_set_style_bg_main_stop(ui->dateinfopage_sw_1, 0, LV_PART_INDICATOR|LV_STATE_CHECKED);
|
||
lv_obj_set_style_bg_grad_stop(ui->dateinfopage_sw_1, 255, LV_PART_INDICATOR|LV_STATE_CHECKED);
|
||
lv_obj_set_style_border_width(ui->dateinfopage_sw_1, 0, LV_PART_INDICATOR|LV_STATE_CHECKED);
|
||
|
||
//Write style for dateinfopage_sw_1, Part: LV_PART_KNOB, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_sw_1, 255, LV_PART_KNOB|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_color(ui->dateinfopage_sw_1, lv_color_hex(0xeb950f), LV_PART_KNOB|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_dir(ui->dateinfopage_sw_1, LV_GRAD_DIR_VER, LV_PART_KNOB|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_color(ui->dateinfopage_sw_1, lv_color_hex(0xef950f), LV_PART_KNOB|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_main_stop(ui->dateinfopage_sw_1, 0, LV_PART_KNOB|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_stop(ui->dateinfopage_sw_1, 255, LV_PART_KNOB|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_border_width(ui->dateinfopage_sw_1, 0, LV_PART_KNOB|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_sw_1, 100, LV_PART_KNOB|LV_STATE_DEFAULT);
|
||
if(GET_nvs_Sys_Info_autoupdatetime())
|
||
{
|
||
lv_obj_add_state(ui->dateinfopage_sw_1, LV_STATE_CHECKED);//on
|
||
}
|
||
else
|
||
{
|
||
lv_obj_clear_state(ui->dateinfopage_sw_1, LV_STATE_CHECKED);//off
|
||
}
|
||
//Write codes dateinfopage_label_2
|
||
ui->dateinfopage_label_2 = lv_label_create(ui->dateinfopage);
|
||
//lv_label_set_text(ui->dateinfopage_label_2, "Set time Automatically");
|
||
lv_label_set_text(ui->dateinfopage_label_2, Menu_List[GET_nvs_Sys_Info_language()][MENU_LIST_SetClockauto]);
|
||
lv_label_set_long_mode(ui->dateinfopage_label_2, LV_LABEL_LONG_WRAP);
|
||
lv_obj_set_pos(ui->dateinfopage_label_2, 38, 80);
|
||
lv_obj_set_size(ui->dateinfopage_label_2, 250, 24);
|
||
|
||
//Write style for dateinfopage_label_2, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_border_width(ui->dateinfopage_label_2, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_label_2, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_color(ui->dateinfopage_label_2, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_font(ui->dateinfopage_label_2, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_opa(ui->dateinfopage_label_2, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_letter_space(ui->dateinfopage_label_2, 2, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_line_space(ui->dateinfopage_label_2, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_align(ui->dateinfopage_label_2, LV_TEXT_ALIGN_LEFT, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_label_2, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_top(ui->dateinfopage_label_2, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_right(ui->dateinfopage_label_2, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_bottom(ui->dateinfopage_label_2, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_left(ui->dateinfopage_label_2, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_label_2, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write codes dateinfopage_datecont
|
||
ui->dateinfopage_datecont = lv_obj_create(ui->dateinfopage);
|
||
lv_obj_set_pos(ui->dateinfopage_datecont, 17, 127);
|
||
lv_obj_set_size(ui->dateinfopage_datecont, 443, 50);
|
||
lv_obj_set_scrollbar_mode(ui->dateinfopage_datecont, LV_SCROLLBAR_MODE_OFF);
|
||
|
||
//Write style for dateinfopage_datecont, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_border_width(ui->dateinfopage_datecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_datecont, 10, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_datecont, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_color(ui->dateinfopage_datecont, lv_color_hex(0x212121), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_dir(ui->dateinfopage_datecont, LV_GRAD_DIR_VER, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_color(ui->dateinfopage_datecont, lv_color_hex(0x212121), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_main_stop(ui->dateinfopage_datecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_stop(ui->dateinfopage_datecont, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_top(ui->dateinfopage_datecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_bottom(ui->dateinfopage_datecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_left(ui->dateinfopage_datecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_right(ui->dateinfopage_datecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_datecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write codes dateinfopage_img_2
|
||
ui->dateinfopage_img_2 = lv_img_create(ui->dateinfopage_datecont);
|
||
lv_obj_add_flag(ui->dateinfopage_img_2, LV_OBJ_FLAG_CLICKABLE);
|
||
lv_img_set_src(ui->dateinfopage_img_2, LVGL_PATH(nextpagebg.png));
|
||
lv_img_set_pivot(ui->dateinfopage_img_2, 0,0);
|
||
lv_img_set_angle(ui->dateinfopage_img_2, 0);
|
||
lv_obj_set_pos(ui->dateinfopage_img_2, 422, 17);
|
||
lv_obj_set_size(ui->dateinfopage_img_2, 14, 22);
|
||
|
||
|
||
//Write style for dateinfopage_img_2, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_img_opa(ui->dateinfopage_img_2, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write codes dateinfopage_datelabel
|
||
ui->dateinfopage_datelabel = lv_label_create(ui->dateinfopage_datecont);
|
||
// lv_label_set_text(ui->dateinfopage_datelabel, "Date");
|
||
lv_label_set_text(ui->dateinfopage_datelabel, Menu_List[GET_nvs_Sys_Info_language()][MENU_LIST_SetClockDate]);
|
||
lv_label_set_long_mode(ui->dateinfopage_datelabel, LV_LABEL_LONG_WRAP);
|
||
lv_obj_set_pos(ui->dateinfopage_datelabel, 21, 0);
|
||
lv_obj_set_size(ui->dateinfopage_datelabel, 50, 24);
|
||
|
||
//Write style for dateinfopage_datelabel, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_border_width(ui->dateinfopage_datelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_datelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_color(ui->dateinfopage_datelabel, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_font(ui->dateinfopage_datelabel, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_opa(ui->dateinfopage_datelabel, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_letter_space(ui->dateinfopage_datelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_line_space(ui->dateinfopage_datelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_align(ui->dateinfopage_datelabel, LV_TEXT_ALIGN_LEFT, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_datelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_top(ui->dateinfopage_datelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_right(ui->dateinfopage_datelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_bottom(ui->dateinfopage_datelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_left(ui->dateinfopage_datelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_datelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write codes dateinfopage_datetxtlabel
|
||
ui->dateinfopage_datetxtlabel = lv_label_create(ui->dateinfopage_datecont);
|
||
//lv_label_set_text(ui->dateinfopage_datetxtlabel, "January 1, 2023");
|
||
if(GET_nvs_Sys_Info_language()==LANG_CH)
|
||
{
|
||
lv_label_set_text_fmt(ui->dateinfopage_datetxtlabel,"%d年%d月%d日",timeinfo.tm_year+1900,timeinfo.tm_mon+1,timeinfo.tm_mday);
|
||
}
|
||
else
|
||
{
|
||
lv_label_set_text_fmt(ui->dateinfopage_datetxtlabel,"%s %d, %d",Menu_monList[timeinfo.tm_mon+1],timeinfo.tm_mday,timeinfo.tm_year+1900);
|
||
}
|
||
lv_label_set_long_mode(ui->dateinfopage_datetxtlabel, LV_LABEL_LONG_WRAP);
|
||
lv_obj_set_pos(ui->dateinfopage_datetxtlabel, 21, 24);
|
||
lv_obj_set_size(ui->dateinfopage_datetxtlabel, 200, 24);
|
||
|
||
//Write style for dateinfopage_datetxtlabel, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_border_width(ui->dateinfopage_datetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_datetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_color(ui->dateinfopage_datetxtlabel, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_font(ui->dateinfopage_datetxtlabel, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_opa(ui->dateinfopage_datetxtlabel, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_letter_space(ui->dateinfopage_datetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_line_space(ui->dateinfopage_datetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_align(ui->dateinfopage_datetxtlabel, LV_TEXT_ALIGN_LEFT, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_datetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_top(ui->dateinfopage_datetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_right(ui->dateinfopage_datetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_bottom(ui->dateinfopage_datetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_left(ui->dateinfopage_datetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_datetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write codes dateinfopage_datebtn
|
||
ui->dateinfopage_datebtn = lv_btn_create(ui->dateinfopage_datecont);
|
||
ui->dateinfopage_datebtn_label = lv_label_create(ui->dateinfopage_datebtn);
|
||
lv_label_set_text(ui->dateinfopage_datebtn_label, "");
|
||
lv_label_set_long_mode(ui->dateinfopage_datebtn_label, LV_LABEL_LONG_WRAP);
|
||
lv_obj_align(ui->dateinfopage_datebtn_label, LV_ALIGN_CENTER, 0, 0);
|
||
lv_obj_set_style_pad_all(ui->dateinfopage_datebtn, 0, LV_STATE_DEFAULT);
|
||
lv_obj_set_width(ui->dateinfopage_datebtn_label, LV_PCT(100));
|
||
lv_obj_set_pos(ui->dateinfopage_datebtn, 0, 0);
|
||
lv_obj_set_size(ui->dateinfopage_datebtn, 443, 50);
|
||
|
||
//Write style for dateinfopage_datebtn, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_datebtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_border_width(ui->dateinfopage_datebtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_datebtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_datebtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_color(ui->dateinfopage_datebtn, lv_color_hex(0x000000), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_font(ui->dateinfopage_datebtn, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_opa(ui->dateinfopage_datebtn, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_align(ui->dateinfopage_datebtn, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write style for dateinfopage_datebtn, Part: LV_PART_MAIN, State: LV_STATE_DISABLED.
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_datebtn, 202, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_bg_color(ui->dateinfopage_datebtn, lv_color_hex(0x212121), LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_bg_grad_dir(ui->dateinfopage_datebtn, LV_GRAD_DIR_VER, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_bg_grad_color(ui->dateinfopage_datebtn, lv_color_hex(0x212121), LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_bg_main_stop(ui->dateinfopage_datebtn, 0, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_bg_grad_stop(ui->dateinfopage_datebtn, 255, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_border_width(ui->dateinfopage_datebtn, 0, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_radius(ui->dateinfopage_datebtn, 10, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_datebtn, 0, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_text_color(ui->dateinfopage_datebtn, lv_color_hex(0x000000), LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_text_font(ui->dateinfopage_datebtn, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_text_opa(ui->dateinfopage_datebtn, 255, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
|
||
//Write codes dateinfopage_timecont
|
||
ui->dateinfopage_timecont = lv_obj_create(ui->dateinfopage);
|
||
lv_obj_set_pos(ui->dateinfopage_timecont, 17, 182);
|
||
lv_obj_set_size(ui->dateinfopage_timecont, 443, 50);
|
||
lv_obj_set_scrollbar_mode(ui->dateinfopage_timecont, LV_SCROLLBAR_MODE_OFF);
|
||
|
||
//Write style for dateinfopage_timecont, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_border_width(ui->dateinfopage_timecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_timecont, 10, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_timecont, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_color(ui->dateinfopage_timecont, lv_color_hex(0x212121), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_dir(ui->dateinfopage_timecont, LV_GRAD_DIR_VER, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_color(ui->dateinfopage_timecont, lv_color_hex(0x212121), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_main_stop(ui->dateinfopage_timecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_grad_stop(ui->dateinfopage_timecont, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_top(ui->dateinfopage_timecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_bottom(ui->dateinfopage_timecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_left(ui->dateinfopage_timecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_right(ui->dateinfopage_timecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_timecont, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write codes dateinfopage_img_3
|
||
ui->dateinfopage_img_3 = lv_img_create(ui->dateinfopage_timecont);
|
||
lv_obj_add_flag(ui->dateinfopage_img_3, LV_OBJ_FLAG_CLICKABLE);
|
||
lv_img_set_src(ui->dateinfopage_img_3, LVGL_PATH(nextpagebg.png));
|
||
lv_img_set_pivot(ui->dateinfopage_img_3, 0,0);
|
||
lv_img_set_angle(ui->dateinfopage_img_3, 0);
|
||
lv_obj_set_pos(ui->dateinfopage_img_3, 422, 17);
|
||
lv_obj_set_size(ui->dateinfopage_img_3, 14, 22);
|
||
|
||
//Write style for dateinfopage_img_3, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_img_opa(ui->dateinfopage_img_3, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write codes dateinfopage_timeclabel
|
||
ui->dateinfopage_timeclabel = lv_label_create(ui->dateinfopage_timecont);
|
||
// lv_label_set_text(ui->dateinfopage_timeclabel, "Time");
|
||
lv_label_set_text(ui->dateinfopage_timeclabel, Menu_List[GET_nvs_Sys_Info_language()][MENU_LIST_SetClockTime]);
|
||
lv_label_set_long_mode(ui->dateinfopage_timeclabel, LV_LABEL_LONG_WRAP);
|
||
lv_obj_set_pos(ui->dateinfopage_timeclabel, 21, 0);
|
||
lv_obj_set_size(ui->dateinfopage_timeclabel, 50, 24);
|
||
|
||
//Write style for dateinfopage_timeclabel, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_border_width(ui->dateinfopage_timeclabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_timeclabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_color(ui->dateinfopage_timeclabel, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_font(ui->dateinfopage_timeclabel, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_opa(ui->dateinfopage_timeclabel, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_letter_space(ui->dateinfopage_timeclabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_line_space(ui->dateinfopage_timeclabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_align(ui->dateinfopage_timeclabel, LV_TEXT_ALIGN_LEFT, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_timeclabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_top(ui->dateinfopage_timeclabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_right(ui->dateinfopage_timeclabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_bottom(ui->dateinfopage_timeclabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_left(ui->dateinfopage_timeclabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_timeclabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write codes dateinfopage_timetxtlabel
|
||
ui->dateinfopage_timetxtlabel = lv_label_create(ui->dateinfopage_timecont);
|
||
//lv_label_set_text(ui->dateinfopage_timetxtlabel, "09:48");
|
||
lv_label_set_text_fmt(ui->dateinfopage_timetxtlabel,"%02d:%02d",timeinfo.tm_hour,timeinfo.tm_min);
|
||
|
||
lv_label_set_long_mode(ui->dateinfopage_timetxtlabel, LV_LABEL_LONG_WRAP);
|
||
lv_obj_set_pos(ui->dateinfopage_timetxtlabel, 21, 24);
|
||
lv_obj_set_size(ui->dateinfopage_timetxtlabel, 60, 24);
|
||
|
||
//Write style for dateinfopage_timetxtlabel, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_border_width(ui->dateinfopage_timetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_timetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_color(ui->dateinfopage_timetxtlabel, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_font(ui->dateinfopage_timetxtlabel, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_opa(ui->dateinfopage_timetxtlabel, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_letter_space(ui->dateinfopage_timetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_line_space(ui->dateinfopage_timetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_align(ui->dateinfopage_timetxtlabel, LV_TEXT_ALIGN_LEFT, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_timetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_top(ui->dateinfopage_timetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_right(ui->dateinfopage_timetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_bottom(ui->dateinfopage_timetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_pad_left(ui->dateinfopage_timetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_timetxtlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write codes dateinfopage_timebtn
|
||
ui->dateinfopage_timebtn = lv_btn_create(ui->dateinfopage_timecont);
|
||
ui->dateinfopage_timebtn_label = lv_label_create(ui->dateinfopage_timebtn);
|
||
lv_label_set_text(ui->dateinfopage_timebtn_label, "");
|
||
lv_label_set_long_mode(ui->dateinfopage_timebtn_label, LV_LABEL_LONG_WRAP);
|
||
lv_obj_align(ui->dateinfopage_timebtn_label, LV_ALIGN_CENTER, 0, 0);
|
||
lv_obj_set_style_pad_all(ui->dateinfopage_timebtn, 0, LV_STATE_DEFAULT);
|
||
lv_obj_set_width(ui->dateinfopage_timebtn_label, LV_PCT(100));
|
||
lv_obj_set_pos(ui->dateinfopage_timebtn, 0, 0);
|
||
lv_obj_set_size(ui->dateinfopage_timebtn, 443, 50);
|
||
|
||
//Write style for dateinfopage_timebtn, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_timebtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_border_width(ui->dateinfopage_timebtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_radius(ui->dateinfopage_timebtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_timebtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_color(ui->dateinfopage_timebtn, lv_color_hex(0x000000), LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_font(ui->dateinfopage_timebtn, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_opa(ui->dateinfopage_timebtn, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
lv_obj_set_style_text_align(ui->dateinfopage_timebtn, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||
|
||
//Write style for dateinfopage_timebtn, Part: LV_PART_MAIN, State: LV_STATE_DISABLED.
|
||
lv_obj_set_style_bg_opa(ui->dateinfopage_timebtn, 204, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_bg_color(ui->dateinfopage_timebtn, lv_color_hex(0x212121), LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_bg_grad_dir(ui->dateinfopage_timebtn, LV_GRAD_DIR_VER, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_bg_grad_color(ui->dateinfopage_timebtn, lv_color_hex(0x212121), LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_bg_main_stop(ui->dateinfopage_timebtn, 0, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_bg_grad_stop(ui->dateinfopage_timebtn, 255, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_border_width(ui->dateinfopage_timebtn, 0, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_radius(ui->dateinfopage_timebtn, 10, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_shadow_width(ui->dateinfopage_timebtn, 0, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_text_color(ui->dateinfopage_timebtn, lv_color_hex(0x000000), LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_text_font(ui->dateinfopage_timebtn, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
lv_obj_set_style_text_opa(ui->dateinfopage_timebtn, 255, LV_PART_MAIN|LV_STATE_DISABLED);
|
||
|
||
//The custom code of dateinfopage.
|
||
if(GET_nvs_Sys_Info_autoupdatetime())//自动更新时间要把按钮禁用掉
|
||
{
|
||
//lv_obj_add_state(ui->dateinfopage_timebtn, LV_STATE_DISABLED);//off
|
||
|
||
//日期按键禁止按下
|
||
lv_obj_add_state(guider_ui.dateinfopage_datebtn, LV_STATE_DISABLED);//off
|
||
//时间禁止允许按下
|
||
lv_obj_add_state(guider_ui.dateinfopage_timebtn, LV_STATE_DISABLED);//off
|
||
}
|
||
else//手动更新时间 允许按钮操作
|
||
{
|
||
//lv_obj_add_state(ui->dateinfopage_timebtn, LV_STATE_DEFAULT);//on
|
||
|
||
//日期按键允许按下
|
||
lv_obj_clear_state(ui->dateinfopage_datebtn, LV_STATE_DISABLED);//on
|
||
//时间按键允许按下
|
||
lv_obj_clear_state(ui->dateinfopage_timebtn, LV_STATE_DISABLED);//on
|
||
}
|
||
//Update current screen layout.
|
||
lv_obj_update_layout(ui->dateinfopage);
|
||
|
||
//Init events for screen.
|
||
events_init_dateinfopage(ui);
|
||
}
|