Переопределите QWidget::mousePressEvent(QMouseEvent *)
или QWidget::mouseReleaseEvent(QMouseEvent *)
QGLWidget и создайте сигнал для отправки x и y. Это означает, что вы должны создать собственный класс, наследующий от QGLWidget. Это может выглядеть так:
void MyGLWidget::mouseReleaseEvent(QMouseEvent *event)
{
emit printXY(event->pos());
}
и в MyGLWidget.h:
signals:
void printXY(const QPointF& clickedPos);
, затем создайте слот в DockWidget:
public slots:
void onPrintXY(const QPointF& clickedPos);
и подключитеэто в том месте, где вы создаете MyGLWidget. Я полагаю, в какой-то функции DockWidget, как:
void DockWidget::createGLWidget()
{
MyGLWidget widget = new MyGLWidget;
connect(widget, &MyGLWidget::printXY, this, &DockWidget::onPrintXY);
}