Wizards: Delay validity check in LineEditField

... until the values have actually been set up.

Fixes: QTCREATORBUG-24971
Change-Id: Ia967fe95545eda1c9044faf8ab1ee885bf3d9e02
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: André Hartmann <aha_1980@gmx.de>
This commit is contained in:
Christian Kandeler
2020-11-30 17:33:54 +01:00
parent bfba7a1e07
commit 3a6e4860c4

View File

@@ -568,12 +568,8 @@ void LineEditField::setup(JsonFieldPage *page, const QString &name)
bool LineEditField::validate(MacroExpander *expander, QString *message) bool LineEditField::validate(MacroExpander *expander, QString *message)
{ {
if (!JsonFieldPage::Field::validate(expander, message))
return false;
if (m_isValidating) if (m_isValidating)
return true; return true;
m_isValidating = true; m_isValidating = true;
auto w = qobject_cast<FancyLineEdit *>(widget()); auto w = qobject_cast<FancyLineEdit *>(widget());
@@ -594,9 +590,9 @@ bool LineEditField::validate(MacroExpander *expander, QString *message)
m_currentText = w->text(); m_currentText = w->text();
} }
const bool baseValid = JsonFieldPage::Field::validate(expander, message);
m_isValidating = false; m_isValidating = false;
return baseValid && !w->text().isEmpty();
return !w->text().isEmpty();
} }
void LineEditField::initializeData(MacroExpander *expander) void LineEditField::initializeData(MacroExpander *expander)