aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickitemview_p.h
diff options
context:
space:
mode:
authorBea Lam <bea.lam@nokia.com>2012-03-20 11:37:10 +1000
committerQt by Nokia <qt-info@nokia.com>2012-04-17 06:09:56 +0200
commit0d52c081a1650dc6a3a9b02c7fa5345c94ca6597 (patch)
treec0c887fc56471b28c7e238bb449fe2d14a254f84 /src/quick/items/qquickitemview_p.h
parentbf55fe91ed0e6a0673f66d1792605c632b1aa99e (diff)
Vertical layout direction for ListView and GridView
Provide verticalLayoutDirection property with TopToBottom and BottomToTop values. Change-Id: If6f0da5dd4735036162868d391852a661854de5b Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Diffstat (limited to 'src/quick/items/qquickitemview_p.h')
-rw-r--r--src/quick/items/qquickitemview_p.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/quick/items/qquickitemview_p.h b/src/quick/items/qquickitemview_p.h
index f252fb58f1..89e59306f9 100644
--- a/src/quick/items/qquickitemview_p.h
+++ b/src/quick/items/qquickitemview_p.h
@@ -70,6 +70,7 @@ class Q_AUTOTEST_EXPORT QQuickItemView : public QQuickFlickable
Q_PROPERTY(Qt::LayoutDirection layoutDirection READ layoutDirection WRITE setLayoutDirection NOTIFY layoutDirectionChanged)
Q_PROPERTY(Qt::LayoutDirection effectiveLayoutDirection READ effectiveLayoutDirection NOTIFY effectiveLayoutDirectionChanged)
+ Q_PROPERTY(VerticalLayoutDirection verticalLayoutDirection READ verticalLayoutDirection WRITE setVerticalLayoutDirection NOTIFY verticalLayoutDirectionChanged)
Q_PROPERTY(QQmlComponent *header READ header WRITE setHeader NOTIFY headerChanged)
Q_PROPERTY(QQuickItem *headerItem READ headerItem NOTIFY headerItemChanged)
@@ -95,8 +96,25 @@ class Q_AUTOTEST_EXPORT QQuickItemView : public QQuickFlickable
Q_ENUMS(HighlightRangeMode)
Q_ENUMS(PositionMode)
+ Q_ENUMS(VerticalLayoutDirection)
+ Q_ENUMS(LayoutDirection)
public:
+ // this holds all layout enum values so they can be referred to by other enums
+ // to ensure consistent values - e.g. QML references to GridView.TopToBottom flow
+ // and GridView.TopToBottom vertical layout direction should have same value
+ enum LayoutDirection {
+ LeftToRight = Qt::LeftToRight,
+ RightToLeft = Qt::RightToLeft,
+ VerticalTopToBottom,
+ VerticalBottomToTop
+ };
+
+ enum VerticalLayoutDirection {
+ TopToBottom = VerticalTopToBottom,
+ BottomToTop = VerticalBottomToTop
+ };
+
QQuickItemView(QQuickFlickablePrivate &dd, QQuickItem *parent = 0);
~QQuickItemView();
@@ -123,6 +141,9 @@ public:
void setLayoutDirection(Qt::LayoutDirection);
Qt::LayoutDirection effectiveLayoutDirection() const;
+ VerticalLayoutDirection verticalLayoutDirection() const;
+ void setVerticalLayoutDirection(VerticalLayoutDirection layoutDirection);
+
QQmlComponent *footer() const;
void setFooter(QQmlComponent *);
QQuickItem *footerItem() const;
@@ -189,6 +210,7 @@ public:
virtual void setContentX(qreal pos);
virtual void setContentY(qreal pos);
virtual qreal xOrigin() const;
+ virtual qreal yOrigin() const;
signals:
void modelChanged();
@@ -202,6 +224,7 @@ signals:
void layoutDirectionChanged();
void effectiveLayoutDirectionChanged();
+ void verticalLayoutDirectionChanged();
void headerChanged();
void footerChanged();