X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvMainWindow.cxx;h=10dc42d012885709d621a0ded415d650d6122c10;hb=a4c7c3e6b24a06bfe248f935411e0136184faf97;hp=bf56a35ca8b24be92af56b06e9b0fe1dab30249d;hpb=2b4229b2e82be6bd48817b0171afb2d69a9e9758;p=clitk.git diff --git a/vv/vvMainWindow.cxx b/vv/vvMainWindow.cxx index bf56a35..10dc42d 100644 --- a/vv/vvMainWindow.cxx +++ b/vv/vvMainWindow.cxx @@ -98,6 +98,7 @@ vvMainWindow::vvMainWindow():vvMainWindowBase() mInputPathName = ""; mMenuTools = menuTools; + // mMenuSegmentation = menuSegmentation; mContextMenu = &contextMenu; mMenuExperimentalTools = menuExperimental; mMainWidget = this; @@ -765,18 +766,7 @@ void vvMainWindow::LoadImages(std::vector files, LoadedImageType fi bool SetImageSucceed=false; // Change filename if an image with the same already exist - // DD(files[i]); - int number=0; - for(unsigned int l=0; lGetBaseFileName()); - // DD(v->GetFileName()); - if (v->GetBaseFileName() == - vtksys::SystemTools::GetFilenameName(vtksys::SystemTools::GetFilenameWithoutLastExtension(files[i]))) { - number = std::max(number, v->GetBaseFileNameNumber()+1); - } - } - + int number = GetImageDuplicateFilenameNumber(files[i]); if (filetype == IMAGE || filetype == IMAGEWITHTIME) SetImageSucceed = imageManager->SetImage(files[i],filetype, number); @@ -2715,13 +2705,36 @@ void vvMainWindow::SurfaceViewerLaunch() vvSurfaceViewerDialog surfaceViewer; surfaceViewer.exec(); } +//------------------------------------------------------------------------------ + + +//------------------------------------------------------------------------------ +int vvMainWindow::GetImageDuplicateFilenameNumber(std::string filename) +{ + int number=0; + for(unsigned int l=0; lGetBaseFileName() == + vtksys::SystemTools::GetFilenameName(vtksys::SystemTools::GetFilenameWithoutLastExtension(filename))) { + number = std::max(number, v->GetBaseFileNameNumber()+1); + } + } + return number; +} +//------------------------------------------------------------------------------ + //------------------------------------------------------------------------------ vvSlicerManager* vvMainWindow::AddImage(vvImage::Pointer image,std::string filename) { + // Change filename if another image exist with the same name + int number = GetImageDuplicateFilenameNumber(filename); + + // Create new SliceManager vvSlicerManager* slicer_manager = new vvSlicerManager(4); - slicer_manager->SetImage(image); - slicer_manager->SetFilename(filename); + slicer_manager->SetImage(image);//, IMAGE, number); + // filename = filename+"_"+clitk::toString(number); + slicer_manager->SetFilename(filename, number); mSlicerManagers.push_back(slicer_manager); //create an item in the tree with good settings