From d1f6b7757d0292cc5b2a9405c87d24169cadca77 Mon Sep 17 00:00:00 2001 From: Krad Date: Tue, 19 Apr 2022 16:05:28 +0800 Subject: [PATCH] Change SameSeriesExceptSelf to EStudyEBoundsSeries. --- src/src/view/ImageViewManager.cpp | 5 +++-- src/src/view/ImageViewManager.h | 4 +++- src/src/view/viewcontainerwidget.cpp | 12 ++++++------ 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/src/view/ImageViewManager.cpp b/src/src/view/ImageViewManager.cpp index fecf05c..c396f77 100644 --- a/src/src/view/ImageViewManager.cpp +++ b/src/src/view/ImageViewManager.cpp @@ -48,9 +48,10 @@ void ImageViewManager::smartDo(SmartDoCallback cb, DicomImageView *sourceView, v }); break; } - case DoScope::SameSeriesExceptSelf:{ - std::for_each(vList.begin(),vList.end(),[=](auto v){ + case DoScope::EStudyEBoundsSeries:{ + std::for_each(vList.begin(),vList.end(),[=](auto v) { if (v == sourceView) return; + if (!v->HasSeries()) return; //check series auto series = sourceView->getSeriesInstance(); if (v->getSeriesInstance()==series && v->GetSliceOrientation() == sourceView->GetSliceOrientation()){ diff --git a/src/src/view/ImageViewManager.h b/src/src/view/ImageViewManager.h index af3ce2f..00ff1e9 100644 --- a/src/src/view/ImageViewManager.h +++ b/src/src/view/ImageViewManager.h @@ -50,7 +50,9 @@ public: enum DoScope{ Current, SameSeries, - SameSeriesExceptSelf, + //Equal Study, Equal World Bounds series + EStudyEBoundsSeries, + EqualBoundsSeriesExceptSelf, AllExceptSelf, All }; diff --git a/src/src/view/viewcontainerwidget.cpp b/src/src/view/viewcontainerwidget.cpp index a345f1b..4942d45 100644 --- a/src/src/view/viewcontainerwidget.cpp +++ b/src/src/view/viewcontainerwidget.cpp @@ -1,4 +1,4 @@ -#include "viewcontainerwidget.h" +#include "viewcontainerwidget.h" #include "thumbnailImage.h" #include "DicomLoader.h" #include @@ -75,7 +75,7 @@ void ViewContainerWidget::Slot_SyncEvent(DicomImageView *view, int interactionMo v->SetSlice(r[0]); v->setScrollChangedType(scrollScope::TriggerType::USER_TRIGGER); } - },view, calldata,ImageViewManager::SameSeriesExceptSelf); + },view, calldata,ImageViewManager::EStudyEBoundsSeries); } if (SyncHelper::getSyncState() == MANUAL_SYNC) { @@ -87,7 +87,7 @@ void ViewContainerWidget::Slot_SyncEvent(DicomImageView *view, int interactionMo v->AddSlice(r[1]); v->setScrollChangedType(scrollScope::TriggerType::USER_TRIGGER); } - },view, calldata,ImageViewManager::SameSeriesExceptSelf); + },view, calldata,ImageViewManager::EStudyEBoundsSeries); } } @@ -101,7 +101,7 @@ void ViewContainerWidget::Slot_SyncEvent(DicomImageView *view, int interactionMo double vector[3] = { d[3] - d[0],d[4] - d[1],d[5] - d[2] }; v->SetPanOffset(vector); } - },view, calldata,ImageViewManager::SameSeriesExceptSelf); + },view, calldata,ImageViewManager::EStudyEBoundsSeries); } break; case VTKIS_IMAGE_ZOOM: @@ -112,7 +112,7 @@ void ViewContainerWidget::Slot_SyncEvent(DicomImageView *view, int interactionMo double *d = (double *)callData; v->SetZoomScale(d[1]); } - },view, calldata,ImageViewManager::SameSeriesExceptSelf); + },view, calldata,ImageViewManager::EStudyEBoundsSeries); } break; case VTKIS_IMAGE_WINDOWLEVEL: @@ -123,7 +123,7 @@ void ViewContainerWidget::Slot_SyncEvent(DicomImageView *view, int interactionMo double *d = (double *)callData; v->SetWindowLevel(d[1], d[0]); } - },view, calldata,ImageViewManager::SameSeriesExceptSelf); + },view, calldata,ImageViewManager::EStudyEBoundsSeries); } break; default: