X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsKernelEditorGraphic%2FwxVtkSceneManager.h;h=118d136d2a9fec85a709ff4ab993e4ae252f5310;hb=343ecf790a799b8089a6d13fec0192fd9ad71da1;hp=c6f7a6b11468719bec613bf3d7e03722b71d654b;hpb=50851761f4216d932217db8e8fe56dd5aac6b0fb;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsKernelEditorGraphic/wxVtkSceneManager.h b/lib/EditorGraphicBBS/bbsKernelEditorGraphic/wxVtkSceneManager.h index c6f7a6b..118d136 100644 --- a/lib/EditorGraphicBBS/bbsKernelEditorGraphic/wxVtkSceneManager.h +++ b/lib/EditorGraphicBBS/bbsKernelEditorGraphic/wxVtkSceneManager.h @@ -46,8 +46,10 @@ Version: $Revision$ //Includes same project #include "GObjectsMVCFactory.h" #include "Observer.h" +#include "GBoxModel.h" +#include "GComplexBoxPortModel.h" #include "GPortModel.h" -#include "GConnectorView.h" +#include "vtkGConnectorView.h" #include "GConnectorModel.h" #include "GConnectorController.h" #include "vtkGPortView.h" @@ -89,35 +91,52 @@ namespace bbtk ~wxVtkSceneManager(); void configureBaseView(); - void createGBlackBox(int x, int y,std::string packageName, std::string boxName); - void createGPort(int portType, int posinBox,GBlackBoxModel *blackBox); - void createGInputPort(int portType, int posinBox,GBlackBoxModel *blackBox, BlackBoxInputDescriptor *desc); - void createGOutputPort(int portType, int posinBox,GBlackBoxModel *blackBox, BlackBoxOutputDescriptor *desc); - void createGConnector(GPortModel* startPort); + int createGBlackBox(int x, int y,std::string packageName, std::string boxType); + int createGComplexBoxInputPort(std::string inputName); + int createGComplexBoxOutputPort(std::string outputName); + GPortController* createGPort(int portType, std::string bbtkName, std::string bbtkType, int posinBox,GBoxModel *blackBox); + int createGInputPort(int portType, int posinBox,GBoxModel *blackBox, BlackBoxInputDescriptor *desc); + int createGOutputPort(int portType, int posinBox,GBoxModel *blackBox, BlackBoxOutputDescriptor *desc); + int createGConnector(GPortModel* startPort); void registerController(InteractorStyleMaracas *param); + void unregisterController(InteractorStyleMaracas *param); vtkRenderWindow* getRenderWindow(); vtkRenderer* getRenderer(); void disconnectDrop(); + virtual bool OnChar(); virtual bool OnMouseMove(); virtual bool OnLeftButtonDown(); virtual bool OnLeftButtonUp(); virtual bool OnRightButtonUp(); + virtual bool OnLeftDClick(); virtual void update(int idController,int command); void displayBlackBoxInfo(std::string packageName, std::string boxName); + void updateStatusBar(std::string textStatus); + std::string getDiagramScript(); + void deleteObject(int id); + void deleteAllBoxes(); + void saveDiagram(std::string &content); + void loadDiagram(ifstream &inputStream); + void centerView(); + + void refreshScene(); + std::vector getBoxes(); + std::vector getConnections(); + + bool isComplexBox(); + void setComplexBox(bool val); + private: wxGEditorTabPanel *_parent; - // Last controller created - int _idLastController; - // Id of the manager, the same of the panel int _idManager; @@ -136,6 +155,8 @@ namespace bbtk //Saves the id's of the selected objects in the controllers map std::vector _selectedObjects; + bool _isComplexBox; + protected: };