void PortHandler::connectTemporaryRemovedLinksToPort(const IdList &temporaryRemovedLinks, const QString &direction) { for (const Id &edgeId : temporaryRemovedLinks) { EdgeElement *edge = dynamic_cast<EdgeElement *>( static_cast<EditorViewScene *>(mNode->scene())->getElem(edgeId) ); if (edge == nullptr) { continue; } if (direction == "from") { const QPointF startPos = edge->mapFromItem(mNode , nearestPort(edge->mapToScene(edge->line().first()), edge->fromPortTypes())); edge->placeStartTo(startPos); } else { const QPointF endPos = edge->mapFromItem(mNode , nearestPort(edge->mapToScene(edge->line().last()), edge->toPortTypes())); edge->placeEndTo(endPos); } edge->connectToPort(); } }