/** * @file lv_test_theme_1.c * */ /********************* * INCLUDES *********************/ #include "lv_test_theme_1.h" #include #if LV_USE_TESTS /********************* * DEFINES *********************/ /********************** * TYPEDEFS **********************/ /********************** * STATIC PROTOTYPES **********************/ /*static void create_tab1(lv_obj_t * parent); static void create_tab2(lv_obj_t * parent); static void create_tab3(lv_obj_t * parent);*/ /********************** * STATIC VARIABLES **********************/ #if LV_DEMO_WALLPAPER LV_IMG_DECLARE(blue_color) #endif LV_IMG_DECLARE(white) LV_IMG_DECLARE(up) LV_IMG_DECLARE(down) LV_IMG_DECLARE(leaf_new) LV_IMG_DECLARE(humidity) LV_IMG_DECLARE(away) LV_IMG_DECLARE(wifi) LV_IMG_DECLARE(menu) LV_IMG_DECLARE(mode) LV_IMG_DECLARE(heat) LV_IMG_DECLARE(temperature) LV_IMG_DECLARE(room_temp) /********************** * MACROS **********************/ /********************** * GLOBAL FUNCTIONS **********************/ /** * Create a test screen with a lot objects and apply the given theme on them * @param th pointer to a theme */ void lv_test_theme_1(lv_theme_t * th) { lv_coord_t hres = lv_disp_get_hor_res(NULL); lv_coord_t vres = lv_disp_get_ver_res(NULL); #if LV_DEMO_WALLPAPER lv_obj_t * wp = lv_img_create(lv_disp_get_scr_act(NULL), NULL); lv_img_set_src(wp, &blue_color); lv_obj_set_width(wp, hres * 4); lv_obj_set_protect(wp, LV_PROTECT_POS); #endif // lv_theme_set_current(th); // th = lv_theme_get_current(); /*If `LV_THEME_LIVE_UPDATE 1` `th` is not used directly so get the real theme after set*/ // lv_obj_t * scr = lv_cont_create(NULL, NULL); // lv_disp_load_scr(scr); lv_obj_t * white_back = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(white_back, &white); lv_obj_align(white_back, NULL, LV_ALIGN_IN_BOTTOM_LEFT, 0, 0); /*lv_obj_t * up1 = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(up1, &up); lv_obj_align(up1, NULL, LV_ALIGN_IN_TOP_RIGHT, -40, 50);*/ /*lv_obj_t * menu_sc = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(menu_sc, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(menu_sc, true); lv_label_set_text(menu_sc, "#FFFFFF MENU#"); lv_obj_align(menu_sc, NULL, LV_ALIGN_IN_TOP_LEFT, 20, 10);*/ lv_obj_t * menu_sc = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(menu_sc, &menu); lv_obj_align(menu_sc, NULL, LV_ALIGN_IN_TOP_LEFT, 20, 0); lv_obj_t * time = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(time, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(time, true); lv_label_set_text(time, "#FFFFFF MON, OCT\n #FFFFFF 21, 2019\n #FFFFFF 1:05 PM#"); lv_obj_align(time, menu_sc, LV_ALIGN_OUT_RIGHT_MID, 50, 0); /*lv_obj_t * wifi_sc = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(wifi_sc, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(wifi_sc, true); lv_label_set_text(wifi_sc, "#FFFFFF WIFI#"); lv_obj_align(wifi_sc, time, LV_ALIGN_OUT_RIGHT_MID, 80, 50);*/ lv_obj_t * wifi_sc = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(wifi_sc, &wifi); lv_obj_align(wifi_sc, white_back, LV_ALIGN_OUT_RIGHT_TOP, 10, -40); lv_obj_t * mode_sc = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(mode_sc, &mode); lv_obj_align(mode_sc, wifi_sc, LV_ALIGN_OUT_BOTTOM_MID, 0, 40); /*lv_obj_t * mode = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(mode, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(mode, true); lv_label_set_text(mode, "#FFFFFF MODE#"); lv_obj_align(mode, wifi_sc, LV_ALIGN_OUT_BOTTOM_MID, 0, 50);*/ /*lv_obj_t * away_mode = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(away_mode, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(away_mode, true); lv_label_set_text(away_mode, "#FFFFFF AWAY#"); lv_obj_align(away_mode, mode, LV_ALIGN_OUT_BOTTOM_MID, 0, 50);*/ lv_obj_t * away_mode = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(away_mode, &away); lv_obj_align(away_mode, mode_sc, LV_ALIGN_OUT_BOTTOM_MID, 0, 40); /*lv_obj_t * up = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(up, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(up, true); lv_label_set_text(up, "#FFFFFF UP#"); lv_obj_align(up, wifi, LV_ALIGN_OUT_RIGHT_MID, 80, 0);*/ /*lv_obj_t * temp = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(temp, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(temp, true); lv_label_set_text(temp, "#FFFFFF 23%#"); lv_obj_align(temp, up, LV_ALIGN_OUT_BOTTOM_MID, 0, 50); lv_obj_t * down = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(down, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(down, true); lv_label_set_text(down, "#FFFFFF DOWN#"); lv_obj_align(down, temp, LV_ALIGN_OUT_BOTTOM_MID, 0, 50);*/ lv_obj_t * up_temp = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(up_temp, &up); lv_obj_align(up_temp, wifi_sc, LV_ALIGN_IN_TOP_RIGHT, 110, 0); /*lv_obj_t * temp = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(temp, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(temp, true); lv_label_set_text(temp, "#FFFFFF 23#"); lv_obj_align(temp, mode_sc, LV_ALIGN_IN_TOP_MID, 110, 40);*/ lv_obj_t * temp = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(temp, &temperature); lv_obj_align(temp, mode_sc, LV_ALIGN_IN_TOP_MID, 110, 0); lv_obj_t * down_temp = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(down_temp, &down); lv_obj_align(down_temp, away_mode, LV_ALIGN_IN_BOTTOM_RIGHT, 110, 0); lv_obj_t * schedule = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(schedule, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(schedule, true); lv_label_set_text(schedule, "#000000 Daily Schedule#"); lv_obj_align(schedule, wifi_sc, LV_ALIGN_OUT_LEFT_MID, -80, 30); /*lv_obj_t * temp2 = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(temp2, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(temp2, true); lv_label_set_text(temp2, "#000000 23#"); lv_obj_align(temp2, schedule, LV_ALIGN_OUT_BOTTOM_MID, -40, 50);*/ lv_obj_t * temp2 = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(temp2, &room_temp); lv_obj_align(temp2, schedule, LV_ALIGN_OUT_BOTTOM_MID, -20, 0); lv_obj_t * override = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(override, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(override, true); lv_label_set_text(override, "#0C1C57 Geo-Away\n #0C1C57 Override#"); lv_obj_align(override, away_mode, LV_ALIGN_OUT_LEFT_MID, -100, 0); /*lv_obj_t * leaf = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(leaf, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(leaf, true); lv_label_set_text(leaf, "#228B22 Leaf#"); lv_obj_align(leaf, temp2, LV_ALIGN_OUT_RIGHT_MID, 70, -20);*/ lv_obj_t * leaf = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(leaf, &leaf_new); lv_obj_align(leaf, temp2, LV_ALIGN_OUT_RIGHT_MID, 10, -40); lv_obj_t * hum = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(hum, &humidity); lv_obj_align(hum, temp2, LV_ALIGN_OUT_RIGHT_MID, 10, 40); /*lv_obj_t * hum = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(hum, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(hum, true); lv_label_set_text(hum, "#228B22 Humidity#"); lv_obj_align(hum, temp2, LV_ALIGN_OUT_RIGHT_MID, 70, 30);*/ lv_obj_t * humidity_per = lv_label_create(lv_scr_act(), NULL); lv_label_set_long_mode(humidity_per, LV_LABEL_LONG_EXPAND); lv_label_set_recolor(humidity_per, true); lv_label_set_text(humidity_per, "#228B22 20%#"); lv_obj_align(humidity_per, hum, LV_ALIGN_IN_BOTTOM_MID, 0, 30); } /********************** * STATIC FUNCTIONS **********************/ #endif /*LV_USE_TESTS*/