#include "dialogeditinstructor.h" #include "ui_dialogeditinstructor.h" #include DialogEditInstructor::DialogEditInstructor(QWidget *parent) : QDialog(parent), ui(new Ui::DialogEditInstructor), instructorInput() { ui->setupUi(this); verify(); ui->editName->setProperty("mandatoryField", true); ui->editLogin->setProperty("mandatoryField", true); ui->editPassword->setProperty("mandatoryField", true); ui->btnOK->setEnabled(false); } DialogEditInstructor::~DialogEditInstructor() { delete ui; } void DialogEditInstructor::setInstructor(Instructor instructor) { instructorInput = instructor; ui->editName ->setText(instructor.getName()); ui->editLogin->setText(instructor.getLogin()); ui->editPassword->setText(instructor.getPassword()); ui->checkIsAdmin->setChecked(instructor.getIsAdmin()); ui->checkArchived->setChecked(instructor.getArchived()); ui->checkLoggedIn->setChecked(instructor.getLoggedIn()); if(instructor.getIsAdmin()) ui->editName->setEnabled(false); else ui->editName->setEnabled(true); ui->btnOK->setEnabled(false); } Instructor DialogEditInstructor::getInstructor() { Instructor instructor = instructorInput; instructor.setName(ui->editName->text()); instructor.setLogin(ui->editLogin->text()); instructor.setPassword(ui->editPassword->text()); instructor.setIsAdmin(ui->checkIsAdmin->isChecked()); instructor.setArchived(ui->checkArchived->isChecked()); instructor.setLoggedIn(ui->checkLoggedIn->isChecked()); return instructor; } void DialogEditInstructor::on_editName_textChanged(const QString &arg1) { verify(); } void DialogEditInstructor::on_editLogin_textChanged(const QString &arg1) { verify(); } void DialogEditInstructor::on_editPassword_textChanged(const QString &arg1) { verify(); } void DialogEditInstructor::verify() { if(ui->editName->text().trimmed() == QStringLiteral("") || ui->editLogin->text().trimmed() == QStringLiteral("") || ui->editPassword->text().trimmed() == QStringLiteral("")) ui->btnOK->setEnabled(false); else ui->btnOK->setEnabled(true); } void DialogEditInstructor::on_btnOK_clicked() { this->accept(); }