void AnchorIndicator::setItems(const QList<FormEditorItem *> &itemList) { clear(); if (itemList.count() == 1) { m_formEditorItem = itemList.first(); QmlItemNode sourceQmlItemNode = m_formEditorItem->qmlItemNode(); if (!sourceQmlItemNode.modelNode().isRootNode()) { QmlAnchors qmlAnchors = sourceQmlItemNode.anchors(); if (qmlAnchors.modelHasAnchor(AnchorLine::Top)) { m_indicatorTopShape = new AnchorIndicatorGraphicsItem(m_layerItem.data()); m_indicatorTopShape->updateAnchorIndicator(AnchorLine(sourceQmlItemNode, AnchorLine::Top), qmlAnchors.modelAnchor(AnchorLine::Top)); } if (qmlAnchors.modelHasAnchor(AnchorLine::Bottom)) { m_indicatorBottomShape = new AnchorIndicatorGraphicsItem(m_layerItem.data()); m_indicatorBottomShape->updateAnchorIndicator(AnchorLine(sourceQmlItemNode, AnchorLine::Bottom), qmlAnchors.modelAnchor(AnchorLine::Bottom)); } if (qmlAnchors.modelHasAnchor(AnchorLine::Left)) { m_indicatorLeftShape = new AnchorIndicatorGraphicsItem(m_layerItem.data()); m_indicatorLeftShape->updateAnchorIndicator(AnchorLine(sourceQmlItemNode, AnchorLine::Left), qmlAnchors.modelAnchor(AnchorLine::Left)); } if (qmlAnchors.modelHasAnchor(AnchorLine::Right)) { m_indicatorRightShape = new AnchorIndicatorGraphicsItem(m_layerItem.data()); m_indicatorRightShape->updateAnchorIndicator(AnchorLine(sourceQmlItemNode, AnchorLine::Right), qmlAnchors.modelAnchor(AnchorLine::Right)); } } } }