]> Creatis software - crea.git/blobdiff - lib/creaDevManagerLib/modelCDMProject.cpp
Feature #1711
[crea.git] / lib / creaDevManagerLib / modelCDMProject.cpp
index 8206a75bae273f9ed7d20538a73a1ecbbbce0909..c844798f12aca27205df8eea930e35bc6ad02c4d 100644 (file)
@@ -59,6 +59,7 @@ modelCDMProject::modelCDMProject(
     const std::string& buildPath
 )
 {
+  std::cout << "creating project: " + name + " in " + path + "\n";
   this->path = CDMUtilities::fixPath(path);
   //open makelists file
   std::string pathFixed(CDMUtilities::fixPath(path));
@@ -202,6 +203,7 @@ modelCDMProject::modelCDMProject(
     }
 
   this->SortChildren();
+  std::sort(this->packages.begin(), this->packages.end(), CompareNodeItem);
 
 }
 
@@ -545,11 +547,10 @@ const bool modelCDMProject::Refresh(std::string*& result)
           //if package , create package
           else if(stdfileName.size() > 9 && stdfileName.substr(0,5) == "bbtk_" && stdfileName.substr(stdfileName.size()-4,4) == "_PKG")
             {
-              std::string packageName = stdfileName.substr(5, stdfileName.size()-9);
               bool found = false;
-              for (int i = 0;!found && i < this->packages.size(); i++)
+              for (int i = 0; !found && i < this->packages.size(); i++)
                 {
-                  if (this->packages[i]->GetName() == packageName)
+                  if (this->packages[i]->GetName() == stdfileName)
                     {
                       found = true;
                       int pos = std::find(this->children.begin(), this->children.end(), this->packages[i]) - this->children.begin();
@@ -561,7 +562,7 @@ const bool modelCDMProject::Refresh(std::string*& result)
                 }
               if(!found)
                 {
-                  modelCDMPackage* package = new modelCDMPackage(this->path + CDMUtilities::SLASH + stdfileName, stdfileName,this->level + 1);
+                  modelCDMPackage* package = new modelCDMPackage(this->path + CDMUtilities::SLASH + stdfileName, stdfileName, this->level + 1);
                   this->packages.push_back(package);
                   this->children.push_back(package);
                 }
@@ -617,7 +618,7 @@ const bool modelCDMProject::Refresh(std::string*& result)
           else
             {
               bool found = false;
-              for (int i = 0; i <!found && this->children.size(); i++)
+              for (int i = 0; !found && i < this->children.size(); i++)
                 {
                   if (this->children[i]->GetName() == stdfileName)
                     {
@@ -658,7 +659,9 @@ const bool modelCDMProject::Refresh(std::string*& result)
           i--;
         }
     }
+
   this->SortChildren();
+  std::sort(this->packages.begin(), this->packages.end(), CompareNodeItem);
   return true;
 }