summaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
authorhjk <qtc-committer@nokia.com>2010-11-08 16:17:59 +0100
committerhjk <qtc-committer@nokia.com>2010-11-08 17:44:01 +0100
commitf02f08167fe3e5c20fa188001b81dd04f2e5c7a5 (patch)
treecfb69a8e57265dfbaf4e68e58a7fd44217bed54d /src/plugins
parent71007d2ccb135aad994102a72d74ee40c69de050 (diff)
downloadqt-creator-f02f08167fe3e5c20fa188001b81dd04f2e5c7a5.tar.gz
debugger: some cleanup after the model/view reorganization
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/debugger/debuggerengine.cpp92
-rw-r--r--src/plugins/debugger/debuggerengine.h5
-rw-r--r--src/plugins/debugger/debuggerplugin.cpp73
-rw-r--r--src/plugins/debugger/debuggerplugin.h1
4 files changed, 72 insertions, 99 deletions
diff --git a/src/plugins/debugger/debuggerengine.cpp b/src/plugins/debugger/debuggerengine.cpp
index a4ff424c1a..bd76dd128c 100644
--- a/src/plugins/debugger/debuggerengine.cpp
+++ b/src/plugins/debugger/debuggerengine.cpp
@@ -35,7 +35,6 @@
#include "debuggerplugin.h"
#include "debuggerstringutils.h"
#include "debuggertooltip.h"
-#include "logwindow.h"
#include "breakhandler.h"
#include "moduleshandler.h"
@@ -45,8 +44,6 @@
#include "stackhandler.h"
#include "threadshandler.h"
#include "watchhandler.h"
-#include "watchutils.h"
-#include "breakwindow.h"
#include <coreplugin/icore.h>
#include <coreplugin/ifile.h>
@@ -55,8 +52,6 @@
#include <projectexplorer/toolchaintype.h>
-#include <qt4projectmanager/qt4projectmanagerconstants.h>
-
#include <texteditor/itexteditor.h>
#include <utils/environment.h>
@@ -67,17 +62,9 @@
#include <QtCore/QTimer>
#include <QtCore/QFutureInterface>
-#include <QtGui/QAbstractItemView>
#include <QtGui/QStandardItemModel>
#include <QtGui/QAction>
-#include <QtGui/QMenu>
-#include <QtGui/QMessageBox>
-#include <QtGui/QPlainTextEdit>
-#include <QtGui/QPushButton>
-#include <QtGui/QTextBlock>
-#include <QtGui/QTextCursor>
#include <QtGui/QTreeWidget>
-#include <QtGui/QMainWindow>
using namespace Core;
using namespace Debugger;
@@ -550,57 +537,6 @@ void DebuggerEngine::gotoLocation(const StackFrame &frame, bool setMarker)
}
}
-
-void DebuggerEngine::executeRunToLine()
-{
- QString fileName;
- int lineNumber;
- if (currentTextEditorPosition(&fileName, &lineNumber)) {
- resetLocation();
- executeRunToLine(fileName, lineNumber);
- }
-}
-
-void DebuggerEngine::executeRunToFunction()
-{
- ITextEditor *textEditor = currentTextEditor();
- QTC_ASSERT(textEditor, return);
- QPlainTextEdit *ed = qobject_cast<QPlainTextEdit*>(textEditor->widget());
- if (!ed)
- return;
- QTextCursor cursor = ed->textCursor();
- QString functionName = cursor.selectedText();
- if (functionName.isEmpty()) {
- const QTextBlock block = cursor.block();
- const QString line = block.text();
- foreach (const QString &str, line.trimmed().split('(')) {
- QString a;
- for (int i = str.size(); --i >= 0; ) {
- if (!str.at(i).isLetterOrNumber())
- break;
- a = str.at(i) + a;
- }
- if (!a.isEmpty()) {
- functionName = a;
- break;
- }
- }
- }
-
- if (functionName.isEmpty())
- return;
- resetLocation();
- executeRunToFunction(functionName);
-}
-
-void DebuggerEngine::executeJumpToLine()
-{
- QString fileName;
- int lineNumber;
- if (currentTextEditorPosition(&fileName, &lineNumber))
- executeJumpToLine(fileName, lineNumber);
-}
-
// Called from RunControl.
void DebuggerEngine::handleStartFailed()
{
@@ -663,33 +599,7 @@ QStringList DebuggerEngine::qtDumperLibraryLocations() const
void DebuggerEngine::showQtDumperLibraryWarning(const QString &details)
{
- QMessageBox dialog(plugin()->mainWindow());
- QPushButton *qtPref = dialog.addButton(tr("Open Qt4 Options"),
- QMessageBox::ActionRole);
- QPushButton *helperOff = dialog.addButton(tr("Turn off Helper Usage"),
- QMessageBox::ActionRole);
- QPushButton *justContinue = dialog.addButton(tr("Continue Anyway"),
- QMessageBox::AcceptRole);
- dialog.setDefaultButton(justContinue);
- dialog.setWindowTitle(tr("Debugging Helper Missing"));
- dialog.setText(tr("The debugger could not load the debugging helper library."));
- dialog.setInformativeText(tr(
- "The debugging helper is used to nicely format the values of some Qt "
- "and Standard Library data types. "
- "It must be compiled for each used Qt version separately. "
- "On the Qt4 options page, select a Qt installation "
- "and click Rebuild."));
- if (!details.isEmpty())
- dialog.setDetailedText(details);
- dialog.exec();
- if (dialog.clickedButton() == qtPref) {
- Core::ICore::instance()->showOptionsDialog(
- _(Qt4ProjectManager::Constants::QT_SETTINGS_CATEGORY),
- _(Qt4ProjectManager::Constants::QTVERSION_SETTINGS_PAGE_ID));
- } else if (dialog.clickedButton() == helperOff) {
- theDebuggerAction(UseDebuggingHelpers)
- ->setValue(qVariantFromValue(false), false);
- }
+ plugin()->showQtDumperLibraryWarning(details);
}
QString DebuggerEngine::qtDumperLibraryName() const
diff --git a/src/plugins/debugger/debuggerengine.h b/src/plugins/debugger/debuggerengine.h
index badb9fea31..c5d2fcbab5 100644
--- a/src/plugins/debugger/debuggerengine.h
+++ b/src/plugins/debugger/debuggerengine.h
@@ -339,11 +339,6 @@ protected:
DebuggerRunControl *runControl() const;
private:
- void executeRunToLine();
- void executeRunToFunction();
- void executeJumpToLine();
- void addToWatchWindow();
-
// wrapper engine needs access to state of its subengines
friend class QmlCppEngine;
diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp
index 618b00654d..024a07eedb 100644
--- a/src/plugins/debugger/debuggerplugin.cpp
+++ b/src/plugins/debugger/debuggerplugin.cpp
@@ -91,6 +91,8 @@
#include <projectexplorer/target.h>
#include <projectexplorer/toolchaintype.h>
+#include <qt4projectmanager/qt4projectmanagerconstants.h>
+
#include <texteditor/basetexteditor.h>
#include <texteditor/basetextmark.h>
#include <texteditor/fontsettings.h>
@@ -109,6 +111,9 @@
#include <QtGui/QFileDialog>
#include <QtGui/QMenu>
#include <QtGui/QMessageBox>
+#include <QtGui/QPushButton>
+#include <QtGui/QTextBlock>
+#include <QtGui/QTextCursor>
#include <QtGui/QToolButton>
#include <climits>
@@ -1044,20 +1049,51 @@ public slots:
{
//removeTooltip();
resetLocation();
- currentEngine()->executeJumpToLine(); // FIXME: move code from engine here.
+ QString fileName;
+ int lineNumber;
+ if (currentTextEditorPosition(&fileName, &lineNumber))
+ currentEngine()->executeJumpToLine(fileName, lineNumber);
}
void handleExecRunToLine()
{
//removeTooltip();
resetLocation();
- currentEngine()->executeRunToLine(); // FIXME: move code from engine here.
+ QString fileName;
+ int lineNumber;
+ if (currentTextEditorPosition(&fileName, &lineNumber))
+ currentEngine()->executeRunToLine(fileName, lineNumber);
}
void handleExecRunToFunction()
{
resetLocation();
- currentEngine()->executeRunToFunction(); // FIXME: move code from engine here.
+ ITextEditor *textEditor = currentTextEditor();
+ QTC_ASSERT(textEditor, return);
+ QPlainTextEdit *ed = qobject_cast<QPlainTextEdit*>(textEditor->widget());
+ if (!ed)
+ return;
+ QTextCursor cursor = ed->textCursor();
+ QString functionName = cursor.selectedText();
+ if (functionName.isEmpty()) {
+ const QTextBlock block = cursor.block();
+ const QString line = block.text();
+ foreach (const QString &str, line.trimmed().split('(')) {
+ QString a;
+ for (int i = str.size(); --i >= 0; ) {
+ if (!str.at(i).isLetterOrNumber())
+ break;
+ a = str.at(i) + a;
+ }
+ if (!a.isEmpty()) {
+ functionName = a;
+ break;
+ }
+ }
+ }
+
+ if (!functionName.isEmpty())
+ currentEngine()->executeRunToFunction(functionName);
}
void slotEditBreakpoint()
@@ -3129,6 +3165,37 @@ void DebuggerPlugin::remoteCommand(const QStringList &options, const QStringList
qWarning("%s", qPrintable(errorMessage));
}
+void DebuggerPlugin::showQtDumperLibraryWarning(const QString &details)
+{
+ QMessageBox dialog(mainWindow());
+ QPushButton *qtPref = dialog.addButton(tr("Open Qt4 Options"),
+ QMessageBox::ActionRole);
+ QPushButton *helperOff = dialog.addButton(tr("Turn off Helper Usage"),
+ QMessageBox::ActionRole);
+ QPushButton *justContinue = dialog.addButton(tr("Continue Anyway"),
+ QMessageBox::AcceptRole);
+ dialog.setDefaultButton(justContinue);
+ dialog.setWindowTitle(tr("Debugging Helper Missing"));
+ dialog.setText(tr("The debugger could not load the debugging helper library."));
+ dialog.setInformativeText(tr(
+ "The debugging helper is used to nicely format the values of some Qt "
+ "and Standard Library data types. "
+ "It must be compiled for each used Qt version separately. "
+ "On the Qt4 options page, select a Qt installation "
+ "and click Rebuild."));
+ if (!details.isEmpty())
+ dialog.setDetailedText(details);
+ dialog.exec();
+ if (dialog.clickedButton() == qtPref) {
+ Core::ICore::instance()->showOptionsDialog(
+ _(Qt4ProjectManager::Constants::QT_SETTINGS_CATEGORY),
+ _(Qt4ProjectManager::Constants::QTVERSION_SETTINGS_PAGE_ID));
+ } else if (dialog.clickedButton() == helperOff) {
+ theDebuggerAction(UseDebuggingHelpers)
+ ->setValue(qVariantFromValue(false), false);
+ }
+}
+
//////////////////////////////////////////////////////////////////////
//
// Testing
diff --git a/src/plugins/debugger/debuggerplugin.h b/src/plugins/debugger/debuggerplugin.h
index d4ef387815..200259bbf3 100644
--- a/src/plugins/debugger/debuggerplugin.h
+++ b/src/plugins/debugger/debuggerplugin.h
@@ -82,6 +82,7 @@ public:
void setConfigValue(const QString &name, const QVariant &value);
void updateState(DebuggerEngine *engine);
virtual void remoteCommand(const QStringList &options, const QStringList &arguments);
+ void showQtDumperLibraryWarning(const QString &details);
QIcon locationMarkIcon() const;
void activateDebugMode();