X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsWxGUIEditorGraphic%2FbbtkwxGUIEditorGraphicBBS.cxx;h=d9a00b955053d7412eef47ef55078cc77b84f2e2;hb=b594841a2dad5fa2f18839b0125881fc22f4b6fd;hp=fd7fa6528d6bae23f661004c5f2a6ff8a7a02716;hpb=fea0c6ff7e209a7bb61bcc8176742e5f1a609443;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.cxx b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.cxx index fd7fa65..d9a00b9 100644 --- a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.cxx +++ b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.cxx @@ -80,6 +80,7 @@ wxGUIEditorGraphicBBS::wxGUIEditorGraphicBBS(wxFrame *parent) : //========================================================================= wxGUIEditorGraphicBBS::~wxGUIEditorGraphicBBS() { + printf("EED %p ~wxGUIEditorGraphicBBS()\n", this); //EED02JUIN2010 delete _tabsMgr; @@ -459,6 +460,21 @@ void wxGUIEditorGraphicBBS::executeScript(std::string script) { system(command.c_str()); } +//========================================================================= +std::string wxGUIEditorGraphicBBS::CheckExtension(std::string filename, std::string extension) { + if(extension.size() != 4){ + printf("CheckExtension Warning! Extension size != 4\n"); + }else{ + if(filename.size() > 4){ + if( (filename.compare(filename.size()-4,4,extension)) !=0 ){ + filename.append(extension); + } + }else{ + filename.append(extension); + } + } + return filename; +} //========================================================================= // EVENT HANDLERS //========================================================================= @@ -543,7 +559,9 @@ void wxGUIEditorGraphicBBS::OnSaveActualBBS(wxCommandEvent& event) { wxT("*.bbs"), wxSAVE | wxOVERWRITE_PROMPT); if (saveFileDialog->ShowModal() == wxID_OK) { wxString fileName = saveFileDialog->GetPath(); - SaveActualBBS((const char*) (fileName.mb_str())); + std::string filename = (const char*) (fileName.mb_str()); + filename=CheckExtension (filename, ".bbs"); + SaveActualBBS(filename); } } @@ -604,7 +622,9 @@ void wxGUIEditorGraphicBBS::OnSaveActualComplexBox(wxCommandEvent& event) { | wxOVERWRITE_PROMPT); if (saveFileDialog->ShowModal() == wxID_OK) { wxString fileName = saveFileDialog->GetPath(); - SaveActualComplexBox((const char*) (fileName.mb_str())); + std::string filename = (const char*) (fileName.mb_str()); + filename=CheckExtension (filename, ".bbs"); + SaveActualComplexBox(filename); } } @@ -647,9 +667,17 @@ void wxGUIEditorGraphicBBS::SaveCurrentDiagramAs() { wxT("Save current diagram"), wxEmptyString, wxT("NewDiagram"), wxT("*.bbg"), wxSAVE | wxOVERWRITE_PROMPT); if (saveFileDialog->ShowModal() == wxID_OK) { - _tabsMgr->SetNameTabPanel(saveFileDialog->GetFilename()); + //_tabsMgr->SetNameTabPanel(saveFileDialog->GetFilename()); wxString pathfileName = saveFileDialog->GetPath(); std::string pathfilename = (const char*) (pathfileName.mb_str()); + pathfilename=CheckExtension (pathfilename, ".bbg"); + + //modify the tab name accordingly + wxString fileName = saveFileDialog->GetFilename(); + std::string filename = (const char*) (fileName.mb_str()); + filename=CheckExtension (filename, ".bbg"); + _tabsMgr->SetNameTabPanel( wxString (filename.c_str(), wxConvUTF8) ); + std::string pathfilenamebbs = pathfilename; pathfilenamebbs[pathfilenamebbs.length() - 1] = 's'; if (_tabsMgr->isActualDiagramComplexBox() == false) {