//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"
~wxVtkSceneManager();
void configureBaseView();
- void createGBlackBox(int x, int y,std::string packageName, std::string boxType);
- void createGPort(int portType, std::string bbtkName, std::string bbtkType, 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<int> getBoxes();
+ std::vector<int> 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;
//Saves the id's of the selected objects in the controllers map
std::vector<int> _selectedObjects;
+ bool _isComplexBox;
+
protected:
};