diff options
author | Alan Alpert <alan.alpert@nokia.com> | 2009-12-10 11:22:29 (GMT) |
---|---|---|
committer | Alan Alpert <alan.alpert@nokia.com> | 2009-12-10 11:22:29 (GMT) |
commit | 57d6bf52074761a0c6e9a79829ec845a7b0061fa (patch) | |
tree | baee7b86f5acd238689bb65591351f87dd0bb70e /src/declarative | |
parent | 8d3596fefc882a4194c665bcde4e8309dbdcc85f (diff) | |
download | Qt-57d6bf52074761a0c6e9a79829ec845a7b0061fa.zip Qt-57d6bf52074761a0c6e9a79829ec845a7b0061fa.tar.gz Qt-57d6bf52074761a0c6e9a79829ec845a7b0061fa.tar.bz2 |
Add anchors.margins
Task-number: QTBUG-6676
Diffstat (limited to 'src/declarative')
-rw-r--r-- | src/declarative/graphicsitems/qmlgraphicsanchors.cpp | 25 | ||||
-rw-r--r-- | src/declarative/graphicsitems/qmlgraphicsanchors_p.h | 5 | ||||
-rw-r--r-- | src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h | 5 |
3 files changed, 33 insertions, 2 deletions
diff --git a/src/declarative/graphicsitems/qmlgraphicsanchors.cpp b/src/declarative/graphicsitems/qmlgraphicsanchors.cpp index c28ca02..96d76cf 100644 --- a/src/declarative/graphicsitems/qmlgraphicsanchors.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsanchors.cpp @@ -859,6 +859,31 @@ void QmlGraphicsAnchors::setRightMargin(qreal offset) emit rightMarginChanged(); } +qreal QmlGraphicsAnchors::margins() const +{ + Q_D(const QmlGraphicsAnchors); + return d->margins; +} + +void QmlGraphicsAnchors::setMargins(qreal offset) +{ + Q_D(QmlGraphicsAnchors); + if (d->margins == offset) + return; + //###Is it significantly faster to set them directly so we can call fillChanged only once? + if(!d->rightMargin || d->rightMargin == d->margins) + setRightMargin(offset); + if(!d->leftMargin || d->leftMargin == d->margins) + setLeftMargin(offset); + if(!d->topMargin || d->topMargin == d->margins) + setTopMargin(offset); + if(!d->bottomMargin || d->bottomMargin == d->margins) + setBottomMargin(offset); + d->margins = offset; + emit marginsChanged(); + +} + qreal QmlGraphicsAnchors::horizontalCenterOffset() const { Q_D(const QmlGraphicsAnchors); diff --git a/src/declarative/graphicsitems/qmlgraphicsanchors_p.h b/src/declarative/graphicsitems/qmlgraphicsanchors_p.h index 2f2ca74..a67a9f8 100644 --- a/src/declarative/graphicsitems/qmlgraphicsanchors_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsanchors_p.h @@ -67,6 +67,7 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsAnchors : public QObject Q_PROPERTY(QmlGraphicsAnchorLine bottom READ bottom WRITE setBottom RESET resetBottom NOTIFY bottomChanged) Q_PROPERTY(QmlGraphicsAnchorLine verticalCenter READ verticalCenter WRITE setVerticalCenter RESET resetVerticalCenter NOTIFY verticalCenterChanged) Q_PROPERTY(QmlGraphicsAnchorLine baseline READ baseline WRITE setBaseline RESET resetBaseline NOTIFY baselineChanged) + Q_PROPERTY(qreal margins READ margins WRITE setMargins NOTIFY marginsChanged) Q_PROPERTY(qreal leftMargin READ leftMargin WRITE setLeftMargin NOTIFY leftMarginChanged) Q_PROPERTY(qreal rightMargin READ rightMargin WRITE setRightMargin NOTIFY rightMarginChanged) Q_PROPERTY(qreal horizontalCenterOffset READ horizontalCenterOffset WRITE setHorizontalCenterOffset NOTIFY horizontalCenterOffsetChanged()) @@ -137,6 +138,9 @@ public: qreal bottomMargin() const; void setBottomMargin(qreal); + qreal margins() const; + void setMargins(qreal); + qreal verticalCenterOffset() const; void setVerticalCenterOffset(qreal); @@ -172,6 +176,7 @@ Q_SIGNALS: void rightMarginChanged(); void topMarginChanged(); void bottomMarginChanged(); + void marginsChanged(); void verticalCenterOffsetChanged(); void horizontalCenterOffsetChanged(); void baselineOffsetChanged(); diff --git a/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h b/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h index be3b6dc..4f7fde0 100644 --- a/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h @@ -98,8 +98,8 @@ public: QmlGraphicsAnchorsPrivate() : updatingMe(false), updatingHorizontalAnchor(0), updatingVerticalAnchor(0), updatingFill(0), updatingCenterIn(0), item(0), usedAnchors(0), fill(0), - centerIn(0), leftMargin(0), rightMargin(0), topMargin(0), - bottomMargin(0), vCenterOffset(0), hCenterOffset(0), baselineOffset(0), + centerIn(0), leftMargin(0), rightMargin(0), topMargin(0), bottomMargin(0), + margins(0), vCenterOffset(0), hCenterOffset(0), baselineOffset(0), componentComplete(true) { } @@ -159,6 +159,7 @@ public: qreal rightMargin; qreal topMargin; qreal bottomMargin; + qreal margins; qreal vCenterOffset; qreal hCenterOffset; qreal baselineOffset; |