diff options
Diffstat (limited to 'src/layouts/qquicklinearlayout.cpp')
| -rw-r--r-- | src/layouts/qquicklinearlayout.cpp | 61 |
1 files changed, 1 insertions, 60 deletions
diff --git a/src/layouts/qquicklinearlayout.cpp b/src/layouts/qquicklinearlayout.cpp index 0b9c6f546..cbd329768 100644 --- a/src/layouts/qquicklinearlayout.cpp +++ b/src/layouts/qquicklinearlayout.cpp @@ -323,7 +323,6 @@ void QQuickGridLayoutBase::setAlignment(QQuickItem *item, Qt::Alignment alignmen QQuickGridLayoutBase::~QQuickGridLayoutBase() { Q_D(QQuickGridLayoutBase); - d->m_isReady = false; /* Avoid messy deconstruction, should give: * Faster deconstruction @@ -341,12 +340,8 @@ QQuickGridLayoutBase::~QQuickGridLayoutBase() void QQuickGridLayoutBase::componentComplete() { - Q_D(QQuickGridLayoutBase); quickLayoutDebug() << objectName() << "QQuickGridLayoutBase::componentComplete()" << parent(); - d->m_disableRearrange = true; - QQuickLayout::componentComplete(); // will call our geometryChange(), (where isComponentComplete() == true) - d->m_isReady = true; - d->m_disableRearrange = false; + QQuickLayout::componentComplete(); updateLayoutItems(); QQuickItem *par = parentItem(); @@ -469,10 +464,6 @@ void QQuickGridLayoutBase::itemChange(ItemChange change, const ItemChangeData &v QQuickItem *item = value.item; QObject::connect(item, SIGNAL(destroyed()), this, SLOT(onItemDestroyed())); QObject::connect(item, SIGNAL(visibleChanged()), this, SLOT(onItemVisibleChanged())); - QObject::connect(item, SIGNAL(implicitWidthChanged()), this, SLOT(invalidateSenderItem())); - QObject::connect(item, SIGNAL(implicitHeightChanged()), this, SLOT(invalidateSenderItem())); - QObject::connect(item, SIGNAL(baselineOffsetChanged(qreal)), this, SLOT(invalidateSenderItem())); - if (isReady()) updateLayoutItems(); } else if (change == ItemChildRemovedChange) { @@ -480,9 +471,6 @@ void QQuickGridLayoutBase::itemChange(ItemChange change, const ItemChangeData &v QQuickItem *item = value.item; QObject::disconnect(item, SIGNAL(destroyed()), this, SLOT(onItemDestroyed())); QObject::disconnect(item, SIGNAL(visibleChanged()), this, SLOT(onItemVisibleChanged())); - QObject::disconnect(item, SIGNAL(implicitWidthChanged()), this, SLOT(invalidateSenderItem())); - QObject::disconnect(item, SIGNAL(implicitHeightChanged()), this, SLOT(invalidateSenderItem())); - QObject::disconnect(item, SIGNAL(baselineOffsetChanged(qreal)), this, SLOT(invalidateSenderItem())); if (isReady()) updateLayoutItems(); } @@ -490,16 +478,6 @@ void QQuickGridLayoutBase::itemChange(ItemChange change, const ItemChangeData &v QQuickLayout::itemChange(change, value); } -void QQuickGridLayoutBase::geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry) -{ - Q_D(QQuickGridLayoutBase); - QQuickLayout::geometryChanged(newGeometry, oldGeometry); - if (d->m_disableRearrange || !isReady() || !newGeometry.isValid()) - return; - quickLayoutDebug() << "QQuickGridLayoutBase::geometryChanged" << newGeometry << oldGeometry; - rearrange(newGeometry.size()); -} - void QQuickGridLayoutBase::removeGridItem(QGridLayoutItem *gridItem) { Q_D(QQuickGridLayoutBase); @@ -508,11 +486,6 @@ void QQuickGridLayoutBase::removeGridItem(QGridLayoutItem *gridItem) d->engine.removeRows(index, 1, d->orientation); } -bool QQuickGridLayoutBase::isReady() const -{ - return d_func()->m_isReady; -} - void QQuickGridLayoutBase::onItemVisibleChanged() { if (!isReady()) @@ -535,15 +508,6 @@ void QQuickGridLayoutBase::onItemDestroyed() } } -void QQuickGridLayoutBase::invalidateSenderItem() -{ - if (!isReady()) - return; - QQuickItem *item = static_cast<QQuickItem *>(sender()); - Q_ASSERT(item); - invalidate(item); -} - void QQuickGridLayoutBase::rearrange(const QSizeF &size) { Q_D(QQuickGridLayoutBase); @@ -578,29 +542,6 @@ void QQuickGridLayoutBase::rearrange(const QSizeF &size) } } -bool QQuickGridLayoutBase::shouldIgnoreItem(QQuickItem *child, QQuickLayoutAttached *&info, QSizeF *sizeHints) -{ - Q_D(QQuickGridLayoutBase); - bool ignoreItem = true; - QQuickItemPrivate *childPrivate = QQuickItemPrivate::get(child); - if (childPrivate->explicitVisible) { - QQuickGridLayoutItem::effectiveSizeHints_helper(child, sizeHints, &info, true); - QSizeF effectiveMaxSize = sizeHints[Qt::MaximumSize]; - if (!effectiveMaxSize.isNull()) { - QSizeF &prefS = sizeHints[Qt::PreferredSize]; - if (QQuickGridLayoutItem::effectiveSizePolicy_helper(child, Qt::Horizontal, info) == QLayoutPolicy::Fixed) - effectiveMaxSize.setWidth(prefS.width()); - if (QQuickGridLayoutItem::effectiveSizePolicy_helper(child, Qt::Vertical, info) == QLayoutPolicy::Fixed) - effectiveMaxSize.setHeight(prefS.height()); - } - ignoreItem = effectiveMaxSize.isNull(); - } - - if (ignoreItem) - d->m_ignoredItems << child; - return ignoreItem; -} - /********************************** ** ** QQuickGridLayout |
