Я давно не делал Qt, но это должно сработать. Поскольку QTableView является QWidget, вы также можете повторно реализовать mouseDoubleClickEvent (QMouseEvent * e), который бы сообщал вам, какая кнопка была использована. Позаботьтесь о вызове родительской реализации. Вы только хотите знать, какая кнопка была использована, но хотите обработать двойной щелчок, используя обратный вызов с моделью.
Так это может выглядеть так:
myComponent::mouseDoubleClickEvent( QMouseEvent * e )
{
m_leftButtonUsed = false;
if ( e->button() == Qt::LeftButton )
{
m_leftButtonUsed = true;
}
// This will call doubleClicked (const QModelIndex & )
QTableView::mouseDoubleClickedEvent(e);
}