QmlProfiler: Sanitize the signal exchange between models a bit
authorUlf Hermann <ulf.hermann@digia.com>
Wed, 12 Feb 2014 16:35:08 +0000 (17:35 +0100)
committerUlf Hermann <ulf.hermann@digia.com>
Tue, 18 Feb 2014 13:43:52 +0000 (14:43 +0100)
commit47ce17b1ba82e396480c565dda6334fc58ed5cc3
tree0eb79b6ce3801ef59b2b64555a89c13477a11068
parent5d2654e4e4c6e4a2ca79ff9c6949e58472a9ae0f
QmlProfiler: Sanitize the signal exchange between models a bit

The model manager should only set its state to 'Done' if all models are
actually done. When that is the case it can safely emit dataAvailable,
too, freeing us of the need to apply a heuristic to the progress
percentage. In order to have a unified interface to the completion of
model processing an abstract base class for QML and V8 models is
introduced.

Task-number: QTCREATORBUG-11466
Change-Id: Id89c7ef5e24004baab7f37ee5486b69e7611aee0
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
15 files changed:
src/plugins/qmlprofiler/abstracttimelinemodel.cpp
src/plugins/qmlprofiler/qmlprofiler.pro
src/plugins/qmlprofiler/qmlprofiler.qbs
src/plugins/qmlprofiler/qmlprofilerbasemodel.cpp [new file with mode: 0644]
src/plugins/qmlprofiler/qmlprofilerbasemodel.h [new file with mode: 0644]
src/plugins/qmlprofiler/qmlprofilereventsmodelproxy.cpp
src/plugins/qmlprofiler/qmlprofilermodelmanager.cpp
src/plugins/qmlprofiler/qmlprofilermodelmanager.h
src/plugins/qmlprofiler/qmlprofilerprocessedmodel.cpp
src/plugins/qmlprofiler/qmlprofilerprocessedmodel.h
src/plugins/qmlprofiler/qmlprofilersimplemodel.cpp
src/plugins/qmlprofiler/qmlprofilersimplemodel.h
src/plugins/qmlprofiler/qmlprofilerstatewidget.cpp
src/plugins/qmlprofiler/qv8profilerdatamodel.cpp
src/plugins/qmlprofiler/qv8profilerdatamodel.h