X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsWxGUIEditorGraphic%2FwxTabPanelsManager.cxx;h=14f85311b1bacc5f87e8e57b0a6c52b23827bb79;hb=25cc7b0782c5950c95cbf3fa94586769ae093f10;hp=32173e91c291423383f4302615c7f84e8202677e;hpb=a462a32a87251d7de0e246eb0f0a4a905b2efb72;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxTabPanelsManager.cxx b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxTabPanelsManager.cxx index 32173e9..14f8531 100644 --- a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxTabPanelsManager.cxx +++ b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxTabPanelsManager.cxx @@ -48,6 +48,8 @@ namespace bbtk _notebook = _parent->getAuiNotebook(); addNewTab(); _notebook->Connect(wxEVT_COMMAND_AUINOTEBOOK_PAGE_CHANGED,wxAuiNotebookEventHandler(wxTabPanelsManager::OnTabChanged),0,this); + _notebook->Connect(wxEVT_COMMAND_AUINOTEBOOK_PAGE_CLOSE,wxAuiNotebookEventHandler(wxTabPanelsManager::OnTabClose),0,this); + } //========================================================================= @@ -65,10 +67,16 @@ printf("EED wxTabPanelsManager::addNewTab 0\n"); newPanel->setPanelsManager(this); _panels[_lastId] = newPanel; _actual = newPanel; + _notebook->AddPage(newPanel, tabName ,true); + printf("EED wxTabPanelsManager::addNewTab 1\n"); } + + + + //========================================================================= wxAuiNotebook* wxTabPanelsManager::getAuiNotebook() { @@ -234,6 +242,37 @@ printf("wxTabPanelsManager::VerifyActualTabPanel %d \n", this->_notebook->GetPa } //========================================================================= + + void wxTabPanelsManager::OnTabClose(wxAuiNotebookEvent& event) + { + + std::cout<<"RaC wxTabPanelsManager::OnTabClose Start... "<<_panels.size()<0) + { + wxGEditorTabPanel* tab = (wxGEditorTabPanel*)_notebook->GetPage(index); + int id = tab->getPanelId(); + tab->deleteAllBoxes(); + _panels.erase(id); + + _notebook->RemovePage(index); + + std::cout<<"RaC wxTabPanelsManager::OnTabClose IMPORTANT. The complete tab is not erased from memory... "<