#ifndef ETIMER_H #define ETIMER_H #include #include #include #include #include "ebase.h" class ETimer : public EBase { Q_OBJECT public: struct Data { QDateTime targetTime; QFont font; QString text; QColor textColor; QColor backColor; int duration = 10; bool isDown; bool isMultiline; bool hasDay; bool hasHour; bool hasMin; bool hasSec; }; explicit ETimer(EBase *multiWin = nullptr); explicit ETimer(const QJsonObject &json, EBase *multiWin = nullptr); void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override; int type() const override { return EBase::Timer; } QWidget* attrWgt() override; QJsonObject attrJson() const override; Data attr; int secs = 0; private: void init(); }; #endif // ETIMER_H