X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvUtils.cxx;h=100aeb5cbac953b895a927491fccf7d4e509ca5c;hb=358b7d254e07d4eae0cb1350b580783a82c1638f;hp=1e0148256db12b90aa91c6227396d5e1e5edb727;hpb=0b7c9b1e1215634b02cbd38d4e4ba101d6111ba8;p=clitk.git diff --git a/vv/vvUtils.cxx b/vv/vvUtils.cxx index 1e01482..100aeb5 100644 --- a/vv/vvUtils.cxx +++ b/vv/vvUtils.cxx @@ -1,7 +1,7 @@ /*========================================================================= Program: vv http://www.creatis.insa-lyon.fr/rio/vv - Authors belong to: + Authors belong to: - University of LYON http://www.universite-lyon.fr/ - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr @@ -28,31 +28,30 @@ typedef std::list FileListType; ///Returns the last images opened by the user FileListType GetRecentlyOpenedImages() { - std::ifstream in((QDir::homePath().toStdString() + "/" + vv_user_file).c_str()); - std::string current_file; - FileListType result; + std::ifstream in((QDir::homePath().toStdString() + "/" + vv_user_file).c_str()); + std::string current_file; + FileListType result; + in >> current_file; + while (in.good()) { + result.push_back(current_file); in >> current_file; - while (in.good()) - { - result.push_back(current_file); - in >> current_file; - } - in.close(); - return result; + } + in.close(); + return result; } ///Adds an image to the list of recently opened images void AddToRecentlyOpenedImages(std::string filename) { - FileListType file_list = GetRecentlyOpenedImages(); - FileListType::iterator i = std::find(file_list.begin(),file_list.end(),filename); - if (i != file_list.end()) // avoid dupes - file_list.erase(i); - while (file_list.size() >= 6) //keep list to a reasonable size - file_list.pop_back(); - file_list.push_front(filename); - std::ofstream out((QDir::homePath().toStdString() + "/" + vv_user_file).c_str(),std::ios_base::out | std::ios_base::trunc); - for (FileListType::iterator j = file_list.begin() ; j != file_list.end() ; j++) - out << (*j) << std::endl; - out.close(); + FileListType file_list = GetRecentlyOpenedImages(); + FileListType::iterator i = std::find(file_list.begin(),file_list.end(),filename); + if (i != file_list.end()) // avoid dupes + file_list.erase(i); + while (file_list.size() >= 6) //keep list to a reasonable size + file_list.pop_back(); + file_list.push_front(filename); + std::ofstream out((QDir::homePath().toStdString() + "/" + vv_user_file).c_str(),std::ios_base::out | std::ios_base::trunc); + for (FileListType::iterator j = file_list.begin() ; j != file_list.end() ; j++) + out << (*j) << std::endl; + out.close(); }