# The fact that you are presently reading this means that you have had
# knowledge of the CeCILL-B license and that you accept its terms.
# ------------------------------------------------------------------------
-*/
+ */
/*
return TRUE;
}
-void wxCDMProjectsTreeCtrl::BuildTree(const modelCDMProjectsTree& projectsTree)
+void wxCDMProjectsTreeCtrl::BuildTree(modelCDMProject* projectTree)
{
- this->DeleteAllItems();
- wxTreeItemId rootIndex = this-> AddRoot(_("Open Projects"));
- std::cout << "Building TreeCtrl for " << projectsTree.projectRoot.GetName() << std::endl;
- wxTreeItemId parentIndex = this-> AppendItem(rootIndex, wxString(projectsTree.projectRoot.GetName().c_str(), wxConvUTF8));
- this->BuildTree(projectsTree.projectRoot.GetChildren(), parentIndex);
+ if(projectTree != NULL)
+ {
+ this->DeleteAllItems();
+ wxTreeItemId rootIndex;
+ rootIndex= this-> AddRoot(crea::std2wx(projectTree->GetName()));
+ projectTree->SetId(rootIndex);
- this->Expand(rootIndex);
+ std::cout << "Building TreeCtrl for " << projectTree->GetName() << std::endl;
+ this->BuildTree(projectTree->GetChildren(), rootIndex);
- this->Update();
+ this->Expand(rootIndex);
+
+ this->Update();
+ }
}
-void wxCDMProjectsTreeCtrl::BuildTree(const std::vector<modelCDMProjectsTreeNode>& projectsTree, wxTreeItemId parent)
+void wxCDMProjectsTreeCtrl::BuildTree(const std::vector<modelCDMIProjectTreeNode*>& treeNodes, wxTreeItemId parent)
{
- for (int i = 0; i < projectsTree.size(); i++)
- {
- //cout << projectsTree[i].GetName() << endl;
- wxTreeItemId parentNodeIndex;
- wxString nodeName((projectsTree[i].GetName()).c_str(), wxConvUTF8);
- parentNodeIndex = this->AppendItem(parent, nodeName);
-
- std::vector<modelCDMProjectsTreeNode> innerChildren = projectsTree[i].GetChildren();
- if(innerChildren.size() > 0)
+ for (int i = 0; i < treeNodes.size(); i++)
{
- this->BuildTree(innerChildren, parentNodeIndex);
+ //cout << projectsTree[i].GetName() << endl;
+ wxTreeItemId parentNodeIndex;
+ if(treeNodes[i] != NULL)
+ {
+ wxString nodeName((treeNodes[i]->GetName()).c_str(), wxConvUTF8);
+ parentNodeIndex = this->AppendItem(parent, nodeName);
+ treeNodes[i]->SetId(parentNodeIndex);
+
+ std::vector<modelCDMIProjectTreeNode*> innerChildren = treeNodes[i]->GetChildren();
+ if(innerChildren.size() > 0)
+ {
+ this->BuildTree(innerChildren, parentNodeIndex);
+ }
+ }
+
}
- }
}