From 532c18d723f9e1d769ff24df30d9a626065ae9c7 Mon Sep 17 00:00:00 2001 From: hjk <qtc-committer@nokia.com> Date: Thu, 19 Mar 2009 12:53:58 +0100 Subject: [PATCH] debugger: make add & remove wathcers work again after the action changes --- src/plugins/debugger/debuggeractions.cpp | 1 + src/plugins/debugger/gdbengine.cpp | 2 +- src/plugins/debugger/watchhandler.cpp | 20 ++++++++++++++++---- src/plugins/debugger/watchhandler.h | 2 ++ 4 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/plugins/debugger/debuggeractions.cpp b/src/plugins/debugger/debuggeractions.cpp index 9132db0fc4d..7a563d37f27 100644 --- a/src/plugins/debugger/debuggeractions.cpp +++ b/src/plugins/debugger/debuggeractions.cpp @@ -145,6 +145,7 @@ QAction *QtcSettingsItem::updatedAction(const QString &text0) } } m_action->setEnabled(enabled); + m_action->setData(text0); m_action->setText(text); return m_action; } diff --git a/src/plugins/debugger/gdbengine.cpp b/src/plugins/debugger/gdbengine.cpp index 917f84376cc..f6cb80deb50 100644 --- a/src/plugins/debugger/gdbengine.cpp +++ b/src/plugins/debugger/gdbengine.cpp @@ -3533,7 +3533,7 @@ void GdbEngine::updateWatchModel2() void GdbEngine::handleQueryDataDumper(const GdbResultRecord &record) { - qDebug() << "DATA DUMPER TRIAL:" << record.toString(); + //qDebug() << "DATA DUMPER TRIAL:" << record.toString(); GdbMi output = record.data.findChild("consolestreamoutput"); QByteArray out = output.data(); out = out.mid(out.indexOf('"') + 2); // + 1 is success marker diff --git a/src/plugins/debugger/watchhandler.cpp b/src/plugins/debugger/watchhandler.cpp index bfd89262dac..7c58e2ee7a7 100644 --- a/src/plugins/debugger/watchhandler.cpp +++ b/src/plugins/debugger/watchhandler.cpp @@ -368,11 +368,11 @@ WatchHandler::WatchHandler() m_incompleteSet.clear(); m_displaySet = m_completeSet; - connect(theDebuggerSetting(WatchExpression), SIGNAL(stringValueChanged(QString)), - this, SLOT(watchExpression(QString))); + connect(theDebuggerSetting(WatchExpression)->action(), + SIGNAL(triggered()), this, SLOT(watchExpression())); - connect(theDebuggerSetting(RemoveWatchExpression), SIGNAL(stringValueChanged(QString)), - this, SLOT(removeWatchExpression(QString))); + connect(theDebuggerSetting(RemoveWatchExpression)->action(), + SIGNAL(triggered()), this, SLOT(removeWatchExpression())); } bool WatchHandler::setData(const QModelIndex &idx, @@ -884,6 +884,12 @@ void WatchHandler::insertData(const WatchData &data) //MODEL_DEBUG("INSERT RESULT" << toString()); } +void WatchHandler::watchExpression() +{ + if (QAction *action = qobject_cast<QAction *>(sender())) + watchExpression(action->data().toString()); +} + void WatchHandler::watchExpression(const QString &exp) { // FIXME: 'exp' can contain illegal characters @@ -969,6 +975,12 @@ void WatchHandler::showEditValue(const WatchData &data) w->show(); } +void WatchHandler::removeWatchExpression() +{ + if (QAction *action = qobject_cast<QAction *>(sender())) + removeWatchExpression(action->data().toString()); +} + void WatchHandler::removeWatchExpression(const QString &exp) { MODEL_DEBUG("REMOVE WATCH: " << exp); diff --git a/src/plugins/debugger/watchhandler.h b/src/plugins/debugger/watchhandler.h index d94418a4311..04bbfa6c3ff 100644 --- a/src/plugins/debugger/watchhandler.h +++ b/src/plugins/debugger/watchhandler.h @@ -160,7 +160,9 @@ public: //public slots: void cleanup(); + Q_SLOT void watchExpression(); // data in action->data().toString() Q_SLOT void watchExpression(const QString &exp); + Q_SLOT void removeWatchExpression(); Q_SLOT void removeWatchExpression(const QString &exp); void reinitializeWatchers(); -- GitLab