#ifndef PIC_DATE_ITEM_H #define PIC_DATE_ITEM_H #include "pictextitem.h" #include #include #include #include "ViewModels.h" class PicDateItem : public PicTextItem { public: PicDateItem(QGraphicsItem *parent = 0, QGraphicsScene *scene = 0, const SourceType type = SourceType::DATETIME); virtual ~PicDateItem() {} virtual QVariant source() override; virtual void setSource(QVariant var) override; void setModel(DateItemModel model); const DateItemModel& model() const; bool updateDatetimeStr(); protected: virtual void setCustomAttrs(const QXmlStreamAttributes& attrs) override; virtual void saveCustomAttrs(QXmlStreamAttributes& attrs) override; virtual QImage itemImage() override; private: QString generateDatetimeStr(const QDateTime& datetime); QTimer m_timer; DateItemModel m_model; QString m_currDateTimeStr; }; #endif // PIC_DATE_ITEM_H