]> Creatis software - crea.git/blobdiff - lib/creaDevManagerLib/modelCDMProjectsTree.cpp
Feature #1711
[crea.git] / lib / creaDevManagerLib / modelCDMProjectsTree.cpp
old mode 100644 (file)
new mode 100755 (executable)
similarity index 66%
rename from lib/creaDevManagerLib/ModelCreaDevManagerTree.cpp
rename to lib/creaDevManagerLib/modelCDMProjectsTree.cpp
index e980346..cc09a9f
@@ -5,26 +5,23 @@
  *      Author: daniel
  */
 
-#include "ModelCreaDevManagerTree.h"
+#include "modelCDMProjectsTree.h"
 
-#include <iostream>
-#include <sstream>
-#include <algorithm>
-#include <string>
-#include <cstring>
 #include <creaWx.h>
 #include <wx/dir.h>
 
+#include <sstream>
+#include <algorithm>
 
-ModelCreaDevManagerTree::ModelCreaDevManagerTree()
+modelCDMProjectsTree::modelCDMProjectsTree()
 {
 }
 
-ModelCreaDevManagerTree::~ModelCreaDevManagerTree()
+modelCDMProjectsTree::~modelCDMProjectsTree()
 {
 }
 
-bool ModelCreaDevManagerTree::CompareNodeItem(ModelCreaDevManagerTreeNode x, ModelCreaDevManagerTreeNode y)
+bool modelCDMProjectsTree::CompareNodeItem(modelCDMProjectsTreeNode x, modelCDMProjectsTreeNode y)
 {
   bool returnValue;
   bool noWinner = true;
@@ -70,7 +67,7 @@ bool ModelCreaDevManagerTree::CompareNodeItem(ModelCreaDevManagerTreeNode x, Mod
   return returnValue;
 }
 
-void ModelCreaDevManagerTree::addRoot(std::string path)
+void modelCDMProjectsTree::SetRoot(std::string path)
 {
   std::stringstream p(path);
   std::vector<std::string> breadcrumbs;
@@ -91,26 +88,23 @@ void ModelCreaDevManagerTree::addRoot(std::string path)
   name = breadcrumbs[breadcrumbs.size()-1];
 
   bool projectFound = false;
-  for (int i = 0; i < this->projectRoots.size(); i++)
-  {
-    if(this->projectRoots[i].GetName() == name)
-      projectFound = true;
-  }
+  if(projectRoot.GetName() == name)
+    projectFound = true;
 
   if(!projectFound)
   {
-    this->projectRoots.push_back(ModelCreaDevManagerTreeNode(path,name,DT_DIR,0));
+    this->projectRoot = modelCDMProjectsTreeNode(path,name,DT_DIR,0);
   }else{
     std::cout << "already existing ";
   }
 
-  std::cout << "project root added: " << name << " in " << path << std::endl;
+  std::cout << "project root set: " << name << " in " << path << std::endl;
 }
 
-void ModelCreaDevManagerTree::populateNode(ModelCreaDevManagerTreeNode& node)
+void modelCDMProjectsTree::populateNode(modelCDMProjectsTreeNode& node)
 {
   //std::cout << "populating " << node.GetName() << " path " << node.GetPath() << "..." << std::endl;
-  std::vector <ModelCreaDevManagerTreeNode>*  nodes = new std::vector <ModelCreaDevManagerTreeNode>;
+  std::vector <modelCDMProjectsTreeNode>*  nodes = new std::vector <modelCDMProjectsTreeNode>;
 
   std::string path = node.GetPath()+node.GetName()+"/";
 
@@ -125,7 +119,7 @@ void ModelCreaDevManagerTree::populateNode(ModelCreaDevManagerTreeNode& node)
   bool cont = dir.GetFirst(&fileName, wxEmptyString, wxDIR_DIRS);
   while (cont)
   {
-    ModelCreaDevManagerTreeNode innerNode = ModelCreaDevManagerTreeNode(path, crea::wx2std(fileName), wxDIR_DIRS, node.GetLevel()+1);
+      modelCDMProjectsTreeNode innerNode = modelCDMProjectsTreeNode(path, crea::wx2std(fileName), wxDIR_DIRS, node.GetLevel()+1);
     this->populateNode(innerNode);
     nodes->push_back(innerNode);
     cont = dir.GetNext(&fileName);
@@ -134,7 +128,7 @@ void ModelCreaDevManagerTree::populateNode(ModelCreaDevManagerTreeNode& node)
   cont = dir.GetFirst(&fileName, wxEmptyString, wxDIR_FILES);
   while (cont)
   {
-    ModelCreaDevManagerTreeNode innerNode = ModelCreaDevManagerTreeNode(path, crea::wx2std(fileName), wxDIR_FILES, node.GetLevel()+1);
+    modelCDMProjectsTreeNode innerNode = modelCDMProjectsTreeNode(path, crea::wx2std(fileName), wxDIR_FILES, node.GetLevel()+1);
     nodes->push_back(innerNode);
     cont = dir.GetNext(&fileName);
   }
@@ -180,19 +174,14 @@ void ModelCreaDevManagerTree::populateNode(ModelCreaDevManagerTreeNode& node)
   }*/
 }
 
-void ModelCreaDevManagerTree::populateNode(std::string path)
+void modelCDMProjectsTree::populateNode(std::string path)
 {
   if(path[path.size()-1] != '/')
     path+="/";
   std::cout << "searching " << path << std::endl;
-  for (int i = 0; i < this->projectRoots.size(); i++)
+  if(this->projectRoot.GetPath()+this->projectRoot.GetName()+"/" == path)
   {
-    //std::cout << (this->projectRoots[i].GetPath() + this->projectRoots[i].GetName() + "/") << "..." << std::endl;
-    if(this->projectRoots[i].GetPath()+this->projectRoots[i].GetName()+"/" == path)
-    {
-        std::cout << "Populating Project: " << path << "..." << std::endl;
-      this->populateNode(this->projectRoots[i]);
-      break;
-    }
+      std::cout << "Populating Project: " << path << "..." << std::endl;
+    this->populateNode(this->projectRoot);
   }
 }