2021-10-09 16:38:34 +08:00
|
|
|
#ifndef GUI_SCANFORMWIDGET_H
|
|
|
|
|
#define GUI_SCANFORMWIDGET_H
|
|
|
|
|
|
2022-07-13 10:13:07 +08:00
|
|
|
#include "src/forms/TabFormWidget.h"
|
2021-10-13 17:36:38 +08:00
|
|
|
#include <functional>
|
2022-06-14 17:15:23 +08:00
|
|
|
#include <QtWidgets/QLabel>
|
2024-05-24 13:49:54 +08:00
|
|
|
#include <QStack>
|
2022-06-14 17:15:23 +08:00
|
|
|
|
2021-10-12 17:43:12 +08:00
|
|
|
class PatientInformationForm;
|
2024-09-06 17:29:25 +08:00
|
|
|
class PatientInformation;
|
2022-06-14 17:15:23 +08:00
|
|
|
class QToolButton;
|
2024-05-24 13:49:54 +08:00
|
|
|
class CoordinateXYWidget;
|
|
|
|
|
class CoordinateZWidget;
|
|
|
|
|
|
2021-10-09 16:38:34 +08:00
|
|
|
class ScanFormWidget :public TabFormWidget {
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
public:
|
2021-10-13 17:36:38 +08:00
|
|
|
explicit ScanFormWidget(QWidget *parent = nullptr);
|
2022-06-14 17:15:23 +08:00
|
|
|
~ScanFormWidget() override = default;
|
2021-10-13 17:36:38 +08:00
|
|
|
void setPreviewing(bool val);
|
2024-04-01 16:02:40 +08:00
|
|
|
|
2021-10-12 17:43:12 +08:00
|
|
|
private:
|
2022-06-14 17:15:23 +08:00
|
|
|
PatientInformationForm* mPatInf= nullptr;
|
|
|
|
|
bool mUnInited = true;
|
|
|
|
|
int mCurrentFrame = 0;
|
2024-04-29 17:58:17 +08:00
|
|
|
QToolButton* mAccountButton;
|
|
|
|
|
QToolButton* mShutdownButton;
|
|
|
|
|
QToolButton* mStartScanButton;
|
|
|
|
|
QToolButton* mDrainageButton;
|
2024-05-24 13:49:54 +08:00
|
|
|
CoordinateXYWidget* mXYLabel;
|
|
|
|
|
CoordinateZWidget* mZLabel;
|
2024-04-29 17:58:17 +08:00
|
|
|
QLabel* mScanProcessLabel;
|
2023-12-12 10:13:59 +08:00
|
|
|
QTimer* mDrainageTimer;
|
2024-05-24 13:49:54 +08:00
|
|
|
|
2024-04-29 17:58:17 +08:00
|
|
|
void initCommandWidget(QHBoxLayout *layout);
|
2022-06-14 17:15:23 +08:00
|
|
|
void initScanContent();
|
|
|
|
|
void renderLoading();
|
2023-08-21 14:22:41 +08:00
|
|
|
void renderPreviewData(const QObject* sender, const QObject *data);
|
2022-06-29 09:56:13 +08:00
|
|
|
void reloadLanguage();
|
2024-09-06 17:29:25 +08:00
|
|
|
void setScanProtocal(PatientInformation* aPatient, int aProtocal);
|
2024-05-24 13:49:54 +08:00
|
|
|
QString getAutoLocateMessage();
|
|
|
|
|
|
2021-10-12 17:43:12 +08:00
|
|
|
private slots:
|
|
|
|
|
void protocolChanged(int type);
|
2024-05-24 13:49:54 +08:00
|
|
|
void prepareStartFullScan();
|
2022-06-29 09:56:13 +08:00
|
|
|
|
|
|
|
|
void initEvents();
|
2021-10-09 16:38:34 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endif //GUI_SCANFORMWIDGET_H
|