#include "projectsettings.h" #include #include #include #include ProjectSettings::ProjectSettings(QWidget *parent) : QDialog(parent) { QDialogButtonBox* bb = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel); QPushButton* okBtn = bb->button(QDialogButtonBox::Ok); okBtn->setAutoDefault(true); okBtn->setDefault(true); connect(okBtn, SIGNAL(clicked()), this, SLOT(accept())); QPushButton* cancelBtn = bb->button(QDialogButtonBox::Cancel); cancelBtn->setAutoDefault(false); cancelBtn->setDefault(false); connect(cancelBtn, SIGNAL(clicked()), this, SLOT(reject())); projectEdit = new QLineEdit(); subjectEdit = new QLineEdit(); experimentEdit = new QLineEdit(); experimenterEdit = new QLineEdit(); conditionEdit = new QLineEdit(); commentEdit = new QLineEdit(); subjectEdit = new QLineEdit(); setupEdit = new QLineEdit(); QFormLayout *l = new QFormLayout(); l->addRow(tr("Project name:"), projectEdit); l->addRow(tr("Experimenter:"), experimenterEdit); l->addRow(tr("Experiment name:"), experimentEdit); l->addRow(tr("Experimental condition:"), conditionEdit); l->addRow(tr("Subject id:"),subjectEdit); l->addRow(tr("Setup:"), setupEdit); l->addRow(tr("Comment:"), commentEdit); projectEdit->setText(settings.value("project/name", "None").toString()); experimentEdit->setText(settings.value("project/experiment", "None").toString()); experimenterEdit->setText(settings.value("project/experimenter", "None").toString()); conditionEdit->setText(settings.value("project/condition", "None").toString()); setupEdit->setText(settings.value("project/setup", "None").toString()); commentEdit->setText(settings.value("project/comment", "None").toString()); subjectEdit->setText(settings.value("project/subject", "None").toString()); QVBoxLayout *vbox = new QVBoxLayout(); vbox->addLayout(l); vbox->addWidget(bb); this->setLayout(vbox); } ProjectSettings::~ProjectSettings(){} void ProjectSettings::accept() { this->metadata.projectName = projectEdit->text(); this->metadata.experiment = experimentEdit->text(); this->metadata.condition = conditionEdit->text(); this->metadata.experimenter = experimenterEdit->text(); this->metadata.subject = subjectEdit->text(); this->metadata.comment = commentEdit->text(); this->metadata.setupName = setupEdit->text(); settings.setValue("project/name", projectEdit->text()); settings.setValue("project/experiment", experimentEdit->text()); settings.setValue("project/condition", conditionEdit->text()); settings.setValue("project/experimenter", experimenterEdit->text()); settings.setValue("project/subject", subjectEdit->text()); settings.setValue("project/setup", setupEdit->text()); settings.setValue("project/comment", commentEdit->text()); QDialog::accept(); } ProjectMetadata ProjectSettings::getMetadata() { return metadata; }