77 lines
2.4 KiB
C++
77 lines
2.4 KiB
C++
|
|
#include "systemsettingform.h"
|
||
|
|
|
||
|
|
#include <QPushButton>
|
||
|
|
#include <QVBoxLayout>
|
||
|
|
#include <QHBoxLayout>
|
||
|
|
#include <QDebug>
|
||
|
|
#include <QLabel>
|
||
|
|
#include <QLineEdit>
|
||
|
|
#include <QEvent>
|
||
|
|
|
||
|
|
#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());
|
||
|
|
}
|
||
|
|
});
|
||
|
|
}
|
||
|
|
|
||
|
|
|