bool SelectMode::onContextMenu(DiagramView* view, QContextMenuEvent* event) { if (view->scene()) { DiagramItem* item = dynamic_cast<DiagramItem*>(view->itemAt(event->pos())); if (item) { QMenu* menu = item->menu(view->mapToScene(event->pos())); menu->exec(view->viewport()->mapToGlobal(event->pos())); delete menu; return false; } } return true; }