diff options
Diffstat (limited to 'src/quick/particles/qquickmaskextruder_p.h')
-rw-r--r-- | src/quick/particles/qquickmaskextruder_p.h | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/quick/particles/qquickmaskextruder_p.h b/src/quick/particles/qquickmaskextruder_p.h index 08821406ff..0c9f10b1b2 100644 --- a/src/quick/particles/qquickmaskextruder_p.h +++ b/src/quick/particles/qquickmaskextruder_p.h @@ -42,6 +42,7 @@ #ifndef MASKEXTRUDER_H #define MASKEXTRUDER_H #include "qquickparticleextruder_p.h" +#include <private/qdeclarativepixmapcache_p.h> #include <QUrl> #include <QImage> @@ -68,24 +69,22 @@ signals: void sourceChanged(QUrl arg); public slots: + void setSource(QUrl arg); + +private slots: + void startMaskLoading(); + void finishMaskLoading(); - void setSource(QUrl arg) - { - if (m_source != arg) { - m_source = arg; - m_lastHeight = -1;//Trigger reset - m_lastWidth = -1; - emit sourceChanged(arg); - } - } private: QUrl m_source; void ensureInitialized(const QRectF &r); int m_lastWidth; int m_lastHeight; + QDeclarativePixmap m_pix; QImage m_img; QList<QPointF> m_mask;//TODO: More memory efficient datastructures + //Perhaps just the mask for the largest bounds is stored, and interpolate up }; QT_END_NAMESPACE |