From 8a7179195f993d5960abf184bf471464ec3776f3 Mon Sep 17 00:00:00 2001 From: Chocobo1 Date: Wed, 13 Oct 2021 01:39:43 +0800 Subject: [PATCH] Suppress remove null widget warning And improve text format for translation work. --- src/gui/properties/propertieswidget.cpp | 26 +++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/src/gui/properties/propertieswidget.cpp b/src/gui/properties/propertieswidget.cpp index 5959c1eb7..531447fc8 100644 --- a/src/gui/properties/propertieswidget.cpp +++ b/src/gui/properties/propertieswidget.cpp @@ -752,21 +752,31 @@ void PropertiesWidget::configure() // Speed widget if (Preferences::instance()->isSpeedWidgetEnabled()) { - if (!m_speedWidget || !qobject_cast(m_speedWidget)) + if (!qobject_cast(m_speedWidget)) { - m_ui->speedLayout->removeWidget(m_speedWidget); - delete m_speedWidget; - m_speedWidget = new SpeedWidget {this}; + if (m_speedWidget) + { + m_ui->speedLayout->removeWidget(m_speedWidget); + delete m_speedWidget; + } + + m_speedWidget = new SpeedWidget(this); m_ui->speedLayout->addWidget(m_speedWidget); } } else { - if (!m_speedWidget || !qobject_cast(m_speedWidget)) + if (!qobject_cast(m_speedWidget)) { - m_ui->speedLayout->removeWidget(m_speedWidget); - delete m_speedWidget; - auto *label = new QLabel(tr("
Speed graphs are disabled

You may change this setting in Advanced Options

"), this); + if (m_speedWidget) + { + m_ui->speedLayout->removeWidget(m_speedWidget); + delete m_speedWidget; + } + + const auto displayText = QString::fromLatin1("
%1

%2

") + .arg(tr("Speed graphs are disabled"), tr("You can enable it in Advanced Options")); + auto *label = new QLabel(displayText, this); label->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); m_speedWidget = label; m_ui->speedLayout->addWidget(m_speedWidget);