MCPcopy Create free account
hub / github.com/BehaviorTree/Groot / mouseMoveEvent

Method mouseMoveEvent

QtNodeEditor/src/ConnectionGraphicsObject.cpp:160–197  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

158
159
160void
161ConnectionGraphicsObject::
162mouseMoveEvent(QGraphicsSceneMouseEvent* event)
163{
164 prepareGeometryChange();
165
166 auto view = static_cast<QGraphicsView*>(event->widget());
167 auto node = locateNodeAt(event->scenePos(),
168 _scene,
169 view->transform());
170
171 auto &state = _connection.connectionState();
172
173 state.interactWithNode(node);
174 if (node)
175 {
176 node->reactToPossibleConnection(state.requiredPort(),
177 _connection.dataType(oppositePort(state.requiredPort())),
178 event->scenePos());
179 }
180
181 //-------------------
182
183 QPointF offset = event->pos() - event->lastPos();
184
185 auto requiredPort = _connection.requiredPort();
186
187 if (requiredPort != PortType::None)
188 {
189 _connection.connectionGeometry().moveEndPoint(requiredPort, offset);
190 }
191
192 //-------------------
193
194 update();
195
196 event->accept();
197}
198
199
200void

Callers

nothing calls this directly

Calls 4

locateNodeAtFunction · 0.85
oppositePortFunction · 0.85
requiredPortMethod · 0.80
dataTypeMethod · 0.80

Tested by

no test coverage detected