X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsWxGUIEditorGraphic%2FwxGEditorTabPanel.cxx;h=cd591b16d36a18a543dc1a82928c583aa0ebd911;hb=dd81df5d0a29d435fd2f0a832b3666b6a416cb19;hp=0fba89580e3036470a7aaf962e3a5a36cb6f57f1;hpb=e36858ea5937bb1699bc437136718007df27be7b;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxGEditorTabPanel.cxx b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxGEditorTabPanel.cxx index 0fba895..cd591b1 100644 --- a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxGEditorTabPanel.cxx +++ b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxGEditorTabPanel.cxx @@ -1,4 +1,4 @@ -/*========================================================================= +/*========================================================================= Program: bbtk Module: $RCSfile$ Language: C++ @@ -11,26 +11,26 @@ Version: $Revision$ * Copyright (c) CREATIS-LRMN (Centre de Recherche en Imagerie Medicale) * Authors : Eduardo Davila, Laurent Guigues, Jean-Pierre Roux * -* This software is governed by the CeCILL-B license under French law and -* abiding by the rules of distribution of free software. You can use, -* modify and/ or redistribute the software under the terms of the CeCILL-B -* license as circulated by CEA, CNRS and INRIA at the following URL -* http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +* This software is governed by the CeCILL-B license under French law and +* abiding by the rules of distribution of free software. You can use, +* modify and/ or redistribute the software under the terms of the CeCILL-B +* license as circulated by CEA, CNRS and INRIA at the following URL +* http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html * or in the file LICENSE.txt. * * As a counterpart to the access to the source code and rights to copy, * modify and redistribute granted by the license, users are provided only * with a limited warranty and the software's author, the holder of the * economic rights, and the successive licensors have only limited -* liability. +* liability. * * 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. -* ------------------------------------------------------------------------ */ +* ------------------------------------------------------------------------ */ /** -* \file -* \brief Class bbtk::wxGEditorTabPanel . +* \file +* \brief Class bbtk::wxGEditorTabPanel . */ @@ -39,37 +39,53 @@ Version: $Revision$ namespace bbtk { + //========================================================================= wxGEditorTabPanel::wxGEditorTabPanel() { + printf ("EED %p wxGEditorTabPanel 1 ()\n" , this ); } //========================================================================= 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"); } //========================================================================= wxGEditorTabPanel::~wxGEditorTabPanel() { - _sceneManager->disconnectDrop(); +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); + +//EED02JUIN2010 + printf("RaC-EED 21-06-2010 wxGEditorTabPanel::initWxVtkCanvas Remove the panelAUIMgr, and change to a normal sizer inside the wxGEditorTabPanel\n"); _panelAUIMgr->AddPane((wxWindow*)baseview->GetWxVTKRenderWindowInteractor(),wxAuiPaneInfo().Fixed().CenterPane()); + _panelAUIMgr->Update(); +printf("EED wxGEditorTabPanel::initWxVtkCanvas 1\n"); } //========================================================================= @@ -77,7 +93,7 @@ namespace bbtk bool wxGEditorTabPanel::OnDropText(wxCoord x, wxCoord y, const wxString& data) { std::string packageName=""; - std::string boxName=""; + std::string boxType=""; wxString foo( (data) ); char str[150]; @@ -87,11 +103,11 @@ namespace bbtk char *result = NULL; result = strtok( str, delims ); packageName += result; - + result = strtok( NULL, delims ); - boxName += result; - - _sceneManager->createGBlackBox(x,y,packageName, boxName); + boxType += result; + + _sceneManager->createGBlackBox(x,y,packageName, boxType); return true; } @@ -119,23 +135,23 @@ namespace bbtk //========================================================================= - std::string wxGEditorTabPanel::getDiagramScript() + std::string wxGEditorTabPanel::getDiagramBBS(bool wln) { - return _sceneManager->getDiagramScript(); + return _sceneManager->getDiagramBBS(wln); } //========================================================================= - void wxGEditorTabPanel::editBlackBox(GBlackBoxModel *bbmodel) + std::string wxGEditorTabPanel::saveComplexBoxBBS() { - _panelsManager->editBlackBox(bbmodel); + return _sceneManager->saveComplexBoxBBS(); } //========================================================================= - - void wxGEditorTabPanel::editDiagramParameters(wxVtkSceneManager* scene) + + void wxGEditorTabPanel::editBlackBox(GBlackBoxModel *bbmodel) { - _panelsManager->editDiagramParameters(scene); + _panelsManager->editBlackBox(bbmodel); } //========================================================================= @@ -149,25 +165,183 @@ namespace bbtk 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); } //========================================================================= + int wxGEditorTabPanel::getPanelId() + { + return _id; + } + + //========================================================================= + + bool wxGEditorTabPanel::isComplexBox() + { + return _sceneManager->isComplexBox(); + } + + //========================================================================= + + void wxGEditorTabPanel::setComplexBox(bool val) + { + _sceneManager->setComplexBox(val); + } + + //========================================================================= + + void wxGEditorTabPanel::addComplexInputPort(std::string portName) + { + _sceneManager->createGComplexBoxInputPort(portName); + } + + //========================================================================= + + void wxGEditorTabPanel::addComplexOutputPort(std::string portName) + { + _sceneManager->createGComplexBoxOutputPort(portName); + } + + //========================================================================= + + std::map wxGEditorTabPanel::getSelectedObjects() + { + return _sceneManager->getSelectedObjects(); + } + + //========================================================================= + + void wxGEditorTabPanel::addObjects(std::map objectsMap) + { + _sceneManager->addObjects(objectsMap); + } + + //========================================================================= + + int wxGEditorTabPanel::getNumSelectedObjects() + { + return _sceneManager->getNumSelectedObjects(); + } + + //========================================================================= + + + wxVtkSceneManager* wxGEditorTabPanel::getSceneManager() + { + return _sceneManager; + } + + //========================================================================= + std::string wxGEditorTabPanel::GetCbName() + { + return _sceneManager->GetCbName(); + } + + + //========================================================================= + std::string wxGEditorTabPanel::GetCbPackageName() + { + return _sceneManager->GetCbPackageName(); + } + + //========================================================================= + std::string wxGEditorTabPanel::GetAuthor() + { + return _sceneManager->GetAuthor(); + } + + //========================================================================= + std::string wxGEditorTabPanel::GetDescription() + { + return _sceneManager->GetDescription(); + } + + //========================================================================= + std::string wxGEditorTabPanel::GetCategory() + { + return _sceneManager->GetCategory(); + } + + //========================================================================= + void wxGEditorTabPanel::SetCbName(std::string cbName) + { + _sceneManager->SetCbName( cbName ); + } + + //========================================================================= + void wxGEditorTabPanel::SetCbPackageName(std::string packagename) + { + _sceneManager->SetCbPackageName( packagename ); + } + + + //========================================================================= + void wxGEditorTabPanel::SetAuthor(std::string author) + { + _sceneManager->SetAuthor( author ); + } + + + //========================================================================= + void wxGEditorTabPanel::SetCategory(std::string category) + { + _sceneManager->SetCategory( category ); + } + + + //========================================================================= + void wxGEditorTabPanel::SetDescription(std::string description) + { + _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 ); + } + + + + } // EO namespace bbtk // EOF