#pragma once #include #include class DragImageItem : public QQuickPaintedItem { Q_OBJECT Q_PROPERTY(QString imageUrl READ imageUrl WRITE setImageUrl NOTIFY imageUrlChanged) QString m_imageUrl; public: DragImageItem(QQuickItem *parent = nullptr); void paint(QPainter *p) override; QString imageUrl() const; public slots: void setImageUrl(QString imageUrl); protected: bool eventFilter(QObject *watched, QEvent *event) override; signals: void imageUrlChanged(QString imageUrl); private: void setToCursorPos(); QImage m_image; };