QmlProfiler: Make rowHeightChanged signals more specific

It's very handy to know which row changed and what the new height is.

Change-Id: Iff3a45c3fbfc47f9b1001a9cf15741349e1e50b8
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
This commit is contained in:
Ulf Hermann
2014-11-07 18:13:31 +01:00
parent db5131d1ad
commit 75e4bd7900
3 changed files with 8 additions and 8 deletions

View File

@@ -140,7 +140,7 @@ TimelineModel::TimelineModelPrivate::TimelineModelPrivate(int modelId, const QSt
void TimelineModel::TimelineModelPrivate::init(TimelineModel *q) void TimelineModel::TimelineModelPrivate::init(TimelineModel *q)
{ {
q_ptr = q; q_ptr = q;
connect(q,SIGNAL(rowHeightChanged()),q,SIGNAL(heightChanged())); connect(q,SIGNAL(rowHeightChanged(int,int)),q,SIGNAL(heightChanged()));
connect(q,SIGNAL(expandedChanged()),q,SIGNAL(heightChanged())); connect(q,SIGNAL(expandedChanged()),q,SIGNAL(heightChanged()));
connect(q,SIGNAL(hiddenChanged()),q,SIGNAL(heightChanged())); connect(q,SIGNAL(hiddenChanged()),q,SIGNAL(heightChanged()));
connect(q,SIGNAL(emptyChanged()),q,SIGNAL(heightChanged())); connect(q,SIGNAL(emptyChanged()),q,SIGNAL(heightChanged()));
@@ -217,10 +217,10 @@ void TimelineModel::setRowHeight(int rowNumber, int height)
int difference = height - d->rowOffsets[rowNumber] + int difference = height - d->rowOffsets[rowNumber] +
(rowNumber > 0 ? d->rowOffsets[rowNumber - 1] : 0); (rowNumber > 0 ? d->rowOffsets[rowNumber - 1] : 0);
if (difference != 0) { if (difference != 0) {
for (; rowNumber < d->rowOffsets.size(); ++rowNumber) { for (int offsetRow = rowNumber; offsetRow < d->rowOffsets.size(); ++offsetRow) {
d->rowOffsets[rowNumber] += difference; d->rowOffsets[offsetRow] += difference;
} }
emit rowHeightChanged(); emit rowHeightChanged(rowNumber, height);
} }
} }
@@ -511,7 +511,7 @@ void TimelineModel::clear()
d->ranges.clear(); d->ranges.clear();
d->endTimes.clear(); d->endTimes.clear();
if (hadRowHeights) if (hadRowHeights)
emit rowHeightChanged(); emit rowHeightChanged(-1, -1);
if (wasExpanded) if (wasExpanded)
emit expandedChanged(); emit expandedChanged();
if (wasHidden) if (wasHidden)

View File

@@ -110,7 +110,7 @@ public:
signals: signals:
void expandedChanged(); void expandedChanged();
void hiddenChanged(); void hiddenChanged();
void rowHeightChanged(); void rowHeightChanged(int row, int height);
void emptyChanged(); void emptyChanged();
void heightChanged(); void heightChanged();
void rowCountChanged(); void rowCountChanged();

View File

@@ -66,14 +66,14 @@ void TimelineRenderer::setModel(QmlProfilerTimelineModel *model)
if (m_model) { if (m_model) {
disconnect(m_model, SIGNAL(expandedChanged()), this, SLOT(requestPaint())); disconnect(m_model, SIGNAL(expandedChanged()), this, SLOT(requestPaint()));
disconnect(m_model, SIGNAL(hiddenChanged()), this, SLOT(requestPaint())); disconnect(m_model, SIGNAL(hiddenChanged()), this, SLOT(requestPaint()));
disconnect(m_model, SIGNAL(rowHeightChanged()), this, SLOT(requestPaint())); disconnect(m_model, SIGNAL(rowHeightChanged(int,int)), this, SLOT(requestPaint()));
} }
m_model = model; m_model = model;
if (m_model) { if (m_model) {
connect(m_model, SIGNAL(expandedChanged()), this, SLOT(requestPaint())); connect(m_model, SIGNAL(expandedChanged()), this, SLOT(requestPaint()));
connect(m_model, SIGNAL(hiddenChanged()), this, SLOT(requestPaint())); connect(m_model, SIGNAL(hiddenChanged()), this, SLOT(requestPaint()));
connect(m_model, SIGNAL(rowHeightChanged()), this, SLOT(requestPaint())); connect(m_model, SIGNAL(rowHeightChanged(int,int)), this, SLOT(requestPaint()));
} }
emit modelChanged(m_model); emit modelChanged(m_model);