UI: Revamp empty state of SourcesTree

The empty state of the SourcesTree widget looks rather busy, with
multiple icons and text without spacing. Revamp that state to use
a single, faded-out, 32px icon, add some spacing between the icon
and the text, and put the icon above the text.
This commit is contained in:
Georges Basile Stavracas Neto
2022-08-02 09:27:00 -03:00
parent 3f3cf02d2a
commit 2de20ac00d
3 changed files with 16 additions and 42 deletions
+10 -8
View File
@@ -1721,22 +1721,24 @@ void SourceTree::paintEvent(QPaintEvent *event)
}
QRectF iconRect = iconNoSources.viewBoxF();
iconRect.setSize(QSizeF(32.0, 32.0));
QSizeF iconSize = iconRect.size();
QSizeF textSize = textNoSources.size();
QSizeF thisSize = size();
const qreal spacing = 16.0;
qreal totalHeight = textSize.height() + iconSize.height();
qreal totalHeight =
iconSize.height() + spacing + textSize.height();
qreal x = thisSize.width() / 2.0 - textSize.width() / 2.0;
qreal x = thisSize.width() / 2.0 - iconSize.width() / 2.0;
qreal y = thisSize.height() / 2.0 - totalHeight / 2.0;
p.drawStaticText(x, y, textNoSources);
x = thisSize.width() / 2.0 - iconSize.width() / 2.0;
y += textSize.height();
iconRect.moveTo(x, y);
iconRect.moveTo(std::round(x), std::round(y));
iconNoSources.render(&p, iconRect);
x = thisSize.width() / 2.0 - textSize.width() / 2.0;
y += spacing + iconSize.height();
p.drawStaticText(x, y, textNoSources);
} else {
QListView::paintEvent(event);
}