From a7dce4e4b3ed614158b7af6eb8cfc3e866da2071 Mon Sep 17 00:00:00 2001 From: Alfredo Monclus Date: Thu, 10 Apr 2025 12:37:03 -0300 Subject: [PATCH] Gui: inputfield only show invalid states --- src/Gui/InputField.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/Gui/InputField.cpp b/src/Gui/InputField.cpp index 9171ca6142..04ed35f183 100644 --- a/src/Gui/InputField.cpp +++ b/src/Gui/InputField.cpp @@ -89,7 +89,7 @@ InputField::InputField(QWidget * parent) iconLabel->setCursor(Qt::ArrowCursor); QFontMetrics fm(font()); int iconSize = fm.height(); - QPixmap pixmap = getValidationIcon(":/icons/button_valid.svg", QSize(iconSize, iconSize)); + QPixmap pixmap = getValidationIcon(":/icons/button_invalid.svg", QSize(iconSize, iconSize)); iconLabel->setPixmap(pixmap); iconLabel->hide(); connect(this, &QLineEdit::textChanged, this, &InputField::updateIconLabel); @@ -270,8 +270,9 @@ void InputField::newInput(const QString & text) } catch(Base::Exception &e){ QString errorText = QString::fromLatin1(e.what()); - QPixmap pixmap = getValidationIcon(":/icons/button_invalid.svg", iconLabel->sizeHint()); - iconLabel->setPixmap(pixmap); + if (iconLabel->isHidden()) { + iconLabel->setVisible(true); + } Q_EMIT parseError(errorText); validInput = false; return; @@ -282,16 +283,17 @@ void InputField::newInput(const QString & text) // check if unit fits! if(!actUnit.isEmpty() && !res.getUnit().isEmpty() && actUnit != res.getUnit()){ - QPixmap pixmap = getValidationIcon(":/icons/button_invalid.svg", iconLabel->sizeHint()); - iconLabel->setPixmap(pixmap); + if (iconLabel->isHidden()) { + iconLabel->setVisible(true); + } Q_EMIT parseError(QStringLiteral("Wrong unit")); validInput = false; return; } - - QPixmap pixmap = getValidationIcon(":/icons/button_valid.svg", iconLabel->sizeHint()); - iconLabel->setPixmap(pixmap); + if (iconLabel->isVisible()) { + iconLabel->setVisible(false); + } validInput = true; if (res.getValue() > Maximum){