diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2016-12-20 13:00:18 +0100 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2016-12-28 10:48:14 +0000 |
commit | 2ad8e27d53795a2cb306fb06d96e55a72b30860e (patch) | |
tree | 3d58ccc292f69e2600551545b3587d3195399b7f /src/plugins/qmlprofiler | |
parent | beea69e48608cf2dbd7c8e149ef4d8b1cb04936d (diff) |
QmlProfiler: Make the views accessible from the view manager
And then, drop some methods we don't need anymore.
Change-Id: I057bdc012072abddca2df83918ee9a0460f78611
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src/plugins/qmlprofiler')
-rw-r--r-- | src/plugins/qmlprofiler/qmlprofilerstatisticsview.h | 1 | ||||
-rw-r--r-- | src/plugins/qmlprofiler/qmlprofilertool.cpp | 10 | ||||
-rw-r--r-- | src/plugins/qmlprofiler/qmlprofilertraceview.cpp | 9 | ||||
-rw-r--r-- | src/plugins/qmlprofiler/qmlprofilerviewmanager.cpp | 39 | ||||
-rw-r--r-- | src/plugins/qmlprofiler/qmlprofilerviewmanager.h | 15 |
5 files changed, 24 insertions, 50 deletions
diff --git a/src/plugins/qmlprofiler/qmlprofilerstatisticsview.h b/src/plugins/qmlprofiler/qmlprofilerstatisticsview.h index 4015cbe0c9..097377cca2 100644 --- a/src/plugins/qmlprofiler/qmlprofilerstatisticsview.h +++ b/src/plugins/qmlprofiler/qmlprofilerstatisticsview.h @@ -27,7 +27,6 @@ #include "qmlprofilermodelmanager.h" #include "qmlprofilerstatisticsmodel.h" -#include "qmlprofilerviewmanager.h" #include "qmlprofilereventsview.h" #include "qmlprofilereventtypes.h" diff --git a/src/plugins/qmlprofiler/qmlprofilertool.cpp b/src/plugins/qmlprofiler/qmlprofilertool.cpp index 724c5f9593..c5ad6a7cfc 100644 --- a/src/plugins/qmlprofiler/qmlprofilertool.cpp +++ b/src/plugins/qmlprofiler/qmlprofilertool.cpp @@ -70,6 +70,7 @@ #include <qtsupport/qtkitinformation.h> #include <QApplication> +#include <QDockWidget> #include <QFileDialog> #include <QHBoxLayout> #include <QLabel> @@ -217,7 +218,7 @@ QmlProfilerTool::QmlProfilerTool(QObject *parent) d->m_searchButton->setToolTip(tr("Search timeline event notes.")); connect(d->m_searchButton, &QToolButton::clicked, this, &QmlProfilerTool::showTimeLineSearch); - d->m_searchButton->setEnabled(d->m_viewContainer->isTimelineUsable()); + d->m_searchButton->setEnabled(d->m_viewContainer->traceView()->isUsable()); d->m_displayFeaturesButton = new QToolButton; d->m_displayFeaturesButton->setIcon(Utils::Icons::FILTER.icon()); @@ -529,7 +530,10 @@ void QmlProfilerTool::updateTimeDisplay() void QmlProfilerTool::showTimeLineSearch() { - d->m_viewContainer->raiseTimeline(); + QmlProfilerTraceView *traceView = d->m_viewContainer->traceView(); + QTC_ASSERT(qobject_cast<QDockWidget *>(traceView->parentWidget()), return); + traceView->parentWidget()->raise(); + traceView->setFocus(); Core::Find::openFindToolBar(Core::Find::FindForwardDirection); } @@ -551,7 +555,7 @@ void QmlProfilerTool::setButtonsEnabled(bool enable) { d->m_clearButton->setEnabled(enable); d->m_displayFeaturesButton->setEnabled(enable); - d->m_searchButton->setEnabled(d->m_viewContainer->isTimelineUsable() && enable); + d->m_searchButton->setEnabled(d->m_viewContainer->traceView()->isUsable() && enable); d->m_recordFeaturesMenu->setEnabled(enable); } diff --git a/src/plugins/qmlprofiler/qmlprofilertraceview.cpp b/src/plugins/qmlprofiler/qmlprofilertraceview.cpp index d861dd4927..8530994fe5 100644 --- a/src/plugins/qmlprofiler/qmlprofilertraceview.cpp +++ b/src/plugins/qmlprofiler/qmlprofilertraceview.cpp @@ -267,11 +267,11 @@ void QmlProfilerTraceView::showContextMenu(QPoint position) menu.addSeparator(); QAction *getLocalStatsAction = menu.addAction(tr("Analyze Current Range")); - if (!d->m_viewContainer->hasValidSelection()) + if (!hasValidSelection()) getLocalStatsAction->setEnabled(false); QAction *getGlobalStatsAction = menu.addAction(tr("Analyze Full Range")); - if (!d->m_viewContainer->isEventsRestrictedToRange()) + if (!d->m_modelManager->isRestrictedToRange()) getGlobalStatsAction->setEnabled(false); if (d->m_zoomControl->traceDuration() > 0) { @@ -287,11 +287,10 @@ void QmlProfilerTraceView::showContextMenu(QPoint position) d->m_zoomControl->traceEnd()); } if (selectedAction == getLocalStatsAction) { - d->m_viewContainer->restrictEventsToRange(d->m_viewContainer->selectionStart(), - d->m_viewContainer->selectionEnd()); + d->m_modelManager->restrictToRange(selectionStart(), selectionEnd()); } if (selectedAction == getGlobalStatsAction) - d->m_viewContainer->restrictEventsToRange(-1, -1); + d->m_modelManager->restrictToRange(-1, -1); } } diff --git a/src/plugins/qmlprofiler/qmlprofilerviewmanager.cpp b/src/plugins/qmlprofiler/qmlprofilerviewmanager.cpp index 565e169bc8..244eecc069 100644 --- a/src/plugins/qmlprofiler/qmlprofilerviewmanager.cpp +++ b/src/plugins/qmlprofiler/qmlprofilerviewmanager.cpp @@ -25,13 +25,10 @@ #include "qmlprofilerviewmanager.h" -#include "qmlprofilertraceview.h" -#include "qmlprofilerstatisticsview.h" #include "qmlprofilertool.h" #include "qmlprofilerstatemanager.h" #include "qmlprofilermodelmanager.h" #include "qmlprofilerstatewidget.h" -#include "flamegraphview.h" #include <coreplugin/icore.h> #include <utils/qtcassert.h> @@ -102,7 +99,7 @@ void QmlProfilerViewManager::createViews() connect(view, &QmlProfilerEventsView::gotoSourceLocation, this, &QmlProfilerViewManager::gotoSourceLocation); connect(view, &QmlProfilerEventsView::showFullRange, - this, [this](){restrictEventsToRange(-1, -1);}); + this, [this](){ d->profilerModelManager->restrictToRange(-1, -1);}); new QmlProfilerStateWidget(d->profilerState, d->profilerModelManager, view); }; @@ -129,41 +126,19 @@ void QmlProfilerViewManager::createViews() Debugger::registerPerspective(Constants::QmlProfilerPerspectiveId, perspective); } -bool QmlProfilerViewManager::hasValidSelection() const +QmlProfilerTraceView *QmlProfilerViewManager::traceView() const { - return d->traceView->hasValidSelection(); + return d->traceView; } -qint64 QmlProfilerViewManager::selectionStart() const +QmlProfilerStatisticsView *QmlProfilerViewManager::statisticsView() const { - return d->traceView->selectionStart(); + return d->statisticsView; } -qint64 QmlProfilerViewManager::selectionEnd() const +FlameGraphView *QmlProfilerViewManager::flameGraphView() const { - return d->traceView->selectionEnd(); -} - -bool QmlProfilerViewManager::isEventsRestrictedToRange() const -{ - return d->profilerModelManager->isRestrictedToRange(); -} - -void QmlProfilerViewManager::restrictEventsToRange(qint64 rangeStart, qint64 rangeEnd) -{ - d->profilerModelManager->restrictToRange(rangeStart, rangeEnd); -} - -bool QmlProfilerViewManager::isTimelineUsable() const -{ - return d->traceView->isUsable(); -} - -void QmlProfilerViewManager::raiseTimeline() -{ - QTC_ASSERT(qobject_cast<QDockWidget *>(d->traceView->parentWidget()), return); - d->traceView->parentWidget()->raise(); - d->traceView->setFocus(); + return d->flameGraphView; } void QmlProfilerViewManager::clear() diff --git a/src/plugins/qmlprofiler/qmlprofilerviewmanager.h b/src/plugins/qmlprofiler/qmlprofilerviewmanager.h index b6010ef589..b592255dd3 100644 --- a/src/plugins/qmlprofiler/qmlprofilerviewmanager.h +++ b/src/plugins/qmlprofiler/qmlprofilerviewmanager.h @@ -25,6 +25,9 @@ #pragma once +#include "qmlprofilerstatisticsview.h" +#include "qmlprofilertraceview.h" +#include "flamegraphview.h" #include <QObject> namespace QmlProfiler { @@ -46,15 +49,9 @@ public: void createViews(); - // used by the options "limit events to range" - bool hasValidSelection() const; - qint64 selectionStart() const; - qint64 selectionEnd() const; - bool isEventsRestrictedToRange() const; - void restrictEventsToRange(qint64 rangeStart, qint64 rangeEnd); - - bool isTimelineUsable() const; - void raiseTimeline(); + QmlProfilerTraceView *traceView() const; + QmlProfilerStatisticsView *statisticsView() const; + FlameGraphView *flameGraphView() const; public slots: void clear(); |