]> Creatis software - bbtkGEditor.git/commitdiff
Display of the tree obtained in the information dialog window in BBEditor. 12/05...
authorctorres <carlos.torres@creatis.insa-lyon.fr>
Mon, 12 May 2014 07:49:47 +0000 (09:49 +0200)
committerctorres <carlos.torres@creatis.insa-lyon.fr>
Mon, 12 May 2014 15:38:14 +0000 (17:38 +0200)
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.cxx
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.h
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxDiagramPropertiesEditionDialog.cxx
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxDiagramPropertiesEditionDialog.h

index 978202515800e80f31016afc4d9319792412b0b7..c764296793200dfb68f9b2edfe258c903cf9121a 100644 (file)
@@ -459,12 +459,49 @@ void wxGUIEditorGraphicBBS::displayBlackBoxInfo(std::string packageName, std::st
 //EED 15 oct 2012              BlackBoxDescriptor::Pointer descriptor = GObjectsMVCFactory::getInstance()->getBlackBoxDescriptor(packageName, boxName);
                
                Package::Pointer k;
+//EED          ComplexBlackBoxDescriptor::Pointer descriptor;
                BlackBoxDescriptor::Pointer descriptor;
+
                std::map< std::string, BlackBoxDescriptor::Pointer> mapDesc;
                k                       = _pkgBrowser->GetFactory()->GetPackage(packageName);
                mapDesc         = k->GetDescriptorMap();                
                descriptor      = mapDesc[boxName];
-               
+               std::vector<std::string> temp;
+               descriptor->GetBoxesInside(tree,temp,1);
+
+
+
+/*CFT
+               for(int i = 0 ; i < temp.size() ; i++){
+                                       std::cout<< "  "<< temp[i] << std::endl;
+               }       
+
+
+               if(temp.size()>=1){
+                               std::cout<< "CAJAS # " << (temp.size()- 3) << std::endl;                        
+                               for(int i = 0 ; i < temp.size()-1 ; i++){
+                                       if(i<3){std::cout<< "  "<< temp[i] << std::endl;}
+                                       else{std::cout<< i+1 << "  "<< temp[i] << " " <<temp[i+1] << std::endl;}
+                               }       
+                       }               
+               if (temp.size()==0){
+                               std::cout<< " Not Complex " << std::endl;
+                       }
+*/
+               /*
+               Package::Pointer k;
+               BlackBoxDescriptor::Pointer descriptor;
+               std::map< std::string, BlackBoxDescriptor::Pointer> mapDesc;
+               k                       = _pkgBrowser->GetFactory()->GetPackage(packageName);
+               std::vector<std::string> temp;
+               _pkgBrowser->GetFactory()->GetPackagesList(temp);
+               for(int ii = 0 ; ii < temp.size() ; ii++)
+               {
+                               std::cout << " packs "<< temp[ii]<< std::endl;
+               }
+               mapDesc         = k->GetDescriptorMap();                
+               descriptor      = mapDesc[boxName];
+               */
                _pkgBrowser->WxGUIBlackBoxListUserOnSelected(descriptor.get());
        }
 }
