QmlProfiler: Reset the zoom control only when we're finished loading

Drop the timeChanged signal of QmlProfilerTraceTime, too, as that
doesn't serve a purpose anymore. We don't want intermittent changes
of the trace time to be reflected in the UI when loading.

Change-Id: I85f18b90fc404ec254c68625104d3e3f9077a1d9
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
This commit is contained in:
Ulf Hermann
2016-04-28 15:43:00 +02:00
parent 21caa59292
commit 71e8c3ffd7
3 changed files with 9 additions and 10 deletions

View File

@@ -90,10 +90,15 @@ QmlProfilerTraceView::QmlProfilerTraceView(QWidget *parent, QmlProfilerViewManag
setObjectName(QLatin1String("QML Profiler"));
d->m_zoomControl = new Timeline::TimelineZoomControl(this);
connect(modelManager->traceTime(), &QmlProfilerTraceTime::timeChanged,
this, [this](qint64 start, qint64 end) {
d->m_zoomControl->setTrace(start, end);
d->m_zoomControl->setRange(start, start + (end - start) / 10);
connect(modelManager, &QmlProfilerModelManager::stateChanged, this, [modelManager, this]() {
if (modelManager->state() == QmlProfilerModelManager::Done) {
qint64 start = modelManager->traceTime()->startTime();
qint64 end = modelManager->traceTime()->endTime();
d->m_zoomControl->setTrace(start, end);
d->m_zoomControl->setRange(start, start + (end - start) / 10);
} else if (modelManager->state() == QmlProfilerModelManager::ClearingData) {
d->m_zoomControl->clear();
}
});
QVBoxLayout *groupLayout = new QVBoxLayout;