summaryrefslogtreecommitdiff
path: root/src/plugins/debugger/gdbengine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/debugger/gdbengine.cpp')
-rw-r--r--src/plugins/debugger/gdbengine.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/plugins/debugger/gdbengine.cpp b/src/plugins/debugger/gdbengine.cpp
index 6cd9d9bc20..c2849210e8 100644
--- a/src/plugins/debugger/gdbengine.cpp
+++ b/src/plugins/debugger/gdbengine.cpp
@@ -50,6 +50,7 @@
#include "debuggerdialogs.h"
#include <utils/qtcassert.h>
+#include <texteditor/itexteditor.h>
#include <coreplugin/icore.h>
#include <QtCore/QDebug>
@@ -2605,11 +2606,10 @@ static QString m_toolTipExpression;
static QPoint m_toolTipPos;
static QMap<QString, WatchData> m_toolTipCache;
-void GdbEngine::setToolTipExpression(const QPoint &pos, const QString &exp0)
+void GdbEngine::setToolTipExpression(const QPoint &mousePos, TextEditor::ITextEditor *editor, int cursorPos)
{
- //qDebug() << "SET TOOLTIP EXP" << pos << exp0;
- if (q->status() != DebuggerInferiorStopped) {
- //qDebug() << "SUPPRESSING DEBUGGER TOOLTIP, INFERIOR NOT STOPPED";
+ if (q->status() != DebuggerInferiorStopped || !isCppEditor(editor)) {
+ //qDebug() << "SUPPRESSING DEBUGGER TOOLTIP, INFERIOR NOT STOPPED/Non Cpp editor";
return;
}
@@ -2618,9 +2618,10 @@ void GdbEngine::setToolTipExpression(const QPoint &pos, const QString &exp0)
return;
}
- m_toolTipPos = pos;
- m_toolTipExpression = exp0;
- QString exp = exp0;
+ m_toolTipPos = mousePos;
+ int line, column;
+ m_toolTipExpression = cppExpressionAt(editor, cursorPos, &line, &column);
+ QString exp = m_toolTipExpression;
/*
if (m_toolTip.isTypePending()) {
qDebug() << "suppressing duplicated tooltip creation";