/** * Create a demo application */ void demo_create(void) { #if LV_DEMO_WALLPAPER lv_obj_t *wp = lv_img_create(lv_scr_act(), NULL); lv_img_set_src(wp, &img_bubble_pattern); lv_obj_set_width(wp, LV_HOR_RES * 4); lv_obj_set_protect(wp, LV_PROTECT_POS); #endif static lv_style_t style_tv_btn_bg; lv_style_copy(&style_tv_btn_bg, &lv_style_plain); style_tv_btn_bg.body.main_color = LV_COLOR_HEX(0x487fb7); style_tv_btn_bg.body.grad_color = LV_COLOR_HEX(0x487fb7); style_tv_btn_bg.body.padding.ver = 0; static lv_style_t style_tv_btn_rel; lv_style_copy(&style_tv_btn_rel, &lv_style_btn_rel); style_tv_btn_rel.body.empty = 1; style_tv_btn_rel.body.border.width = 0; static lv_style_t style_tv_btn_pr; lv_style_copy(&style_tv_btn_pr, &lv_style_btn_pr); style_tv_btn_pr.body.radius = 0; style_tv_btn_pr.body.opa = LV_OPA_50; style_tv_btn_pr.body.main_color = LV_COLOR_WHITE; style_tv_btn_pr.body.grad_color = LV_COLOR_WHITE; style_tv_btn_pr.body.border.width = 0; style_tv_btn_pr.text.color = LV_COLOR_GRAY; lv_obj_t *tv = lv_tabview_create(lv_scr_act(), NULL); #if LV_DEMO_WALLPAPER lv_obj_set_parent(wp, ((lv_tabview_ext_t *) tv->ext_attr)->content); lv_obj_set_pos(wp, 0, -5); #endif lv_obj_t *tab1 = lv_tabview_add_tab(tv, "Write"); lv_obj_t *tab2 = lv_tabview_add_tab(tv, "List"); lv_obj_t *tab3 = lv_tabview_add_tab(tv, "Chart"); #if LV_DEMO_WALLPAPER == 0 /*Blue bg instead of wallpaper*/ lv_tabview_set_style(tv, LV_TABVIEW_STYLE_BG, &style_tv_btn_bg); #endif lv_tabview_set_style(tv, LV_TABVIEW_STYLE_BTN_BG, &style_tv_btn_bg); lv_tabview_set_style(tv, LV_TABVIEW_STYLE_INDIC, &lv_style_plain); lv_tabview_set_style(tv, LV_TABVIEW_STYLE_BTN_REL, &style_tv_btn_rel); lv_tabview_set_style(tv, LV_TABVIEW_STYLE_BTN_PR, &style_tv_btn_pr); lv_tabview_set_style(tv, LV_TABVIEW_STYLE_BTN_TGL_REL, &style_tv_btn_rel); lv_tabview_set_style(tv, LV_TABVIEW_STYLE_BTN_TGL_PR, &style_tv_btn_pr); write_create(tab1); list_create(tab2); chart_create(tab3); #if LV_DEMO_SLIDE_SHOW lv_task_create(tab_switcher, 3000, LV_TASK_PRIO_MID, tv); #endif }
static void sw_init(void) { #if USE_LV_SW != 0 static lv_style_t sw_bg, sw_indic, sw_knob_off, sw_knob_on; lv_style_copy(&sw_bg, theme.slider.bg); sw_bg.body.radius = LV_RADIUS_CIRCLE; lv_style_copy(&sw_indic, theme.slider.bg); sw_indic.body.radius = LV_RADIUS_CIRCLE; lv_style_copy(&sw_knob_on, theme.slider.knob); sw_knob_on.body.shadow.width = 4; sw_knob_on.body.shadow.type = LV_SHADOW_BOTTOM; sw_knob_on.body.shadow.color = DEF_SHADOW_COLOR; lv_style_copy(&sw_knob_off, &sw_knob_on); sw_knob_off.body.main_color = LV_COLOR_HEX(0xfafafa); sw_knob_off.body.grad_color = sw_knob_off.body.main_color; sw_knob_off.body.border.width = 1; sw_knob_off.body.border.color = LV_COLOR_HEX3(0x999); sw_knob_off.body.border.opa = LV_OPA_COVER; theme.sw.bg = &sw_bg; theme.sw.indic = &sw_indic; theme.sw.knob_off = &sw_knob_off; theme.sw.knob_on = &sw_knob_on; #endif }
static void basic_init(void) { lv_style_copy(&def, &lv_style_plain); /*Initialize the default style*/ def.text.font = _font; def.body.radius = DEF_RADIUS; static lv_style_t bg, panel; lv_style_copy(&bg, &def); bg.body.main_color = LV_COLOR_HEX(0xf0f0f0); bg.body.grad_color = bg.body.main_color; bg.body.radius = 0; lv_style_copy(&panel, &def); panel.body.radius = DEF_RADIUS; panel.body.main_color = LV_COLOR_WHITE; panel.body.grad_color = LV_COLOR_WHITE; panel.body.border.width = 1; panel.body.border.color = LV_COLOR_HEX3(0xbbb); panel.body.border.opa = LV_OPA_COVER; panel.body.shadow.color = DEF_SHADOW_COLOR; panel.body.shadow.type = LV_SHADOW_BOTTOM; panel.body.shadow.width = 4; panel.body.padding.hor = LV_DPI / 8; panel.body.padding.ver = LV_DPI / 8; panel.body.padding.inner = LV_DPI / 12; panel.text.color = LV_COLOR_HEX3(0x333); lv_style_copy(&sb, &def); sb.body.main_color = LV_COLOR_BLACK; sb.body.grad_color = LV_COLOR_BLACK; sb.body.opa = LV_OPA_40; theme.bg = &bg; theme.panel = &panel; }