diff --git a/comdel/display/schema_display.cpp b/comdel/display/schema_display.cpp index defaa68..cd2db37 100644 --- a/comdel/display/schema_display.cpp +++ b/comdel/display/schema_display.cpp @@ -175,13 +175,14 @@ namespace display { continue; } auto pinInstance = domain::ConnectionComponent{connection.componentInstance.value()->name, connection.pin.value().getName()}; - auto rect = pins[pinInstance]->boundingRect(); - rect.setX(pins[pinInstance]->scenePos().x()); - rect.setY(pins[pinInstance]->scenePos().y()); + auto pin = pins[pinInstance]->getPin().getDisplayPin(); + auto position = pins[pinInstance]->getComponentInstance()->position; + + auto rect = QRectF(position.first + pin.x, position.second + pin.y, pin.w, pin.h); if (rect.contains(endPoint)) { auto name = components[pinInstance.component]->getComponentInstance()->component.getName(); - auto con = library->getConnection({instance->component.getName(), pin.getName()}, + auto con = library->getConnection({instance->component.getName(), connection.pin.value().getName()}, {name, pinInstance.pin}); if (con.has_value()) { auto busInstance = Application::instance()->addBus(library->getBus(con->getBus()), 0, 0);