@@ -0,0 +1,66 @@
1+#include "spreadflickable.h"
3+SpreadFlickable::SpreadFlickable(QQuickItem *parent):
5+ m_mousePressed(false),
8+ m_flickable = new QQuickFlickable(this);
9+ m_flickable->installEventFilter(this);
10+ connect(m_flickable, &QQuickFlickable::contentWidthChanged, this, &SpreadFlickable::contentWidthChanged);
11+ connect(m_flickable, &QQuickFlickable::contentXChanged, this, &SpreadFlickable::contentXChanged);
13+ connect(this, &QQuickItem::heightChanged, this, &SpreadFlickable::slotHeightChanged);
14+ connect(this, &QQuickItem::widthChanged, this, &SpreadFlickable::slotWidthChanged);
17+qreal SpreadFlickable::contentWidth() const
19+ return m_flickable->contentWidth();
22+void SpreadFlickable::setContentWidth(qreal contentWidth)
24+ m_flickable->setContentWidth(contentWidth);
27+qreal SpreadFlickable::contentX() const
29+ return m_flickable->contentX();
32+void SpreadFlickable::setContentX(qreal contentX)
34+ m_flickable->setContentX(contentX);
37+void SpreadFlickable::slotHeightChanged()
39+ m_flickable->setHeight(height());
42+void SpreadFlickable::slotWidthChanged()
44+ m_flickable->setWidth(width());
47+bool SpreadFlickable::eventFilter(QObject* /*watched*/, QEvent *event)
49+ //m_flickable->eventFilter(watched, event);
50+ switch (event->type()) {
51+ case QEvent::TouchBegin:
53+ case QEvent::TouchEnd:
55+ case QEvent::MouseButtonPress:
57+ case QEvent::MouseButtonRelease:
64+ // We never filter them out. We are just watching.