#ifndef PAGELISTITEM_H #define PAGELISTITEM_H #include "pageeditor.h" #include #include class PageListItem : public QObject, public QListWidgetItem { Q_OBJECT public: explicit PageListItem(const QJsonObject &attr, const QString &pageDir); ~PageListItem() { if(mAttrWgt!=0) delete mAttrWgt; } void updateJson(); bool saveFiles(); QWidget *itemWgt(); QWidget *attrWgt(); QJsonObject mAttr; QString mPageDir; QWidget *mAttrWgt{0}; QListWidget *mAudiosList{0}; QGraphicsScene *mScene{0}; QGraphicsView *mGraView{0}; QLabel *fdPlayTimes{0}; }; struct AudioInfo { QString dir; QString name; int dur{0}; int vol{100}; }; Q_DECLARE_METATYPE(AudioInfo) #endif // PAGELISTITEM_H