Simplify range details

Adapt to the new signature of the details method and don't create
unnecessary nested maps.

Change-Id: Iab8d31e48d35923fee3e258c0390459a81ece746
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
This commit is contained in:
Ulf Hermann
2014-07-07 14:41:44 +02:00
parent b7cd23a466
commit ae07d0624c
6 changed files with 42 additions and 78 deletions

View File

@@ -134,39 +134,33 @@ QVariantList MemoryUsageModel::labels() const
return result; return result;
} }
QVariantList MemoryUsageModel::details(int index) const QVariantMap MemoryUsageModel::details(int index) const
{ {
Q_D(const MemoryUsageModel); Q_D(const MemoryUsageModel);
QVariantList result; QVariantMap result;
const MemoryUsageModelPrivate::Range *ev = &d->range(index); const MemoryUsageModelPrivate::Range *ev = &d->range(index);
QVariantMap res;
if (ev->allocated >= -ev->deallocated) if (ev->allocated >= -ev->deallocated)
res.insert(QLatin1String("displayName"), tr("Memory Allocated")); result.insert(QLatin1String("displayName"), tr("Memory Allocated"));
else else
res.insert(QLatin1String("displayName"), tr("Memory Freed")); result.insert(QLatin1String("displayName"), tr("Memory Freed"));
result << res;
res.clear();
res.insert(tr("Total"), QVariant(QString::fromLatin1("%1 bytes").arg(ev->size)));
result << res;
res.clear();
result.insert(tr("Total"), QString::fromLatin1("%1 bytes").arg(ev->size));
if (ev->allocations > 0) { if (ev->allocations > 0) {
res.insert(tr("Allocated"), QString::fromLatin1("%1 bytes").arg(ev->allocated)); result.insert(tr("Allocated"), QString::fromLatin1("%1 bytes").arg(ev->allocated));
res.insert(tr("Allocations"), QString::number(ev->allocations)); result.insert(tr("Allocations"), QString::number(ev->allocations));
} }
if (ev->deallocations > 0) { if (ev->deallocations > 0) {
res.insert(tr("Deallocated"), QString::fromLatin1("%1 bytes").arg(-ev->deallocated)); result.insert(tr("Deallocated"), QString::fromLatin1("%1 bytes").arg(-ev->deallocated));
res.insert(tr("Deallocations"), QString::number(ev->deallocations)); result.insert(tr("Deallocations"), QString::number(ev->deallocations));
} }
res.insert(tr("Type"), QVariant(MemoryUsageModelPrivate::memoryTypeName(ev->type))); result.insert(tr("Type"), QVariant(MemoryUsageModelPrivate::memoryTypeName(ev->type)));
if (ev->originTypeIndex != -1) { if (ev->originTypeIndex != -1) {
res.insert(tr("Location"), result.insert(tr("Location"),
d->modelManager->qmlModel()->getEventTypes().at(ev->originTypeIndex).displayName); d->modelManager->qmlModel()->getEventTypes().at(ev->originTypeIndex).displayName);
} }
result << res;
return result; return result;
} }

View File

@@ -61,7 +61,7 @@ public:
QVariantMap location(int index) const; QVariantMap location(int index) const;
QVariantList labels() const; QVariantList labels() const;
QVariantList details(int index) const; QVariantMap details(int index) const;
void loadData(); void loadData();
void clear(); void clear();

View File

