diff options
author | J-P Nurmi <jpnurmi@theqtcompany.com> | 2016-01-23 14:34:11 +0100 |
---|---|---|
committer | J-P Nurmi <jpnurmi@theqtcompany.com> | 2016-01-23 13:37:47 +0000 |
commit | 4f1fb09ed70c69e73f2e19f28f4299f4cfbc90dc (patch) | |
tree | 7bd7f803092c83b591ecab807a5ce59d6f2223eb /src | |
parent | 98e30d25dbdfbfb11f5cce1d74ef009ebecdfaf8 (diff) |
Add Popup::setVisible()
This allows nice bindings such as:
Slider {
id: slider
Popup {
y: -height - 1
x: -width / 2 + slider.handle.width / 2
parent: slider.handle
visible: slider.pressed // <---
Label {
text: slider.position.toFixed(2)
}
}
}
Change-Id: Iebde004205636de31d0f0dd0f6404f0755aaf0df
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/templates/qquickpopup.cpp | 8 | ||||
-rw-r--r-- | src/templates/qquickpopup_p.h | 3 |
2 files changed, 10 insertions, 1 deletions
diff --git a/src/templates/qquickpopup.cpp b/src/templates/qquickpopup.cpp index 7df828ae..e613adec 100644 --- a/src/templates/qquickpopup.cpp +++ b/src/templates/qquickpopup.cpp @@ -1085,6 +1085,14 @@ bool QQuickPopup::isVisible() const return d->overlay != Q_NULLPTR /*&& !d->transitionManager.isRunning()*/; } +void QQuickPopup::setVisible(bool visible) +{ + if (visible) + open(); + else + close(); +} + /*! \qmlproperty Transition Qt.labs.controls::Popup::enter diff --git a/src/templates/qquickpopup_p.h b/src/templates/qquickpopup_p.h index 74a11647..a9094f92 100644 --- a/src/templates/qquickpopup_p.h +++ b/src/templates/qquickpopup_p.h @@ -89,7 +89,7 @@ class Q_LABSTEMPLATES_EXPORT QQuickPopup : public QObject, public QQmlParserStat Q_PROPERTY(QQmlListProperty<QQuickItem> contentChildren READ contentChildren NOTIFY contentChildrenChanged FINAL) Q_PROPERTY(bool focus READ hasFocus WRITE setFocus NOTIFY focusChanged) Q_PROPERTY(bool modal READ isModal WRITE setModal NOTIFY modalChanged) - Q_PROPERTY(bool visible READ isVisible NOTIFY visibleChanged) + Q_PROPERTY(bool visible READ isVisible WRITE setVisible NOTIFY visibleChanged) Q_PROPERTY(QQuickTransition *enter READ enter WRITE setEnter NOTIFY enterChanged FINAL) Q_PROPERTY(QQuickTransition *exit READ exit WRITE setExit NOTIFY exitChanged FINAL) Q_CLASSINFO("DefaultProperty", "contentData") @@ -166,6 +166,7 @@ public: void setModal(bool modal); bool isVisible() const; + void setVisible(bool visible); QQuickTransition *enter() const; void setEnter(QQuickTransition *transition); |