/* * SPDX-FileCopyrightText: 2026 M5Stack Technology CO LTD * * SPDX-License-Identifier: MIT */ #include "default.h" using namespace uitk::lvgl_cpp; using namespace stackchan::avatar; void DefaultAvatar::init(lv_obj_t* parent, const lv_font_t* font) { _pannel = std::make_unique(parent); _pannel->align(LV_ALIGN_CENTER, 0, 0); _pannel->setSize(320, 240); _pannel->setRadius(0); _pannel->setBorderWidth(0); _pannel->setBgColor(secondaryColor); _pannel->removeFlag(LV_OBJ_FLAG_SCROLLABLE); _key_elements.leftEye = std::make_unique(_pannel->get(), primaryColor, secondaryColor, true); _key_elements.rightEye = std::make_unique(_pannel->get(), primaryColor, secondaryColor, false); _key_elements.mouth = std::make_unique(_pannel->get(), primaryColor, secondaryColor); _key_elements.speechBubble = std::make_unique(_pannel->get(), primaryColor, secondaryColor, font); } Container* DefaultAvatar::getPanel() const { if (_pannel) { return _pannel.get(); } return NULL; }