Refactor DefaultToolBar.And remove sync auto disable logic.
This commit is contained in:
@@ -55,20 +55,20 @@ DefaultToolBar::DefaultToolBar(QWidget *parent) : QToolBar(parent)
|
|||||||
mManualIcon.addFile(SYNC_MANUAL_URL);
|
mManualIcon.addFile(SYNC_MANUAL_URL);
|
||||||
mAutoIcon.addFile(SYNC_AUTO_URL);
|
mAutoIcon.addFile(SYNC_AUTO_URL);
|
||||||
mDisIcon.addFile(SYNC_DIS_URL);
|
mDisIcon.addFile(SYNC_DIS_URL);
|
||||||
initButtons();
|
initToolBarButtons();
|
||||||
}
|
}
|
||||||
|
|
||||||
DefaultToolBar::~DefaultToolBar() {
|
DefaultToolBar::~DefaultToolBar() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QAction* DefaultToolBar::initButton(QToolButton* button, const char* objectName) {
|
QAction* DefaultToolBar::addButton(QToolButton* button, const char* objectName) {
|
||||||
button->setObjectName(objectName);
|
button->setObjectName(objectName);
|
||||||
button->setToolButtonStyle(Qt::ToolButtonIconOnly);
|
button->setToolButtonStyle(Qt::ToolButtonIconOnly);
|
||||||
return addWidget(button);
|
return addWidget(button);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::initGroupedButton(QToolButton* button, const char* objectName, QButtonGroup * group) {
|
void DefaultToolBar::addGroupedButton(QToolButton* button, const char* objectName, QButtonGroup * group) {
|
||||||
button->setObjectName(objectName);
|
button->setObjectName(objectName);
|
||||||
button->setCheckable(true);
|
button->setCheckable(true);
|
||||||
button->setAutoExclusive(true);
|
button->setAutoExclusive(true);
|
||||||
@@ -76,66 +76,66 @@ void DefaultToolBar::initGroupedButton(QToolButton* button, const char* objectNa
|
|||||||
addWidget(button);
|
addWidget(button);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::initButtons() {
|
void DefaultToolBar::initToolBarButtons() {
|
||||||
setContextMenuPolicy(Qt::ContextMenuPolicy::PreventContextMenu);
|
setContextMenuPolicy(Qt::ContextMenuPolicy::PreventContextMenu);
|
||||||
setFixedHeight(VCRHelper::toolbar_Height);
|
setFixedHeight(VCRHelper::toolbar_Height);
|
||||||
setMovable(false);
|
setMovable(false);
|
||||||
initButton(mBtnFile, "file");
|
addButton(mBtnFile, "file");
|
||||||
initButton(mBtnImport, "import");
|
addButton(mBtnImport, "import");
|
||||||
initButton(mBtnSave, "save");
|
addButton(mBtnSave, "save");
|
||||||
|
|
||||||
addSeparator();
|
addSeparator();
|
||||||
|
|
||||||
initButton(mBtnGrid, "grid");
|
addButton(mBtnGrid, "grid");
|
||||||
initButton(mBtnSync, "sync");
|
addButton(mBtnSync, "sync");
|
||||||
initButton(mBtnAnonymize, "anonymize");
|
addButton(mBtnAnonymize, "anonymize");
|
||||||
|
|
||||||
addSeparator();
|
addSeparator();
|
||||||
|
|
||||||
QButtonGroup *modeGroup = new QButtonGroup(this);
|
QButtonGroup *modeGroup = new QButtonGroup(this);
|
||||||
initGroupedButton(mBtnSlice, "slice", modeGroup);
|
addGroupedButton(mBtnSlice, "slice", modeGroup);
|
||||||
initGroupedButton(mBtnWindow, "window", modeGroup);
|
addGroupedButton(mBtnWindow, "window", modeGroup);
|
||||||
initGroupedButton(mBtnPan, "pan", modeGroup);
|
addGroupedButton(mBtnPan, "pan", modeGroup);
|
||||||
initGroupedButton(mBtnZoom, "zoom", modeGroup);
|
addGroupedButton(mBtnZoom, "zoom", modeGroup);
|
||||||
initGroupedButton(mBtnMeasure, "measure", modeGroup);
|
addGroupedButton(mBtnMeasure, "measure", modeGroup);
|
||||||
initButton(mBtnClear, "clear");
|
addButton(mBtnClear, "clear");
|
||||||
addSeparator();
|
addSeparator();
|
||||||
|
|
||||||
|
|
||||||
initButton(mBtnFlip, "flip");
|
addButton(mBtnFlip, "flip");
|
||||||
initButton(mBtnCine, "cine");
|
addButton(mBtnCine, "cine");
|
||||||
initButton(mBtnFusion, "fusion");
|
addButton(mBtnFusion, "fusion");
|
||||||
initButton(mBtnMPR, "MPR");
|
addButton(mBtnMPR, "MPR");
|
||||||
|
|
||||||
QWidget *spacer = new QWidget(this);
|
QWidget *spacer = new QWidget(this);
|
||||||
spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
|
spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
|
||||||
addWidget(spacer);
|
addWidget(spacer);
|
||||||
|
|
||||||
mActionMinimize = initButton(mBtnMinimize, "minimize");
|
mActionMinimize = addButton(mBtnMinimize, "minimize");
|
||||||
mActionMaximize = initButton(mBtnMaximize, "maximize");
|
mActionMaximize = addButton(mBtnMaximize, "maximize");
|
||||||
mActionClose = initButton(mBtnClose, "close");
|
mActionClose = addButton(mBtnClose, "close");
|
||||||
mActionFullScreen = initButton(mBtnFullScreen, "fullscreen");
|
mActionFullScreen = addButton(mBtnFullScreen, "fullscreen");
|
||||||
|
|
||||||
mActionMinimize->setVisible(false);
|
mActionMinimize->setVisible(false);
|
||||||
mActionMaximize->setVisible(false);
|
mActionMaximize->setVisible(false);
|
||||||
mActionClose->setVisible(false);
|
mActionClose->setVisible(false);
|
||||||
|
|
||||||
SetupFileTool();
|
initFileButton();
|
||||||
SetupImportTool();
|
initImportButton();
|
||||||
SetupExportTool();
|
initExportButton();
|
||||||
SetupGridTool();
|
initGridButton();
|
||||||
SetupSyncTool();
|
initSyncButton();
|
||||||
SetupAnnoTool();
|
initAnonymizeButton();
|
||||||
SetupModeTool();
|
initModeButtons();
|
||||||
SetupTransformTool();
|
initTransformButton();
|
||||||
SetupFusionTool();
|
initFusionButton();
|
||||||
SetupMPR();
|
initMPRButton();
|
||||||
SetupCineTool();
|
initCineButton();
|
||||||
SetupEmptyTool();
|
initClearButton();
|
||||||
SetupScreenTool();
|
initScreenButtons();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupFileTool() {
|
void DefaultToolBar::initFileButton() {
|
||||||
mBtnFile->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
mBtnFile->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||||
// Menu
|
// Menu
|
||||||
mBtnFile->setToolTip(QString("Open Dicom series from directory"));
|
mBtnFile->setToolTip(QString("Open Dicom series from directory"));
|
||||||
@@ -154,17 +154,17 @@ void DefaultToolBar::SetupFileTool() {
|
|||||||
connect(mBtnFile, &QToolButton::clicked, this, &DefaultToolBar::openFolder);
|
connect(mBtnFile, &QToolButton::clicked, this, &DefaultToolBar::openFolder);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupImportTool() {
|
void DefaultToolBar::initImportButton() {
|
||||||
mBtnImport->setToolTip(QString("Search and download studies from PACS locations"));
|
mBtnImport->setToolTip(QString("Search and download studies from PACS locations"));
|
||||||
connect(mBtnImport, &QToolButton::clicked, this, &DefaultToolBar::import);
|
connect(mBtnImport, &QToolButton::clicked, this, &DefaultToolBar::import);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupExportTool() {
|
void DefaultToolBar::initExportButton() {
|
||||||
mBtnSave->setToolTip(QString("Export images"));
|
mBtnSave->setToolTip(QString("Export images"));
|
||||||
connect(mBtnSave, &QToolButton::clicked, this, &DefaultToolBar::save);
|
connect(mBtnSave, &QToolButton::clicked, this, &DefaultToolBar::save);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupGridTool() {
|
void DefaultToolBar::initGridButton() {
|
||||||
mBtnGrid->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
mBtnGrid->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||||
mBtnGrid->setToolTip(QString("Split Screen"));
|
mBtnGrid->setToolTip(QString("Split Screen"));
|
||||||
// connect
|
// connect
|
||||||
@@ -173,7 +173,7 @@ void DefaultToolBar::SetupGridTool() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupSyncTool() {
|
void DefaultToolBar::initSyncButton() {
|
||||||
mBtnSync->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
mBtnSync->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||||
mBtnSync->setToolTip(QString("Toggle series synchronization"));
|
mBtnSync->setToolTip(QString("Toggle series synchronization"));
|
||||||
// Menu
|
// Menu
|
||||||
@@ -238,7 +238,7 @@ void DefaultToolBar::syncStateChanged() const {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupModeTool() {
|
void DefaultToolBar::initModeButtons() {
|
||||||
mBtnWindow->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
mBtnWindow->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||||
mBtnWindow->setToolTip(QString("Adjust window level"));
|
mBtnWindow->setToolTip(QString("Adjust window level"));
|
||||||
connect(mBtnWindow, &QToolButton::clicked, this, [=]() {
|
connect(mBtnWindow, &QToolButton::clicked, this, [=]() {
|
||||||
@@ -271,14 +271,13 @@ void DefaultToolBar::SetupModeTool() {
|
|||||||
emit modeChanged(4);
|
emit modeChanged(4);
|
||||||
});
|
});
|
||||||
|
|
||||||
SetupMeasureTool();
|
initMeasureButton();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupAnnoTool() {
|
void DefaultToolBar::initAnonymizeButton() {
|
||||||
mBtnAnonymize->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
mBtnAnonymize->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||||
mBtnAnonymize->setToolTip(QString("Toggle annotations"));
|
mBtnAnonymize->setToolTip(QString("Toggle annotations"));
|
||||||
mBtnAnonymize->setCheckable(true);
|
mBtnAnonymize->setCheckable(true);
|
||||||
//视窗操作,显隐测量
|
|
||||||
QMenu *m;
|
QMenu *m;
|
||||||
m = new QMenu(this);
|
m = new QMenu(this);
|
||||||
//视窗操作,显隐测量
|
//视窗操作,显隐测量
|
||||||
@@ -315,7 +314,7 @@ void DefaultToolBar::SetupAnnoTool() {
|
|||||||
mBtnAnonymize->setMenu(m);
|
mBtnAnonymize->setMenu(m);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupMeasureTool() {
|
void DefaultToolBar::initMeasureButton() {
|
||||||
#define ADD_MEASURE_ACTION(index)\
|
#define ADD_MEASURE_ACTION(index)\
|
||||||
m->addAction(tr(std::get<0>(MEASURE_ACTIIONS[index])), this, [=] {\
|
m->addAction(tr(std::get<0>(MEASURE_ACTIIONS[index])), this, [=] {\
|
||||||
mBtnMeasure->setChecked(true);\
|
mBtnMeasure->setChecked(true);\
|
||||||
@@ -351,7 +350,7 @@ void DefaultToolBar::SetupMeasureTool() {
|
|||||||
mBtnMeasure->setMenu(m);
|
mBtnMeasure->setMenu(m);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupFusionTool() {
|
void DefaultToolBar::initFusionButton() {
|
||||||
mBtnFusion->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
mBtnFusion->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||||
mBtnFusion->setToolTip(QString("Fusion"));
|
mBtnFusion->setToolTip(QString("Fusion"));
|
||||||
connect(mBtnFusion, &QToolButton::clicked, this, &DefaultToolBar::fusion);
|
connect(mBtnFusion, &QToolButton::clicked, this, &DefaultToolBar::fusion);
|
||||||
@@ -366,18 +365,18 @@ void DefaultToolBar::SetupFusionTool() {
|
|||||||
mBtnFusion->setEnabled(false);
|
mBtnFusion->setEnabled(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupCineTool() {
|
void DefaultToolBar::initCineButton() {
|
||||||
mBtnCine->setToolTip(QString("Cine"));
|
mBtnCine->setToolTip(QString("Cine"));
|
||||||
mBtnCine->setCheckable(true);
|
mBtnCine->setCheckable(true);
|
||||||
connect(mBtnCine, &QToolButton::clicked, this, &DefaultToolBar::cine);
|
connect(mBtnCine, &QToolButton::clicked, this, &DefaultToolBar::cine);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupEmptyTool() {
|
void DefaultToolBar::initClearButton() {
|
||||||
mBtnClear->setToolTip(QString("Delete current series"));
|
mBtnClear->setToolTip(QString("Delete current series"));
|
||||||
connect(mBtnClear, &QToolButton::clicked, this, &DefaultToolBar::clear);
|
connect(mBtnClear, &QToolButton::clicked, this, &DefaultToolBar::clear);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupTransformTool() {
|
void DefaultToolBar::initTransformButton() {
|
||||||
mBtnFlip->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
mBtnFlip->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||||
mBtnFlip->setToolTip(QString("Transformations"));
|
mBtnFlip->setToolTip(QString("Transformations"));
|
||||||
QMenu *m = new QMenu(this);
|
QMenu *m = new QMenu(this);
|
||||||
@@ -402,7 +401,7 @@ void DefaultToolBar::SetupTransformTool() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupMPR(){
|
void DefaultToolBar::initMPRButton(){
|
||||||
connect(mBtnMPR, &QToolButton::clicked, [=](){
|
connect(mBtnMPR, &QToolButton::clicked, [=](){
|
||||||
SyncHelper::setSyncState(DIS_SYNC);
|
SyncHelper::setSyncState(DIS_SYNC);
|
||||||
syncStateChanged();
|
syncStateChanged();
|
||||||
@@ -414,8 +413,9 @@ void DefaultToolBar::SetupMPR(){
|
|||||||
void DefaultToolBar::resetNeedCheckFunctionButtons(){
|
void DefaultToolBar::resetNeedCheckFunctionButtons(){
|
||||||
mBtnMPR->setEnabled(false);
|
mBtnMPR->setEnabled(false);
|
||||||
mBtnFusion->setEnabled(false);
|
mBtnFusion->setEnabled(false);
|
||||||
SyncHelper::setSyncState(DIS_SYNC);
|
|
||||||
syncStateChanged();
|
// SyncHelper::setSyncState(DIS_SYNC);
|
||||||
|
// syncStateChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::updateNeedCheckFunctionButtons(ViewFunctionState state)
|
void DefaultToolBar::updateNeedCheckFunctionButtons(ViewFunctionState state)
|
||||||
@@ -426,7 +426,7 @@ void DefaultToolBar::updateNeedCheckFunctionButtons(ViewFunctionState state)
|
|||||||
// syncStateChanged();
|
// syncStateChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultToolBar::SetupScreenTool() {
|
void DefaultToolBar::initScreenButtons() {
|
||||||
mBtnFullScreen->setToolTip(QString("Full screen"));
|
mBtnFullScreen->setToolTip(QString("Full screen"));
|
||||||
connect(mBtnFullScreen, &QToolButton::clicked, this, [=] {
|
connect(mBtnFullScreen, &QToolButton::clicked, this, [=] {
|
||||||
mActionFullScreen->setVisible(false);
|
mActionFullScreen->setVisible(false);
|
||||||
|
|||||||
@@ -40,27 +40,27 @@ signals:
|
|||||||
void transform(TransFormType type);
|
void transform(TransFormType type);
|
||||||
void showMeta();
|
void showMeta();
|
||||||
private:
|
private:
|
||||||
QAction *initButton(QToolButton *button, const char *objectName);
|
QAction *addButton(QToolButton *button, const char *objectName);
|
||||||
|
|
||||||
void initGroupedButton(QToolButton *button, const char *objectName, QButtonGroup *group);
|
void addGroupedButton(QToolButton *button, const char *objectName, QButtonGroup *group);
|
||||||
|
|
||||||
void initButtons();
|
void initToolBarButtons();
|
||||||
void syncStateChanged() const;
|
void syncStateChanged() const;
|
||||||
void SetupMPR();
|
void initMPRButton();
|
||||||
|
|
||||||
void SetupFileTool();
|
void initFileButton();
|
||||||
void SetupImportTool();
|
void initImportButton();
|
||||||
void SetupExportTool();
|
void initExportButton();
|
||||||
void SetupGridTool();
|
void initGridButton();
|
||||||
void SetupSyncTool();
|
void initSyncButton();
|
||||||
void SetupModeTool();
|
void initModeButtons();
|
||||||
void SetupAnnoTool();
|
void initAnonymizeButton();
|
||||||
void SetupMeasureTool();
|
void initMeasureButton();
|
||||||
void SetupFusionTool();
|
void initFusionButton();
|
||||||
void SetupCineTool();
|
void initCineButton();
|
||||||
void SetupEmptyTool();
|
void initClearButton();
|
||||||
void SetupTransformTool();
|
void initTransformButton();
|
||||||
void SetupScreenTool();
|
void initScreenButtons();
|
||||||
|
|
||||||
QIcon mManualIcon;
|
QIcon mManualIcon;
|
||||||
QIcon mAutoIcon;
|
QIcon mAutoIcon;
|
||||||
|
|||||||
Reference in New Issue
Block a user