@@ -596,7 +633,7 @@ void wxGUIEditorGraphicBBS::OnChangeName(wxCommandEvent& event){
 void wxGUIEditorGraphicBBS::OnEditDiagramProperties(wxCommandEvent& event)
 {
        wxDiagramPropertiesEditionDialog* dialog =
-                               new wxDiagramPropertiesEditionDialog(this);
+                               new wxDiagramPropertiesEditionDialog(this, tree);
        dialog->Show();
 }
 
index 3fb1cca8cc1359ec352908ecd5b3b6b8aded4bd0..0c070faf73535ff9d2de056735f9d71987c77b5e 100644 (file)
@@ -98,6 +98,7 @@
 #include <bbtkWxGUIPackageBrowser2.h>
 #include <bbtkWxGUIHtmlBrowser.h>
 #include <bbtkBlackBoxDescriptor.h>
+#include <bbtkComplexBlackBoxDescriptor.h>
 #include <bbtkUtilities.h>
 #include <bbtkConfigurationFile.h>
 #include <bbtkSystemTools.h>
 //Includes std
 #include <iostream>
 #include <fstream>
+#include <vector>
 
 namespace bbtk
 {
@@ -260,7 +262,8 @@ namespace bbtk
                        // VERY IMPORTANT FOR SAVE&LOAD PROCESSES
                        // RaC 2012 2nd HackFest
                        std::string                                             _currentBBGversion;
-
+                       
+                       NodeTreeC tree;
                protected:
 
 
index 02b8a583b429ba7daf3e08d010b7724fe852bd62..0e07133068d03096239d982956617ac8ace71a51 100755 (executable)
@@ -61,13 +61,15 @@ Version:   $Revision$
 #include "wxDiagramPropertiesEditionDialog.h"
 #include "creaWx.h"
 
+
 namespace bbtk
 {
        //=========================================================================
 
-       wxDiagramPropertiesEditionDialog::wxDiagramPropertiesEditionDialog(wxGUIEditorGraphicBBS *parent):wxDialog(parent,wxID_ANY,_T("Diagram Properties"), wxDefaultPosition, wxSize(320, 280),wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
+       wxDiagramPropertiesEditionDialog::wxDiagramPropertiesEditionDialog(wxGUIEditorGraphicBBS *parent, NodeTreeC tree):wxDialog(parent,wxID_ANY,_T("Diagram Properties"), wxDefaultPosition, wxSize(450, 580),wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
        {
                _parent = parent;
+               _tree = tree;
                constructDiagramPropertiesEditionDialog();
        }
 
@@ -80,6 +82,21 @@ namespace bbtk
        }
 
        //=========================================================================
+       
+       void wxDiagramPropertiesEditionDialog::constructBoxTree(NodeTreeC nodeTree, wxTreeItemId itemId)
+       {
+               
+               for(int i = 0 ; i < nodeTree.childs.size() ; i++)
+               {
+                       string spc = nodeTree.childs[i].data;
+                       const char* ccc = spc.c_str();
+                       wxString pc = wxString::FromUTF8 (ccc);
+                       wxTreeItemId iId = _treeBox->AppendItem(itemId, pc, -1, -1, NULL);
+                       constructBoxTree(nodeTree.childs[i], iId );
+               }
+       }
+
+  //==================================================================================
 
        void wxDiagramPropertiesEditionDialog::constructDiagramPropertiesEditionDialog()
        {
@@ -89,6 +106,23 @@ namespace bbtk
                wxFlexGridSizer *fgsizer = new wxFlexGridSizer(5, 2, 9, 25);
 
 
+               //CFT           
+
+               wxStaticText *tree = new wxStaticText(panel, -1, wxT("Tree of Box"));
+               
+               string sp = _tree.data;
+               const char* cc = sp.c_str();
+               wxString p = wxString::FromUTF8 (cc);
+
+               _treeBox = new wxTreeCtrl (this, wxID_ANY, wxPoint(0,0), wxSize(320,300), wxTR_HAS_BUTTONS | wxTR_SINGLE );
+               wxTreeItemId itemId = _treeBox->AddRoot(p, -1,-1,NULL);
+               
+               constructBoxTree(_tree, itemId);
+               _treeBox->ExpandAll();          
+               _tree.treeTour();
+               //CFT end
+
+
                // SELECTION CONSTANTS
                // 0 - Application
                // 1 - Complex box
@@ -133,7 +167,11 @@ namespace bbtk
                fgsizer->Add(_txtCategory, 1, wxEXPAND);
                fgsizer->Add(description, 1, wxEXPAND);
                fgsizer->Add(_txtDescription, 1, wxEXPAND);
-               fgsizer->Add(okButton, 1, wxEXPAND);
+//cft
+               fgsizer->Add(tree);
+               fgsizer->Add(_treeBox, 1, wxEXPAND);
+//cft end              
+       fgsizer->Add(okButton, 1, wxEXPAND);
                fgsizer->Add(closeButton, 1, wxEXPAND);
 
                fgsizer->AddGrowableRow(3, 1);
index 20e1a54193837b29c4aae5c4bd0b67eb9d89ed1c..ceebbf5bb48b0dcd7ac576a609874fa71da27254 100755 (executable)
@@ -71,12 +71,14 @@ Version:   $Revision$
 
 //Includes same project
 #include "bbtkwxGUIEditorGraphicBBS.h"
+#include <bbtkUtilities.h>
 #include "wxVtkSceneManager.h"
 
 //Includes wxWidgets
 #include <wx/wx.h>
 #include <wx/aui/aui.h>
 #include <wx/combobox.h>
+#include <wx/treectrl.h>
 
 //Includes creaMaracasVisu
 
@@ -95,9 +97,10 @@ namespace bbtk
        class wxDiagramPropertiesEditionDialog :  public wxDialog
        {
        public: 
-               wxDiagramPropertiesEditionDialog(wxGUIEditorGraphicBBS *parent);
+               wxDiagramPropertiesEditionDialog(wxGUIEditorGraphicBBS *parent, NodeTreeC tree);
                ~wxDiagramPropertiesEditionDialog();
-
+               
+               void constructBoxTree(NodeTreeC nodeTree, wxTreeItemId itemId); //CFT
                void constructDiagramPropertiesEditionDialog();
 
                void onClickOk(wxCommandEvent& event);
@@ -112,8 +115,8 @@ namespace bbtk
                wxTextCtrl *_txtCategory;
                wxTextCtrl *_txtDescription;
                wxComboBox *_diagramType;
-
-       
+               wxTreeCtrl *_treeBox;
+               NodeTreeC _tree;
        protected:
 
        };