21 lines
476 B
C++
21 lines
476 B
C++
#pragma once
|
|
|
|
#include "Widget.hpp"
|
|
|
|
class IconWidget : public Widget {
|
|
public:
|
|
explicit IconWidget(const WidgetConfig& config);
|
|
|
|
lv_obj_t* create(lv_obj_t* parent) override;
|
|
void applyStyle() override;
|
|
|
|
// KNX updates (can change icon color based on state)
|
|
void onKnxSwitch(bool value) override;
|
|
|
|
private:
|
|
lv_obj_t* iconLabel_ = nullptr;
|
|
|
|
// Helper to encode unicode codepoint to UTF-8
|
|
static int encodeUtf8(uint32_t codepoint, char* buf);
|
|
};
|