forked from qt-creator/qt-creator
debugger: less indirections when opening files
This commit is contained in:
@@ -1168,11 +1168,6 @@ DebuggerPlugin *DebuggerEngine::plugin()
|
|||||||
return DebuggerPlugin::instance();
|
return DebuggerPlugin::instance();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DebuggerEngine::openFile(const QString &fileName, int lineNumber)
|
|
||||||
{
|
|
||||||
plugin()->gotoLocation(fileName, lineNumber, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool DebuggerEngine::isReverseDebugging() const
|
bool DebuggerEngine::isReverseDebugging() const
|
||||||
{
|
{
|
||||||
return plugin()->isReverseDebugging();
|
return plugin()->isReverseDebugging();
|
||||||
|
|||||||
@@ -278,7 +278,6 @@ public:
|
|||||||
Q_SLOT void showStatusMessage(const QString &msg, int timeout = -1) const;
|
Q_SLOT void showStatusMessage(const QString &msg, int timeout = -1) const;
|
||||||
|
|
||||||
void resetLocation();
|
void resetLocation();
|
||||||
void openFile(const QString &fileName, int lineNumber = -1);
|
|
||||||
virtual void gotoLocation(const QString &fileName, int lineNumber, bool setMarker);
|
virtual void gotoLocation(const QString &fileName, int lineNumber, bool setMarker);
|
||||||
virtual void gotoLocation(const Internal::StackFrame &frame, bool setMarker);
|
virtual void gotoLocation(const Internal::StackFrame &frame, bool setMarker);
|
||||||
virtual void quitDebugger(); // called by DebuggerRunControl
|
virtual void quitDebugger(); // called by DebuggerRunControl
|
||||||
|
|||||||
@@ -101,7 +101,8 @@ public slots:
|
|||||||
|
|
||||||
// void runTest(const QString &fileName);
|
// void runTest(const QString &fileName);
|
||||||
void showMessage(const QString &msg, int channel, int timeout = -1);
|
void showMessage(const QString &msg, int channel, int timeout = -1);
|
||||||
void gotoLocation(const QString &fileName, int lineNumber, bool setMarker);
|
void gotoLocation(const QString &fileName, int lineNumber = -1,
|
||||||
|
bool setMarker = false);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
friend class DebuggerEngine;
|
friend class DebuggerEngine;
|
||||||
|
|||||||
@@ -53,6 +53,11 @@
|
|||||||
namespace Debugger {
|
namespace Debugger {
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
|
|
||||||
|
static DebuggerPlugin *plugin()
|
||||||
|
{
|
||||||
|
return DebuggerPlugin::instance();
|
||||||
|
}
|
||||||
|
|
||||||
static DebuggerEngine *currentEngine()
|
static DebuggerEngine *currentEngine()
|
||||||
{
|
{
|
||||||
return DebuggerPlugin::instance()->currentEngine();
|
return DebuggerPlugin::instance()->currentEngine();
|
||||||
@@ -77,7 +82,7 @@ ModulesWindow::ModulesWindow(QWidget *parent)
|
|||||||
|
|
||||||
void ModulesWindow::moduleActivated(const QModelIndex &index)
|
void ModulesWindow::moduleActivated(const QModelIndex &index)
|
||||||
{
|
{
|
||||||
currentEngine()->openFile(index.data().toString());
|
plugin()->gotoLocation(index.data().toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
void ModulesWindow::resizeEvent(QResizeEvent *event)
|
void ModulesWindow::resizeEvent(QResizeEvent *event)
|
||||||
@@ -186,7 +191,7 @@ void ModulesWindow::contextMenuEvent(QContextMenuEvent *ev)
|
|||||||
} else if (act == actLoadSymbolsForModule) {
|
} else if (act == actLoadSymbolsForModule) {
|
||||||
engine->loadSymbols(name);
|
engine->loadSymbols(name);
|
||||||
} else if (act == actEditFile) {
|
} else if (act == actEditFile) {
|
||||||
engine->openFile(name);
|
plugin()->gotoLocation(name);
|
||||||
} else if (act == actShowSymbols) {
|
} else if (act == actShowSymbols) {
|
||||||
// FIXME setModelData(RequestModuleSymbolsRole, name);
|
// FIXME setModelData(RequestModuleSymbolsRole, name);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,6 +54,11 @@
|
|||||||
namespace Debugger {
|
namespace Debugger {
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
|
|
||||||
|
static DebuggerPlugin *plugin()
|
||||||
|
{
|
||||||
|
return DebuggerPlugin::instance();
|
||||||
|
}
|
||||||
|
|
||||||
static DebuggerEngine *currentEngine()
|
static DebuggerEngine *currentEngine()
|
||||||
{
|
{
|
||||||
return DebuggerPlugin::instance()->currentEngine();
|
return DebuggerPlugin::instance()->currentEngine();
|
||||||
@@ -81,7 +86,7 @@ SourceFilesWindow::SourceFilesWindow(QWidget *parent)
|
|||||||
|
|
||||||
void SourceFilesWindow::sourceFileActivated(const QModelIndex &index)
|
void SourceFilesWindow::sourceFileActivated(const QModelIndex &index)
|
||||||
{
|
{
|
||||||
currentEngine()->openFile(index.data().toString());
|
plugin()->gotoLocation(index.data().toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
void SourceFilesWindow::contextMenuEvent(QContextMenuEvent *ev)
|
void SourceFilesWindow::contextMenuEvent(QContextMenuEvent *ev)
|
||||||
@@ -115,14 +120,7 @@ void SourceFilesWindow::contextMenuEvent(QContextMenuEvent *ev)
|
|||||||
if (act == act1)
|
if (act == act1)
|
||||||
currentEngine()->reloadSourceFiles();
|
currentEngine()->reloadSourceFiles();
|
||||||
else if (act == act2)
|
else if (act == act2)
|
||||||
currentEngine()->openFile(name);
|
plugin()->gotoLocation(name);
|
||||||
}
|
|
||||||
|
|
||||||
void SourceFilesWindow::setModelData
|
|
||||||
(int role, const QVariant &value, const QModelIndex &index)
|
|
||||||
{
|
|
||||||
QTC_ASSERT(model(), return);
|
|
||||||
model()->setData(index, value, role);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace Internal
|
} // namespace Internal
|
||||||
|
|||||||
@@ -30,7 +30,6 @@
|
|||||||
#ifndef DEBUGGER_SOURCEFILEWINDOW_H
|
#ifndef DEBUGGER_SOURCEFILEWINDOW_H
|
||||||
#define DEBUGGER_SOURCEFILEWINDOW_H
|
#define DEBUGGER_SOURCEFILEWINDOW_H
|
||||||
|
|
||||||
|
|
||||||
#include <QtGui/QTreeView>
|
#include <QtGui/QTreeView>
|
||||||
|
|
||||||
namespace Debugger {
|
namespace Debugger {
|
||||||
@@ -49,8 +48,6 @@ private slots:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
void contextMenuEvent(QContextMenuEvent *ev);
|
void contextMenuEvent(QContextMenuEvent *ev);
|
||||||
void setModelData(int role, const QVariant &value = QVariant(),
|
|
||||||
const QModelIndex &index = QModelIndex());
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace Internal
|
} // namespace Internal
|
||||||
|
|||||||
Reference in New Issue
Block a user