Use QFontMetrics::size instead of QFontMetrics::boundingRect

This commit is contained in:
Mike Gelfand 2021-12-05 23:32:19 +00:00
parent ff7564dc23
commit 1bc10e3706
2 changed files with 6 additions and 6 deletions

View File

@ -33,8 +33,8 @@ FilterBarComboBox::FilterBarComboBox(QWidget* parent)
QSize FilterBarComboBox::minimumSizeHint() const
{
QFontMetrics fm(fontMetrics());
QSize const text_size = fm.boundingRect(itemText(0)).size();
QSize const count_size = fm.boundingRect(itemData(0, CountStringRole).toString()).size();
QSize const text_size = fm.size(0, itemText(0));
QSize const count_size = fm.size(0, itemData(0, CountStringRole).toString());
return calculateSize(text_size, count_size);
}
@ -46,11 +46,11 @@ QSize FilterBarComboBox::sizeHint() const
for (int i = 0, n = count(); i < n; ++i)
{
QSize const text_size = fm.boundingRect(itemText(i)).size();
QSize const text_size = fm.size(0, itemText(i));
max_text_size.setHeight(qMax(max_text_size.height(), text_size.height()));
max_text_size.setWidth(qMax(max_text_size.width(), text_size.width()));
QSize const count_size = fm.boundingRect(itemData(i, CountStringRole).toString()).size();
QSize const count_size = fm.size(0, itemData(i, CountStringRole).toString());
max_count_size.setHeight(qMax(max_count_size.height(), count_size.height()));
max_count_size.setWidth(qMax(max_count_size.width(), count_size.width()));
}
@ -116,7 +116,7 @@ void FilterBarComboBox::paintEvent(QPaintEvent* e)
QRect const text_rect = QStyle::alignedRect(
opt.direction,
Qt::AlignRight | Qt::AlignVCenter,
QSize(opt.fontMetrics.boundingRect(text).width(), rect.height()),
QSize(opt.fontMetrics.size(0, text).width(), rect.height()),
rect);
painter.drawText(text_rect, Qt::AlignRight | Qt::AlignVCenter, text);
Utils::narrowRect(rect, 0, text_rect.width() + hmargin, opt.direction);

View File

@ -405,7 +405,7 @@ void MainWindow::initStatusBar()
ui_.optionsButton->setMenu(createOptionsMenu());
int const minimum_speed_width = ui_.downloadSpeedLabel->fontMetrics()
.boundingRect(Formatter::get().uploadSpeedToString(Speed::fromKBps(999.99)))
.size(0, Formatter::get().uploadSpeedToString(Speed::fromKBps(999.99)))
.width();
ui_.downloadSpeedLabel->setMinimumWidth(minimum_speed_width);
ui_.uploadSpeedLabel->setMinimumWidth(minimum_speed_width);