29 lines
761 B
Python
29 lines
761 B
Python
from esphome import automation
|
|
|
|
from .automation import update_to_code
|
|
from .defines import CONF_MAIN, CONF_OBJ
|
|
from .schemas import create_modify_schema
|
|
from .types import ObjUpdateAction, WidgetType, lv_obj_t
|
|
|
|
|
|
class ObjType(WidgetType):
|
|
"""
|
|
The base LVGL object. All other widgets inherit from this.
|
|
"""
|
|
|
|
def __init__(self):
|
|
super().__init__(CONF_OBJ, lv_obj_t, (CONF_MAIN,), schema={}, modify_schema={})
|
|
|
|
async def to_code(self, w, config):
|
|
return []
|
|
|
|
|
|
obj_spec = ObjType()
|
|
|
|
|
|
@automation.register_action(
|
|
"lvgl.widget.update", ObjUpdateAction, create_modify_schema(obj_spec)
|
|
)
|
|
async def obj_update_to_code(config, action_id, template_arg, args):
|
|
return await update_to_code(config, action_id, template_arg, args)
|