#include <wxVtk3DBaseView.h>
//Includes std
-#include <iostream>
+#include <fstream>
namespace bbtk
{
void editBlackBox(GBlackBoxModel *bbmodel);
// Save diagram as BBG
- void saveDiagram(std::string &content);
+ void saveDiagram(std::string &content, const std::string &path); //DFCH
+
+ // Save temporary diagram as BBG
+ void saveTempDiagram();
+
+ // Save temporary diagram as BBG and update buttons
+ void saveTempandUpdate();
// Load BBG diagram
- void loadDiagram(ifstream &inputStream);
+ void loadDiagram(ifstream &inputStream, const std::string &path); //DFCH
+
+ // Load temporary diagram as BBG
+ void loadTempDiagram(unsigned short un);
+
+ // evaluate the position in the undo actions list
+ unsigned short getUndoState();
+
+ // evaluate the position in the redo actions list
+ unsigned short getRedoState();
// Add a new complex input object to the scene
void addComplexInputPort(std::string portName);
wxVtkSceneManager* getSceneManager();
-
+ void SetFullPath( const std::string& );
+ void SetFileName( const std::string& );
void SetCbName(std::string cbName);
void SetCbPackageName(std::string packagename);
void SetAuthor(std::string author);
void SetCategory(std::string category);
void SetDescription(std::string description);
+ //Getters
+ std::string GetFullPath( );
+ std::string GetFileName( );
+
std::string GetCbName();
std::string GetCbPackageName();
std::string GetAuthor();
//=========================================================================
private:
+ std::vector<std::string> states; // represents each modification of the tab. Maxixum size 100!!
+ std::vector<std::string>::iterator _actualdo; // actual position on modifications vector
int _id;
wxAuiManager *_panelAUIMgr;
wxVtkSceneManager *_sceneManager;
wxTabPanelsManager *_panelsManager;
+ std::string _fullPath;
+ std::string _fileName;
protected: