QList<GraphEdge*> GraphView::getEdges() { QList<GraphEdge*> edges; QListIterator<QGraphicsItem*> it(scene()->items()); while (it.hasNext()) { GraphEdge* edge = dynamic_cast<GraphEdge*>(it.next()); if (edge && edge->isVisible()) edges.append(edge); } return edges; }