/* * 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 "lvgl.h" #include #include "gui_guider.h" #include "events_init.h" #include "widgets_init.h" #include "custom.h" #include "nvs_eepom.h" #include "FontEnum.h" void setup_scr_dimmerinfo(lv_ui *ui,Downlights_Info *downlight) { nvs_SysInfo.downligths_scutkey=0; LOG_I("dimmerinfo:downlights[0] address=0x%x",(uint32_t)&nvs_SysInfo.downlights[0]); LOG_I("dimmerinfo:downlights[1] address=0x%x",(uint32_t)&nvs_SysInfo.downlights[1]); LOG_I("dimmerinfo:downlights[2] address=0x%x",(uint32_t)&nvs_SysInfo.downlights[2]); LOG_I("dimmerinfo:downlights[3] address=0x%x",(uint32_t)&nvs_SysInfo.downlights[3]); LOG_I("dimmerinfo:current downlight address=0x%x",(uint32_t)downlight); if(downlight==(Downlights_Info *)&nvs_SysInfo.downlights[0]) { LOG_I("dimmerinfo:is equal downlights[0]"); } else if(downlight==(Downlights_Info *)&nvs_SysInfo.downlights[1]) { LOG_I("dimmerinfo:is equal downlights[1]"); } else if(downlight==(Downlights_Info *)&nvs_SysInfo.downlights[2]) { LOG_I("dimmerinfo:is equal downlights[2]"); } else //if(downlight==(Downlights_Info *)&nvs_SysInfo.downlights[3]) { LOG_I("dimmerinfo:is equal downlights[3]"); } //Write codes dimmerinfo ui->dimmerinfo = lv_obj_create(NULL); ui->dimmerinfo->user_data=(void *)downlight;//传递地址 lv_obj_set_size(ui->dimmerinfo, 480, 480); lv_obj_set_scrollbar_mode(ui->dimmerinfo, LV_SCROLLBAR_MODE_OFF); //Write style for dimmerinfo, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_bg_opa(ui->dimmerinfo, 255, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_bg_color(ui->dimmerinfo, lv_color_hex(0x000000), LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_bg_grad_dir(ui->dimmerinfo, LV_GRAD_DIR_NONE, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_returnbg ui->dimmerinfo_returnbg = lv_img_create(ui->dimmerinfo); lv_obj_add_flag(ui->dimmerinfo_returnbg, LV_OBJ_FLAG_CLICKABLE); lv_img_set_src(ui->dimmerinfo_returnbg, LVGL_PATH(returnbg.png)); lv_img_set_pivot(ui->dimmerinfo_returnbg, 50,50); lv_img_set_angle(ui->dimmerinfo_returnbg, 0); lv_obj_set_pos(ui->dimmerinfo_returnbg, 23, 27); lv_obj_set_size(ui->dimmerinfo_returnbg, 14, 26); //Write style for dimmerinfo_returnbg, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_img_opa(ui->dimmerinfo_returnbg, 255, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_retrunbtn ui->dimmerinfo_retrunbtn = lv_btn_create(ui->dimmerinfo); // ui->dimmerinfo_retrunbtn_label = lv_label_create(ui->dimmerinfo_retrunbtn); // lv_label_set_text(ui->dimmerinfo_retrunbtn_label, ""); // lv_label_set_long_mode(ui->dimmerinfo_retrunbtn_label, LV_LABEL_LONG_WRAP); // lv_obj_align(ui->dimmerinfo_retrunbtn_label, LV_ALIGN_CENTER, 0, 0); lv_obj_set_style_pad_all(ui->dimmerinfo_retrunbtn, 0, LV_STATE_DEFAULT); //lv_obj_set_width(ui->dimmerinfo_retrunbtn_label, LV_PCT(100)); lv_obj_set_pos(ui->dimmerinfo_retrunbtn, 8, 8); lv_obj_set_size(ui->dimmerinfo_retrunbtn, 60, 60); //Write style for dimmerinfo_retrunbtn, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_bg_opa(ui->dimmerinfo_retrunbtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_border_width(ui->dimmerinfo_retrunbtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_radius(ui->dimmerinfo_retrunbtn, 5, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_shadow_width(ui->dimmerinfo_retrunbtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_text_color(ui->dimmerinfo_retrunbtn, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_text_font(ui->dimmerinfo_retrunbtn, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_text_opa(ui->dimmerinfo_retrunbtn, 255, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_text_align(ui->dimmerinfo_retrunbtn, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_namelabel ui->dimmerinfo_namelabel = lv_label_create(ui->dimmerinfo); if(strlen(downlight->Label)) { lv_label_set_text_fmt(ui->dimmerinfo_namelabel,"%s" ,downlight->Label); } else { if(downlight==(Downlights_Info *)&nvs_SysInfo.downlights[0]) { lv_label_set_text(ui->dimmerinfo_namelabel, Menu_List[GET_nvs_Sys_Info_language()][MENU_LIST_dimmer_group1_infobtn]); } else if(downlight==(Downlights_Info *)&nvs_SysInfo.downlights[1]) { lv_label_set_text(ui->dimmerinfo_namelabel, Menu_List[GET_nvs_Sys_Info_language()][MENU_LIST_dimmer_group2_infobtn]); } else if(downlight==(Downlights_Info *)&nvs_SysInfo.downlights[2]) { lv_label_set_text(ui->dimmerinfo_namelabel, Menu_List[GET_nvs_Sys_Info_language()][MENU_LIST_dimmer_group3_infobtn]); } else //if(downlight==(Downlights_Info *)&nvs_SysInfo.downlights[3]) { lv_label_set_text(ui->dimmerinfo_namelabel, Menu_List[GET_nvs_Sys_Info_language()][MENU_LIST_dimmer_group4_infobtn]); } } lv_label_set_long_mode(ui->dimmerinfo_namelabel, LV_LABEL_LONG_WRAP); lv_obj_set_pos(ui->dimmerinfo_namelabel, 110, 32); lv_obj_set_size(ui->dimmerinfo_namelabel, 260, 20); //Write style for dimmerinfo_namelabel, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_border_width(ui->dimmerinfo_namelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_radius(ui->dimmerinfo_namelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_color(ui->dimmerinfo_namelabel, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_font(ui->dimmerinfo_namelabel, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_opa(ui->dimmerinfo_namelabel, 255, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_letter_space(ui->dimmerinfo_namelabel, 2, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_line_space(ui->dimmerinfo_namelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_align(ui->dimmerinfo_namelabel, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(ui->dimmerinfo_namelabel, 255, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_bg_color(ui->dimmerinfo_namelabel, lv_color_hex(0x000000), LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_bg_grad_dir(ui->dimmerinfo_namelabel, LV_GRAD_DIR_NONE, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_top(ui->dimmerinfo_namelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_right(ui->dimmerinfo_namelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_bottom(ui->dimmerinfo_namelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_left(ui->dimmerinfo_namelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_shadow_width(ui->dimmerinfo_namelabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_heartbg ui->dimmerinfo_heartbg = lv_img_create(ui->dimmerinfo); lv_obj_add_flag(ui->dimmerinfo_heartbg, LV_OBJ_FLAG_CLICKABLE); lv_img_set_src(ui->dimmerinfo_heartbg, LVGL_PATH(heart_off_icon.png)); lv_img_set_pivot(ui->dimmerinfo_heartbg, 50,50); lv_img_set_angle(ui->dimmerinfo_heartbg, 0); lv_obj_set_pos(ui->dimmerinfo_heartbg, 374, 24); lv_obj_set_size(ui->dimmerinfo_heartbg, 28, 28); //Write style for dimmerinfo_heartbg, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_img_opa(ui->dimmerinfo_heartbg, 255, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_lockbtn ui->dimmerinfo_lockbtn = lv_btn_create(ui->dimmerinfo); // ui->dimmerinfo_lockbtn_label = lv_label_create(ui->dimmerinfo_lockbtn); // lv_label_set_text(ui->dimmerinfo_lockbtn_label, ""); // lv_label_set_long_mode(ui->dimmerinfo_lockbtn_label, LV_LABEL_LONG_WRAP); // lv_obj_align(ui->dimmerinfo_lockbtn_label, LV_ALIGN_CENTER, 0, 0); lv_obj_set_style_pad_all(ui->dimmerinfo_lockbtn, 0, LV_STATE_DEFAULT); // lv_obj_set_width(ui->dimmerinfo_lockbtn_label, LV_PCT(100)); lv_obj_set_pos(ui->dimmerinfo_lockbtn, 364, 13); lv_obj_set_size(ui->dimmerinfo_lockbtn, 48, 50); //Write style for dimmerinfo_lockbtn, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_bg_opa(ui->dimmerinfo_lockbtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_border_width(ui->dimmerinfo_lockbtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_radius(ui->dimmerinfo_lockbtn, 5, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_shadow_width(ui->dimmerinfo_lockbtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_text_color(ui->dimmerinfo_lockbtn, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_text_font(ui->dimmerinfo_lockbtn, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_text_opa(ui->dimmerinfo_lockbtn, 255, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_text_align(ui->dimmerinfo_lockbtn, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_coldimgbg ui->dimmerinfo_coldimgbg = lv_img_create(ui->dimmerinfo); lv_obj_add_flag(ui->dimmerinfo_coldimgbg, LV_OBJ_FLAG_CLICKABLE); lv_img_set_src(ui->dimmerinfo_coldimgbg, LVGL_PATH(dimmer_color_cold_info.png)); lv_img_set_pivot(ui->dimmerinfo_coldimgbg, 50,50); lv_img_set_angle(ui->dimmerinfo_coldimgbg, 0); lv_obj_set_pos(ui->dimmerinfo_coldimgbg, 16, 81); lv_obj_set_size(ui->dimmerinfo_coldimgbg, 386, 128); //Write style for dimmerinfo_coldimgbg, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_img_opa(ui->dimmerinfo_coldimgbg, 255, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_coldslider ui->dimmerinfo_coldslider = lv_slider_create(ui->dimmerinfo); lv_slider_set_range(ui->dimmerinfo_coldslider, 0, 100); lv_slider_set_mode(ui->dimmerinfo_coldslider, LV_SLIDER_MODE_NORMAL); lv_slider_set_value(ui->dimmerinfo_coldslider, downlight->brightness, LV_ANIM_OFF); lv_obj_set_pos(ui->dimmerinfo_coldslider, 44, 81); lv_obj_set_size(ui->dimmerinfo_coldslider, 332, 128); // lv_obj_set_style_bg_img_src(ui->dimmerinfo_coldslider, LVGL_PATH(dimmer_color_cold_info.png), LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_radius(ui->dimmerinfo_coldslider, 0, LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_bg_color(ui->dimmerinfo_coldslider, lv_color_hex(0xFFFFFF), LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(ui->dimmerinfo_coldslider, 0, LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_radius(ui->dimmerinfo_coldslider, 0, LV_PART_INDICATOR | LV_STATE_DEFAULT); lv_obj_set_style_bg_color(ui->dimmerinfo_coldslider, lv_color_hex(0xFFFFFF), LV_PART_INDICATOR | LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(ui->dimmerinfo_coldslider, 0, LV_PART_INDICATOR | LV_STATE_DEFAULT); lv_obj_set_style_bg_color(ui->dimmerinfo_coldslider, lv_color_hex(0xFFFFFF), LV_PART_KNOB | LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(ui->dimmerinfo_coldslider, 0, LV_PART_KNOB | LV_STATE_DEFAULT); lv_obj_set_style_bg_img_src(ui->dimmerinfo_coldslider, LVGL_PATH(dimmer_knob_info.png), LV_PART_KNOB | LV_STATE_DEFAULT); // //Write style for dimmerinfo_coldslider, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. // lv_obj_set_style_bg_opa(ui->dimmerinfo_coldslider, 60, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_bg_color(ui->dimmerinfo_coldslider, lv_color_hex(0x2195f6), LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_bg_grad_dir(ui->dimmerinfo_coldslider, LV_GRAD_DIR_NONE, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_radius(ui->dimmerinfo_coldslider, 50, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_outline_width(ui->dimmerinfo_coldslider, 0, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_shadow_width(ui->dimmerinfo_coldslider, 0, LV_PART_MAIN|LV_STATE_DEFAULT); // //Write style for dimmerinfo_coldslider, Part: LV_PART_INDICATOR, State: LV_STATE_DEFAULT. // lv_obj_set_style_bg_opa(ui->dimmerinfo_coldslider, 255, LV_PART_INDICATOR|LV_STATE_DEFAULT); // lv_obj_set_style_bg_color(ui->dimmerinfo_coldslider, lv_color_hex(0x2195f6), LV_PART_INDICATOR|LV_STATE_DEFAULT); // lv_obj_set_style_bg_grad_dir(ui->dimmerinfo_coldslider, LV_GRAD_DIR_NONE, LV_PART_INDICATOR|LV_STATE_DEFAULT); // lv_obj_set_style_radius(ui->dimmerinfo_coldslider, 50, LV_PART_INDICATOR|LV_STATE_DEFAULT); // //Write style for dimmerinfo_coldslider, Part: LV_PART_KNOB, State: LV_STATE_DEFAULT. // lv_obj_set_style_bg_opa(ui->dimmerinfo_coldslider, 255, LV_PART_KNOB|LV_STATE_DEFAULT); // lv_obj_set_style_bg_color(ui->dimmerinfo_coldslider, lv_color_hex(0x2195f6), LV_PART_KNOB|LV_STATE_DEFAULT); // lv_obj_set_style_bg_grad_dir(ui->dimmerinfo_coldslider, LV_GRAD_DIR_NONE, LV_PART_KNOB|LV_STATE_DEFAULT); // lv_obj_set_style_radius(ui->dimmerinfo_coldslider, 50, LV_PART_KNOB|LV_STATE_DEFAULT); //Write codes dimmerinfo_coldicon ui->dimmerinfo_coldicon = lv_img_create(ui->dimmerinfo); lv_obj_add_flag(ui->dimmerinfo_coldicon, LV_OBJ_FLAG_CLICKABLE); lv_img_set_src(ui->dimmerinfo_coldicon, LVGL_PATH(dimmer_temp_icon_info.png)); lv_img_set_pivot(ui->dimmerinfo_coldicon, 50,50); lv_img_set_angle(ui->dimmerinfo_coldicon, 0); lv_obj_set_pos(ui->dimmerinfo_coldicon, 30, 93); lv_obj_set_size(ui->dimmerinfo_coldicon, 29, 28); //Write style for dimmerinfo_coldicon, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_img_opa(ui->dimmerinfo_coldicon, 255, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_coldlabel ui->dimmerinfo_coldlabel = lv_label_create(ui->dimmerinfo); lv_label_set_text(ui->dimmerinfo_coldlabel, Menu_List[GET_nvs_Sys_Info_language()][MENU_LIST_dimmer_group1_cold]); lv_label_set_long_mode(ui->dimmerinfo_coldlabel, LV_LABEL_LONG_WRAP); lv_obj_set_pos(ui->dimmerinfo_coldlabel, 64, 99); lv_obj_set_size(ui->dimmerinfo_coldlabel, 240, 20); //Write style for dimmerinfo_coldlabel, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_border_width(ui->dimmerinfo_coldlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_radius(ui->dimmerinfo_coldlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_color(ui->dimmerinfo_coldlabel, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_font(ui->dimmerinfo_coldlabel, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_opa(ui->dimmerinfo_coldlabel, 255, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_letter_space(ui->dimmerinfo_coldlabel, 2, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_line_space(ui->dimmerinfo_coldlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_align(ui->dimmerinfo_coldlabel, LV_TEXT_ALIGN_LEFT, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(ui->dimmerinfo_coldlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_top(ui->dimmerinfo_coldlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_right(ui->dimmerinfo_coldlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_bottom(ui->dimmerinfo_coldlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_left(ui->dimmerinfo_coldlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_shadow_width(ui->dimmerinfo_coldlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_coldpercentlabel ui->dimmerinfo_coldpercentlabel = lv_label_create(ui->dimmerinfo); lv_label_set_text_fmt(ui->dimmerinfo_coldpercentlabel,"%d%%", downlight->brightness); lv_label_set_long_mode(ui->dimmerinfo_coldpercentlabel, LV_LABEL_LONG_WRAP); lv_obj_set_pos(ui->dimmerinfo_coldpercentlabel, 410, 135); lv_obj_set_size(ui->dimmerinfo_coldpercentlabel, 60, 20); //Write style for dimmerinfo_coldpercentlabel, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_border_width(ui->dimmerinfo_coldpercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_radius(ui->dimmerinfo_coldpercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_color(ui->dimmerinfo_coldpercentlabel, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_font(ui->dimmerinfo_coldpercentlabel, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_opa(ui->dimmerinfo_coldpercentlabel, 255, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_letter_space(ui->dimmerinfo_coldpercentlabel, 2, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_line_space(ui->dimmerinfo_coldpercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_align(ui->dimmerinfo_coldpercentlabel, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(ui->dimmerinfo_coldpercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_top(ui->dimmerinfo_coldpercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_right(ui->dimmerinfo_coldpercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_bottom(ui->dimmerinfo_coldpercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_left(ui->dimmerinfo_coldpercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_shadow_width(ui->dimmerinfo_coldpercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_tempimgbg ui->dimmerinfo_tempimgbg = lv_img_create(ui->dimmerinfo); lv_obj_add_flag(ui->dimmerinfo_tempimgbg, LV_OBJ_FLAG_CLICKABLE); lv_img_set_src(ui->dimmerinfo_tempimgbg, LVGL_PATH(dimmer_color_temp_info.png)); lv_img_set_pivot(ui->dimmerinfo_tempimgbg, 50,50); lv_img_set_angle(ui->dimmerinfo_tempimgbg, 0); lv_obj_set_pos(ui->dimmerinfo_tempimgbg, 16, 225); lv_obj_set_size(ui->dimmerinfo_tempimgbg, 386, 128); //Write style for dimmerinfo_tempimgbg, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_img_opa(ui->dimmerinfo_tempimgbg, 255, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_tempslider ui->dimmerinfo_tempslider = lv_slider_create(ui->dimmerinfo); lv_slider_set_range(ui->dimmerinfo_tempslider, 0, 100); lv_slider_set_mode(ui->dimmerinfo_tempslider, LV_SLIDER_MODE_NORMAL); lv_slider_set_value(ui->dimmerinfo_tempslider, downlight->colortemperature, LV_ANIM_OFF); lv_obj_set_pos(ui->dimmerinfo_tempslider, 44, 225); lv_obj_set_size(ui->dimmerinfo_tempslider, 332, 128); // lv_obj_set_style_bg_img_src(ui->dimmerinfo_tempslider, LVGL_PATH(dimmer_color_temp_info.png), LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_radius(ui->dimmerinfo_tempslider, 0, LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_bg_color(ui->dimmerinfo_tempslider, lv_color_hex(0xFFFFFF), LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(ui->dimmerinfo_tempslider, 0, LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_radius(ui->dimmerinfo_tempslider, 0, LV_PART_INDICATOR | LV_STATE_DEFAULT); lv_obj_set_style_bg_color(ui->dimmerinfo_tempslider, lv_color_hex(0xFFFFFF), LV_PART_INDICATOR | LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(ui->dimmerinfo_tempslider, 0, LV_PART_INDICATOR | LV_STATE_DEFAULT); lv_obj_set_style_bg_color(ui->dimmerinfo_tempslider, lv_color_hex(0xFFFFFF), LV_PART_KNOB | LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(ui->dimmerinfo_tempslider, 0, LV_PART_KNOB | LV_STATE_DEFAULT); lv_obj_set_style_bg_img_src(ui->dimmerinfo_tempslider, LVGL_PATH(dimmer_knob_info.png), LV_PART_KNOB | LV_STATE_DEFAULT); // //Write style for dimmerinfo_tempslider, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. // lv_obj_set_style_bg_opa(ui->dimmerinfo_tempslider, 60, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_bg_color(ui->dimmerinfo_tempslider, lv_color_hex(0x2195f6), LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_bg_grad_dir(ui->dimmerinfo_tempslider, LV_GRAD_DIR_NONE, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_radius(ui->dimmerinfo_tempslider, 50, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_outline_width(ui->dimmerinfo_tempslider, 0, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_shadow_width(ui->dimmerinfo_tempslider, 0, LV_PART_MAIN|LV_STATE_DEFAULT); // //Write style for dimmerinfo_tempslider, Part: LV_PART_INDICATOR, State: LV_STATE_DEFAULT. // lv_obj_set_style_bg_opa(ui->dimmerinfo_tempslider, 255, LV_PART_INDICATOR|LV_STATE_DEFAULT); // lv_obj_set_style_bg_color(ui->dimmerinfo_tempslider, lv_color_hex(0x2195f6), LV_PART_INDICATOR|LV_STATE_DEFAULT); // lv_obj_set_style_bg_grad_dir(ui->dimmerinfo_tempslider, LV_GRAD_DIR_NONE, LV_PART_INDICATOR|LV_STATE_DEFAULT); // lv_obj_set_style_radius(ui->dimmerinfo_tempslider, 50, LV_PART_INDICATOR|LV_STATE_DEFAULT); // //Write style for dimmerinfo_tempslider, Part: LV_PART_KNOB, State: LV_STATE_DEFAULT. // lv_obj_set_style_bg_opa(ui->dimmerinfo_tempslider, 255, LV_PART_KNOB|LV_STATE_DEFAULT); // lv_obj_set_style_bg_color(ui->dimmerinfo_tempslider, lv_color_hex(0x2195f6), LV_PART_KNOB|LV_STATE_DEFAULT); // lv_obj_set_style_bg_grad_dir(ui->dimmerinfo_tempslider, LV_GRAD_DIR_NONE, LV_PART_KNOB|LV_STATE_DEFAULT); // lv_obj_set_style_radius(ui->dimmerinfo_tempslider, 50, LV_PART_KNOB|LV_STATE_DEFAULT); //Write codes dimmerinfo_tempicon ui->dimmerinfo_tempicon = lv_img_create(ui->dimmerinfo); lv_obj_add_flag(ui->dimmerinfo_tempicon, LV_OBJ_FLAG_CLICKABLE); lv_img_set_src(ui->dimmerinfo_tempicon, LVGL_PATH(dimmer_clod_icon_info.png)); lv_img_set_pivot(ui->dimmerinfo_tempicon, 50,50); lv_img_set_angle(ui->dimmerinfo_tempicon, 0); lv_obj_set_pos(ui->dimmerinfo_tempicon, 32, 236); lv_obj_set_size(ui->dimmerinfo_tempicon, 21, 22); //Write style for dimmerinfo_tempicon, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_img_opa(ui->dimmerinfo_tempicon, 255, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_templabel ui->dimmerinfo_templabel = lv_label_create(ui->dimmerinfo); lv_label_set_text(ui->dimmerinfo_templabel, Menu_List[GET_nvs_Sys_Info_language()][MENU_LIST_dimmer_group1_temp]); lv_label_set_long_mode(ui->dimmerinfo_templabel, LV_LABEL_LONG_WRAP); lv_obj_set_pos(ui->dimmerinfo_templabel, 61, 237); lv_obj_set_size(ui->dimmerinfo_templabel, 240, 20); //Write style for dimmerinfo_templabel, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_border_width(ui->dimmerinfo_templabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_radius(ui->dimmerinfo_templabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_color(ui->dimmerinfo_templabel, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_font(ui->dimmerinfo_templabel, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_opa(ui->dimmerinfo_templabel, 255, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_letter_space(ui->dimmerinfo_templabel, 2, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_line_space(ui->dimmerinfo_templabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_align(ui->dimmerinfo_templabel, LV_TEXT_ALIGN_LEFT, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(ui->dimmerinfo_templabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_top(ui->dimmerinfo_templabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_right(ui->dimmerinfo_templabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_bottom(ui->dimmerinfo_templabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_left(ui->dimmerinfo_templabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_shadow_width(ui->dimmerinfo_templabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_temppercentlabel ui->dimmerinfo_temppercentlabel = lv_label_create(ui->dimmerinfo); lv_label_set_text_fmt(ui->dimmerinfo_temppercentlabel,"%d%%",downlight->colortemperature); lv_label_set_long_mode(ui->dimmerinfo_temppercentlabel, LV_LABEL_LONG_WRAP); lv_obj_set_pos(ui->dimmerinfo_temppercentlabel, 410, 279); lv_obj_set_size(ui->dimmerinfo_temppercentlabel, 60, 20); //Write style for dimmerinfo_temppercentlabel, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. lv_obj_set_style_border_width(ui->dimmerinfo_temppercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_radius(ui->dimmerinfo_temppercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_color(ui->dimmerinfo_temppercentlabel, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_font(ui->dimmerinfo_temppercentlabel, &lv_font_simsun_16, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_opa(ui->dimmerinfo_temppercentlabel, 255, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_letter_space(ui->dimmerinfo_temppercentlabel, 2, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_line_space(ui->dimmerinfo_temppercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_text_align(ui->dimmerinfo_temppercentlabel, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(ui->dimmerinfo_temppercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_top(ui->dimmerinfo_temppercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_right(ui->dimmerinfo_temppercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_bottom(ui->dimmerinfo_temppercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_pad_left(ui->dimmerinfo_temppercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_shadow_width(ui->dimmerinfo_temppercentlabel, 0, LV_PART_MAIN|LV_STATE_DEFAULT); //Write codes dimmerinfo_onoffbtn ui->dimmerinfo_onoffbtn = lv_imgbtn_create(ui->dimmerinfo); lv_obj_add_flag(ui->dimmerinfo_onoffbtn, LV_OBJ_FLAG_CHECKABLE); // ui->dimmerinfo_onoffbtn_label = lv_label_create(ui->dimmerinfo_onoffbtn); // lv_label_set_text(ui->dimmerinfo_onoffbtn_label, ""); // lv_label_set_long_mode(ui->dimmerinfo_onoffbtn_label, LV_LABEL_LONG_WRAP); // lv_obj_align(ui->dimmerinfo_onoffbtn_label, LV_ALIGN_CENTER, 0, 0); lv_obj_set_style_pad_all(ui->dimmerinfo_onoffbtn, 0, LV_STATE_DEFAULT); lv_obj_set_pos(ui->dimmerinfo_onoffbtn, 207, 380); lv_obj_set_size(ui->dimmerinfo_onoffbtn, 68, 68); //Write style for dimmerinfo_onoffbtn, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT. // lv_obj_set_style_text_color(ui->dimmerinfo_onoffbtn, lv_color_hex(0x000000), LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_text_font(ui->dimmerinfo_onoffbtn, &lv_font_DroidSansFallback_12, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_text_opa(ui->dimmerinfo_onoffbtn, 255, LV_PART_MAIN|LV_STATE_DEFAULT); // lv_obj_set_style_text_align(ui->dimmerinfo_onoffbtn, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN|LV_STATE_DEFAULT); lv_obj_set_style_shadow_width(ui->dimmerinfo_onoffbtn, 0, LV_PART_MAIN|LV_STATE_DEFAULT); //Write style for dimmerinfo_onoffbtn, Part: LV_PART_MAIN, State: LV_STATE_PRESSED. lv_obj_set_style_img_opa(ui->dimmerinfo_onoffbtn, 255, LV_PART_MAIN|LV_STATE_PRESSED); // lv_obj_set_style_text_color(ui->dimmerinfo_onoffbtn, lv_color_hex(0xFF33FF), LV_PART_MAIN|LV_STATE_PRESSED); // lv_obj_set_style_text_font(ui->dimmerinfo_onoffbtn, &lv_font_DroidSansFallback_12, LV_PART_MAIN|LV_STATE_PRESSED); // lv_obj_set_style_text_opa(ui->dimmerinfo_onoffbtn, 255, LV_PART_MAIN|LV_STATE_PRESSED); lv_obj_set_style_shadow_width(ui->dimmerinfo_onoffbtn, 0, LV_PART_MAIN|LV_STATE_PRESSED); //Write style for dimmerinfo_onoffbtn, Part: LV_PART_MAIN, State: LV_STATE_CHECKED. lv_obj_set_style_img_opa(ui->dimmerinfo_onoffbtn, 255, LV_PART_MAIN|LV_STATE_CHECKED); // lv_obj_set_style_text_color(ui->dimmerinfo_onoffbtn, lv_color_hex(0xFF33FF), LV_PART_MAIN|LV_STATE_CHECKED); // lv_obj_set_style_text_font(ui->dimmerinfo_onoffbtn, &lv_font_DroidSansFallback_12, LV_PART_MAIN|LV_STATE_CHECKED); // lv_obj_set_style_text_opa(ui->dimmerinfo_onoffbtn, 255, LV_PART_MAIN|LV_STATE_CHECKED); lv_obj_set_style_shadow_width(ui->dimmerinfo_onoffbtn, 0, LV_PART_MAIN|LV_STATE_CHECKED); //Write style for dimmerinfo_onoffbtn, Part: LV_PART_MAIN, State: LV_IMGBTN_STATE_RELEASED. lv_obj_set_style_img_opa(ui->dimmerinfo_onoffbtn, 255, LV_PART_MAIN|LV_IMGBTN_STATE_RELEASED); //The custom code of dimmerinfo. if(downlight->status) { lv_imgbtn_set_src(ui->dimmerinfo_onoffbtn, LV_IMGBTN_STATE_RELEASED, NULL, LVGL_PATH(dimmerinfo_on_btn.png), NULL); lv_imgbtn_set_src(ui->dimmerinfo_onoffbtn, LV_IMGBTN_STATE_PRESSED, NULL, LVGL_PATH(dimmerinfo_on_btn.png), NULL); lv_imgbtn_set_src(ui->dimmerinfo_onoffbtn, LV_IMGBTN_STATE_CHECKED_RELEASED, NULL, LVGL_PATH(dimmerinfo_on_btn.png), NULL); lv_imgbtn_set_src(ui->dimmerinfo_onoffbtn, LV_IMGBTN_STATE_CHECKED_PRESSED, NULL, LVGL_PATH(dimmerinfo_on_btn.png), NULL); } else { lv_imgbtn_set_src(ui->dimmerinfo_onoffbtn, LV_IMGBTN_STATE_RELEASED, NULL, LVGL_PATH(dimmerinfo_off_btn.png), NULL); lv_imgbtn_set_src(ui->dimmerinfo_onoffbtn, LV_IMGBTN_STATE_PRESSED, NULL, LVGL_PATH(dimmerinfo_off_btn.png), NULL); lv_imgbtn_set_src(ui->dimmerinfo_onoffbtn, LV_IMGBTN_STATE_CHECKED_RELEASED, NULL, LVGL_PATH(dimmerinfo_off_btn.png), NULL); lv_imgbtn_set_src(ui->dimmerinfo_onoffbtn, LV_IMGBTN_STATE_CHECKED_PRESSED, NULL, LVGL_PATH(dimmerinfo_off_btn.png), NULL); } //Update current screen layout. lv_obj_update_layout(ui->dimmerinfo); //Init events for screen. events_init_dimmerinfo(ui); }