diff --git a/src/widget/tableview/kexiinputtableedit.h b/src/widget/tableview/kexiinputtableedit.h --- a/src/widget/tableview/kexiinputtableedit.h +++ b/src/widget/tableview/kexiinputtableedit.h @@ -51,6 +51,9 @@ //! (check this with KDbField::hasEmptyProperty()), virtual bool valueIsEmpty(); + //! \return true if the value is valid + bool valueIsValid() override; + virtual QVariant value(); virtual bool cursorAtStart(); diff --git a/src/widget/tableview/kexiinputtableedit.cpp b/src/widget/tableview/kexiinputtableedit.cpp --- a/src/widget/tableview/kexiinputtableedit.cpp +++ b/src/widget/tableview/kexiinputtableedit.cpp @@ -186,6 +186,12 @@ return !m_lineedit->text().isNull() && m_lineedit->text().isEmpty(); } +bool KexiInputTableEdit::valueIsValid() +{ + return m_textFormatter.valueIsValid(m_lineedit->text()) + && m_lineedit->hasAcceptableInput(); +} + QVariant KexiInputTableEdit::value() { return m_textFormatter.fromString(m_lineedit->text());