]> Creatis software - bbtkGEditor.git/commitdiff
no message
authordavila <>
Wed, 22 Sep 2010 20:03:04 +0000 (20:03 +0000)
committerdavila <>
Wed, 22 Sep 2010 20:03:04 +0000 (20:03 +0000)
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/InterpreterBBS.cxx
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/InterpreterBBS.h
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxVtkSceneManager.cxx
lib/EditorGraphicBBS/bbsWxGUIEditorGraphic/wxVtkSceneManager.h

index 8f6a049f357a937d8d6fd957b9ab8eb7a21d5290..56a6a9bb439e9f85f411682d138575b701fa9dff 100644 (file)
@@ -62,11 +62,12 @@ namespace bbtk
                _sceneManager   = sceneManager;
                
                _xGeneral               = -100;
-               _yGeneral               = 10;
+               _yGeneral               = 100;
                _zGeneral               = 900;   //  ?????
                _countBoxes             = 0;
-               
-               _complexbox             = false;
+               _countInputs    = 0;
+               _countOutputs   = 0;
+
                bbtk::InterpreterVirtual::Init();
                
        }
@@ -84,10 +85,10 @@ namespace bbtk
        /// Creates a new black box in current complex box
     void InterpreterBBS::commandNew( const std::string& boxType, const std::string& boxName) // virtual
        {
+               _yGeneral                               = _yGeneral - 30;               
                std::string packagename = _factory->GetPackageNameOfaBlackBox(boxType);
                int idBox                               = _sceneManager->createGBlackBox( 0,0, packagename ,boxType);
                _countBoxes++;
-               _yGeneral                               = _yGeneral + 30;               
                double px                               = _xGeneral + (_countBoxes%2)*100;
                double py                               = _yGeneral;
                
@@ -108,6 +109,36 @@ namespace bbtk
        //=========================================================================
        
        
+       //=========================================================================
+       void InterpreterBBS::commandInput(const std::string &name,const std::string &box,const std::string &input,const std::string  &help)
+       {
+               double xIn      = -100+50+_countInputs*50;
+               double yIn      = 100; 
+               double zIn      = 900; 
+               _sceneManager->configGComBoxInputOutputPort(true,name,xIn,yIn,zIn);
+               _sceneManager->configGConnetion( name,name,box,input);
+               _countInputs++;
+               
+               printf("EED InterpreterBBS::commandInput  what to do with help information ..???? \n  ");               
+       }
+       //=========================================================================
+       
+       //=========================================================================
+       void InterpreterBBS::commandOutput(const std::string &name,const std::string &box,const std::string &output,const std::string  &help)
+       {
+               _yGeneral       = _yGeneral - 30;               
+               double xIn      = -100+_countOutputs*30;
+               double yIn      = _yGeneral; 
+               double zIn      = 900; 
+               _sceneManager->configGComBoxInputOutputPort(false,name,xIn,yIn,zIn);
+               _sceneManager->configGConnetion( box,output,name,name);
+               _countOutputs++;
+               
+               printf("EED InterpreterBBS::commandInput  what to do with help information ..???? \n  ");               
+       }
+       //=========================================================================
+       
+       
        //=========================================================================
        /// sets the input of the box with the value
        void InterpreterBBS::commandSet(const std::string &box,const std::string &input,const std::string &value) // virtual
@@ -121,7 +152,8 @@ namespace bbtk
        //=========================================================================     
        void InterpreterBBS::commandDefine(const std::string &name,const std::string &pack,const std::string &scriptfilename) // virtual
        {
-               _complexbox=true;
+               _sceneManager->setComplexBox(true);
+
        }
        //=========================================================================
 
@@ -129,7 +161,6 @@ namespace bbtk
        //=========================================================================
        void InterpreterBBS::commandEndDefine() // virtual
        {
-               _complexbox=false;
        }
        //=========================================================================
        
@@ -143,20 +174,27 @@ namespace bbtk
        //=========================================================================
        
 
+       //=========================================================================
        void InterpreterBBS::commandAuthor(const std::string &author)  // virtual 
        {
                printf("EED InterpreterBBS::commandAuthor   Warning !!!!!  method not implemented.. \n");
        }
+       //=========================================================================
        
+       //=========================================================================
        void InterpreterBBS::commandCategory(const std::string &categorytype)  // virtual
        {
                printf("EED InterpreterBBS::commandCategory   Warning !!!!!  method not implemented.. \n");
        }
+       //=========================================================================
        
+       //=========================================================================
        void InterpreterBBS::commandDescription(const std::string &description)  // virtual
        {
                printf("EED InterpreterBBS::commandDescription   Warning !!!!!  method not implemented.. \n");
        }
+       //=========================================================================
+       
        
        
        
index f31b8ffd335a85f5c70a8662dbbc20b694d30362..f23756e66bfae3cb54e3fe1348e0519ac5c47294 100644 (file)
@@ -81,10 +81,15 @@ namespace bbtk
                virtual void commandCategory(const std::string &categorytype);
                virtual void commandDescription(const std::string &description);
                
+               virtual void commandInput(const std::string &name,const std::string &box,const std::string &input,const std::string  &help);
+               virtual void commandOutput(const std::string &name,const std::string &box,const std::string &output,const std::string  &help);
+
 
                double              _xGeneral;
                double              _yGeneral;
                double              _zGeneral;
+               int                                     _countInputs;
+               int                                     _countOutputs;
                int                                     _countBoxes;
                wxVtkSceneManager   *_sceneManager;
                Factory::Pointer    _factory;
@@ -92,7 +97,6 @@ namespace bbtk
        private:
 
                //Private Attributes
-               bool _complexbox;
 
                //Private Methods
 
index 978fdcc362d9ad1fe37cf7e046ff74e2612faf65..f5313e7e7c7823f69ae07044082cda8831d188b3 100644 (file)
@@ -1516,11 +1516,16 @@ namespace bbtk
 
                                        getline(inputStream,line);//FIN_COMPLEX_PORT
 
-                                       int idInputPort = createGComplexBoxInputPort(inputPortName);
-                                       GObjectController *cont = _controllers[idInputPort];
-                                       GBoxModel *cbmod = (GBoxModel*)cont->getModel();
-                                       cbmod->setInicPoint(xIn,yIn,zIn);
-                                       cbmod->notifyObservers(_idManager);
+                                       configGComBoxInputOutputPort(true, inputPortName,xIn,yIn,zIn);
+
+//ups 3 EED Borrame
+//                                     int idInputPort = createGComplexBoxInputPort(inputPortName);
+//                                     GObjectController *cont = _controllers[idInputPort];
+//                                     GBoxModel *cbmod = (GBoxModel*)cont->getModel();
+//                                     cbmod->setInicPoint(xIn,yIn,zIn);
+//                                     cbmod->notifyObservers(_idManager);
+
+                                       
                                } // for input complex box
 
 
