void PixmapCacheModel::flattenLoads() { int collapsedRowCount = 0; // computes "compressed row" QVector <qint64> eventEndTimes; for (int i = 0; i < count(); i++) { PixmapCacheModel::PixmapCacheItem &event = m_data[i]; if (event.pixmapEventType == PixmapCacheModel::PixmapLoadingStarted) { event.rowNumberCollapsed = 0; while (eventEndTimes.count() > event.rowNumberCollapsed && eventEndTimes[event.rowNumberCollapsed] > startTime(i)) event.rowNumberCollapsed++; if (eventEndTimes.count() == event.rowNumberCollapsed) eventEndTimes << 0; // increase stack length, proper value added below eventEndTimes[event.rowNumberCollapsed] = endTime(i); // readjust to account for category empty row and bargraph event.rowNumberCollapsed += 2; } if (event.rowNumberCollapsed > collapsedRowCount) collapsedRowCount = event.rowNumberCollapsed; } // Starting from 0, count is maxIndex+1 setCollapsedRowCount(collapsedRowCount + 1); setExpandedRowCount(m_pixmaps.count() + 2); }
void QmlProfilerRangeModel::computeExpandedLevels() { QHash<int, int> eventRow; int eventCount = count(); for (int i = 0; i < eventCount; i++) { int eventTypeId = typeId(i); if (!eventRow.contains(eventTypeId)) { eventRow[eventTypeId] = m_expandedRowTypes.size(); m_expandedRowTypes << eventTypeId; } m_data[i].displayRowExpanded = eventRow[eventTypeId]; } setExpandedRowCount(m_expandedRowTypes.size()); }
void QmlProfilerAnimationsModel::finalize() { computeNesting(); setExpandedRowCount((m_maxGuiThreadAnimations == 0 || m_maxRenderThreadAnimations == 0) ? 2 : 3); setCollapsedRowCount(expandedRowCount()); }
void DebugMessagesModel::finalize() { setCollapsedRowCount(2); setExpandedRowCount(m_maximumMsgType + 2); }