#include "PatientDetailForm.h" #include "ui_PatientDetailForm.h" #include #include #include #include #include #include #include "event/EventCenter.h" PatientDetailForm::PatientDetailForm(QWidget* parent) : QWidget(parent), mUI(new Ui::PatientDetailForm) , mBtnEdit(new QToolButton()) , mBtnDelete(new QToolButton()) , mBtnPlaceWidget(new QWidget(this)) , mLblMessage(new QLabel(this)) { mUI->setupUi(this); mUI->lblPatInfPanel->setObjectName("PatInfTitle"); mUI->lblIcon->setObjectName("PatIcon"); mUI->lbl_DOB->setObjectName("displayDetail"); mUI->lbl_Name->setObjectName("displayDetail"); mUI->lblPatID->setObjectName("displayDetail"); mUI->lbl_Sex->setObjectName("displayDetail"); mUI->lblAccno->setObjectName("displayDetail"); mUI->lblAddDate->setObjectName("displayDetail"); connect(EventCenter::Default(), &EventCenter::ReloadLanguage, this,&PatientDetailForm::reloadLanguage); mBtnPlaceWidget->setFixedHeight(120); mUI->verticalLayout_2->setSpacing(50); mUI->verticalLayout_3->insertWidget(5, mBtnPlaceWidget); mUI->verticalLayout_3->insertWidget(5, mLblMessage); mLblMessage->setVisible(false); QHBoxLayout * layout = new QHBoxLayout(mBtnPlaceWidget); mBtnEdit->setObjectName("btnPatEdit"); mBtnDelete->setObjectName("btnPatDelete"); mBtnEdit->setText(tr("Edit")); mBtnDelete->setText(tr("Delete")); layout->addWidget(mBtnEdit); layout->addWidget(mBtnDelete); connect(mBtnEdit, &QToolButton::clicked, [=](){ emit editClicked(); }); connect(mBtnDelete, &QToolButton::clicked, [=](){ emit deleteClicked(); }); setBtnEnable(false); } void PatientDetailForm::reloadLanguage() { mUI->retranslateUi(this); mUI->lbl_Sex->setText(mStore.Sex == "F" ? tr("Female") : (mStore.Sex == "M" ? tr("Male") : tr("Other"))); } PatientDetailForm::~PatientDetailForm() { delete mUI; } void PatientDetailForm::setPatientInformation(PatientInformation* information) { if (information) { mUI->lblPatID->setText(tr("PatientID: ")+information->ID); mUI->lbl_DOB->setText(" "+information->BirthDate); mUI->lbl_Name->setText(" "+information->Name); mUI->lbl_Sex->setText(" "+ (information->Sex == "F" ? tr("Female") : (information->Sex == "M" ? tr("Male") : tr("Other")))); mCurrentPatientUID = information->PatientUID; mUI->lblAddDate->setText(tr("Add Date: ")+information->AddDate); mUI->lblAccno->setText(tr("AccNo: ")+information->AccessionNumber); mStore = *information; setBtnEnable(true); } } void PatientDetailForm::clearPatientInformation() { mUI->lblPatID->clear(); mUI->lbl_DOB->clear(); mUI->lbl_Name->clear(); mUI->lbl_Sex->clear(); mUI->lblAddDate->clear(); mUI->lblAccno->clear(); } void PatientDetailForm::confirmModeOn(int protocol) { mBtnPlaceWidget->setVisible(false); mLblMessage->setVisible(true); mUI->lblPatInfPanel->setText(tr("Scan with this Patient?")); mUI->lblAddDate->setText(tr("Protocol: ")+(protocol==0?tr("Left"):tr("Right"))); } void PatientDetailForm::setBtnEnable(bool enable) { mBtnDelete->setEnabled(enable); mBtnEdit->setEnabled(enable); } void PatientDetailForm::storePatientInformation() { }