aboutsummaryrefslogtreecommitdiffstats
path: root/src/quicktemplates2/qquickstackelement.cpp
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2017-01-11 15:44:16 +0100
committerJ-P Nurmi <jpnurmi@qt.io>2017-01-12 14:36:13 +0000
commitdef88e018576e6e2185ff6fa4b6e4fac885a6e10 (patch)
tree6a5debfca7d07fd33f02526fa24607f9f2a3187f /src/quicktemplates2/qquickstackelement.cpp
parentf0508c72750d5c44834b6a0f9db3a76431350158 (diff)
Add attached StackView.visible property
[ChangeLog][Controls][StackView] Added attached StackView.visible property that can be used to control whether items below the top- most item are kept visible. Task-number: QTBUG-56801 Change-Id: Ieead0d476f254886cff5f8457bb5c5d23cb7de8a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src/quicktemplates2/qquickstackelement.cpp')
-rw-r--r--src/quicktemplates2/qquickstackelement.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/quicktemplates2/qquickstackelement.cpp b/src/quicktemplates2/qquickstackelement.cpp
index c67c0015..7bd6efc9 100644
--- a/src/quicktemplates2/qquickstackelement.cpp
+++ b/src/quicktemplates2/qquickstackelement.cpp
@@ -89,7 +89,7 @@ QQuickStackElement::~QQuickStackElement()
item->deleteLater();
item = nullptr;
} else {
- item->setVisible(false);
+ setVisible(false);
if (!widthValid)
item->resetWidth();
if (!heightValid)
@@ -252,6 +252,15 @@ void QQuickStackElement::setStatus(QQuickStackView::Status value)
emit attached->statusChanged();
}
+void QQuickStackElement::setVisible(bool visible)
+{
+ QQuickStackViewAttached *attached = attachedStackObject(this);
+ if (!item || (attached && QQuickStackViewAttachedPrivate::get(attached)->explicitVisible))
+ return;
+
+ item->setVisible(visible);
+}
+
void QQuickStackElement::transitionNextReposition(QQuickItemViewTransitioner *transitioner, QQuickItemViewTransitioner::TransitionType type, bool asTarget)
{
if (transitioner)