fix(draw): revert handling of style_opa on not MAIN parts
This commit is contained in:
@@ -38,11 +38,24 @@
|
|||||||
|
|
||||||
void lv_obj_init_draw_rect_dsc(lv_obj_t * obj, uint32_t part, lv_draw_rect_dsc_t * draw_dsc)
|
void lv_obj_init_draw_rect_dsc(lv_obj_t * obj, uint32_t part, lv_draw_rect_dsc_t * draw_dsc)
|
||||||
{
|
{
|
||||||
|
lv_opa_t opa;
|
||||||
|
if(part != LV_PART_MAIN) {
|
||||||
|
opa = lv_obj_get_style_opa(obj, part);
|
||||||
|
if(opa <= LV_OPA_MIN) {
|
||||||
|
draw_dsc->bg_opa = LV_OPA_TRANSP;
|
||||||
|
draw_dsc->bg_img_opa = LV_OPA_TRANSP;
|
||||||
|
draw_dsc->border_opa = LV_OPA_TRANSP;
|
||||||
|
draw_dsc->outline_opa = LV_OPA_TRANSP;
|
||||||
|
draw_dsc->shadow_opa = LV_OPA_TRANSP;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#if LV_DRAW_COMPLEX
|
#if LV_DRAW_COMPLEX
|
||||||
draw_dsc->radius = lv_obj_get_style_radius(obj, part);
|
|
||||||
if(part != LV_PART_MAIN) draw_dsc->blend_mode = lv_obj_get_style_blend_mode(obj, part);
|
if(part != LV_PART_MAIN) draw_dsc->blend_mode = lv_obj_get_style_blend_mode(obj, part);
|
||||||
|
|
||||||
|
draw_dsc->radius = lv_obj_get_style_radius(obj, part);
|
||||||
|
|
||||||
if(draw_dsc->bg_opa != LV_OPA_TRANSP) {
|
if(draw_dsc->bg_opa != LV_OPA_TRANSP) {
|
||||||
draw_dsc->bg_opa = lv_obj_get_style_bg_opa(obj, part);
|
draw_dsc->bg_opa = lv_obj_get_style_bg_opa(obj, part);
|
||||||
if(draw_dsc->bg_opa > LV_OPA_MIN) {
|
if(draw_dsc->bg_opa > LV_OPA_MIN) {
|
||||||
@@ -167,6 +180,16 @@ void lv_obj_init_draw_rect_dsc(lv_obj_t * obj, uint32_t part, lv_draw_rect_dsc_t
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if(part != LV_PART_MAIN) {
|
||||||
|
if(opa < LV_OPA_MAX) {
|
||||||
|
draw_dsc->bg_opa = (opa * draw_dsc->shadow_opa) >> 8;
|
||||||
|
draw_dsc->bg_img_opa = (opa * draw_dsc->shadow_opa) >> 8;
|
||||||
|
draw_dsc->border_opa = (opa * draw_dsc->shadow_opa) >> 8;
|
||||||
|
draw_dsc->outline_opa = (opa * draw_dsc->shadow_opa) >> 8;
|
||||||
|
draw_dsc->shadow_opa = (opa * draw_dsc->shadow_opa) >> 8;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void lv_obj_init_draw_label_dsc(lv_obj_t * obj, uint32_t part, lv_draw_label_dsc_t * draw_dsc)
|
void lv_obj_init_draw_label_dsc(lv_obj_t * obj, uint32_t part, lv_draw_label_dsc_t * draw_dsc)
|
||||||
@@ -174,6 +197,17 @@ void lv_obj_init_draw_label_dsc(lv_obj_t * obj, uint32_t part, lv_draw_label_dsc
|
|||||||
draw_dsc->opa = lv_obj_get_style_text_opa(obj, part);
|
draw_dsc->opa = lv_obj_get_style_text_opa(obj, part);
|
||||||
if(draw_dsc->opa <= LV_OPA_MIN) return;
|
if(draw_dsc->opa <= LV_OPA_MIN) return;
|
||||||
|
|
||||||
|
if(part != LV_PART_MAIN) {
|
||||||
|
lv_opa_t opa = lv_obj_get_style_opa(obj, part);
|
||||||
|
if(opa <= LV_OPA_MIN) {
|
||||||
|
draw_dsc->opa = LV_OPA_TRANSP;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(opa < LV_OPA_MAX) {
|
||||||
|
draw_dsc->opa = (opa * draw_dsc->opa) >> 8;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
draw_dsc->color = lv_obj_get_style_text_color_filtered(obj, part);
|
draw_dsc->color = lv_obj_get_style_text_color_filtered(obj, part);
|
||||||
draw_dsc->letter_space = lv_obj_get_style_text_letter_space(obj, part);
|
draw_dsc->letter_space = lv_obj_get_style_text_letter_space(obj, part);
|
||||||
draw_dsc->line_space = lv_obj_get_style_text_line_space(obj, part);
|
draw_dsc->line_space = lv_obj_get_style_text_line_space(obj, part);
|
||||||
@@ -194,7 +228,18 @@ void lv_obj_init_draw_label_dsc(lv_obj_t * obj, uint32_t part, lv_draw_label_dsc
|
|||||||
void lv_obj_init_draw_img_dsc(lv_obj_t * obj, uint32_t part, lv_draw_img_dsc_t * draw_dsc)
|
void lv_obj_init_draw_img_dsc(lv_obj_t * obj, uint32_t part, lv_draw_img_dsc_t * draw_dsc)
|
||||||
{
|
{
|
||||||
draw_dsc->opa = lv_obj_get_style_img_opa(obj, part);
|
draw_dsc->opa = lv_obj_get_style_img_opa(obj, part);
|
||||||
if(draw_dsc->opa <= LV_OPA_MIN) return;
|
if(draw_dsc->opa <= LV_OPA_MIN) return;
|
||||||
|
|
||||||
|
if(part != LV_PART_MAIN) {
|
||||||
|
lv_opa_t opa = lv_obj_get_style_opa(obj, part);
|
||||||
|
if(opa <= LV_OPA_MIN) {
|
||||||
|
draw_dsc->opa = LV_OPA_TRANSP;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(opa < LV_OPA_MAX) {
|
||||||
|
draw_dsc->opa = (opa * draw_dsc->opa) >> 8;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
draw_dsc->angle = 0;
|
draw_dsc->angle = 0;
|
||||||
draw_dsc->zoom = LV_IMG_ZOOM_NONE;
|
draw_dsc->zoom = LV_IMG_ZOOM_NONE;
|
||||||
@@ -212,12 +257,23 @@ void lv_obj_init_draw_img_dsc(lv_obj_t * obj, uint32_t part, lv_draw_img_dsc_t *
|
|||||||
|
|
||||||
void lv_obj_init_draw_line_dsc(lv_obj_t * obj, uint32_t part, lv_draw_line_dsc_t * draw_dsc)
|
void lv_obj_init_draw_line_dsc(lv_obj_t * obj, uint32_t part, lv_draw_line_dsc_t * draw_dsc)
|
||||||
{
|
{
|
||||||
draw_dsc->width = lv_obj_get_style_line_width(obj, part);
|
|
||||||
if(draw_dsc->width == 0) return;
|
|
||||||
|
|
||||||
draw_dsc->opa = lv_obj_get_style_line_opa(obj, part);
|
draw_dsc->opa = lv_obj_get_style_line_opa(obj, part);
|
||||||
if(draw_dsc->opa <= LV_OPA_MIN) return;
|
if(draw_dsc->opa <= LV_OPA_MIN) return;
|
||||||
|
|
||||||
|
if(part != LV_PART_MAIN) {
|
||||||
|
lv_opa_t opa = lv_obj_get_style_opa(obj, part);
|
||||||
|
if(opa <= LV_OPA_MIN) {
|
||||||
|
draw_dsc->opa = LV_OPA_TRANSP;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(opa < LV_OPA_MAX) {
|
||||||
|
draw_dsc->opa = (opa * draw_dsc->opa) >> 8;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
draw_dsc->width = lv_obj_get_style_line_width(obj, part);
|
||||||
|
if(draw_dsc->width == 0) return;
|
||||||
|
|
||||||
draw_dsc->color = lv_obj_get_style_line_color_filtered(obj, part);
|
draw_dsc->color = lv_obj_get_style_line_color_filtered(obj, part);
|
||||||
|
|
||||||
draw_dsc->dash_width = lv_obj_get_style_line_dash_width(obj, part);
|
draw_dsc->dash_width = lv_obj_get_style_line_dash_width(obj, part);
|
||||||
@@ -241,6 +297,17 @@ void lv_obj_init_draw_arc_dsc(lv_obj_t * obj, uint32_t part, lv_draw_arc_dsc_t *
|
|||||||
draw_dsc->opa = lv_obj_get_style_arc_opa(obj, part);
|
draw_dsc->opa = lv_obj_get_style_arc_opa(obj, part);
|
||||||
if(draw_dsc->opa <= LV_OPA_MIN) return;
|
if(draw_dsc->opa <= LV_OPA_MIN) return;
|
||||||
|
|
||||||
|
if(part != LV_PART_MAIN) {
|
||||||
|
lv_opa_t opa = lv_obj_get_style_opa(obj, part);
|
||||||
|
if(opa <= LV_OPA_MIN) {
|
||||||
|
draw_dsc->opa = LV_OPA_TRANSP;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(opa < LV_OPA_MAX) {
|
||||||
|
draw_dsc->opa = (opa * draw_dsc->opa) >> 8;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
draw_dsc->color = lv_obj_get_style_arc_color_filtered(obj, part);
|
draw_dsc->color = lv_obj_get_style_arc_color_filtered(obj, part);
|
||||||
draw_dsc->img_src = lv_obj_get_style_arc_img_src(obj, part);
|
draw_dsc->img_src = lv_obj_get_style_arc_img_src(obj, part);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user