Add addVerticalLine function to tabformwidget.

This commit is contained in:
Krad
2022-06-14 11:29:56 +08:00
parent 98a9b1d6a2
commit b9d4984fa1
6 changed files with 80 additions and 83 deletions

View File

@@ -44,10 +44,7 @@ ScanFormWidget::ScanFormWidget(QWidget* parent) : TabFormWidget(parent) {
lbl_Protocol->setAlignment(Qt::AlignTop); lbl_Protocol->setAlignment(Qt::AlignTop);
lbl_Protocol->setObjectName("lbl_protocol"); lbl_Protocol->setObjectName("lbl_protocol");
layout->addWidget(lbl_Protocol); layout->addWidget(lbl_Protocol);
QWidget* spacerLine = new QWidget(this); addVerticalLine(layout);
spacerLine->setFixedWidth(2);
spacerLine->setObjectName("verSpaceLine");
layout->addWidget(spacerLine);
ADD_TOOL_BTN(Left, ":/icons/left.png"); ADD_TOOL_BTN(Left, ":/icons/left.png");
ADD_TOOL_BTN(Right, ":/icons/right.png"); ADD_TOOL_BTN(Right, ":/icons/right.png");
btnLeft->setText(tr("LEFT")); btnLeft->setText(tr("LEFT"));
@@ -60,10 +57,7 @@ ScanFormWidget::ScanFormWidget(QWidget* parent) : TabFormWidget(parent) {
group->addButton(btnRight, 1); group->addButton(btnRight, 1);
group->addButton(btnLeft, 0); group->addButton(btnLeft, 0);
layout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Expanding)); layout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Expanding));
QWidget* spacerLine2 = new QWidget(this); addVerticalLine(layout);
spacerLine2->setFixedWidth(2);
spacerLine2->setObjectName("verSpaceLine");
layout->addWidget(spacerLine2);
ADD_TOOL_BTN(Refresh, ":/icons/scan_e.png"); ADD_TOOL_BTN(Refresh, ":/icons/scan_e.png");
ADD_TOOL_BTN(Preview, ":/icons/rec.png"); ADD_TOOL_BTN(Preview, ":/icons/rec.png");

View File

