1
0
mirror of https://github.com/esphome/esphome.git synced 2025-09-05 21:02:20 +01:00

[lvgl] Make image update via lambda work (#7886)

This commit is contained in:
Clyde Stubbs
2024-11-28 14:48:48 +11:00
committed by GitHub
parent d305870284
commit c9b0490305
7 changed files with 52 additions and 28 deletions

View File

@@ -1,6 +1,7 @@
from typing import Union
import esphome.codegen as cg
from esphome.components import image
from esphome.components.color import CONF_HEX, ColorStruct, from_rgbw
from esphome.components.font import Font
from esphome.components.image import Image_
@@ -31,7 +32,7 @@ from .defines import (
literal,
)
from .helpers import add_lv_use, esphome_fonts_used, lv_fonts_used, requires_component
from .types import lv_font_t, lv_gradient_t, lv_img_t
from .types import lv_font_t, lv_gradient_t
opacity_consts = LvConstant("LV_OPA_", "TRANSP", "COVER")
@@ -332,8 +333,12 @@ def image_validator(value):
lv_image = LValidator(
image_validator,
lv_img_t,
retmapper=lambda x: MockObj(x, "->").get_lv_img_dsc(),
image.Image_.operator("ptr"),
requires="image",
)
lv_image_list = LValidator(
cv.ensure_list(image_validator),
cg.std_vector.template(image.Image_.operator("ptr")),
requires="image",
)
lv_bool = LValidator(cv.boolean, cg.bool_, retmapper=literal)