#include <creaImageIOTreeHandlerImageAdder.h>
#include <creaImageIOSystem.h>
-//#include <wx/dir.h>
-//#include <wx/filename.h>
-
#include "boost/filesystem.hpp"
namespace fs = boost::filesystem;
mProgressSignal(mProgress);
if (mProgress.GetStop()) break;
}
- SetNumberOfChildren();
}
//=====================================================================
{
mProgress.Reset();
AddDirectoryRecursor( directory, recurse );
- SetNumberOfChildren();
GimmickDebugMessage(3,mProgress<<std::endl);
}
- //=====================================================================
-
- void TreeHandlerImageAdder::SetNumberOfChildren()
- {
- std::vector<tree::Node*> children = mTreeHandler->GetTree().GetChildrenList();
- std::vector<tree::Node*>::iterator it;
- for(it=children.begin();it!=children.end();++it)
- {
- SetNumberOfChildrenRecursor(*it);
- }
- }
- //=====================================================================
-
- void TreeHandlerImageAdder::SetNumberOfChildrenRecursor(tree::Node* node)
- {
- std::stringstream out;
- out << node->GetChildrenList().size();
- mTreeHandler->SetAttribute(node,"D1111_0011",out.str());
- if(node->GetLevel()<mTreeHandler->GetTree().GetNumberOfLevels()-2)
- {
- std::vector<tree::Node*> children = node->GetChildrenList();
- std::vector<tree::Node*>::iterator it;
- for(it=children.begin();it!=children.end();++it)
- {
- SetNumberOfChildrenRecursor(*it);
- }
- }
- }
-
//=====================================================================
void TreeHandlerImageAdder::AddFile( const std::string& filename )
{
else
{
mProgress.IncNumberScannedFiles();
- if (IsHandledFile(itr->string()))
+ if (IsHandledFile(itr->string()))
{
mProgress.IncNumberHandledFiles();
AddFile( itr->string() );
}
mProgressSignal(mProgress);
- if (mProgress.GetStop()) break;
+ if (mProgress.GetStop())
+ {
+ //itr = end_itr;
+ break;
+ }
}
}
-
}
-
- /*
-
- std::string fileName;
- std::string dirName = dirpath;
-
- wxDir dir( std2wx(dirpath) );
-
- if ( !dir.IsOpened() )
- {
- // deal with the error here - wxDir would already log an error message
- // explaining the exact reason of the failure
- return;
- }
-
- wxString filename;
-
- bool cont = dir.GetFirst(&filename, wxEmptyString,
- wxDIR_FILES | wxDIR_HIDDEN );
- while ( cont )
- {
- mProgress.IncNumberScannedFiles();
-
- wxFileName wxffn(dir.GetName(),filename);
- std::string ffn = wx2std(wxffn.GetFullPath());
- if (IsHandledFile(ffn))
- {
- mProgress.IncNumberHandledFiles();
- AddFile( ffn );
- }
- mProgressSignal(mProgress);
- cont = ( dir.GetNext(&filename) && (!mProgress.GetStop()) );
- }
-
- // Recurse into subdirs
- if ( recursive )
- {
- cont = dir.GetFirst(&filename, wxEmptyString,
- wxDIR_DIRS | wxDIR_HIDDEN );
- while ( cont )
- {
- wxFileName wxffn(dir.GetName(),filename);
- std::string ffn = wx2std(wxffn.GetFullPath());
- AddDirectoryRecursor( ffn, recursive);
- cont = dir.GetNext(&filename);
- }
- }
-
- */
-
//=======================================================================