@@ -3,57 +3,59 @@
// //
#include "ui_tabformwidget.h" #include "ui_tabformwidget.h"
#include "SelectFormWidget.h" #include "SelectFormWidget.h"
#include <QHBoxLayout> #include <QHBoxLayout>
#include <QToolButton> #include <QToolButton>
#include <QTableWidget> #include <QTableWidget>
#include "components/SlideTableView.h" #include <QScroller>
#include <QHeaderView> #include <QHeaderView>
#include <QUuid> #include <QUuid>
#include <QDate> #include <QDate>
#include <QDebug>
#include "components/SlideTableView.h"
#include "db/SQLHelper.h" #include "db/SQLHelper.h"
#include "guimacros.h" #include "guimacros.h"
#include "event/EventCenter.h" #include "event/EventCenter.h"
#include "src/dialogs/AccountFormDialog.h" #include "dialogs/AccountFormDialog.h"
#include <QDebug>
#include "log/UserOperationLog.h"
#include "src/components/VerticalTextToolButton.h"
#include "dialogs/AlertDialog.h" #include "dialogs/AlertDialog.h"
#include "log/UserOperationLog.h"
#include "components/VerticalTextToolButton.h"
#include <QScroller> SelectFormWidget::SelectFormWidget(QWidget* parent)
: TabFormWidget(parent)
, mBtnAccount(new QToolButton(this))
, mBtnWorklist(new QToolButton(this))
SelectFormWidget::SelectFormWidget(QWidget* parent) : , mBtnAdd(new QToolButton(this))
TabFormWidget(parent) , mBtnEdit(new QToolButton(this))
, mBtnDelete(new QToolButton(this))
, mBtnSelect(new QToolButton(this))
{ {
//init command bar //init command bar
QHBoxLayout* layout = new QHBoxLayout(); auto layout = new QHBoxLayout();
ui->commandWidget->setLayout(layout); ui->commandWidget->setLayout(layout);
ADD_TOOL_BTN(Account, ":/icons/account.png"); INIT_TOOL_BTN(Account, ":/icons/account.png")
ADD_TOOL_BTN(Worklist, ":/icons/setting.png"); INIT_TOOL_BTN(Worklist, ":/icons/setting.png")
btnAccount->setText(tr("Account")); mBtnAccount->setText(tr("Account"));
btnWorklist->setText(tr("Worklist")); mBtnWorklist->setText(tr("Worklist"));
layout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Expanding)); layout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Expanding));
QWidget* spacerLine = new QWidget(this); addVerticalLine(layout);
spacerLine->setFixedWidth(2); INIT_TOOL_BTN(Add, ":/icons/add.png")
spacerLine->setObjectName("verSpaceLine"); INIT_TOOL_BTN(Edit, ":/icons/details.png")
layout->addWidget(spacerLine); INIT_TOOL_BTN(Delete, ":/icons/close_circle.png")
ADD_TOOL_BTN(Add, ":/icons/add.png"); INIT_TOOL_BTN(Select, ":/icons/selected.png")
ADD_TOOL_BTN(Edit, ":/icons/details.png"); mBtnAdd->setText(tr("Add"));
ADD_TOOL_BTN(Delete, ":/icons/close_circle.png"); mBtnEdit->setText(tr("Edit"));
ADD_TOOL_BTN(Select, ":/icons/selected.png"); mBtnDelete->setText(tr("Delete"));
btnAdd->setText(tr("Add")); mBtnSelect->setText(tr("Select"));
btnEdit->setText(tr("Edit"));
btnDelete->setText(tr("Delete"));
btnSelect->setText(tr("Select"));
//Init content widget //Init content widget
QHBoxLayout* contentLayout = new QHBoxLayout(); auto* contentLayout = new QHBoxLayout();
contentLayout->setContentsMargins(5, 5, 0, 5); contentLayout->setContentsMargins(5, 5, 0, 5);
this->ui->contentWidget->setLayout(contentLayout); this->ui->contentWidget->setLayout(contentLayout);
// TableView for patient // TableView for patient
SlideTableView* table = new SlideTableView(this); auto table = new SlideTableView(this);
table->setAlternatingRowColors(true); table->setAlternatingRowColors(true);
table->setSelectionMode(QAbstractItemView::SingleSelection); table->setSelectionMode(QAbstractItemView::SingleSelection);
table->setEditTriggers(QAbstractItemView::NoEditTriggers); table->setEditTriggers(QAbstractItemView::NoEditTriggers);
@@ -88,12 +90,9 @@ SelectFormWidget::SelectFormWidget(QWidget* parent) :
table->setColumnWidth(4, 120); table->setColumnWidth(4, 120);
table->setColumnWidth(5, 250); table->setColumnWidth(5, 250);
contentLayout->addWidget(table); contentLayout->addWidget(table);
QWidget* spacerLine2 = new QWidget(this); addVerticalLine(layout);
spacerLine2->setFixedWidth(2);
spacerLine2->setObjectName("verSpaceLine");
contentLayout->addWidget(spacerLine2);
// prepare edit panel // prepare edit panel
EditPatientForm* edit_patient = new EditPatientForm(this); auto edit_patient = new EditPatientForm(this);
edit_patient->setObjectName("edit_patient"); edit_patient->setObjectName("edit_patient");
edit_patient->hide(); edit_patient->hide();
contentLayout->addWidget(edit_patient); contentLayout->addWidget(edit_patient);
@@ -128,10 +127,10 @@ SelectFormWidget::SelectFormWidget(QWidget* parent) :
//prepare button state //prepare button state
auto prepareButtons = [=](bool disableALL){ auto prepareButtons = [=](bool disableALL){
bool state_flag = (table->currentIndex().row()>=0); bool state_flag = (table->currentIndex().row()>=0);
btnSelect->setEnabled(state_flag && !disableALL); mBtnSelect->setEnabled(state_flag && !disableALL);
btnDelete->setEnabled(state_flag && !disableALL); mBtnDelete->setEnabled(state_flag && !disableALL);
btnEdit->setEnabled(state_flag && !disableALL); mBtnEdit->setEnabled(state_flag && !disableALL);
btnAdd->setEnabled(!disableALL); mBtnAdd->setEnabled(!disableALL);
}; };
//table current row selection changing event //table current row selection changing event
connect(table, &SlideTableView::currentRowChanged, [=](int row) { connect(table, &SlideTableView::currentRowChanged, [=](int row) {
@@ -150,7 +149,7 @@ SelectFormWidget::SelectFormWidget(QWidget* parent) :
}); });
// btn add slot // btn add slot
connect(btnAdd, &QToolButton::clicked, [=]() { connect(mBtnAdd, &QToolButton::clicked, [=]() {
EditPatientDialog dialog(this); EditPatientDialog dialog(this);
dialog.clearPatientInformation(); dialog.clearPatientInformation();
dialog.setWindowModality(Qt::WindowModal); dialog.setWindowModality(Qt::WindowModal);
@@ -160,13 +159,13 @@ SelectFormWidget::SelectFormWidget(QWidget* parent) :
table->selectRow(0); table->selectRow(0);
model->selectRow(0); model->selectRow(0);
LOG_USER_OPERATION(AddPatient) LOG_USER_OPERATION(AddPatient)
btnSelect->setEnabled(true); mBtnSelect->setEnabled(true);
} }
}); });
// btn edit slot // mBtn edit slot
connect(btnEdit, &QToolButton::clicked, [=]() { connect(mBtnEdit, &QToolButton::clicked, [=]() {
EditPatientDialog dialog(this); EditPatientDialog dialog(this);
dialog.setPatientInformation(edit_patient->getPatientInformation()); dialog.setPatientInformation(edit_patient->getPatientInformation());
dialog.setWindowModality(Qt::WindowModal); dialog.setWindowModality(Qt::WindowModal);
@@ -175,15 +174,15 @@ SelectFormWidget::SelectFormWidget(QWidget* parent) :
if (dialog.exec() == QDialog::Accepted) { if (dialog.exec() == QDialog::Accepted) {
table->clicked(table->currentIndex()); table->clicked(table->currentIndex());
setPatientDetail(table, model, edit_patient); setPatientDetail(table, model, edit_patient);
LOG_USER_OPERATION(AddPatient); LOG_USER_OPERATION(AddPatient)
btnSelect->setEnabled(true); mBtnSelect->setEnabled(true);
} }
}); });
// btn add slot // mBtn add slot
connect(edit_patient, &EditPatientForm::editCancel, [=]() { connect(edit_patient, &EditPatientForm::editCancel, [=]() {
if (table->currentIndex().row()<0) return; if (table->currentIndex().row()<0) return;
btnSelect->setEnabled(true); mBtnSelect->setEnabled(true);
}); });
// EditPatientForm editAccept slot // EditPatientForm editAccept slot
@@ -217,11 +216,11 @@ SelectFormWidget::SelectFormWidget(QWidget* parent) :
{ {
LOG_USER_OPERATION(ChangePatientInfo) LOG_USER_OPERATION(ChangePatientInfo)
} }
btnSelect->setEnabled(true); mBtnSelect->setEnabled(true);
}); });
// btn delete slot // btn delete slot
connect(btnDelete, &QToolButton::clicked, [=]() { connect(mBtnDelete, &QToolButton::clicked, [=]() {
if (table->currentIndex().row()<0) return; if (table->currentIndex().row()<0) return;
AlertDialog dialog(this); AlertDialog dialog(this);
dialog.setWindowModality(Qt::WindowModal); dialog.setWindowModality(Qt::WindowModal);
@@ -263,16 +262,16 @@ SelectFormWidget::SelectFormWidget(QWidget* parent) :
}); });
// btn select slot // mBtn select slot
connect(btnSelect, &QToolButton::clicked, [=]() { connect(mBtnSelect, &QToolButton::clicked, [=]() {
EventCenter::Default()->triggerEvent(GUIEvents::PatientSelected, nullptr, edit_patient->getPatientInformation()->Copy()); EventCenter::Default()->triggerEvent(GUIEvents::PatientSelected, nullptr, edit_patient->getPatientInformation()->Copy());
selectedPatientUID = edit_patient->getPatientInformation()->PatientUID; selectedPatientUID = edit_patient->getPatientInformation()->PatientUID;
LOG_USER_OPERATION(SelectPatient) LOG_USER_OPERATION(SelectPatient)
}); });
// btn account slot // mBtn account slot
connect(btnAccount, &QToolButton::clicked, [=]() { connect(mBtnAccount, &QToolButton::clicked, [=]() {
AccountFormDialog dia(this); AccountFormDialog dia(this);
dia.setWindowModality(Qt::WindowModal); dia.setWindowModality(Qt::WindowModal);
dia.exec(); dia.exec();
@@ -298,12 +297,12 @@ SelectFormWidget::SelectFormWidget(QWidget* parent) :
model->setHeaderData(5, Qt::Horizontal, tr("Add Date")); model->setHeaderData(5, Qt::Horizontal, tr("Add Date"));
model->setHeaderData(6, Qt::Horizontal, tr("Comment")); model->setHeaderData(6, Qt::Horizontal, tr("Comment"));
btnAccount->setText(tr("Account")); mBtnAccount->setText(tr("Account"));
//btnWorklist->setText(tr("Worklist")); //mBtnWorklist->setText(tr("Worklist"));
btnAdd->setText(tr("Add")); mBtnAdd->setText(tr("Add"));
btnEdit->setText(tr("Edit")); mBtnEdit->setText(tr("Edit"));
btnDelete->setText(tr("Delete")); mBtnDelete->setText(tr("Delete"));
btnSelect->setText(tr("Select")); mBtnSelect->setText(tr("Select"));
}); });
//first prepare buttons! //first prepare buttons!
@@ -321,9 +320,4 @@ void SelectFormWidget::setPatientDetail(const SlideTableView *table, const QSqlT
} }
SelectFormWidget::~SelectFormWidget()
{
}

