arc and preloader draw and design fixes

This commit is contained in:
Gabor Kiss-Vamosi
2019-11-26 13:25:15 +01:00
parent d59419c992
commit 23a040670e
3 changed files with 5 additions and 1 deletions

View File

@@ -54,6 +54,7 @@ void lv_draw_arc(lv_coord_t center_x, lv_coord_t center_y, uint16_t radius, cons
circle_style.body.opa = LV_OPA_TRANSP;
circle_style.body.border.width = style->line.width;
circle_style.body.border.color = style->line.color;
circle_style.body.border.opa = style->line.opa;
lv_draw_mask_angle_param_t mask_angle_param;
lv_draw_mask_angle_init(&mask_angle_param, center_x, center_y, start_angle, end_angle);

View File

@@ -326,6 +326,7 @@ static void fill_normal(const lv_area_t * disp_area, lv_color_t * disp_buf, con
{
if(mask_tmp[x] > LV_OPA_MAX) last_res_color = color;
else if(mask_tmp[x] < LV_OPA_MIN) last_res_color = disp_buf_tmp[x];
else if(disp_buf_tmp[x].full == color.full) last_res_color = color;
else last_res_color = lv_color_mix(color, disp_buf_tmp[x], mask_tmp[x]);
}
last_mask = mask_tmp[x];

View File

@@ -359,7 +359,8 @@ void lv_preload_spinner_anim(void * ptr, lv_anim_value_t val)
angle_start = angle_start % 360;
angle_end = angle_end % 360;
lv_arc_set_angles(preload, angle_start, angle_end);
lv_arc_set_start_angle(preload, angle_start);
lv_arc_set_end_angle(preload, angle_end);
}
/**********************
@@ -400,6 +401,7 @@ static lv_design_res_t lv_preload_design(lv_obj_t * preload, const lv_area_t * c
bg_style.body.radius = LV_RADIUS_CIRCLE;
bg_style.body.border.color = style->body.border.color;
bg_style.body.border.width = style->body.border.width;
bg_style.body.border.opa = style->body.border.opa;
lv_area_t bg_area;
bg_area.x1 = x - r;