feat(lvgl-module): complete canvas API export for GameBoy emulator
- canvas: add missing getters/setters (get_buf, get_image, get_px, get_draw_buf, set_palette, copy_buf, init_layer, finish_layer, buf_size) - draw_buf: export create/destroy/init/dup/copy/goto/width_to_stride/align/palette/from_image/to_image - draw layer: create + alloc_buf - image: scale/rotation/pivot/offset for GB integer upscaling - style: transform_scale/pivot for fallback path Enables ELF apps to use full LVGL9 canvas docs API: - 160x144 raw buffer + lv_image_set_scale 2x/3x - layer init/finish for direct draw calls - palette for indexed GB modes Test: GameBoy app builds clean (0 missing symbols) vs 5.5.2 SDK Fixes missing symbol errors that previously required commented-out scaling workaround
This commit is contained in:
@@ -199,12 +199,50 @@ const struct ModuleSymbol lvgl_module_symbols[] = {
|
||||
DEFINE_MODULE_SYMBOL(lv_buttonmatrix_set_button_width),
|
||||
DEFINE_MODULE_SYMBOL(lv_buttonmatrix_set_selected_button),
|
||||
DEFINE_MODULE_SYMBOL(lv_buttonmatrix_clear_button_ctrl),
|
||||
// lv_canvas
|
||||
// lv_canvas - full API for emulator framebuffer use-cases (GameBoy 160x144)
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_create),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_fill_bg),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_set_draw_buf),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_set_buffer),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_set_draw_buf),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_set_px),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_set_palette),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_get_draw_buf),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_get_px),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_get_image),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_get_buf),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_copy_buf),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_fill_bg),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_init_layer),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_finish_layer),
|
||||
DEFINE_MODULE_SYMBOL(lv_canvas_buf_size),
|
||||
// lv_draw_buf - LVGL9 buffers (was lv_img_buf)
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_create),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_destroy),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_init),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_dup),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_copy),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_goto_xy),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_clear),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_width_to_stride),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_align),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_set_palette),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_from_image),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_to_image),
|
||||
// lv_draw layer helpers
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_layer_create),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_layer_alloc_buf),
|
||||
// lv_image transform/scale - critical for GB 2x/3x scaling (image as canvas)
|
||||
DEFINE_MODULE_SYMBOL(lv_image_set_scale),
|
||||
DEFINE_MODULE_SYMBOL(lv_image_set_scale_x),
|
||||
DEFINE_MODULE_SYMBOL(lv_image_set_scale_y),
|
||||
DEFINE_MODULE_SYMBOL(lv_image_set_rotation),
|
||||
DEFINE_MODULE_SYMBOL(lv_image_set_pivot),
|
||||
DEFINE_MODULE_SYMBOL(lv_image_set_offset_x),
|
||||
DEFINE_MODULE_SYMBOL(lv_image_set_offset_y),
|
||||
// generic obj transform styles (fallback scaling path)
|
||||
DEFINE_MODULE_SYMBOL(lv_obj_set_style_transform_scale_x),
|
||||
DEFINE_MODULE_SYMBOL(lv_obj_set_style_transform_scale_y),
|
||||
DEFINE_MODULE_SYMBOL(lv_obj_set_style_transform_pivot_x),
|
||||
DEFINE_MODULE_SYMBOL(lv_obj_set_style_transform_pivot_y),
|
||||
// lv_label
|
||||
DEFINE_MODULE_SYMBOL(lv_label_create),
|
||||
DEFINE_MODULE_SYMBOL(lv_label_cut_text),
|
||||
@@ -431,7 +469,7 @@ const struct ModuleSymbol lvgl_module_symbols[] = {
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_task_get_draw_dsc),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_task_get_label_dsc),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_task_get_fill_dsc),
|
||||
DEFINE_MODULE_SYMBOL(lv_draw_buf_create),
|
||||
// lv_draw_buf_create moved to canvas block (duplicate removed)
|
||||
// lv_image
|
||||
DEFINE_MODULE_SYMBOL(lv_image_create),
|
||||
DEFINE_MODULE_SYMBOL(lv_image_set_src),
|
||||
|
||||
Reference in New Issue
Block a user