From ca72140c3068b88644a6bf1179bf0dbc96c3b837 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Fri, 3 Apr 2020 12:23:28 +0300 Subject: [PATCH] QmlDesigner: Properly format edit keyframe dialog values Change-Id: Ie84a488932e019252515947ce6bbffd424a47a20 Fixes: QDS-1882 Reviewed-by: Mahmoud Badri Reviewed-by: Thomas Hartmann --- .../timelineeditor/setframevaluedialog.cpp | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/plugins/qmldesigner/components/timelineeditor/setframevaluedialog.cpp b/src/plugins/qmldesigner/components/timelineeditor/setframevaluedialog.cpp index 70f382e859b..ad4d02df891 100644 --- a/src/plugins/qmldesigner/components/timelineeditor/setframevaluedialog.cpp +++ b/src/plugins/qmldesigner/components/timelineeditor/setframevaluedialog.cpp @@ -26,7 +26,7 @@ #include "setframevaluedialog.h" #include "ui_setframevaluedialog.h" -#include +#include namespace QmlDesigner { @@ -40,9 +40,13 @@ SetFrameValueDialog::SetFrameValueDialog(qreal frame, const QVariant &value, setFixedSize(size()); ui->lineEditFrame->setValidator(new QIntValidator(0, 99999, this)); + auto dv = new QDoubleValidator(this); + dv->setDecimals(2); + ui->lineEditValue->setValidator(dv); - ui->lineEditFrame->setText(QString::number(frame)); - ui->lineEditValue->setText(value.toString()); + QLocale l; + ui->lineEditFrame->setText(l.toString(qRound(frame))); + ui->lineEditValue->setText(l.toString(value.toDouble(), 'f', 2)); ui->labelValue->setText(propertyName); } @@ -53,12 +57,14 @@ SetFrameValueDialog::~SetFrameValueDialog() qreal SetFrameValueDialog::frame() const { - return ui->lineEditFrame->text().toDouble(); + QLocale l; + return l.toDouble(ui->lineEditFrame->text()); } QVariant SetFrameValueDialog::value() const { - return QVariant(ui->lineEditValue->text()); + QLocale l; + return QVariant(l.toDouble(ui->lineEditValue->text())); } } // namespace QmlDesigner