mirror of
https://github.com/lvgl/lvgl.git
synced 2025-01-28 07:03:00 +08:00
fix(dave2d): follow lvgl changes (#5334)
This commit is contained in:
parent
106519bd2d
commit
b086c76152
@ -473,7 +473,7 @@ static void execute_drawing(lv_draw_dave2d_unit_t * u)
|
||||
lv_area_move(&clipped_area, x, y);
|
||||
|
||||
/* Invalidate cache */
|
||||
lv_draw_buf_invalidate_cache(layer->buf, layer->buf_stride, layer->color_format, &clipped_area);
|
||||
lv_draw_buf_invalidate_cache(layer->draw_buf->data, layer->draw_buf->header.stride, layer->color_format, &clipped_area);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
@ -52,12 +52,7 @@ void lv_draw_dave2d_arc(lv_draw_dave2d_unit_t * u, const lv_draw_arc_dsc_t * dsc
|
||||
//
|
||||
// Generate render operations
|
||||
//
|
||||
d2_framebuffer(u->d2_handle,
|
||||
u->base_unit.target_layer->buf,
|
||||
(d2_s32)u->base_unit.target_layer->buf_stride / lv_color_format_get_size(u->base_unit.target_layer->color_format),
|
||||
(d2_u32)lv_area_get_width(&buffer_area),
|
||||
(d2_u32)lv_area_get_height(&buffer_area),
|
||||
lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(u->base_unit.target_layer->color_format));
|
||||
d2_framebuffer_from_layer(u->d2_handle, u->base_unit.target_layer);
|
||||
|
||||
d2_setalpha(u->d2_handle, dsc->opa);
|
||||
|
||||
|
@ -51,7 +51,6 @@ static void dave2d_draw_border_simple(lv_draw_dave2d_unit_t * u, const lv_area_t
|
||||
lv_area_t clip_area;
|
||||
lv_area_t local_outer_area;
|
||||
lv_area_t local_inner_area;
|
||||
lv_area_t buffer_area;
|
||||
int32_t x;
|
||||
int32_t y;
|
||||
bool is_common;
|
||||
@ -67,7 +66,6 @@ static void dave2d_draw_border_simple(lv_draw_dave2d_unit_t * u, const lv_area_t
|
||||
}
|
||||
#endif
|
||||
|
||||
buffer_area = u->base_unit.target_layer->buf_area;
|
||||
local_outer_area = *outer_area;
|
||||
local_inner_area = *inner_area;
|
||||
|
||||
@ -75,7 +73,6 @@ static void dave2d_draw_border_simple(lv_draw_dave2d_unit_t * u, const lv_area_t
|
||||
y = 0 - u->base_unit.target_layer->buf_area.y1;
|
||||
|
||||
lv_area_move(&clip_area, x, y);
|
||||
lv_area_move(&buffer_area, x, y);
|
||||
lv_area_move(&local_outer_area, x, y);
|
||||
lv_area_move(&local_inner_area, x, y);
|
||||
|
||||
@ -85,12 +82,8 @@ static void dave2d_draw_border_simple(lv_draw_dave2d_unit_t * u, const lv_area_t
|
||||
//
|
||||
// Generate render operations
|
||||
//
|
||||
d2_framebuffer(u->d2_handle,
|
||||
u->base_unit.target_layer->buf,
|
||||
(d2_s32)u->base_unit.target_layer->buf_stride / lv_color_format_get_size(u->base_unit.target_layer->color_format),
|
||||
(d2_u32)lv_area_get_width(&buffer_area),
|
||||
(d2_u32)lv_area_get_height(&buffer_area),
|
||||
lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(u->base_unit.target_layer->color_format));
|
||||
|
||||
d2_framebuffer_from_layer(u->d2_handle, u->base_unit.target_layer);
|
||||
|
||||
d2_setcolor(u->d2_handle, 0, lv_draw_dave2d_lv_colour_to_d2_colour(color));
|
||||
d2_setalpha(u->d2_handle, opa);
|
||||
@ -174,7 +167,6 @@ static void dave2d_draw_border_complex(lv_draw_dave2d_unit_t * u, const lv_area_
|
||||
lv_area_t draw_area;
|
||||
lv_area_t outer_area;
|
||||
lv_area_t inner_area;
|
||||
lv_area_t buffer_area;
|
||||
int32_t x;
|
||||
int32_t y;
|
||||
d2_s32 result;
|
||||
@ -193,13 +185,10 @@ static void dave2d_draw_border_complex(lv_draw_dave2d_unit_t * u, const lv_area_
|
||||
}
|
||||
#endif
|
||||
|
||||
buffer_area = u->base_unit.target_layer->buf_area;
|
||||
|
||||
x = 0 - u->base_unit.target_layer->buf_area.x1;
|
||||
y = 0 - u->base_unit.target_layer->buf_area.y1;
|
||||
|
||||
lv_area_move(&draw_area, x, y);
|
||||
lv_area_move(&buffer_area, x, y);
|
||||
lv_area_move(&outer_area, x, y);
|
||||
lv_area_move(&inner_area, x, y);
|
||||
|
||||
@ -209,12 +198,8 @@ static void dave2d_draw_border_complex(lv_draw_dave2d_unit_t * u, const lv_area_
|
||||
//
|
||||
// Generate render operations
|
||||
//
|
||||
d2_framebuffer(u->d2_handle,
|
||||
u->base_unit.target_layer->buf,
|
||||
(d2_s32)u->base_unit.target_layer->buf_stride / lv_color_format_get_size(u->base_unit.target_layer->color_format),
|
||||
(d2_u32)lv_area_get_width(&buffer_area),
|
||||
(d2_u32)lv_area_get_height(&buffer_area),
|
||||
lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(u->base_unit.target_layer->color_format));
|
||||
|
||||
d2_framebuffer_from_layer(u->d2_handle, u->base_unit.target_layer);
|
||||
|
||||
d2_setcolor(u->d2_handle, 0, lv_draw_dave2d_lv_colour_to_d2_colour(color));
|
||||
d2_setalpha(u->d2_handle, opa);
|
||||
|
@ -4,7 +4,6 @@
|
||||
void lv_draw_dave2d_fill(lv_draw_dave2d_unit_t * u, const lv_draw_fill_dsc_t * dsc, const lv_area_t * coords)
|
||||
{
|
||||
lv_area_t draw_area;
|
||||
lv_area_t buffer_area;
|
||||
lv_area_t coordinates;
|
||||
bool is_common;
|
||||
int32_t x;
|
||||
@ -26,14 +25,12 @@ void lv_draw_dave2d_fill(lv_draw_dave2d_unit_t * u, const lv_draw_fill_dsc_t * d
|
||||
}
|
||||
#endif
|
||||
|
||||
buffer_area = u->base_unit.target_layer->buf_area;
|
||||
lv_area_copy(&coordinates, coords);
|
||||
|
||||
x = 0 - u->base_unit.target_layer->buf_area.x1;
|
||||
y = 0 - u->base_unit.target_layer->buf_area.y1;
|
||||
|
||||
lv_area_move(&draw_area, x, y);
|
||||
lv_area_move(&buffer_area, x, y);
|
||||
lv_area_move(&coordinates, x, y);
|
||||
|
||||
//
|
||||
@ -43,12 +40,7 @@ void lv_draw_dave2d_fill(lv_draw_dave2d_unit_t * u, const lv_draw_fill_dsc_t * d
|
||||
d2_selectrenderbuffer(u->d2_handle, u->renderbuffer);
|
||||
#endif
|
||||
|
||||
d2_framebuffer(u->d2_handle,
|
||||
u->base_unit.target_layer->buf,
|
||||
(d2_s32)u->base_unit.target_layer->buf_stride / lv_color_format_get_size(u->base_unit.target_layer->color_format),
|
||||
(d2_u32)lv_area_get_width(&buffer_area),
|
||||
(d2_u32)lv_area_get_height(&buffer_area),
|
||||
lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(u->base_unit.target_layer->color_format));
|
||||
d2_framebuffer_from_layer(u->d2_handle, u->base_unit.target_layer);
|
||||
|
||||
if(LV_GRAD_DIR_NONE != dsc->grad.dir) {
|
||||
float a1;
|
||||
|
@ -202,12 +202,7 @@ static void img_draw_core(lv_draw_unit_t * u_base, const lv_draw_image_dsc_t * d
|
||||
|
||||
}
|
||||
|
||||
d2_framebuffer(u->d2_handle,
|
||||
u->base_unit.target_layer->buf,
|
||||
(d2_s32)u->base_unit.target_layer->buf_stride / lv_color_format_get_size(u->base_unit.target_layer->color_format),
|
||||
(d2_u32)lv_area_get_width(&buffer_area),
|
||||
(d2_u32)lv_area_get_height(&buffer_area),
|
||||
lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(u->base_unit.target_layer->color_format));
|
||||
d2_framebuffer_from_layer(u->d2_handle, u->base_unit.target_layer);
|
||||
|
||||
d2_cliprect(u->d2_handle, (d2_border)clipped_area.x1, (d2_border)clipped_area.y1, (d2_border)clipped_area.x2,
|
||||
(d2_border)clipped_area.y2);
|
||||
|
@ -22,13 +22,11 @@ static void lv_draw_dave2d_draw_letter_cb(lv_draw_unit_t * u, lv_draw_glyph_dsc_
|
||||
|
||||
d2_u8 current_fillmode;
|
||||
lv_area_t clip_area;
|
||||
lv_area_t buffer_area;
|
||||
lv_area_t letter_coords;
|
||||
|
||||
int32_t x;
|
||||
int32_t y;
|
||||
|
||||
buffer_area = unit->base_unit.target_layer->buf_area;
|
||||
letter_coords = *glyph_draw_dsc->letter_coords;
|
||||
|
||||
bool is_common;
|
||||
@ -39,7 +37,6 @@ static void lv_draw_dave2d_draw_letter_cb(lv_draw_unit_t * u, lv_draw_glyph_dsc_
|
||||
y = 0 - unit->base_unit.target_layer->buf_area.y1;
|
||||
|
||||
lv_area_move(&clip_area, x, y);
|
||||
lv_area_move(&buffer_area, x, y);
|
||||
lv_area_move(&letter_coords, x, y);
|
||||
|
||||
#if LV_USE_OS
|
||||
@ -57,12 +54,8 @@ static void lv_draw_dave2d_draw_letter_cb(lv_draw_unit_t * u, lv_draw_glyph_dsc_
|
||||
//
|
||||
// Generate render operations
|
||||
//
|
||||
d2_framebuffer(unit->d2_handle,
|
||||
unit->base_unit.target_layer->buf,
|
||||
(d2_s32)unit->base_unit.target_layer->buf_stride / lv_color_format_get_size(unit->base_unit.target_layer->color_format),
|
||||
(d2_u32)lv_area_get_width(&buffer_area),
|
||||
(d2_u32)lv_area_get_height(&buffer_area),
|
||||
lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(unit->base_unit.target_layer->color_format));
|
||||
|
||||
d2_framebuffer_from_layer(unit->d2_handle, unit->base_unit.target_layer);
|
||||
|
||||
current_fillmode = d2_getfillmode(unit->d2_handle);
|
||||
|
||||
|
@ -58,12 +58,7 @@ void lv_draw_dave2d_line(lv_draw_dave2d_unit_t * u, const lv_draw_line_dsc_t * d
|
||||
//
|
||||
// Generate render operations
|
||||
//
|
||||
d2_framebuffer(u->d2_handle,
|
||||
u->base_unit.target_layer->buf,
|
||||
(d2_s32)u->base_unit.target_layer->buf_stride / lv_color_format_get_size(u->base_unit.target_layer->color_format),
|
||||
(d2_u32)lv_area_get_width(&buffer_area),
|
||||
(d2_u32)lv_area_get_height(&buffer_area),
|
||||
lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(u->base_unit.target_layer->color_format));
|
||||
d2_framebuffer_from_layer(u->d2_handle, u->base_unit.target_layer);
|
||||
|
||||
d2_setcolor(u->d2_handle, 0, lv_draw_dave2d_lv_colour_to_d2_colour(dsc->color));
|
||||
|
||||
|
@ -4,7 +4,6 @@
|
||||
void lv_draw_dave2d_mask_rect(lv_draw_dave2d_unit_t * u, const lv_draw_mask_rect_dsc_t * dsc, const lv_area_t * coords)
|
||||
{
|
||||
lv_area_t clipped_area;
|
||||
lv_area_t buffer_area;
|
||||
lv_area_t coordinates;
|
||||
int32_t x;
|
||||
int32_t y;
|
||||
@ -14,11 +13,9 @@ void lv_draw_dave2d_mask_rect(lv_draw_dave2d_unit_t * u, const lv_draw_mask_rect
|
||||
x = 0 - u->base_unit.target_layer->buf_area.x1;
|
||||
y = 0 - u->base_unit.target_layer->buf_area.y1;
|
||||
|
||||
buffer_area = u->base_unit.target_layer->buf_area;
|
||||
coordinates = *coords;
|
||||
|
||||
lv_area_move(&clipped_area, x, y);
|
||||
lv_area_move(&buffer_area, x, y);
|
||||
lv_area_move(&coordinates, x, y);
|
||||
|
||||
#if LV_USE_OS
|
||||
@ -33,12 +30,7 @@ void lv_draw_dave2d_mask_rect(lv_draw_dave2d_unit_t * u, const lv_draw_mask_rect
|
||||
d2_selectrenderbuffer(u->d2_handle, u->renderbuffer);
|
||||
#endif
|
||||
|
||||
d2_framebuffer(u->d2_handle,
|
||||
u->base_unit.target_layer->buf,
|
||||
lv_area_get_width(&u->base_unit.target_layer->buf_area),
|
||||
(d2_u32)lv_area_get_width(&u->base_unit.target_layer->buf_area),
|
||||
(d2_u32)lv_area_get_height(&u->base_unit.target_layer->buf_area),
|
||||
lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(u->base_unit.target_layer->color_format));
|
||||
d2_framebuffer_from_layer(u->d2_handle, u->base_unit.target_layer);
|
||||
|
||||
d2_cliprect(u->d2_handle, (d2_border)clipped_area.x1, (d2_border)clipped_area.y1, (d2_border)clipped_area.x2,
|
||||
(d2_border)clipped_area.y2);
|
||||
|
@ -6,7 +6,6 @@ void lv_draw_dave2d_triangle(lv_draw_dave2d_unit_t * u, const lv_draw_triangle_d
|
||||
lv_area_t clipped_area;
|
||||
d2_u32 flags = 0;
|
||||
d2_u8 current_alpha_mode = 0;
|
||||
lv_area_t buffer_area;
|
||||
int32_t x;
|
||||
int32_t y;
|
||||
|
||||
@ -29,10 +28,7 @@ void lv_draw_dave2d_triangle(lv_draw_dave2d_unit_t * u, const lv_draw_triangle_d
|
||||
x = 0 - u->base_unit.target_layer->buf_area.x1;
|
||||
y = 0 - u->base_unit.target_layer->buf_area.y1;
|
||||
|
||||
buffer_area = u->base_unit.target_layer->buf_area;
|
||||
|
||||
lv_area_move(&clipped_area, x, y);
|
||||
lv_area_move(&buffer_area, x, y);
|
||||
|
||||
#if D2_RENDER_EACH_OPERATION
|
||||
d2_selectrenderbuffer(u->d2_handle, u->renderbuffer);
|
||||
@ -146,12 +142,7 @@ void lv_draw_dave2d_triangle(lv_draw_dave2d_unit_t * u, const lv_draw_triangle_d
|
||||
|
||||
}
|
||||
|
||||
d2_framebuffer(u->d2_handle,
|
||||
u->base_unit.target_layer->buf,
|
||||
(d2_s32)u->base_unit.target_layer->buf_stride / lv_color_format_get_size(u->base_unit.target_layer->color_format),
|
||||
(d2_u32)lv_area_get_width(&buffer_area),
|
||||
(d2_u32)lv_area_get_height(&buffer_area),
|
||||
lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(u->base_unit.target_layer->color_format));
|
||||
d2_framebuffer_from_layer(u->d2_handle, u->base_unit.target_layer);
|
||||
|
||||
d2_cliprect(u->d2_handle, (d2_border)clipped_area.x1, (d2_border)clipped_area.y1, (d2_border)clipped_area.x2,
|
||||
(d2_border)clipped_area.y2);
|
||||
|
@ -120,6 +120,19 @@ d2_u32 lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(lv_color_format_t colour_format)
|
||||
return d2_lvgl_mode;
|
||||
}
|
||||
|
||||
void d2_framebuffer_from_layer(d2_device * handle, lv_layer_t * layer)
|
||||
{
|
||||
lv_draw_buf_t * draw_buf = layer->draw_buf;
|
||||
lv_area_t buffer_area = layer->buf_area;
|
||||
lv_area_move(&buffer_area, -layer->buf_area.x1, -layer->buf_area.y1);
|
||||
|
||||
d2_framebuffer(handle, draw_buf->data,
|
||||
(d2_s32) draw_buf->header.stride / lv_color_format_get_size(layer->color_format),
|
||||
(d2_u32)lv_area_get_width(&buffer_area),
|
||||
(d2_u32)lv_area_get_height(&buffer_area),
|
||||
lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(layer->color_format));
|
||||
}
|
||||
|
||||
/**********************
|
||||
* STATIC FUNCTIONS
|
||||
**********************/
|
||||
|
@ -32,6 +32,8 @@ d2_s32 lv_draw_dave2d_cf_fb_get(void);
|
||||
|
||||
d2_u32 lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(lv_color_format_t colour_format);
|
||||
|
||||
void d2_framebuffer_from_layer(d2_device * handle, lv_layer_t * layer);
|
||||
|
||||
/**********************
|
||||
* MACROS
|
||||
**********************/
|
||||
|
Loading…
x
Reference in New Issue
Block a user