aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickitemview.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/quick/items/qquickitemview.cpp')
-rw-r--r--src/quick/items/qquickitemview.cpp40
1 files changed, 38 insertions, 2 deletions
diff --git a/src/quick/items/qquickitemview.cpp b/src/quick/items/qquickitemview.cpp
index d7b984788e..f5c0e3b8d2 100644
--- a/src/quick/items/qquickitemview.cpp
+++ b/src/quick/items/qquickitemview.cpp
@@ -459,6 +459,41 @@ void QQuickItemView::setCacheBuffer(int b)
}
}
+int QQuickItemView::displayMarginBeginning() const
+{
+ Q_D(const QQuickItemView);
+ return d->displayMarginBeginning;
+}
+
+void QQuickItemView::setDisplayMarginBeginning(int margin)
+{
+ Q_D(QQuickItemView);
+ if (d->displayMarginBeginning != margin) {
+ d->displayMarginBeginning = margin;
+ if (isComponentComplete()) {
+ d->refillOrLayout();
+ }
+ emit displayMarginBeginningChanged();
+ }
+}
+
+int QQuickItemView::displayMarginEnd() const
+{
+ Q_D(const QQuickItemView);
+ return d->displayMarginEnd;
+}
+
+void QQuickItemView::setDisplayMarginEnd(int margin)
+{
+ Q_D(QQuickItemView);
+ if (d->displayMarginEnd != margin) {
+ d->displayMarginEnd = margin;
+ if (isComponentComplete()) {
+ d->refillOrLayout();
+ }
+ emit displayMarginEndChanged();
+ }
+}
Qt::LayoutDirection QQuickItemView::layoutDirection() const
{
@@ -1443,6 +1478,7 @@ void QQuickItemView::componentComplete()
QQuickItemViewPrivate::QQuickItemViewPrivate()
: itemCount(0)
, buffer(QML_VIEW_DEFAULTCACHEBUFFER), bufferMode(BufferBefore | BufferAfter)
+ , displayMarginBeginning(0), displayMarginEnd(0)
, layoutDirection(Qt::LeftToRight), verticalLayoutDirection(QQuickItemView::TopToBottom)
, moveReason(Other)
, visibleIndex(0)
@@ -1682,9 +1718,9 @@ void QQuickItemViewPrivate::refill()
{
qreal s = qMax(size(), qreal(0.));
if (isContentFlowReversed())
- refill(-position()-s, -position());
+ refill(-position()-displayMarginBeginning-s, -position()+displayMarginEnd);
else
- refill(position(), position()+s);
+ refill(position()-displayMarginBeginning, position()+displayMarginEnd+s);
}
void QQuickItemViewPrivate::refill(qreal from, qreal to)