- RegionSType region = newImageManager->GetModifiedRegion();
- VTKImageDataPointerType imgResult = this->GetImageRegion(region,
- this->m_OriginalImage);
- this->m_ImagesDeque->AddImageToUndoContainer(imgResult, newImageManager);
+ if (newImageManager->ValidateRegion()) {
+ RegionSType region = newImageManager->GetModifiedRegion();
+ VTKImageDataPointerType imgUndo = this->GetImageRegion(region,
+ this->m_UndoImage);
+ VTKImageDataPointerType imgRedo = this->GetImageRegion(region,
+ this->m_CurrentImage);
+ this->m_ImagesDeque->AddImagesToURContainer(imgUndo, imgRedo,
+ newImageManager);
+ this->UpdateUndoImage();
+ } else {
+ std::cerr << "INVALID REGION" << std::endl;
+ }