@@ -1566,12 +1571,15 @@ namespace bbtk
 
                                        getline(inputStream,line);//FIN_COMPLEX_PORT
 
+                                       configGComBoxInputOutputPort(false, outputPortName,xIn,yIn,zIn);
+                                       
+//ups 3 EED Borrame
+//                                     int idOutputPort = createGComplexBoxOutputPort(outputPortName);
+//                                     GObjectController *cont = _controllers[idOutputPort];
+//                                     GBoxModel *cbmod = (GBoxModel*)cont->getModel();
+//                                     cbmod->setInicPoint(xIn,yIn,zIn);
+//                                     cbmod->notifyObservers(_idManager);
                                        
-                                       int idOutputPort = createGComplexBoxOutputPort(outputPortName);
-                                       GObjectController *cont = _controllers[idOutputPort];
-                                       GBoxModel *cbmod = (GBoxModel*)cont->getModel();
-                                       cbmod->setInicPoint(xIn,yIn,zIn);
-                                       cbmod->notifyObservers(_idManager);
                                } // for output complex box
 
                        } // complex box
@@ -1785,9 +1793,29 @@ namespace bbtk
         } // start
 
        }
+       //=========================================================================
 
+       
+       
+       //=========================================================================     
+       void wxVtkSceneManager::configGComBoxInputOutputPort(bool inputoutput, std::string portName, double xIn, double yIn,double zIn)
+       {
+               int idPort;
+               if (inputoutput==true)
+               {
+                       idPort = createGComplexBoxInputPort(portName);
+               } else  {
+                       idPort = createGComplexBoxOutputPort(portName);
+               }
+               GObjectController *cont = _controllers[idPort];
+               GBoxModel *cbmod                = (GBoxModel*)cont->getModel();
+               cbmod->setInicPoint(xIn,yIn,zIn);
+               cbmod->notifyObservers(_idManager);                             
+       }
        //=========================================================================
        
+       
+       //=========================================================================
        GBoxModel* wxVtkSceneManager::findGBox(std::string boxname)
        {       
                int j;
index 4126e09afad8acea759365b75ba8a1db768f77fb..436903a3ed893a36cd11df5049735aec72e80a05 100644 (file)
@@ -117,6 +117,7 @@ namespace bbtk
                void configGBlackBox(int idBox, double xIn, double yIn, double zIn, std::string name, bool boxExecutable,double xEn,double yEn,double zEn);
                void configGConnetion( std::string nameStartBox, std::string  nameStartPort, std::string  
                                                          nameEndBox, std::string  nameEndPort);
+               void configGComBoxInputOutputPort(bool inputoutput, std::string inputPortName, double xIn, double yIn,double zIn);
                GBoxModel* findGBox(std::string boxname);