]> Creatis software - creaImageIO.git/blobdiff - src/creaImageIOTreeHandlerImageAdder.cpp
fix minor bug with Qt
[creaImageIO.git] / src / creaImageIOTreeHandlerImageAdder.cpp
index f51ef14c816a299a222309a2b04eb3d08101d713..ce619c3424fd943e928f40ad8c7920f1a09030df 100644 (file)
@@ -138,19 +138,8 @@ namespace creaImageIO
                }
                else
                {
-                 std::string path=node->GetAttribute("FullFileName");
-                 //Gets the add key
-                 std::string addKey=mSynchronizer->GetAttribute("ADD_KEY","IGNORED_FILES","PATH",path,mCurrentDB);
-                 //Gets the number of files added
-                 int files=atoi((mSynchronizer->GetAttribute("FILES_ADDED","ADD_OPS","ADD_KEY",addKey,mCurrentDB)).c_str());
-                 files=files-1;
-                 std::stringstream out;
-                 out<<files;
-                 //Sets the new number of files
-                 mSynchronizer->SetAttribute("FILES_ADDED","ADD_OPS",out.str(),"ADD_KEY",addKey,mCurrentDB);
-                 //Sets the file as removed
-                 mSynchronizer->SetAttribute("REMOVE","IGNORED_FILES","1","PATH = '"+path+"' AND ADD_KEY",addKey,mCurrentDB);
-               }
+               remove(node);
+        }
   }
 
   //=====================================================================
@@ -167,7 +156,16 @@ namespace creaImageIO
                }
                else
                {
-                  std::string path=(*it)->GetAttribute("FullFileName");
+               remove(*it);
+               }
+       
+         }
+  }
+
+
+  void  TreeHandlerImageAdder::remove( tree::Node* i_node)
+  {
+         std::string path=i_node->GetAttribute("FullFileName");
                  //Gets the add key
                  std::string addKey=mSynchronizer->GetAttribute("ADD_KEY","IGNORED_FILES","PATH",path,mCurrentDB);
                  //Gets the number of files added
@@ -179,11 +177,7 @@ namespace creaImageIO
                  mSynchronizer->SetAttribute("FILES_ADDED","ADD_OPS",out.str(),"ADD_KEY",addKey,mCurrentDB);
                  //Sets the file as removed
                  mSynchronizer->SetAttribute("REMOVE","IGNORED_FILES","1","PATH = '"+path+"' AND ADD_KEY",addKey,mCurrentDB);
-               }
-       
-         }
   }
-
  
   
   //=======================================================================
@@ -228,18 +222,16 @@ namespace creaImageIO
                bool valid = mSynchronizer->isIndexed(itr->string());//true;//=mTimestampHandler->AddDirectory(dirpath, itr->string(), lastModif, time(0),mCurrentDB);
                if(valid)
                {
-
+                       std::string path(itr->string());
                        mProgress.IncNumberScannedFiles();
-                       boost::algorithm::replace_all( itr->string(),
-                                   INVALID_FILE_SEPARATOR , 
-                                  VALID_FILE_SEPARATOR);
+                        boost::algorithm::replace_all( path,INVALID_FILE_SEPARATOR,VALID_FILE_SEPARATOR);
                        i_sc.ReadAttributes(itr->string(),attr);
-                       mTreeHandler->GetTopLevelNodeId("FullFileName",itr->string(),parent_id);
+               //      mTreeHandler->GetTopLevelNodeId("FullFileName",itr->string(),parent_id);
                        mTreeHandler->AddBranch(attr);
                        mProgress.IncNumberHandledFiles();
                        std::stringstream removedOn;
                        removedOn<<time(0);
-                       mSynchronizer->InsertIgnoreFile(addKey, itr->string(),"0",removedOn.str(),mCurrentDB);
+                        mSynchronizer->InsertIgnoreFile(addKey, path,"0",removedOn.str(),mCurrentDB);
 
                        
                        mProgressSignal(mProgress);
@@ -291,7 +283,7 @@ namespace creaImageIO
                        {
                        mProgress.IncNumberHandledFiles();
                        AddFile( itr->string() );
-                       mTreeHandler->GetTopLevelNodeId("FullFileName",itr->string(),parent_id);
+                       //mTreeHandler->GetTopLevelNodeId("FullFileName",itr->string(),parent_id);
                        std::stringstream removedOn;
                        removedOn<<time(0);
                        mSynchronizer->InsertIgnoreFile(addKey, itr->string(),"0",removedOn.str(),mCurrentDB);
@@ -688,5 +680,10 @@ namespace creaImageIO
          }
   }
 
+  //=======================================================================
+  const std::string TreeHandlerImageAdder::isAttributeExist(const std::string i_attr)
+  {
+         return mTreeHandler->GetTree().isAttributeExist(i_attr);
+  }
+
 }