Lines Matching refs:dsc
40 void LV_ATTRIBUTE_FAST_MEM lv_draw_rect_dsc_init(lv_draw_rect_dsc_t * dsc) in lv_draw_rect_dsc_init() argument
42 lv_memzero(dsc, sizeof(lv_draw_rect_dsc_t)); in lv_draw_rect_dsc_init()
43 dsc->bg_color = lv_color_white(); in lv_draw_rect_dsc_init()
44 dsc->bg_grad.stops[0].color = lv_color_white(); in lv_draw_rect_dsc_init()
45 dsc->bg_grad.stops[1].color = lv_color_black(); in lv_draw_rect_dsc_init()
46 dsc->bg_grad.stops[1].frac = 0xFF; in lv_draw_rect_dsc_init()
47 dsc->bg_grad.stops_count = 2; in lv_draw_rect_dsc_init()
48 dsc->border_color = lv_color_black(); in lv_draw_rect_dsc_init()
49 dsc->shadow_color = lv_color_black(); in lv_draw_rect_dsc_init()
50 dsc->bg_image_symbol_font = LV_FONT_DEFAULT; in lv_draw_rect_dsc_init()
51 dsc->bg_opa = LV_OPA_COVER; in lv_draw_rect_dsc_init()
52 dsc->bg_image_opa = LV_OPA_COVER; in lv_draw_rect_dsc_init()
53 dsc->outline_opa = LV_OPA_COVER; in lv_draw_rect_dsc_init()
54 dsc->border_opa = LV_OPA_COVER; in lv_draw_rect_dsc_init()
55 dsc->shadow_opa = LV_OPA_COVER; in lv_draw_rect_dsc_init()
56 dsc->border_side = LV_BORDER_SIDE_FULL; in lv_draw_rect_dsc_init()
59 void lv_draw_fill_dsc_init(lv_draw_fill_dsc_t * dsc) in lv_draw_fill_dsc_init() argument
61 lv_memzero(dsc, sizeof(*dsc)); in lv_draw_fill_dsc_init()
62 dsc->opa = LV_OPA_COVER; in lv_draw_fill_dsc_init()
63 dsc->base.dsc_size = sizeof(lv_draw_fill_dsc_t); in lv_draw_fill_dsc_init()
71 void lv_draw_border_dsc_init(lv_draw_border_dsc_t * dsc) in lv_draw_border_dsc_init() argument
73 lv_memzero(dsc, sizeof(*dsc)); in lv_draw_border_dsc_init()
74 dsc->opa = LV_OPA_COVER; in lv_draw_border_dsc_init()
75 dsc->side = LV_BORDER_SIDE_FULL; in lv_draw_border_dsc_init()
76 dsc->base.dsc_size = sizeof(lv_draw_border_dsc_t); in lv_draw_border_dsc_init()
84 void lv_draw_box_shadow_dsc_init(lv_draw_box_shadow_dsc_t * dsc) in lv_draw_box_shadow_dsc_init() argument
86 lv_memzero(dsc, sizeof(*dsc)); in lv_draw_box_shadow_dsc_init()
87 dsc->opa = LV_OPA_COVER; in lv_draw_box_shadow_dsc_init()
88 dsc->base.dsc_size = sizeof(lv_draw_box_shadow_dsc_t); in lv_draw_box_shadow_dsc_init()
96 void lv_draw_rect(lv_layer_t * layer, const lv_draw_rect_dsc_t * dsc, const lv_area_t * coords) in lv_draw_rect() argument
106 if(dsc->shadow_width == 0 || in lv_draw_rect()
107 dsc->shadow_opa <= LV_OPA_MIN || in lv_draw_rect()
108 (dsc->shadow_width == 1 && dsc->shadow_spread <= 0 && in lv_draw_rect()
109 dsc->shadow_offset_x == 0 && dsc->shadow_offset_y == 0)) { in lv_draw_rect()
116 if(dsc->bg_opa <= LV_OPA_MIN) has_fill = false; in lv_draw_rect()
119 if(dsc->bg_image_opa <= LV_OPA_MIN || dsc->bg_image_src == NULL) has_bg_img = false; in lv_draw_rect()
122 if(dsc->border_opa <= LV_OPA_MIN in lv_draw_rect()
123 || dsc->border_width == 0 in lv_draw_rect()
124 || dsc->border_post == true in lv_draw_rect()
125 || dsc->border_side == LV_BORDER_SIDE_NONE) has_border = false; in lv_draw_rect()
128 if(dsc->outline_opa <= LV_OPA_MIN || dsc->outline_width == 0) has_outline = false; in lv_draw_rect()
132 if(dsc->bg_opa < LV_OPA_COVER) bg_cover = false; in lv_draw_rect()
133 else if(dsc->bg_grad.dir != LV_GRAD_DIR_NONE) { in lv_draw_rect()
135 for(s = 0; s < dsc->bg_grad.stops_count; s++) { in lv_draw_rect()
136 if(dsc->bg_grad.stops[s].opa != LV_OPA_COVER) { in lv_draw_rect()
152 lv_area_increase(&t->_real_area, dsc->shadow_spread, dsc->shadow_spread); in lv_draw_rect()
153 lv_area_increase(&t->_real_area, dsc->shadow_width, dsc->shadow_width); in lv_draw_rect()
154 lv_area_move(&t->_real_area, dsc->shadow_offset_x, dsc->shadow_offset_y); in lv_draw_rect()
155 shadow_dsc->base = dsc->base; in lv_draw_rect()
157 shadow_dsc->radius = dsc->radius; in lv_draw_rect()
158 shadow_dsc->color = dsc->shadow_color; in lv_draw_rect()
159 shadow_dsc->width = dsc->shadow_width; in lv_draw_rect()
160 shadow_dsc->spread = dsc->shadow_spread; in lv_draw_rect()
161 shadow_dsc->opa = dsc->shadow_opa; in lv_draw_rect()
162 shadow_dsc->ofs_x = dsc->shadow_offset_x; in lv_draw_rect()
163 shadow_dsc->ofs_y = dsc->shadow_offset_y; in lv_draw_rect()
173 if(dsc->border_width > 1 && dsc->border_opa >= LV_OPA_MAX && dsc->radius != 0) { in lv_draw_rect()
174 bg_coords.x1 += (dsc->border_side & LV_BORDER_SIDE_LEFT) ? 1 : 0; in lv_draw_rect()
175 bg_coords.y1 += (dsc->border_side & LV_BORDER_SIDE_TOP) ? 1 : 0; in lv_draw_rect()
176 bg_coords.x2 -= (dsc->border_side & LV_BORDER_SIDE_RIGHT) ? 1 : 0; in lv_draw_rect()
177 bg_coords.y2 -= (dsc->border_side & LV_BORDER_SIDE_BOTTOM) ? 1 : 0; in lv_draw_rect()
185 bg_dsc->base = dsc->base; in lv_draw_rect()
187 bg_dsc->radius = dsc->radius; in lv_draw_rect()
188 bg_dsc->color = dsc->bg_color; in lv_draw_rect()
189 bg_dsc->grad = dsc->bg_grad; in lv_draw_rect()
190 bg_dsc->opa = dsc->bg_opa; in lv_draw_rect()
198 lv_image_src_t src_type = lv_image_src_get_type(dsc->bg_image_src); in lv_draw_rect()
202 res = lv_image_decoder_get_info(dsc->bg_image_src, &header); in lv_draw_rect()
215 if(dsc->bg_image_tiled) { in lv_draw_rect()
228 bg_image_dsc->base = dsc->base; in lv_draw_rect()
230 bg_image_dsc->src = dsc->bg_image_src; in lv_draw_rect()
231 bg_image_dsc->opa = dsc->bg_image_opa; in lv_draw_rect()
232 bg_image_dsc->recolor = dsc->bg_image_recolor; in lv_draw_rect()
233 bg_image_dsc->recolor_opa = dsc->bg_image_recolor_opa; in lv_draw_rect()
234 bg_image_dsc->tile = dsc->bg_image_tiled; in lv_draw_rect()
236 bg_image_dsc->clip_radius = dsc->radius; in lv_draw_rect()
243 …lv_text_get_size(&s, dsc->bg_image_src, dsc->bg_image_symbol_font, 0, 0, LV_COORD_MAX, LV_TEXT_FLA… in lv_draw_rect()
253 bg_label_dsc->base = dsc->base; in lv_draw_rect()
255 bg_label_dsc->color = dsc->bg_image_recolor; in lv_draw_rect()
256 bg_label_dsc->font = dsc->bg_image_symbol_font; in lv_draw_rect()
257 bg_label_dsc->text = dsc->bg_image_src; in lv_draw_rect()
270 border_dsc->base = dsc->base; in lv_draw_rect()
272 border_dsc->radius = dsc->radius; in lv_draw_rect()
273 border_dsc->color = dsc->border_color; in lv_draw_rect()
274 border_dsc->opa = dsc->border_opa; in lv_draw_rect()
275 border_dsc->width = dsc->border_width; in lv_draw_rect()
276 border_dsc->side = dsc->border_side; in lv_draw_rect()
284 …lv_area_increase(&outline_coords, dsc->outline_width + dsc->outline_pad, dsc->outline_width + dsc-… in lv_draw_rect()
289 lv_area_increase(&t->_real_area, dsc->outline_width, dsc->outline_width); in lv_draw_rect()
290 lv_area_increase(&t->_real_area, dsc->outline_pad, dsc->outline_pad); in lv_draw_rect()
291 outline_dsc->base = dsc->base; in lv_draw_rect()
293 …outline_dsc->radius = dsc->radius == LV_RADIUS_CIRCLE ? LV_RADIUS_CIRCLE : dsc->radius + dsc->outl… in lv_draw_rect()
294 dsc->outline_pad; in lv_draw_rect()
295 outline_dsc->color = dsc->outline_color; in lv_draw_rect()
296 outline_dsc->opa = dsc->outline_opa; in lv_draw_rect()
297 outline_dsc->width = dsc->outline_width; in lv_draw_rect()