@@ -190,54 +190,29 @@ void PixmapCacheModel::PixmapCacheModelPrivate::addVP(QVariantList &l, QString l
} }
} }
QVariantList PixmapCacheModel::details(int index) const QVariantMap PixmapCacheModel::details(int index) const
{ {
Q_D(const PixmapCacheModel); Q_D(const PixmapCacheModel);
QVariantList result; QVariantMap result;
const PixmapCacheModelPrivate::Range *ev = &d->range(index); const PixmapCacheModelPrivate::Range *ev = &d->range(index);
{ if (ev->pixmapEventType == PixmapCacheCountChanged) {
QVariantMap res; result.insert(QLatin1String("displayName"), tr("Image Cached"));
if (ev->pixmapEventType == PixmapCacheCountChanged)
res.insert(QLatin1String("displayName"), QVariant(QLatin1String("Image Cached")));
else if (ev->pixmapEventType == PixmapLoadingStarted)
res.insert(QLatin1String("displayName"), QVariant(QLatin1String("Image Loaded")));
result << res;
}
if (ev->pixmapEventType != PixmapCacheCountChanged) {
d->addVP(result, tr("Duration"), ev->duration );
} else { } else {
QVariantMap res; if (ev->pixmapEventType == PixmapLoadingStarted) {
res.insert(tr("Cache Size"), QVariant(QString::fromLatin1("%1 px") result.insert(QLatin1String("displayName"), tr("Image Loaded"));
.arg(ev->cacheSize))); if (d->pixmaps[ev->urlIndex].sizes[ev->sizeIndex].loadState != Finished)
result << res; result.insert(tr("Result"), tr("Load Error"));
} }
result.insert(tr("Duration"), QmlProfilerBaseModel::formatTime(ev->duration));
{
QVariantMap res;
res.insert(tr("File"), QVariant(getFilenameOnly(d->pixmaps[ev->urlIndex].url)));
result << res;
}
{
QVariantMap res;
res.insert(tr("Width"), QVariant(QString::fromLatin1("%1 px")
.arg(d->pixmaps[ev->urlIndex].sizes[ev->sizeIndex].size.width())));
result << res;
res.clear();
res.insert(tr("Height"), QVariant(QString::fromLatin1("%1 px")
.arg(d->pixmaps[ev->urlIndex].sizes[ev->sizeIndex].size.height())));
result << res;
}
if (ev->pixmapEventType == PixmapLoadingStarted &&
d->pixmaps[ev->urlIndex].sizes[ev->sizeIndex].loadState != Finished) {
QVariantMap res;
res.insert(tr("Result"), QVariant(QLatin1String("Load Error")));
result << res;
} }
result.insert(tr("Cache Size"), QString::fromLatin1("%1 px").arg(ev->cacheSize));
result.insert(tr("File"), getFilenameOnly(d->pixmaps[ev->urlIndex].url));
result.insert(tr("Width"), QString::fromLatin1("%1 px")
.arg(d->pixmaps[ev->urlIndex].sizes[ev->sizeIndex].size.width()));
result.insert(tr("Height"), QString::fromLatin1("%1 px")
.arg(d->pixmaps[ev->urlIndex].sizes[ev->sizeIndex].size.height()));
return result; return result;
} }

View File

@@ -65,7 +65,7 @@ public:
QVariantList labels() const; QVariantList labels() const;
QVariantList details(int index) const; QVariantMap details(int index) const;
void loadData(); void loadData();
void clear(); void clear();

View File

@@ -57,7 +57,7 @@ class SceneGraphTimelineModel::SceneGraphTimelineModelPrivate :
AbstractTimelineModel::AbstractTimelineModelPrivate> AbstractTimelineModel::AbstractTimelineModelPrivate>
{ {
public: public:
void addVP(QVariantList &l, QString label, qint64 time) const; void addVP(QVariantMap &result, QString label, qint64 time) const;
private: private:
bool seenPolishAndSync; bool seenPolishAndSync;
Q_DECLARE_PUBLIC(SceneGraphTimelineModel) Q_DECLARE_PUBLIC(SceneGraphTimelineModel)
@@ -145,30 +145,25 @@ QVariantList SceneGraphTimelineModel::labels() const
return result; return result;
} }
void SceneGraphTimelineModel::SceneGraphTimelineModelPrivate::addVP(QVariantList &l, QString label, qint64 time) const void SceneGraphTimelineModel::SceneGraphTimelineModelPrivate::addVP(QVariantMap &result,
QString label,
qint64 time) const
{ {
if (time > 0) { if (time > 0)
QVariantMap res; result.insert(label, QmlProfilerBaseModel::formatTime(time));
res.insert(label, QVariant(QmlProfilerBaseModel::formatTime(time)));
l << res;
}
} }
QVariantList SceneGraphTimelineModel::details(int index) const
QVariantMap SceneGraphTimelineModel::details(int index) const
{ {
Q_D(const SceneGraphTimelineModel); Q_D(const SceneGraphTimelineModel);
QVariantList result; QVariantMap result;
const SortedTimelineModel<SceneGraphEvent, const SortedTimelineModel<SceneGraphEvent,
AbstractTimelineModel::AbstractTimelineModelPrivate>::Range *ev = AbstractTimelineModel::AbstractTimelineModelPrivate>::Range *ev =
&d->range(index); &d->range(index);
{ result.insert(QLatin1String("displayName"), labelForSGType(
QVariantMap res; d->seenPolishAndSync ? ev->sgEventType : SceneGraphGUIThread));
res.insert(QLatin1String("displayName"), QVariant(labelForSGType(
d->seenPolishAndSync ? ev->sgEventType : SceneGraphGUIThread)));
result << res;
}
d->addVP(result, tr("Duration"), ev->duration ); d->addVP(result, tr("Duration"), ev->duration );
if (ev->sgEventType == SceneGraphRenderThread) { if (ev->sgEventType == SceneGraphRenderThread) {

View File

@@ -51,7 +51,7 @@ public:
QVariantList labels() const; QVariantList labels() const;
QVariantList details(int index) const; QVariantMap details(int index) const;
void loadData(); void loadData();
void clear(); void clear();