diff options
author | Eike Ziller <eike.ziller@theqtcompany.com> | 2015-04-28 14:49:56 +0200 |
---|---|---|
committer | Eike Ziller <eike.ziller@theqtcompany.com> | 2015-05-06 15:47:27 +0000 |
commit | 3fc72220626da58b1174da4b6a61e45da9871158 (patch) | |
tree | 2272d81cda375f6cd22ed81300a4259dc7b1cd76 /src/libs/utils/classnamevalidatinglineedit.cpp | |
parent | e8862cd21f94259f22b87b5d5eb8a0a60cd511f8 (diff) |
Get rid of FancyLineEdit::validate
Use aggregation instead of inheritance for customization of validation.
Gets rid of a few additional classes.
Change-Id: Iaf8f12026c40a55bfde98b3786100f8ac431d750
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Diffstat (limited to 'src/libs/utils/classnamevalidatinglineedit.cpp')
-rw-r--r-- | src/libs/utils/classnamevalidatinglineedit.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libs/utils/classnamevalidatinglineedit.cpp b/src/libs/utils/classnamevalidatinglineedit.cpp index ef3869300e..9a85fd0022 100644 --- a/src/libs/utils/classnamevalidatinglineedit.cpp +++ b/src/libs/utils/classnamevalidatinglineedit.cpp @@ -69,6 +69,9 @@ ClassNameValidatingLineEdit::ClassNameValidatingLineEdit(QWidget *parent) : FancyLineEdit(parent), d(new ClassNameValidatingLineEditPrivate) { + setValidationFunction([this](FancyLineEdit *edit, QString *errorMessage) { + return validateClassName(edit, errorMessage); + }); updateRegExp(); } @@ -104,10 +107,11 @@ void ClassNameValidatingLineEdit::setNamespaceDelimiter(const QString &delimiter d->m_namespaceDelimiter = delimiter; } -bool ClassNameValidatingLineEdit::validate(const QString &value, QString *errorMessage) const +bool ClassNameValidatingLineEdit::validateClassName(FancyLineEdit *edit, QString *errorMessage) const { QTC_ASSERT(d->m_nameRegexp.isValid(), return false); + const QString value = edit->text(); if (!d->m_namespacesEnabled && value.contains(d->m_namespaceDelimiter)) { if (errorMessage) *errorMessage = tr("The class name must not contain namespace delimiters."); |