]> Creatis software - bbtkGEditor.git/blobdiff - lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxGEditorTabPanel.cxx
Save Mechanism working // Diego CACERES DFCH
[bbtkGEditor.git] / lib / EditorGraphicBBS / bbsWxGUIEditorGraphic / wxGEditorTabPanel.cxx
index 1576f1ecc64a365021db155a760ed48e2d8e09bc..cd591b16d36a18a543dc1a82928c583aa0ebd911 100644 (file)
@@ -49,11 +49,13 @@ namespace bbtk
        //=========================================================================
        wxGEditorTabPanel::wxGEditorTabPanel(wxWindow *parent,int id):wxPanel(parent),wxTextDropTarget()
        {
+printf("EED wxGEditorTabPanel::wxGEditorTabPanel 0\n");
                printf ("EED %p wxGEditorTabPanel 2 ()\n" , this );
                _id=id;
                _panelAUIMgr = new wxAuiManager(this);
                _sceneManager = NULL;
                initWxVtkCanvas();
+printf("EED wxGEditorTabPanel::wxGEditorTabPanel 1\n");
        }
 
        //=========================================================================
@@ -63,12 +65,16 @@ printf ("EED %p ~wxGEditorTabPanel()\n" , this );
 //ED02JUIN2010         _sceneManager->disconnectDrop();
 
         _panelsManager->VerifyLastTabPanel();
+               //FCY memory leaks
+               delete _panelAUIMgr;
+               delete _sceneManager;
 
        }
 
        //=========================================================================
        void wxGEditorTabPanel::initWxVtkCanvas()
        {
+printf("EED wxGEditorTabPanel::initWxVtkCanvas 0\n");
                wxVtk3DBaseView *baseview = new wxVtk3DBaseView(this);
                baseview->Configure();
                _sceneManager=new wxVtkSceneManager(this,baseview,_id);
@@ -79,6 +85,7 @@ printf ("EED %p ~wxGEditorTabPanel()\n" , this );
                _panelAUIMgr->AddPane((wxWindow*)baseview->GetWxVTKRenderWindowInteractor(),wxAuiPaneInfo().Fixed().CenterPane());
 
                _panelAUIMgr->Update();
+printf("EED wxGEditorTabPanel::initWxVtkCanvas 1\n");
        }
 
        //=========================================================================
@@ -158,20 +165,25 @@ printf ("EED %p ~wxGEditorTabPanel()\n" , this );
 
        void wxGEditorTabPanel::centerView()
        {
-               _sceneManager->centerView();
+               if(_sceneManager)
+               {
+                       _sceneManager->centerView();
+               }
        }
 
        //=========================================================================
 
-       void wxGEditorTabPanel::saveDiagram(std::string &content)
+       void wxGEditorTabPanel::saveDiagram(std::string &content, const std::string &path) //DFCH
        {
+               this->SetFullPath(path);
                _sceneManager->saveDiagram(content);
        }
 
        //=========================================================================
 
-       void wxGEditorTabPanel::loadDiagram(ifstream &inputStream)
+       void wxGEditorTabPanel::loadDiagram(ifstream &inputStream, const std::string &path) //DFCH
        {
+               this->SetFullPath(path);
                _sceneManager->loadDiagram(inputStream);
        }
 
@@ -302,10 +314,30 @@ printf ("EED %p ~wxGEditorTabPanel()\n" , this );
     {
         _sceneManager->SetDescription( description );
     }
-
-
-
-
+    //=========================================================================
+       //DFCH
+       void wxGEditorTabPanel::SetFullPath( const std::string& fullpath )
+       {
+               this->_fullPath = fullpath;
+       }
+       //=========================================================================
+       //DFCH
+       void wxGEditorTabPanel::SetFileName( const std::string& filename )
+       {
+               this->_fileName = filename;
+       }
+       //=========================================================================
+       //DFCH
+       std::string wxGEditorTabPanel::GetFullPath( )
+       {
+               return( this->_fullPath );
+       }
+       //=========================================================================
+       //DFCH
+    std::string wxGEditorTabPanel::GetFileName( )
+    {
+               return( this->_fileName );
+       }