DolphinQt: Use QFontMetrics::boundingRect instead of QFontMetrics::width

See https://kdepepo.wordpress.com/2019/08/05/about-deprecation-of-qfontmetricswidth/
This commit is contained in:
JosJuice 2020-06-08 12:19:10 +02:00
parent d89162c8ad
commit 87330ae524
5 changed files with 5 additions and 29 deletions

View file

@ -31,7 +31,6 @@
#include "Core/PowerPC/PowerPC.h"
#include "DolphinQt/Debugger/PatchInstructionDialog.h"
#include "DolphinQt/Host.h"
#include "DolphinQt/QtUtils/FontMetricsHelper.h"
#include "DolphinQt/Resources.h"
#include "DolphinQt/Settings.h"
@ -201,7 +200,7 @@ void CodeViewWidget::FontBasedSizing()
horizontalHeader()->setMinimumSectionSize(rowh + 5);
setColumnWidth(CODE_VIEW_COLUMN_BREAKPOINT, rowh + 5);
setColumnWidth(CODE_VIEW_COLUMN_ADDRESS,
FontMetricsWidth(fm, QStringLiteral("80000000")) + extra_text_width);
fm.boundingRect(QStringLiteral("80000000")).width() + extra_text_width);
// The longest instruction is technically 'ps_merge00' (0x10000420u), but those instructions are
// very rare and would needlessly increase the column size, so let's go with 'rlwinm.' instead.
@ -213,11 +212,11 @@ void CodeViewWidget::FontBasedSizing()
const std::string ins = (split == std::string::npos ? disas : disas.substr(0, split));
const std::string param = (split == std::string::npos ? "" : disas.substr(split + 1));
setColumnWidth(CODE_VIEW_COLUMN_INSTRUCTION,
FontMetricsWidth(fm, QString::fromStdString(ins)) + extra_text_width);
fm.boundingRect(QString::fromStdString(ins)).width() + extra_text_width);
setColumnWidth(CODE_VIEW_COLUMN_PARAMETERS,
FontMetricsWidth(fm, QString::fromStdString(param)) + extra_text_width);
fm.boundingRect(QString::fromStdString(param)).width() + extra_text_width);
setColumnWidth(CODE_VIEW_COLUMN_DESCRIPTION,
FontMetricsWidth(fm, QStringLiteral("0")) * 25 + extra_text_width);
fm.boundingRect(QChar(u'0')).width() * 25 + extra_text_width);
Update();
}