X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsWxGUIEditorGraphic%2FwxGEditorTabPanel.cxx;h=104b09578da3b2b75ecac4f320961d8eb5ad9a84;hb=108bfeda96a8850e469fa80add666a5c1dbf1c1f;hp=00f669bc64f9c19a0c96d42d89934c5f7dea8a71;hpb=a32570122e77d9c675652337fee8ca1f47b7fed1;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxGEditorTabPanel.cxx b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxGEditorTabPanel.cxx index 00f669b..104b095 100644 --- a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxGEditorTabPanel.cxx +++ b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxGEditorTabPanel.cxx @@ -50,8 +50,6 @@ namespace bbtk wxGEditorTabPanel::wxGEditorTabPanel(wxWindow *parent,int id, Factory::Pointer bbtkfactory) : wxPanel(parent),wxTextDropTarget() { -printf("EED wxGEditorTabPanel::wxGEditorTabPanel 0\n"); - printf ("EED %p wxGEditorTabPanel 2 ()\n" , this ); _id=id; _panelAUIMgr = new wxAuiManager(this); _sceneManager = NULL; @@ -59,27 +57,22 @@ printf("EED wxGEditorTabPanel::wxGEditorTabPanel 0\n"); _sactualdo = sstates.begin(); _bbtkfactory = bbtkfactory; initWxVtkCanvas(); -printf("EED wxGEditorTabPanel::wxGEditorTabPanel 1\n"); } //========================================================================= wxGEditorTabPanel::~wxGEditorTabPanel() { -printf ("EED %p ~wxGEditorTabPanel() START \n" , this ); //ED02JUIN2010 _sceneManager->disconnectDrop(); _panelsManager->VerifyLastTabPanel(); //FCY memory leaks delete _panelAUIMgr; delete _sceneManager; - - printf ("EED %p ~wxGEditorTabPanel() END\n" , this ); } //========================================================================= void wxGEditorTabPanel::initWxVtkCanvas() { -printf("EED wxGEditorTabPanel::initWxVtkCanvas 0\n"); wxVtk3DBaseView *baseview = new wxVtk3DBaseView(this); baseview->Configure(); //EED 15 oct 2012 _sceneManager=new wxVtkSceneManager(this,baseview,_id); @@ -91,7 +84,6 @@ printf("EED wxGEditorTabPanel::initWxVtkCanvas 0\n"); _panelAUIMgr->AddPane((wxWindow*)baseview->GetWxVTKRenderWindowInteractor(),wxAuiPaneInfo().Fixed().CenterPane()); _panelAUIMgr->Update(); -printf("EED wxGEditorTabPanel::initWxVtkCanvas 1\n"); } //========================================================================= @@ -113,8 +105,57 @@ printf("EED wxGEditorTabPanel::initWxVtkCanvas 1\n"); result = strtok( NULL, delims ); boxType += result; - _sceneManager->createGBlackBox(x,y,packageName, boxType); - saveTempandUpdate("drop box"); + if ( _panelsManager->TryToOpenScriptApplication(packageName,boxType) == false ) + { + _sceneManager->createGBlackBox(x,y,packageName, boxType); + saveTempandUpdate("drop box"); + } + +/*EED Borrame + >>>>>> TryToOpenScriptApplication + Package::Pointer k; + std::map< std::string, BlackBoxDescriptor::Pointer> mapDesc; + BlackBoxDescriptor::Pointer descriptor; + k = _bbtkfactory->GetPackage(packageName); + mapDesc = k->GetDescriptorMap(); + descriptor = mapDesc[boxType]; + + if (descriptor->IsTypeOfScript_Application()==true) + { + OpenScript(descriptor->GetScriptFileName(),boxType); + >>>>> OpenScript + printf("EED wxGEditorTabPanel::OnDropText packageName=%s boxType=%s APPLI ScriptFileName=%s\n", packageName.c_str() , boxType.c_str() , descriptor->GetScriptFileName().c_str() ); + std::string fileName = boxType+".bbg"; + std::string filePathNameBBS = descriptor->GetScriptFileName(); + std::string filePathNameBBG = filePathNameBBS; + filePathNameBBG[ filePathNameBBG.length()-1 ] = 'g'; + + wxMessageDialog windowMessage1(NULL,_T("The system is going to open a bbg or bbs for you. Be careful if you save this file."), _T("Alert !"), wxOK); + windowMessage1.ShowModal(); + + if ( Utilities::FileExists( filePathNameBBG ) ) + { + _panelsManager->OpenDiagram( filePathNameBBG , fileName ); + } else { + if ( Utilities::FileExists( filePathNameBBS ) ) + { + _panelsManager->OpenBBS( filePathNameBBS , fileName ); + } else { + wxMessageDialog windowMessage1(NULL,_T("..ERROR.. loading script bbg/bbs."), _T("Alert !"), wxOK); + windowMessage1.ShowModal(); + } + } + <<<<< + } + <<<<<<< +// EED Borrame +// else { +// _sceneManager->createGBlackBox(x,y,packageName, boxType); +// saveTempandUpdate("drop box"); +// } + + */ + return true; }