]> Creatis software - bbtkGEditor.git/commitdiff
no message
authordavila <>
Fri, 10 Sep 2010 11:33:10 +0000 (11:33 +0000)
committerdavila <>
Fri, 10 Sep 2010 11:33:10 +0000 (11:33 +0000)
lib/EditorGraphicBBS/bbsKernelEditorGraphic/GBlackBoxModel.cxx
lib/EditorGraphicBBS/bbsKernelEditorGraphic/GBoxModel.cxx
lib/EditorGraphicBBS/bbsKernelEditorGraphic/GlobalConstants.h
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/ExecuterBBSG.cxx [new file with mode: 0644]
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/ExecuterBBSG.h [new file with mode: 0644]
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.cxx
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/bbtkwxGUIEditorGraphicBBS.h

index 6a51858a5a263142c66e8fb9b7ce4155c1ff24b9..a806ea8d347e44aea9fa3c9a7ce371f6ffc53eaa 100644 (file)
@@ -149,7 +149,7 @@ namespace bbtk
                content+="\n";
 
                //Ports with a value
-               for(int i = 0; i<_inputs.size();i++)
+               for(int i = 0; i<(int)_inputs.size();i++)
                {
                        if(_inputs[i]->isValueSet())
                        {
@@ -164,7 +164,7 @@ namespace bbtk
 
        void GBlackBoxModel::setValueToInput(std::string name,std::string value)
        {
-               for(int i = 0; i<_inputs.size();i++)
+               for(int i = 0; i<(int)_inputs.size();i++)
                {
                        if(_inputs[i]->getBBTKName()==name)
                        {
@@ -184,7 +184,7 @@ namespace bbtk
 
        std::string GBlackBoxModel::getValueInput(std::string name)
        {
-               for(int i = 0; i<_inputs.size();i++)
+               for(int i = 0; i<(int)_inputs.size();i++)
                {
                        if(_inputs[i]->getBBTKName()==name)
                        {
@@ -199,7 +199,7 @@ namespace bbtk
        std::vector<int> GBlackBoxModel::getConnectedInputs()
        {
                std::vector<int> connected;
-               for(int i = 0; i<_inputs.size();i++)
+               for(int i = 0; i<(int)_inputs.size();i++)
                {
                        if(_inputs[i]->isConnected())
                        {
@@ -214,7 +214,7 @@ namespace bbtk
        std::vector<int> GBlackBoxModel::getConnectedOutputs()
        {
                std::vector<int> connected;
-               for(int i = 0; i<_outputs.size();i++)
+               for(int i = 0; i<(int)_outputs.size();i++)
                {
                        if(_outputs[i]->isConnected())
                        {
index 7f8f798330101348995f76815ae3a8e8e0acc976..1c03431f0efd776eadf5e63ee36590aef1877d07 100644 (file)
@@ -96,13 +96,13 @@ namespace bbtk
 
                //Refresh inputs position
                int i;
-               for(i=0;i<_inputs.size();i++)
+               for(i=0;i<(int)_inputs.size();i++)
                {
                        _inputs[i]->updatePortPosition();
                }
                
                //Refresh outputs position
-               for(i=0;i<_outputs.size();i++)
+               for(i=0;i<(int)_outputs.size();i++)
                {
                        _outputs[i]->updatePortPosition();
                }
@@ -144,7 +144,7 @@ namespace bbtk
 
        GPortModel* GBoxModel::getInputPort(std::string name)
        {
-               for(int i = 0; i<_inputs.size();i++)
+               for(int i = 0; i<(int)_inputs.size();i++)
                {
                        if(_inputs[i]->getBBTKName()==name)
                        {
@@ -158,7 +158,7 @@ namespace bbtk
        
        GPortModel* GBoxModel::getOutputPort(std::string name)
        {
-               for(int i = 0; i<_outputs.size();i++)
+               for(int i = 0; i<(int)_outputs.size();i++)
                {
                        if(_outputs[i]->getBBTKName()==name)
                        {
@@ -186,7 +186,7 @@ namespace bbtk
 
        void GBoxModel::updatePorts()
        {
-               for(int i = 0; i<_inputs.size();i++)
+               for(int i = 0; i<(int)_inputs.size();i++)
                {       
                        _inputs[i]->updatePortPosition();
                        _inputs[i]->notifyObservers(_objectId);
index 43677d4f13b9dde22b6d40c8f4d060211c4e1eff..1982207584f59d0cc4d23e0cd93c18c002438032 100644 (file)
@@ -159,11 +159,12 @@ namespace bbtk
        const int ID_BTNCOMPLEXBOX                              =       1006;
        const int ID_ADDCOMPLEXBOXINPUT                 =       1007;
        const int ID_ADDCOMPLEXBOXOUTPUT                =       1008;
-       const int ID_SAVE_AS_BBS                                =       1009;
-       const int ID_SAVE_AS_COMPLEXBOX                 =       1010;
-       const int ID_COPY_TO_COMPLEXDIAGRAM             =       1011;
+       const int ID_OPEN_BBS                                   =       1009;
+       const int ID_SAVE_AS_BBS                                =       1010;
+       const int ID_SAVE_AS_COMPLEXBOX                 =       1011;
+       const int ID_COPY_TO_COMPLEXDIAGRAM             =       1012;
 
-       const int wxID_NOTEBOOK                                 =       1012;
+       const int wxID_NOTEBOOK                                 =       1013;
 }
 // namespace bbtk
 #endif
diff --git a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/ExecuterBBSG.cxx b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/ExecuterBBSG.cxx
new file mode 100644 (file)
index 0000000..d485735
--- /dev/null
@@ -0,0 +1,284 @@
+/*=========================================================================                                                                               
+Program:   bbtk
+Module:    $RCSfile$
+Language:  C++
+Date:      $Date$
+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 
+*  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. 
+*
+*  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::GConnectorModel 
+*/
+
+
+#include "ExecuterBBSG.h"
+
+#include "bbtkExecuter.h"
+#include "bbtkMessageManager.h"
+#include "bbtkFactory.h"
+#include "bbtkUtilities.h"
+
+
+
+namespace bbtk
+{
+
+       
+
+       EExecuterBBSG::Pointer EExecuterBBSG::New()
+       {
+                    return MakePointer( new EExecuterBBSG() );
+       }
+
+       
+       //=========================================================================
+
+       EExecuterBBSG::EExecuterBBSG()
+       {               
+       }
+
+       //=========================================================================
+
+       EExecuterBBSG::~EExecuterBBSG()
+       {
+       }
+
+       //=========================================================================
+
+//--EED
+    /// Sets the inputs of the workspace : 
+    void EExecuterBBSG::SetInputs(const std::map<std::string,std::string>& m)
+       {
+       }
+       
+    /// Puts the executer in "no exec" mode, 
+    /// which creates but does not execute pipelines 
+    void EExecuterBBSG::SetNoExecMode(bool b)
+       {
+       }
+       
+    bool EExecuterBBSG::GetNoExecMode() const
+       {
+               return true;
+       }
+       
+    /// Sets the mode of dialog of the executer for Root inputs 
+    void EExecuterBBSG::SetDialogMode(DialogModeType t)
+       {
+       }
+       
+    /// Puts the executer in "no error" mode, 
+    /// Errors do not stop execution (but warnings are produced)
+    void EExecuterBBSG::SetNoErrorMode(bool b)
+       {
+       }
+       
+    bool EExecuterBBSG::GetNoErrorMode() const 
+       {
+               return true;
+       }
+       
+    //=================================================================
+       /// Loads a package
+    void EExecuterBBSG::LoadPackage(const std::string &name )
+       {
+       }
+       
+    /// Unloads a package
+    void EExecuterBBSG::UnLoadPackage(const std::string &name )
+       {
+       }
+       
+    /// Starts a package block 
+    void EExecuterBBSG::BeginPackage (const std::string &name )
+       {
+       }
+       
+    /// Ends a package block
+    void EExecuterBBSG::EndPackage ()
+       {
+       }
+       
+    /// Starts the definition of a new ComplexBlackBox in package pack
+    /// scriptfilename is the file from which the def is read
+    void EExecuterBBSG::Define (const std::string &name,
+                                                const std::string& pack,
+                                                const std::string &scriptfilename)
+       {
+       }
+       
+    /// Sets the file name to use for the current definition
+    /// (Used to set it after the Define command)
+    void EExecuterBBSG::SetCurrentFileName (const std::string &name )
+       {
+       }
+       
+    /// End the definition of a ComplexBlackBox
+    void EExecuterBBSG::EndDefine ()
+       {
+       }
+       
+    /// Sets the kind of the currently defined ComplexBlackBox
+    void EExecuterBBSG::Kind(const std::string& kind)
+       {
+       }
+       
+    /// Creates a new black box in current complex box
+    void EExecuterBBSG::Create ( const std::string& boxType, const std::string&
+                                                boxName)
+       {
+               printf("EED EExecuterBBSG::Create\n");
+       }
+       
+    /// Destroys a black box
+    void EExecuterBBSG::Destroy (const std::string &boxName)
+       {
+       }
+       
+    /// Clears the currently defined ComplexBlackBox
+    void EExecuterBBSG::Clear()
+       {
+       }
+       
+    /// Connects the output boxOutput to the input boxInput
+    void EExecuterBBSG::Connect (const std::string &boxfrom,
+                                                 const std::string &output,
+                                                 const std::string &boxto,
+                                                 const std::string &input)
+       {
+               printf("EED EExecuterBBSG::Connect\n");
+       }
+       
+    /// Executes the box 
+    void EExecuterBBSG::Execute (const std::string &box)
+       {
+       }
+       
+    /// Defines an input of the current complex box
+    void EExecuterBBSG::DefineInput (const std::string &name,
+                                                         const std::string &box,
+                                                         const std::string &input,
+                                                         const std::string &help)
+       {
+       }
+       
+    /// Defines an output of the current complex box
+    void EExecuterBBSG::DefineOutput (const std::string &name,
+                                                          const std::string &box,
+                                                          const std::string &output,
+                                                          const std::string &help)
+       {
+       }
+       
+    /// sets the input of the box with the value
+    void EExecuterBBSG::Set (const std::string &box, 
+                                         const std::string &input, 
+                                         const std::string &value)
+       {
+               printf("EED EExecuterBBSG::Set\n");
+       }
+       
+    /// gets the output of the box
+    std::string EExecuterBBSG::Get (const std::string &box, 
+                                                        const std::string &output)
+       {
+               return "";
+       }
+       
+    /// changes the workspace name
+    void EExecuterBBSG::SetWorkspaceName( const std::string& n )
+       {
+       }
+       
+    ///Adds the authorName to the Box author list
+    void EExecuterBBSG::Author(const std::string &authorName)
+       {
+       }
+       
+    ///Adds the categories to the Box categoris list
+    void EExecuterBBSG::Category(const std::string &categories)
+       {
+       }
+       
+    /// The description string which explains what does the ComplexBox
+    void EExecuterBBSG::Description(const std::string &d)
+       {
+       }
+       
+    /// prints the list of the boxes of the current box
+    void EExecuterBBSG::PrintHelpListBoxes()
+       {
+       }
+       
+       /// Generate a HTML file with a gif file with the actual pipeline (Graphviz-dot needed). Returns the file path
+    std::string EExecuterBBSG::ShowGraph(const std::string &nameblackbox, 
+                                                                 const std::string &detailStr, 
+                                                                 const std::string &levelStr,
+                                                                 const std::string &output_file,
+                                                                 const std::string &custom_header,
+                                                                 const std::string &custom_title,
+                                                                 bool system_display)
+       {
+               return "";
+       }
+       
+       /// Generate a HTML with a gif file with the actual pipeline (Graphviz-dot needed). Returns the file path
+    std::string EExecuterBBSG::ShowGraphInstances(const std::string &nameblackbox, int detail, int level, bool system_display)
+       {
+               return "";
+       }
+       
+    /// Prints help on a black box
+    void EExecuterBBSG::PrintHelpBlackBox(const std::string &nameblackbox, const std::string &detailStr, const std::string &levelStr)
+       {
+       }
+       
+    void EExecuterBBSG::Reset()
+       {
+       }
+       
+    /// Sets the level of message for kind
+    void EExecuterBBSG::SetMessageLevel(const std::string &kind, int level)
+       {
+       }
+       
+    /// Prints help on the messages
+    void EExecuterBBSG::HelpMessages()
+       {
+       }
+       
+    /// Prints the string ... MORE : TO EXPLAIN 
+    void EExecuterBBSG::Print(const std::string & message)
+       {
+       }
+       
+//--EED
+       
+
+}  // EO namespace bbtk
+
+// EOF
+
diff --git a/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/ExecuterBBSG.h b/lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/ExecuterBBSG.h
new file mode 100644 (file)
index 0000000..4b0b018
--- /dev/null
@@ -0,0 +1,242 @@
+/*=========================================================================                                                                               
+Program:   bbtk
+Module:    $RCSfile$
+Language:  C++
+Date:      $Date$
+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 
+*  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. 
+*
+*  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.
+* ------------------------------------------------------------------------ */                                                                         
+
+
+/****
+* Design and Developpement of BBTK GEditor
+* Ricardo A Corredor J <eduardo.davila@creatis.insa-lyon.fr>
+* RaC - 2010
+****/
+
+#ifndef __ExecuterBBSG_h__
+#define __ExecuterBBSG_h__
+
+//Includes same project
+//..
+
+//Includes bbtk
+#include "bbtkVirtualExec.h"
+
+//Includes std
+#include <iostream>
+
+
+#include "bbtkSystem.h"
+#include "bbtkComplexBlackBox.h"
+#include "bbtkFactory.h"
+
+
+
+
+
+/*
+namespace bbtk
+{
+       
+       class Interpreter;
+       
+       
+       class  Executer : public VirtualExec
+               {
+                       BBTK_OBJECT_INTERFACE(Executer);
+                       typedef VirtualExec Superclass;
+               public:
+                       static Pointer New();
+*/
+
+
+
+
+namespace bbtk
+{
+
+       class EExecuterBBSG : public VirtualExec 
+       {
+//             BBTK_OBJECT_INTERFACE(EExecuterBBSG);
+//             typedef VirtualExec Superclass;
+               public:
+               static Pointer New();
+//                     Pointer New();
+               EExecuterBBSG();
+               ~EExecuterBBSG();
+               
+               //Public methods
+
+//--EED
+               
+               /// Sets the inputs of the workspace : 
+               virtual void SetInputs(const std::map<std::string,std::string>& m);
+               
+               /// Puts the executer in "no exec" mode, 
+               /// which creates but does not execute pipelines 
+               virtual void SetNoExecMode(bool b);
+               
+               virtual bool GetNoExecMode() const;
+               
+               /// Sets the mode of dialog of the executer for Root inputs 
+               virtual void SetDialogMode(DialogModeType t);
+               
+               /// Puts the executer in "no error" mode, 
+               /// Errors do not stop execution (but warnings are produced)
+               virtual void SetNoErrorMode(bool b) ;
+               virtual bool GetNoErrorMode() const ;
+               //=================================================================
+               /// Loads a package
+               virtual void LoadPackage(const std::string &name ) ;
+               
+               /// Unloads a package
+               virtual void UnLoadPackage(const std::string &name );
+               
+               /// Starts a package block      
+               virtual void BeginPackage (const std::string &name );
+               
+               /// Ends a package block
+               virtual void EndPackage ();
+               
+               /// Starts the definition of a new ComplexBlackBox in package pack
+               /// scriptfilename is the file from which the def is read
+               virtual void Define (const std::string &name,
+                                                        const std::string& pack,
+                                                        const std::string &scriptfilename);
+               
+               /// Sets the file name to use for the current definition
+               /// (Used to set it after the Define command)
+               virtual void SetCurrentFileName (const std::string &name );
+               
+               /// End the definition of a ComplexBlackBox
+               virtual void EndDefine () ;
+               
+               /// Sets the kind of the currently defined ComplexBlackBox
+               virtual void Kind(const std::string& kind);
+               
+               /// Creates a new black box in current complex box
+               virtual void Create ( const std::string& boxType, const std::string&
+                                                        boxName);
+               
+               /// Destroys a black box
+               virtual void Destroy (const std::string &boxName);
+               
+               /// Clears the currently defined ComplexBlackBox
+               virtual void Clear() ;
+               
+               /// Connects the output boxOutput to the input boxInput
+               virtual void Connect (const std::string &boxfrom,
+                                                         const std::string &output,
+                                                         const std::string &boxto,
+                                                         const std::string &input) ;
+               
+               /// Executes the box 
+               virtual void Execute (const std::string &box) ;
+               
+               /// Defines an input of the current complex box
+               virtual void DefineInput (const std::string &name,
+                                                                 const std::string &box,
+                                                                 const std::string &input,
+                                                                 const std::string &help) ;
+               
+               /// Defines an output of the current complex box
+               virtual void DefineOutput (const std::string &name,
+                                                                  const std::string &box,
+                                                                  const std::string &output,
+                                                                  const std::string &help);
+               
+               /// sets the input of the box with the value
+               virtual void Set (const std::string &box, 
+                                                 const std::string &input, 
+                                                 const std::string &value);
+               
+               /// gets the output of the box
+               virtual std::string Get (const std::string &box, 
+                                                                const std::string &output) ;
+               
+               /// changes the workspace name
+               virtual void SetWorkspaceName( const std::string& n );
+               
+               ///Adds the authorName to the Box author list
+               virtual void Author(const std::string &authorName);
+               
+               ///Adds the categories to the Box categoris list
+               virtual void Category(const std::string &categories);
+               
+               /// The description string which explains what does the ComplexBox
+               virtual void Description(const std::string &d);
+               
+               /// prints the list of the boxes of the current box
+               virtual void PrintHelpListBoxes();
+               
+               /// Generate a HTML file with a gif file with the actual pipeline (Graphviz-dot needed). Returns the file path
+               virtual std::string ShowGraph(const std::string &nameblackbox, 
+                                                                         const std::string &detailStr, 
+                                                                         const std::string &levelStr,
+                                                                         const std::string &output_file,
+                                                                         const std::string &custom_header,
+                                                                         const std::string &custom_title,
+                                                                         bool system_display = true);
+               
+               /// Generate a HTML with a gif file with the actual pipeline (Graphviz-dot needed). Returns the file path
+               virtual std::string ShowGraphInstances(const std::string &nameblackbox, int detail, int level, bool system_display=true) ;
+               
+               /// Prints help on a black box
+               virtual void PrintHelpBlackBox(const std::string &nameblackbox, const std::string &detailStr, const std::string &levelStr);
+               
+               virtual void Reset();
+               
+               /// Sets the level of message for kind
+               virtual void SetMessageLevel(const std::string &kind, int level);
+               
+               /// Prints help on the messages
+               virtual void HelpMessages();
+               
+               /// Prints the string ... MORE : TO EXPLAIN 
+               virtual void Print(const std::string & message);
+               
+//--EED                
+               
+               
+       private:
+
+               //Private Attributes
+
+
+               //Private Methods
+
+       protected:
+
+               //Protected Attributes
+
+               //Protected methods
+               
+       };
+
+
+}
+// namespace bbtk
+#endif
+
index 5233d3c68b9d23da7b65c3920c6f61266360174d..a633abf6d44abd8f98bc303fa2dddc92241eac03 100644 (file)
@@ -36,6 +36,11 @@ Version:   $Revision$
 #include "bbtkwxGUIEditorGraphicBBS.h"
 #include "creaWx.h"
 
+#include <bbtkInterpreter.h>
+#include <ExecuterBBSG.h>
+
+
+
 namespace bbtk
 {
 
@@ -152,12 +157,14 @@ namespace bbtk
                wxMenu *fileMenu = new wxMenu();
                fileMenu->Append(ID_NEW, _T("New diagram"), _T("New"));
                fileMenu->Append(ID_SAVE_AS_DIAGRAM, _T("Save diagram"), _T("Save diagram"));
+               fileMenu->Append(ID_OPEN_BBS, _T("Open BBS"), _T("Open BBS"));
                fileMenu->Append(ID_SAVE_AS_BBS, _T("Save BBS"), _T("Save BBS"));
                fileMenu->Append(ID_SAVE_AS_COMPLEXBOX, _T("Save complex box"), _T("Save complex box"));
                fileMenu->Append(wxID_EXIT, _T("E&xit"), _T("Exit"));
 
                Connect(ID_NEW,wxEVT_COMMAND_MENU_SELECTED,wxCommandEventHandler(wxGUIEditorGraphicBBS::OnCreateNewTab));
                Connect(ID_SAVE_AS_DIAGRAM,wxEVT_COMMAND_MENU_SELECTED,wxCommandEventHandler(wxGUIEditorGraphicBBS::OnSaveActualDiagram));
+               Connect(ID_OPEN_BBS,wxEVT_COMMAND_MENU_SELECTED,wxCommandEventHandler(wxGUIEditorGraphicBBS::OnOpenBBS));
                Connect(ID_SAVE_AS_BBS,wxEVT_COMMAND_MENU_SELECTED,wxCommandEventHandler(wxGUIEditorGraphicBBS::OnSaveActualBBS));
                Connect(ID_SAVE_AS_COMPLEXBOX,wxEVT_COMMAND_MENU_SELECTED,wxCommandEventHandler(wxGUIEditorGraphicBBS::OnSaveActualComplexBox));
                Connect(wxID_EXIT,wxEVT_COMMAND_MENU_SELECTED,wxCommandEventHandler(wxGUIEditorGraphicBBS::OnExit));
@@ -394,16 +401,39 @@ namespace bbtk
                executeScript(script);          
        }
 
+       
        //=========================================================================
        // HANDLERS 
        //=========================================================================
+       void wxGUIEditorGraphicBBS::OnOpenBBS(wxCommandEvent& event)
+       {
+               wxFileDialog * openFileDialog = new wxFileDialog(this,wxT("Open BBS"),wxEmptyString,wxT("NewBBS"),wxT("*.bbs"),wxOPEN);
+               if (openFileDialog->ShowModal() == wxID_OK)
+               {
+                       wxString fileName = openFileDialog->GetPath(  );
+                       printf("EED wxGUIEditorGraphicBBS::OnOpenBBS  file=%s\n", (const char*) (fileName.mb_str()) );
+                       
+                       bbtk::EExecuterBBSG::Pointer exe = bbtk::EExecuterBBSG::New();
+//                     EExecuterBBSG *exe = new EExecuterBBSG();
+                       bbtk::Interpreter::Pointer I = bbtk::Interpreter::New( boost::static_pointer_cast<VirtualExec>(exe) );                  
+//                     bbtk::Interpreter::Pointer I = bbtk::Interpreter::New( ExecuterBBSG::New() );                                           
+//                     bbtk::Interpreter::Pointer I = bbtk::Interpreter::New( );                       
+                       
+                       // We tell the interpreter to throw exceptions on error
+                       I->SetThrow(true);
+                       // Interpret the file supposed to define a box called 'Processing'
+                       I->InterpretFile( (const char*) (fileName.mb_str()) );
+                       
+                       
+               }
+       }
 
        void wxGUIEditorGraphicBBS::OnSaveActualBBS(wxCommandEvent& event)
        {
                wxFileDialog * saveFileDialog = new wxFileDialog(this,wxT("Save  actual BBS"),wxEmptyString,wxT("NewBBS"),wxT("*.bbs"),wxSAVE|wxOVERWRITE_PROMPT);
                if (saveFileDialog->ShowModal() == wxID_OK)
                {
-                       wxString fileName = saveFileDialog->GetPath();
+                       wxString fileName = saveFileDialog->GetPath(  );
                        
                        ofstream file;
 
index b5f17a07d0b3a4e020405432deb36a6ca0f9eee6..48bce9b33edf2d7b83a31c3f9603657eba416ce7 100644 (file)
@@ -50,7 +50,6 @@
 #include "wxVtkSceneManager.h"
 #include "GlobalConstants.h"
 
-//#include "C:\RaC\CREATIS\bbtkGEditor\data\icons\wxart_new.xpm" // JPR
 #include "wxart_new.xpm" // JPR
 #include "wxart_open.xpm"
 #include "wxart_save.xpm"
@@ -132,6 +131,7 @@ namespace bbtk
                        void OnCreateNewTab(wxCommandEvent& event);
                        void OnOpenDiagram(wxCommandEvent& event);
                        void OnSaveActualDiagram(wxCommandEvent& event);
+                       void OnOpenBBS(wxCommandEvent& event);
                        void OnSaveActualBBS(wxCommandEvent& event);
                        void OnSaveActualComplexBox(wxCommandEvent& event);
                        void OnExecuteActualDiagram(wxCommandEvent& event);