From 9b22aa25a5687f389abf8fb5e54e544573a62902 Mon Sep 17 00:00:00 2001 From: tobtoht Date: Thu, 21 Oct 2021 21:08:33 +0200 Subject: [PATCH] Calc: allow pasting full precision Monero amounts --- src/CalcWidget.cpp | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/CalcWidget.cpp b/src/CalcWidget.cpp index f773716..8bc654d 100644 --- a/src/CalcWidget.cpp +++ b/src/CalcWidget.cpp @@ -23,13 +23,12 @@ CalcWidget::CalcWidget(QWidget *parent) ui->imageExchange->setFixedSize(26, 26); // validator/locale for input - QLocale lo(QLocale::C); - lo.setNumberOptions(QLocale::RejectGroupSeparator); - auto dv = new QDoubleValidator(0.0, 2147483647, 10, this); // [0, 32bit max], 10 decimals of precision - dv->setNotation(QDoubleValidator::StandardNotation); - dv->setLocale(lo); - ui->lineFrom->setValidator(dv); - ui->lineTo->setValidator(dv); + QString amount_rx = R"(^\d{0,8}[\.]\d{0,12}$)"; + QRegExp rx; + rx.setPattern(amount_rx); + QValidator *validator = new QRegExpValidator(rx, this); + ui->lineFrom->setValidator(validator); + ui->lineTo->setValidator(validator); connect(&appData()->prices, &Prices::fiatPricesUpdated, this, &CalcWidget::onPricesReceived); connect(&appData()->prices, &Prices::cryptoPricesUpdated, this, &CalcWidget::onPricesReceived);