diff options
author | hjk <[email protected]> | 2011-06-30 13:44:22 +0200 |
---|---|---|
committer | hjk <[email protected]> | 2011-07-04 12:01:00 +0200 |
commit | 99d9f065b3d61453f003eb6b520f36217f5f7fa9 (patch) | |
tree | e8293ca8729e561d10a9100171fb00afbc88a468 /src/plugins/valgrind/callgrindtool.cpp | |
parent | 343ac57943d1d79ba6cd712c41c37be1a66d9a2c (diff) |
analyzer: refactoring of analyzer manager
Change-Id: I60268b8bc86e439beb3fca8f4b6a87ea03925bad
Reviewed-on: http://codereview.qt.nokia.com/1049
Reviewed-by: hjk <[email protected]>
Diffstat (limited to 'src/plugins/valgrind/callgrindtool.cpp')
-rw-r--r-- | src/plugins/valgrind/callgrindtool.cpp | 72 |
1 files changed, 36 insertions, 36 deletions
diff --git a/src/plugins/valgrind/callgrindtool.cpp b/src/plugins/valgrind/callgrindtool.cpp index 874a4fc00c6..9e084c96843 100644 --- a/src/plugins/valgrind/callgrindtool.cpp +++ b/src/plugins/valgrind/callgrindtool.cpp @@ -175,6 +175,7 @@ public slots: public: CallgrindTool *q; + bool m_local; DataModel *m_dataModel; DataProxyModel *m_proxyModel; StackBrowser *m_stackBrowser; @@ -217,6 +218,7 @@ public: CallgrindToolPrivate::CallgrindToolPrivate(CallgrindTool *parent) : q(parent) + , m_local(true) , m_dataModel(new DataModel(this)) , m_proxyModel(new DataProxyModel(this)) , m_stackBrowser(new StackBrowser(this)) @@ -497,10 +499,11 @@ static QToolButton *createToolButton(QAction *action) return button; } -CallgrindTool::CallgrindTool(QObject *parent) +CallgrindTool::CallgrindTool(bool local, QObject *parent) : Analyzer::IAnalyzerTool(parent) { d = new CallgrindToolPrivate(this); + d->m_local = local; Core::ICore *core = Core::ICore::instance(); // EditorManager @@ -514,14 +517,21 @@ CallgrindTool::~CallgrindTool() delete d; } -QString CallgrindTool::id() const +QByteArray CallgrindTool::id() const { - return "Callgrind"; + return d->m_local ? "CallgrindLocal" : "CallgrindRemote"; } QString CallgrindTool::displayName() const { - return tr("Valgrind Function Profile"); + return d->m_local ? tr("Valgrind Function Profile") + : tr("Valgrind Function Profile (Remote)"); +} + +QByteArray CallgrindTool::menuGroup() const +{ + return d->m_local ? Analyzer::Constants::G_ANALYZER_TOOLS + : Analyzer::Constants::G_ANALYZER_REMOTE_TOOLS; } QString CallgrindTool::description() const @@ -530,13 +540,17 @@ QString CallgrindTool::description() const "record function calls when a program runs."); } -IAnalyzerTool::ToolMode CallgrindTool::mode() const +void CallgrindTool::startTool() { - return ReleaseMode; + if (d->m_local) + AnalyzerManager::startLocalTool(this); + else + AnalyzerManager::startRemoteTool(this); } -void CallgrindTool::initialize() +IAnalyzerTool::ToolMode CallgrindTool::mode() const { + return ReleaseMode; } void CallgrindTool::extensionsInitialized() @@ -577,8 +591,7 @@ void CallgrindTool::initializeDockWidgets() void CallgrindToolPrivate::initializeDockWidgets() { - AnalyzerManager *am = AnalyzerManager::instance(); - Utils::FancyMainWindow *mw = am->mainWindow(); + Utils::FancyMainWindow *mw = AnalyzerManager::mainWindow(); m_visualisation = new Visualisation(mw); m_visualisation->setFrameStyle(QFrame::NoFrame); m_visualisation->setObjectName("Valgrind.CallgrindToolPrivate.Visualisation"); @@ -621,21 +634,17 @@ void CallgrindToolPrivate::initializeDockWidgets() updateCostFormat(); - QDockWidget *callersDock = - am->createDockWidget(q, tr("Callers"), m_callersView, - Qt::BottomDockWidgetArea); + QDockWidget *callersDock = AnalyzerManager::createDockWidget + (q, tr("Callers"), m_callersView, Qt::BottomDockWidgetArea); - QDockWidget *flatDock = - am->createDockWidget(q, tr("Functions"), m_flatView, - Qt::BottomDockWidgetArea); + QDockWidget *flatDock = AnalyzerManager::createDockWidget + (q, tr("Functions"), m_flatView, Qt::BottomDockWidgetArea); - QDockWidget *calleesDock = - am->createDockWidget(q, tr("Callees"), m_calleesView, - Qt::BottomDockWidgetArea); + QDockWidget *calleesDock = AnalyzerManager::createDockWidget + (q, tr("Callees"), m_calleesView, Qt::BottomDockWidgetArea); - QDockWidget *visualizationDock = - am->createDockWidget(q, tr("Visualization"), m_visualisation, - Qt::RightDockWidgetArea); + QDockWidget *visualizationDock = AnalyzerManager::createDockWidget + (q, tr("Visualization"), m_visualisation, Qt::RightDockWidgetArea); visualizationDock->hide(); mw->splitDockWidget(mw->toolBarDockWidget(), calleesDock, Qt::Vertical); @@ -653,7 +662,7 @@ IAnalyzerEngine *CallgrindTool::createEngine(const AnalyzerStartParameters &sp, IAnalyzerEngine *CallgrindToolPrivate::createEngine(const AnalyzerStartParameters &sp, ProjectExplorer::RunConfiguration *runConfiguration) { - CallgrindEngine *engine = new CallgrindEngine(sp, runConfiguration); + CallgrindEngine *engine = new CallgrindEngine(q, sp, runConfiguration); connect(engine, SIGNAL(parserDataReady(CallgrindEngine *)), SLOT(takeParserData(CallgrindEngine *))); @@ -673,7 +682,7 @@ IAnalyzerEngine *CallgrindToolPrivate::createEngine(const AnalyzerStartParameter engine->setToggleCollectFunction(m_toggleCollectFunction); m_toggleCollectFunction.clear(); - AnalyzerManager::instance()->showStatusMessage(AnalyzerManager::msgToolStarted(q->displayName())); + AnalyzerManager::showStatusMessage(AnalyzerManager::msgToolStarted(q->displayName())); // apply project settings AnalyzerProjectSettings *analyzerSettings = runConfiguration->extraAspect<AnalyzerProjectSettings>(); @@ -862,7 +871,7 @@ void CallgrindToolPrivate::engineFinished() if (data) showParserResults(data); else - AnalyzerManager::instance()->showStatusMessage(tr("Profiling aborted.")); + AnalyzerManager::showStatusMessage(tr("Profiling aborted.")); } void CallgrindToolPrivate::showParserResults(const ParseData *data) @@ -879,7 +888,7 @@ void CallgrindToolPrivate::showParserResults(const ParseData *data) } else { msg = tr("Parsing failed."); } - AnalyzerManager::instance()->showStatusMessage(msg); + AnalyzerManager::showStatusMessage(msg); } void CallgrindToolPrivate::editorOpened(Core::IEditor *editor) @@ -938,8 +947,8 @@ void CallgrindToolPrivate::handleShowCostsOfFunction() m_toggleCollectFunction = QString("%1()").arg(qualifiedFunctionName); - AnalyzerManager::instance()->selectTool(q); - AnalyzerManager::instance()->startTool(q); + AnalyzerManager::selectTool(q); + AnalyzerManager::startTool(q); } void CallgrindToolPrivate::slotRequestDump() @@ -999,15 +1008,6 @@ void CallgrindToolPrivate::createTextMarks() } } -bool CallgrindTool::canRunLocally() const -{ -#ifdef Q_OS_WINDOWS - return false; -#else - return true; -#endif -} - } // namespace Internal } // namespace Valgrind |