X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsWxGUIEditorGraphic%2FwxTabPanelsManager.cxx;h=86750fc35833f4ee646b04e3a0d14805fe7a97fc;hb=910f9d7a7aecf26c88db3f595969a67ae5c27f78;hp=1e9061e1dc7176d68addc78334b0eed71c43373e;hpb=d43eaee96a8c31023bae53055512ef35fd4e67c9;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxTabPanelsManager.cxx b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxTabPanelsManager.cxx index 1e9061e..86750fc 100644 --- a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxTabPanelsManager.cxx +++ b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxTabPanelsManager.cxx @@ -44,27 +44,28 @@ namespace bbtk //========================================================================= wxTabPanelsManager::wxTabPanelsManager(wxGUIEditorGraphicBBS *parent) { + printf ("EED %p wxTabPanelsManager()\n" , this ); _parent = parent; _lastId = 0; _notebook = _parent->getAuiNotebook(); addNewTab(); + _notebook->Connect(wxEVT_COMMAND_AUINOTEBOOK_PAGE_CHANGED,wxAuiNotebookEventHandler(wxTabPanelsManager::OnTabChanged),0,this); } //========================================================================= wxTabPanelsManager::~wxTabPanelsManager() { + printf ("EED %p ~wxTabPanelsManager()\n" , this ); } //========================================================================= void wxTabPanelsManager::addNewTab() { - _lastId++; - + _lastId++; wxGEditorTabPanel *newPanel = new wxGEditorTabPanel(_notebook,_lastId); newPanel->setPanelsManager(this); _panels[_lastId]=newPanel; _actual = newPanel; - _notebook->AddPage(newPanel,_T("Diagram"),true); } @@ -96,9 +97,16 @@ namespace bbtk //========================================================================= - std::string wxTabPanelsManager::getActualDiagramScript() + std::string wxTabPanelsManager::getActualDiagramBBS() + { + return _actual->getDiagramBBS(); + } + + //========================================================================= + + std::string wxTabPanelsManager::getActualComplexBoxBBS(std::string cbName,std::string cbAuthor,std::string cbCategory,std::string cbDescription) { - return _actual->getDiagramScript(); + return _actual->saveComplexBoxBBS(cbName,cbAuthor,cbCategory,cbDescription); } //========================================================================= @@ -110,9 +118,87 @@ namespace bbtk //========================================================================= - void wxTabPanelsManager::editDiagramParameters(wxVtkSceneManager* scene) + void wxTabPanelsManager::deleteAllBoxesActualDiagram() + { + _actual->deleteAllBoxes(); + } + + //========================================================================= + + void wxTabPanelsManager::centerViewActualDiagram() + { + _actual->centerView(); + } + + //========================================================================= + + void wxTabPanelsManager::saveActualDiagram(std::string &content) + { + _actual->saveDiagram(content); + } + + //========================================================================= + + void wxTabPanelsManager::loadDiagram(ifstream &inputStream) + { + _actual->loadDiagram(inputStream); + } + + //========================================================================= + + bool wxTabPanelsManager::isActualDiagramComplexBox() + { + return _actual->isComplexBox(); + } + + //========================================================================= + + void wxTabPanelsManager::setActualDiagramComplexBox(bool val) + { + _actual->setComplexBox(val); + } + + //========================================================================= + + void wxTabPanelsManager::addActualDiagramComplexInputPort(std::string portName) + { + _actual->addComplexInputPort(portName); + } + + //========================================================================= + + void wxTabPanelsManager::addActualDiagramComplexOutputPort(std::string portName) + { + _actual->addComplexOutputPort(portName); + } + + //========================================================================= + + void wxTabPanelsManager::copySelectedBBoxesToComplexDiagram() + { + std::map mapSelected = _actual->getSelectedObjects(); + addNewTab(); + setActualDiagramComplexBox(true); + _actual->addObjects(mapSelected); + _parent->refreshGUIControls(); + } + + //========================================================================= + + int wxTabPanelsManager::getNumActualSelectedObjects() + { + return _actual->getNumSelectedObjects(); + } + + //========================================================================= + + void wxTabPanelsManager::OnTabChanged(wxAuiNotebookEvent& event) { - _parent->editDiagramParameters(scene); + int index = event.GetSelection(); + wxGEditorTabPanel* tab =(wxGEditorTabPanel*)_notebook->GetPage(index); + int id = tab->getPanelId(); + _actual = _panels[id]; + _parent->refreshGUIControls(); } //=========================================================================