#include "systemsettingform.h" #include #include #include #include #include #include #include #include "json/jsonobject.h" #include "SelectDialog.h" systemSettingForm::systemSettingForm(QWidget* parent) : QWidget(parent) { layout = new QVBoxLayout(this); QWidget* protocalHeader = new QWidget(this); layout->addWidget(protocalHeader); QHBoxLayout* protocalHeaderLayout = new QHBoxLayout(protocalHeader); protocalHeaderLayout->addWidget(new QLabel(tr("Default Protocal"))); QPushButton* btnPro = new QPushButton(protocalHeader); protocalHeaderLayout->addWidget(btnPro); protocalHeaderLayout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Expanding)); QWidget* filterHeader = new QWidget(this); layout->addWidget(filterHeader); QHBoxLayout* filterHeaderLayout = new QHBoxLayout(filterHeader); filterHeaderLayout->addWidget(new QLabel(tr("Default Worklist Filter"))); QPushButton* btnFlt = new QPushButton(filterHeader); filterHeaderLayout->addWidget(btnFlt); filterHeaderLayout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Expanding)); layout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Fixed, QSizePolicy::Expanding)); //init btnPro->setText(JsonObject::Instance()->defaultProtocal()); btnFlt->setText(JsonObject::Instance()->defaultFilter()); connect(btnPro, &QPushButton::clicked, [=]() { if (!protocal) { protocal = new SelectDialog(this); protocal->setWindowModality(Qt::WindowModal); } protocal->setAvailableDates(JsonObject::Instance()->protocals()); protocal->setSelectedValue(JsonObject::Instance()->defaultProtocal()); if (protocal->exec() == QDialog::Accepted) { QString pro = protocal->getSelectedValue(); //take effect JsonObject::Instance()->setDefaultProtocal(pro); btnPro->setText(JsonObject::Instance()->defaultProtocal()); } }); connect(btnFlt, &QPushButton::clicked, [=]() { if (!protocal) { filter = new SelectDialog(this); filter->setWindowModality(Qt::WindowModal); } filter->setAvailableDates(JsonObject::Instance()->worklistFilters()); filter->setSelectedValue(JsonObject::Instance()->defaultFilter()); if (filter->exec() == QDialog::Accepted) { QString pro = filter->getSelectedValue(); //take effect JsonObject::Instance()->setDefaultFilter(pro); btnFlt->setText(JsonObject::Instance()->defaultFilter()); } }); }