File indexing completed on 2024-05-12 05:39:49
0001 #ifndef ROLISTEAMMIMEDATA_H 0002 #define ROLISTEAMMIMEDATA_H 0003 0004 #include <QMimeData> 0005 0006 #include "data/diceshortcut.h" 0007 #include "data/person.h" 0008 #include <core_global.h> 0009 /** 0010 * @brief allows drag and drop inside the application scope. 0011 */ 0012 class CORE_EXPORT RolisteamMimeData : public QMimeData 0013 { 0014 Q_OBJECT 0015 Q_PROPERTY(Person* person READ person WRITE setPerson NOTIFY personChanged) 0016 Q_PROPERTY(DiceShortCut alias READ alias NOTIFY aliasChanged) 0017 Q_PROPERTY(QString npcUuid READ npcUuid WRITE setNpcUuid NOTIFY npcUuidChanged) 0018 Q_PROPERTY(QString mediaUuid READ mediaUuid WRITE setMediaUuid NOTIFY mediaUuidChanged) 0019 // Q_PROPERTY(QByteArray imageData READ imageData WRITE setImageData NOTIFY imageDataChanged) 0020 public: 0021 RolisteamMimeData(); 0022 bool hasFormat(const QString& mimeType) const; 0023 0024 Person* person() const; 0025 DiceShortCut alias() const; 0026 QString npcUuid() const; 0027 QString mediaUuid() const; 0028 // QByteArray imageData() const; 0029 0030 public slots: 0031 void setAlias(QString, QString, bool); 0032 void setPerson(Person*); 0033 // void setImageData(const QByteArray& data); 0034 void setNpcUuid(const QString& str); 0035 void setMediaUuid(const QString& uuid); 0036 0037 signals: 0038 void personChanged(); 0039 void aliasChanged(); 0040 void npcUuidChanged(); 0041 void mediaUuidChanged(); 0042 // void imageDataChanged(); 0043 0044 private: 0045 Person* m_person= nullptr; /// pointer to stored data 0046 DiceShortCut m_alias; /// alias 0047 // QByteArray m_imageData; 0048 QString m_npcUuid; 0049 QString m_mediaUuid; 0050 }; 0051 #endif // ROLISTEAMMIMEDATA_H