forked from qt-creator/qt-creator
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>
This commit is contained in:
@@ -27,7 +27,6 @@
|
||||
|
||||
#include "qmlprofilermodelmanager.h"
|
||||
#include "qmlprofilerstatisticsmodel.h"
|
||||
#include "qmlprofilerviewmanager.h"
|
||||
#include "qmlprofilereventsview.h"
|
||||
#include "qmlprofilereventtypes.h"
|
||||
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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();
|
||||
|
||||
Reference in New Issue
Block a user