From c10159a9a1254992867242897adb19ae1c3c3c35 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 29 Mar 2021 09:29:14 +0200 Subject: standarddialogs example: Fix font handling The example crashed since it passed the font label text (which receives the font key) to the QFont constructor taking the family list. Use QFont::fromString() instead. Pick-to: 6.0 6.1 Change-Id: I499fc9200b4d817b10c946a7b79ede4e7f7e69af Reviewed-by: Andy Shaw --- examples/widgets/dialogs/standarddialogs/dialog.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'examples/widgets') diff --git a/examples/widgets/dialogs/standarddialogs/dialog.cpp b/examples/widgets/dialogs/standarddialogs/dialog.cpp index cd7e8085a2..7df24e06f6 100644 --- a/examples/widgets/dialogs/standarddialogs/dialog.cpp +++ b/examples/widgets/dialogs/standarddialogs/dialog.cpp @@ -388,8 +388,14 @@ void Dialog::setColor() void Dialog::setFont() { const QFontDialog::FontDialogOptions options = QFlag(fontDialogOptionsWidget->value()); + + const QString &description = fontLabel->text(); + QFont defaultFont; + if (!description.isEmpty()) + defaultFont.fromString(description); + bool ok; - QFont font = QFontDialog::getFont(&ok, QFont(fontLabel->text()), this, "Select Font", options); + QFont font = QFontDialog::getFont(&ok, defaultFont, this, "Select Font", options); if (ok) { fontLabel->setText(font.key()); fontLabel->setFont(font); -- cgit v1.2.3