/* * Copyright 2025 NXP * NXP 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. */ #ifndef GUI_GUIDER_H #define GUI_GUIDER_H #ifdef __cplusplus extern "C" { #endif #include "lvgl.h" typedef struct { lv_obj_t *screen_main; bool screen_main_del; lv_obj_t *screen_main_label_14; lv_obj_t *screen_main_label_lvxin; lv_obj_t *screen_main_label_19; lv_obj_t *screen_main_cont_open; lv_obj_t *screen_main_arc_temp; lv_obj_t *screen_main_cont_temp_set; lv_obj_t *screen_main_btn_temp_up; lv_obj_t *screen_main_btn_temp_up_label; lv_obj_t *screen_main_btn_temp_down; lv_obj_t *screen_main_btn_temp_down_label; lv_obj_t *screen_main_cont_speed; lv_obj_t *screen_main_imgbtn_speed3; lv_obj_t *screen_main_imgbtn_speed3_label; lv_obj_t *screen_main_imgbtn_speed2; lv_obj_t *screen_main_imgbtn_speed2_label; lv_obj_t *screen_main_imgbtn_speed1; lv_obj_t *screen_main_imgbtn_speed1_label; lv_obj_t *screen_main_cont_data; lv_obj_t *screen_main_label_temp; lv_obj_t *screen_main_label_9; lv_obj_t *screen_main_label_8; lv_obj_t *screen_main_label_hum_vul2; lv_obj_t *screen_main_label_10; lv_obj_t *screen_main_label_7; lv_obj_t *screen_main_cont_mode; lv_obj_t *screen_main_imgbtn_tf; lv_obj_t *screen_main_imgbtn_tf_label; lv_obj_t *screen_main_imgbtn_heat; lv_obj_t *screen_main_imgbtn_heat_label; lv_obj_t *screen_main_imgbtn_cold; lv_obj_t *screen_main_imgbtn_cold_label; lv_obj_t *screen_main_imgbtn_power; lv_obj_t *screen_main_imgbtn_power_label; lv_obj_t *screen_main_label_temp_set; lv_obj_t *screen_main_label_21; lv_obj_t *screen_main_label_20; lv_obj_t *screen_main_label_; lv_obj_t *screen_main_cont_close; lv_obj_t *screen_main_label_25; lv_obj_t *screen_main_label_22; lv_obj_t *screen_main_label_temp_2; lv_obj_t *screen_main_label_hum_2; lv_obj_t *screen_main_btn_close_power; lv_obj_t *screen_main_btn_close_power_label; lv_obj_t *screen_main_lab_485_err; lv_obj_t *screen_main_lab_err; lv_obj_t *screen_main_label_wifi; lv_obj_t *screen_main_lab_cloud1; lv_obj_t *screen_main_label_filter_error; lv_obj_t *screen_main_lab_new_fan_mode; lv_obj_t *screen_main_label_xf_conn; lv_obj_t *SettingPage; bool SettingPage_del; lv_obj_t *SettingPage_tabview_1; lv_obj_t *SettingPage_tabview_1_tab_1; lv_obj_t *SettingPage_tabview_1_tab_2; lv_obj_t *SettingPage_tabview_1_tab_3; lv_obj_t *SettingPage_tabview_1_tab_4; lv_obj_t *SettingPage_list_wifi; lv_obj_t *SettingPage_label_1; lv_obj_t *SettingPage_lab_wifi_status; lv_obj_t *SettingPage_btn_1; lv_obj_t *SettingPage_btn_1_label; lv_obj_t *SettingPage_p_wifi_connect; lv_obj_t *SettingPage_label_2; lv_obj_t *SettingPage_label_3; lv_obj_t *SettingPage_lab_wifi_ssid; lv_obj_t *SettingPage_btn_2; lv_obj_t *SettingPage_btn_2_label; lv_obj_t *SettingPage_txt_wifi_password; lv_obj_t *SettingPage_btn_3; lv_obj_t *SettingPage_btn_3_label; lv_obj_t *SettingPage_sp_wifi_scan; lv_obj_t *SettingPage_btn_5; lv_obj_t *SettingPage_btn_5_label; lv_obj_t *SettingPage_sw_sound; lv_obj_t *SettingPage_label_10; lv_obj_t *SettingPage_label_9; lv_obj_t *SettingPage_slider_sound_level; lv_obj_t *SettingPage_label_11; lv_obj_t *SettingPage_sw_1; lv_obj_t *SettingPage_label_12; lv_obj_t *SettingPage_spinbox_2; lv_obj_t *SettingPage_spinbox_2_btn_plus; lv_obj_t *SettingPage_spinbox_2_btn_minus; lv_obj_t *SettingPage_cont_1; lv_obj_t *SettingPage_btn_4; lv_obj_t *SettingPage_btn_4_label; lv_obj_t *SettingPage_ta_1; lv_obj_t *SettingPage_label_5; lv_obj_t *SettingPage_lab_password_incorrect; lv_obj_t *SettingPage_label_6; lv_obj_t *SettingPage_qr_device_code; lv_obj_t *SettingPage_lab_version; lv_obj_t *SettingPage_label_7; lv_obj_t *SettingPage_label_8; lv_obj_t *SettingPage_label_13; lv_obj_t *SettingPage_lab_serial; lv_obj_t *FactorySettingPage; bool FactorySettingPage_del; lv_obj_t *FactorySettingPage_tabview_1; lv_obj_t *FactorySettingPage_tabview_1_tab_1; lv_obj_t *FactorySettingPage_tabview_1_tab_2; lv_obj_t *FactorySettingPage_tabview_1_tab_3; lv_obj_t *FactorySettingPage_btn_set_save; lv_obj_t *FactorySettingPage_btn_set_save_label; lv_obj_t *FactorySettingPage_btn_refresh; lv_obj_t *FactorySettingPage_btn_refresh_label; lv_obj_t *FactorySettingPage_btn_7; lv_obj_t *FactorySettingPage_btn_7_label; lv_obj_t *FactorySettingPage_btn_8; lv_obj_t *FactorySettingPage_btn_8_label; lv_obj_t *FactorySettingPage_sp_hum_recoup; lv_obj_t *FactorySettingPage_sp_hum_recoup_btn_plus; lv_obj_t *FactorySettingPage_sp_hum_recoup_btn_minus; lv_obj_t *FactorySettingPage_sp_temp_recoup; lv_obj_t *FactorySettingPage_sp_temp_recoup_btn_plus; lv_obj_t *FactorySettingPage_sp_temp_recoup_btn_minus; lv_obj_t *FactorySettingPage_label_2; lv_obj_t *FactorySettingPage_label_1; lv_obj_t *FactorySettingPage_lab_inner_addr; lv_obj_t *FactorySettingPage_label_detail_error; lv_obj_t *FactorySettingPage_btn_error; lv_obj_t *FactorySettingPage_btn_error_label; lv_obj_t *FactorySettingPage_btn_4; lv_obj_t *FactorySettingPage_btn_4_label; lv_obj_t *FactorySettingPage_btn_5; lv_obj_t *FactorySettingPage_btn_5_label; lv_obj_t *FactorySettingPage_btn_filter_life_clear; lv_obj_t *FactorySettingPage_btn_filter_life_clear_label; lv_obj_t *FactorySettingPage_btn_6; lv_obj_t *FactorySettingPage_btn_6_label; lv_obj_t *OTAPage; bool OTAPage_del; lv_obj_t *OTAPage_label_1; lv_obj_t *OTAPage_label_2; lv_obj_t *OTAPage_label_3; lv_obj_t *OTAPage_lab_ota_current_version; lv_obj_t *OTAPage_lab_ota_remote_version; lv_obj_t *OTAPage_btn_exit; lv_obj_t *OTAPage_btn_exit_label; lv_obj_t *OTAPage_label_4; lv_obj_t *OTAPage_bar_ota_progress; lv_obj_t *g_kb_top_layer; }lv_ui; typedef void (*ui_setup_scr_t)(lv_ui * ui); void ui_init_style(lv_style_t * style); void ui_load_scr_animation(lv_ui *ui, lv_obj_t ** new_scr, bool new_scr_del, bool * old_scr_del, ui_setup_scr_t setup_scr, lv_screen_load_anim_t anim_type, uint32_t time, uint32_t delay, bool is_clean, bool auto_del); void ui_animation(void * var, uint32_t duration, int32_t delay, int32_t start_value, int32_t end_value, lv_anim_path_cb_t path_cb, uint32_t repeat_cnt, uint32_t repeat_delay, uint32_t playback_time, uint32_t playback_delay, lv_anim_exec_xcb_t exec_cb, lv_anim_start_cb_t start_cb, lv_anim_completed_cb_t ready_cb, lv_anim_deleted_cb_t deleted_cb); void init_scr_del_flag(lv_ui *ui); void setup_bottom_layer(void); void setup_ui(lv_ui *ui); void video_play(lv_ui *ui); void init_keyboard(lv_ui *ui); extern lv_ui guider_ui; void setup_scr_screen_main(lv_ui *ui); void setup_scr_SettingPage(lv_ui *ui); void setup_scr_FactorySettingPage(lv_ui *ui); void setup_scr_OTAPage(lv_ui *ui); LV_IMAGE_DECLARE(_back2_RGB565A8_480x480); LV_IMAGE_DECLARE(_jia_RGB565A8_38x38); LV_IMAGE_DECLARE(_jian_RGB565A8_38x38); LV_IMAGE_DECLARE(_speed3_off_RGB565A8_48x48); LV_IMAGE_DECLARE(_speed3_RGB565A8_48x48); LV_IMAGE_DECLARE(_speed2_off_RGB565A8_48x48); LV_IMAGE_DECLARE(_speed2_RGB565A8_48x48); LV_IMAGE_DECLARE(_speed1_off_RGB565A8_48x48); LV_IMAGE_DECLARE(_speed1_RGB565A8_48x48); LV_IMAGE_DECLARE(_tf_off_RGB565A8_48x48); LV_IMAGE_DECLARE(_tf_RGB565A8_48x48); LV_IMAGE_DECLARE(_heat_off_RGB565A8_48x48); LV_IMAGE_DECLARE(_heat_RGB565A8_48x48); LV_IMAGE_DECLARE(_cold_off_RGB565A8_48x48); LV_IMAGE_DECLARE(_cold_RGB565A8_48x48); LV_IMAGE_DECLARE(_power_RGB565A8_50x50); LV_IMAGE_DECLARE(_ac_power_on_RGB565A8_80x80); LV_IMAGE_DECLARE(_WiFiruo_RGB565A8_30x30); LV_FONT_DECLARE(lv_font_Alibaba_PuHuiTi_Medium_18) LV_FONT_DECLARE(lv_font_montserratMedium_16) LV_FONT_DECLARE(lv_font_iconfont_16) LV_FONT_DECLARE(lv_font_montserratMedium_12) LV_FONT_DECLARE(lv_font_Alibaba_PuHuiTi_Medium_24) LV_FONT_DECLARE(lv_font_iconfont_22) LV_FONT_DECLARE(lv_font_Alibaba_PuHuiTi_Medium_16) LV_FONT_DECLARE(lv_font_montserratMedium_48) LV_FONT_DECLARE(lv_font_Alibaba_PuHuiTi_Medium_26) LV_FONT_DECLARE(lv_font_iconfont_28) LV_FONT_DECLARE(lv_font_Alibaba_PuHuiTi_Medium_25) LV_FONT_DECLARE(lv_font_Alibaba_PuHuiTi_Medium_20) LV_FONT_DECLARE(lv_font_SourceHanSerifSC_Regular_18) #ifdef __cplusplus } #endif #endif