#ifndef ELAGRAPHICSITEMPRIVATE_H #define ELAGRAPHICSITEMPRIVATE_H #include #include #include "ElaGraphicsItem.h" class ElaGraphicsItemPrivate : public QObject { Q_OBJECT Q_D_CREATE(ElaGraphicsItem) Q_PROPERTY_CREATE_D(int, Width) Q_PROPERTY_CREATE_D(int, Height) Q_PROPERTY_CREATE_D(QImage, ItemImage) Q_PROPERTY_CREATE_D(QImage, ItemSelectedImage) Q_PROPERTY_CREATE_D(QString, ItemName) Q_PROPERTY_CREATE_D(QVariantMap, DataRoutes) Q_PROPERTY_CREATE_D(int, MaxLinkPortCount) public: explicit ElaGraphicsItemPrivate(QObject *parent = nullptr); ~ElaGraphicsItemPrivate(); friend QDataStream &operator<<(QDataStream &stream, const ElaGraphicsItemPrivate *data); friend QDataStream &operator>>(QDataStream &stream, ElaGraphicsItemPrivate *data); private: QString _itemUID; QVector _currentLinkPortState; }; #endif // ELAGRAPHICSITEMPRIVATE_H