QmlProfiler: Define a main feature for timeline models

They will be shown and hidden when that feature is enabled or disabled.

Change-Id: I42b67bd25729901262298553b118fe2624941789
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
This commit is contained in:
Ulf Hermann
2015-06-30 14:37:47 +02:00
parent 7344c27622
commit 4e7d4ff86a
5 changed files with 29 additions and 21 deletions

View File

@@ -33,14 +33,18 @@
namespace QmlProfiler {
QmlProfilerTimelineModel::QmlProfilerTimelineModel(QmlProfilerModelManager *modelManager,
const QString &displayName,
QmlDebug::Message message,
QmlDebug::RangeType rangeType, QObject *parent) :
TimelineModel(modelManager->registerModelProxy(), displayName, parent), m_message(message),
m_rangeType(rangeType), m_modelManager(modelManager)
QmlDebug::RangeType rangeType,
QmlDebug::ProfileFeature mainFeature,
QObject *parent) :
TimelineModel(modelManager->registerModelProxy(),
tr(QmlProfilerModelManager::featureName(mainFeature)), parent),
m_message(message), m_rangeType(rangeType), m_mainFeature(mainFeature),
m_modelManager(modelManager)
{
connect(modelManager, &QmlProfilerModelManager::stateChanged,
this, &QmlProfilerTimelineModel::dataChanged);
announceFeatures(1ULL << m_mainFeature);
}
QmlDebug::RangeType QmlProfilerTimelineModel::rangeType() const
@@ -53,6 +57,11 @@ QmlDebug::Message QmlProfilerTimelineModel::message() const
return m_message;
}
QmlDebug::ProfileFeature QmlProfilerTimelineModel::mainFeature() const
{
return m_mainFeature;
}
bool QmlProfilerTimelineModel::accepted(const QmlProfilerDataModel::QmlEventTypeData &event) const
{
return (event.rangeType == m_rangeType && event.message == m_message);
@@ -105,6 +114,11 @@ void QmlProfilerTimelineModel::dataChanged()
emit labelsChanged();
}
void QmlProfilerTimelineModel::onVisibleFeaturesChanged(quint64 features)
{
setHidden(!(features & (1ULL << m_mainFeature)));
}
int QmlProfilerTimelineModel::bindingLoopDest(int index) const
{
Q_UNUSED(index);