diff --git a/src/plugins/debugger/debuggeractions.cpp b/src/plugins/debugger/debuggeractions.cpp index 9132db0fc4d7816a73c45bc6abc72a827447c47a..7a563d37f27c3227c83c6002c0950f5a3d968af1 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 917f84376cca3b9e079b1b3ee7cc452f397ababe..f6cb80deb5052fbe95ca2096db05935ef13c4f45 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 bfd89262daca24db0750bf8e193ecac8f733df20..7c58e2ee7a7633e8c0870a6eb9fb61a01078786a 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 d94418a4311663a2a9b9221ef1eea9ff5e7d4218..04bbfa6c3ff93c33e9f570471c9da75a2737f3d7 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();