Changeset View
Changeset View
Standalone View
Standalone View
applets/kicker/plugin/draghelper.h
Show All 24 Lines | |||||
25 | #include <QUrl> | 25 | #include <QUrl> | ||
26 | 26 | | |||
27 | class QQuickItem; | 27 | class QQuickItem; | ||
28 | 28 | | |||
29 | class DragHelper : public QObject | 29 | class DragHelper : public QObject | ||
30 | { | 30 | { | ||
31 | Q_OBJECT | 31 | Q_OBJECT | ||
32 | Q_PROPERTY(int dragIconSize READ dragIconSize WRITE setDragIconSize NOTIFY dragIconSizeChanged) | 32 | Q_PROPERTY(int dragIconSize READ dragIconSize WRITE setDragIconSize NOTIFY dragIconSizeChanged) | ||
33 | Q_PROPERTY(bool dragging READ isDragging NOTIFY draggingChanged) | ||||
33 | 34 | | |||
34 | public: | 35 | public: | ||
35 | explicit DragHelper(QObject *parent = nullptr); | 36 | explicit DragHelper(QObject *parent = nullptr); | ||
36 | ~DragHelper() override; | 37 | ~DragHelper() override; | ||
37 | 38 | | |||
38 | int dragIconSize() const; | 39 | int dragIconSize() const; | ||
39 | void setDragIconSize(int size); | 40 | void setDragIconSize(int size); | ||
41 | bool isDragging() const { return m_dragging; } | ||||
40 | 42 | | |||
41 | Q_INVOKABLE bool isDrag(int oldX, int oldY, int newX, int newY) const; | 43 | Q_INVOKABLE bool isDrag(int oldX, int oldY, int newX, int newY) const; | ||
42 | Q_INVOKABLE void startDrag(QQuickItem* item, const QUrl &url = QUrl(), const QIcon &icon = QIcon(), | 44 | Q_INVOKABLE void startDrag(QQuickItem* item, const QUrl &url = QUrl(), const QIcon &icon = QIcon(), | ||
43 | const QString &extraMimeType = QString(), const QString &extraMimeData = QString()); | 45 | const QString &extraMimeType = QString(), const QString &extraMimeData = QString()); | ||
44 | 46 | | |||
45 | Q_SIGNALS: | 47 | Q_SIGNALS: | ||
46 | void dragIconSizeChanged() const; | 48 | void dragIconSizeChanged() const; | ||
47 | void dropped() const; | 49 | void dropped() const; | ||
50 | void draggingChanged() const; | ||||
48 | 51 | | |||
49 | private: | 52 | private: | ||
50 | int m_dragIconSize; | 53 | int m_dragIconSize; | ||
54 | bool m_dragging; | ||||
51 | Q_INVOKABLE void doDrag(QQuickItem* item, const QUrl &url = QUrl(), const QIcon &icon = QIcon(), | 55 | Q_INVOKABLE void doDrag(QQuickItem* item, const QUrl &url = QUrl(), const QIcon &icon = QIcon(), | ||
52 | const QString &extraMimeType = QString(), const QString &extraMimeData = QString()) const; | 56 | const QString &extraMimeType = QString(), const QString &extraMimeData = QString()); | ||
57 | void setDragging(bool dragging); | ||||
53 | }; | 58 | }; | ||
54 | 59 | | |||
55 | #endif | 60 | #endif |