void QmlAnchorBindingProxy::setTopTarget(const QVariant &target) { QmlItemNode newTarget(target.value<ModelNode>()); if (newTarget == m_topTarget) return; RewriterTransaction transaction = m_fxItemNode.modelNode().view()->beginRewriterTransaction(); m_topTarget = newTarget; calcTopMargin(); emit topTargetChanged(); }
void QmlAnchorBindingProxy::setTopAnchor(bool anchor) { if (!m_qmlItemNode.hasNodeParent()) return ; if (topAnchored() == anchor) return; RewriterTransaction transaction = m_qmlItemNode.modelNode().view()->beginRewriterTransaction(QByteArrayLiteral("QmlAnchorBindingProxy::setTopAnchor")); if (!anchor) { removeTopAnchor(); } else { calcTopMargin(); backupPropertyAndRemove(modelNode(), "y"); if (bottomAnchored()) backupPropertyAndRemove(modelNode(), "height"); } emit topAnchorChanged(); if (hasAnchors() != anchor) emit anchorsChanged(); }