View File

@@ -10,17 +10,22 @@
#include "EditPatientDialog.h" #include "EditPatientDialog.h"
class EditPatientForm; class EditPatientForm;
class SlideTableView; class SlideTableView;
class QToolButton;
class SelectFormWidget: public TabFormWidget { class SelectFormWidget: public TabFormWidget {
Q_OBJECT Q_OBJECT
public: public:
explicit SelectFormWidget(QWidget *parent = nullptr); explicit SelectFormWidget(QWidget *parent = nullptr);
~SelectFormWidget(); ~SelectFormWidget() override = default;;
private: private:
QString selectedPatientUID; QString selectedPatientUID;
void setPatientDetail(const SlideTableView *table, const QSqlTableModel *model, EditPatientForm *edit_patient) const;
void QToolButton* mBtnAccount;
setPatientDetail(const SlideTableView *table, const QSqlTableModel *model, EditPatientForm *edit_patient) const; QToolButton* mBtnWorklist;
QToolButton* mBtnAdd;
QToolButton* mBtnEdit;
QToolButton* mBtnDelete;
QToolButton* mBtnSelect;
}; };

View File

@@ -19,7 +19,7 @@ AdminSettingForm::AdminSettingForm(QWidget* parent, Qt::WindowFlags f) : TabForm
QHBoxLayout* layout = new QHBoxLayout(this); QHBoxLayout* layout = new QHBoxLayout(this);
layout->setMargin(0); layout->setMargin(0);
layout->setContentsMargins(0, 8, 0, 1); layout->setContentsMargins(0, 8, 0, 8);
this->ui->contentWidget->setLayout(layout); this->ui->contentWidget->setLayout(layout);
this->ui->contentWidget->setObjectName("contentWidgetWithBBorder"); this->ui->contentWidget->setObjectName("contentWidgetWithBBorder");
QListWidget* widget = new QListWidget(this); QListWidget* widget = new QListWidget(this);
@@ -35,11 +35,7 @@ AdminSettingForm::AdminSettingForm(QWidget* parent, Qt::WindowFlags f) : TabForm
layout->addWidget(widget); layout->addWidget(widget);
QStackedWidget* stackedWidget = new QStackedWidget(this); QStackedWidget* stackedWidget = new QStackedWidget(this);
QWidget* spacerLine2 = new QWidget(this); addVerticalLine(layout);
spacerLine2->setFixedWidth(2);
spacerLine2->setObjectName("verSpaceLine");
spacerLine2->setStyleSheet("margin-bottom:8px");
layout->addWidget(spacerLine2);
layout->addWidget(stackedWidget); layout->addWidget(stackedWidget);
this->ui->commandWidget->hide(); this->ui->commandWidget->hide();

View File

@@ -20,3 +20,10 @@ TabFormWidget::~TabFormWidget()
{ {
delete ui; delete ui;
} }
void TabFormWidget::addVerticalLine(QHBoxLayout *layout) {
auto spacerLine = new QWidget(this);
spacerLine->setFixedWidth(2);
spacerLine->setObjectName("verSpaceLine");
layout->addWidget(spacerLine);
}

View File

@@ -6,7 +6,7 @@
namespace Ui { namespace Ui {
class TabFormWidget; class TabFormWidget;
} }
class QHBoxLayout;
class TabFormWidget : public QWidget class TabFormWidget : public QWidget
{ {
Q_OBJECT Q_OBJECT
@@ -16,6 +16,7 @@ public:
~TabFormWidget(); ~TabFormWidget();
protected: protected:
Ui::TabFormWidget *ui; Ui::TabFormWidget *ui;
void addVerticalLine(QHBoxLayout *layout);
}; };
#endif // TABFORMWIDGET_H #endif // TABFORMWIDGET_H