# HG changeset patch # User Matti Hamalainen # Date 1499327587 -10800 # Node ID 404d567edaab5f58bb9048aa12f2e5d24dfaedaf # Parent 2ff2ad72047479a4db538f26f8b10e9aa344d2ee Validate the length of extra info field in the add/edit person dialog. diff -r 2ff2ad720474 -r 404d567edaab src/main.cpp --- a/src/main.cpp Thu Jul 06 08:39:48 2017 +0300 +++ b/src/main.cpp Thu Jul 06 10:53:07 2017 +0300 @@ -1095,6 +1095,12 @@ ui->edit_FirstName->setMaxLength(SQL_MAX_FIRST_NAME); ui->edit_LastName->setMaxLength(SQL_MAX_LAST_NAME); + connect( + ui->textedit_ExtraInfo, + SIGNAL(textChanged()), + this, + SLOT(on_textedit_ExtraInfo_textChanged())); + validateForm(); } @@ -1117,11 +1123,13 @@ selPerson.firstName = slCleanupStr(ui->edit_FirstName->text()); selPerson.lastName = slCleanupStr(ui->edit_LastName->text()); selPerson.extraInfo = ui->textedit_ExtraInfo->document()->toPlainText(); + bool extraInfoValid = selPerson.extraInfo.length() < SQL_MAX_EXTRA_INFO; + ui->textedit_ExtraInfo->setStyleSheet(!extraInfoValid ? "background-color: red;" : NULL); ui->edit_FirstName->setStyleSheet(selPerson.firstName == "" ? "background-color: red;" : NULL); ui->edit_LastName->setStyleSheet(selPerson.lastName == "" ? "background-color: red;" : NULL); - return selPerson.firstName != "" && selPerson.lastName != ""; + return selPerson.firstName != "" && selPerson.lastName != "" && extraInfoValid; } @@ -1137,7 +1145,7 @@ { slErrorMsg( tr("Virhe!"), - tr("Vaaditut kentät (etunimi, sukunimi) eivät ole täytetty.")); + tr("Vaaditut kentät (etunimi, sukunimi) eivät ole täytetty tai lisätietojen pituus on liian suuri.")); return; } @@ -1225,6 +1233,12 @@ } +void EditPerson::on_textedit_ExtraInfo_textChanged() +{ + validateForm(); +} + + void EditPerson::clearForm() { ui->edit_FirstName->clear(); diff -r 2ff2ad720474 -r 404d567edaab src/main.h --- a/src/main.h Thu Jul 06 08:39:48 2017 +0300 +++ b/src/main.h Thu Jul 06 10:53:07 2017 +0300 @@ -209,6 +209,8 @@ void on_edit_LastName_textChanged(const QString &arg1); + void on_textedit_ExtraInfo_textChanged(); + private: Ui::EditPerson *ui;