wxVtkSceneManager::wxVtkSceneManager(wxGEditorTabPanel *parent, wxVtk3DBaseView *baseView, int idManager,Factory::Pointer bbtkfactory)
{
_cbName = "ComplexBoxName";
- _cbPackageName = "PackageName";
+ _cbPackageName = "PackageName";
_Author = "Author ??";
_Category = "<VOID>";
- _Description = "Description ??";
+ _Description = "Description ??";
+ _MessageKind = " ";
+ _MessageLevel = " ";
+
+ _bugTextActor_text = "void";
+ _bugTextActor_status = 0;
_parent = parent;
_numBoxes = 0;
_idManager = idManager;
_baseView = baseView;
- _bbtkfactory = bbtkfactory;
+ _bbtkfactory = bbtkfactory;
- _startDragging = false;
- _isComplexBox = false;
+ _startDragging = false;
+ _isComplexBox = false;
if (_baseView != NULL) {
//EED02JUIN2010
// Actos Port_Text
_textActor = vtkTextActor3D::New();
+// _textActor = vtkTextActor::New();
_textActor->SetPosition(-9999, -9999, GPOSITION_Z);
_textActor->SetInput("<void>");
_textActor->GetTextProperty()->SetFontSize(60);
{
int X, Y;
bool okStatusMessage = false;
- bool okPortMessage = false;
+ bool okPortMessage = false;
wxVTKRenderWindowInteractor *wxVTKiren;
wxVTKiren = _vtkInteractorStyleBaseView->GetWxVtk3DBaseView()->GetWxVTKRenderWindowInteractor();
wxVTKiren->GetEventPosition(X, Y);
if ((state == HIGHLIGHTED) || (state == SELECTED_POSSIBLE_CONNECTION ))
{
// EO JGRR & CM
- okStatusMessage = true;
+ okStatusMessage = true;
updateStatusBar(desc->getStatusText());
if (type == GBLACKBOX)
{
if (type == GPORT)
{
// PortText
- okPortMessage = true;
- py = py + 5;
- _textActor->SetInput(desc->getStatusText().c_str());
- _textActor->SetScale(0.1);
- _textActor->SetPosition(px - 25, py + 1, pz + 2);
-
- // FillPortText
- px = px - 33;
- //py = py;
- _fillObjectActor->SetScale(1);
- _fillObjectActor->GetProperty()->SetOpacity(0.50);
- _fillObjectActor->SetPosition(px, py, 1);
- _aPolygonMapper->Modified();
- } // if GPORT
+ if ( ( _bugTextActor_text==desc->getStatusText() ) || (_bugTextActor_status==0) )
+ {
+ _bugTextActor_status = 1;
+ okPortMessage = true;
+ py = py + 5;
+ _textActor->SetScale(0.1);
+ std::string tmp = desc->getStatusText()+"\n";
+ _textActor->SetInput( tmp.c_str() );
+ _textActor->SetPosition(px - 25, py + 1, pz + 2);
+ _textActor->Modified();
+ // FillPortText
+ px = px - 33;
+ //py = py;
+ _fillObjectActor->SetScale(1);
+ _fillObjectActor->GetProperty()->SetOpacity(0.50);
+ _fillObjectActor->SetPosition(px, py, 1);
+ _aPolygonMapper->Modified();
+ } else {
+ _bugTextActor_status = 2;
+ } // _bugTextActor_tex
+ _bugTextActor_text = desc->getStatusText();
- } // for controllers it
- }
+ } // if GPORT
+ } //if state
+ } // for controllers it
}
if (okStatusMessage == false)
{
updateStatusBar("");
}
- if (okPortMessage == false)
+ if ((okPortMessage == false) || (_bugTextActor_status== 2 ) )
{
+ _bugTextActor_status = 0;
_textActor->SetScale(0.0001);
+ _textActor->SetInput("a\n");
+ _textActor->Modified();
_fillObjectActor->SetScale(0.0001);
}
return true;
//=========================================================================
std::string wxVtkSceneManager::getDiagramBBS(bool wln) {
+ std::cout << "wxVtkSceneManager::getDiagramBBS" << std::endl;
bool existsExec = false;
std::vector<std::string> packages;
script += "\n";
//ups2
-
+
script += LineNumber(wln, lnNmbr);
script += "author \"";
script += _Author;
script += LineNumber(wln, lnNmbr);
script += "new ";
int id = boxes[i];
- GObjectController *control = _controllers[id];
- GBlackBoxModel *model = (GBlackBoxModel*) control->getModel();
+ GObjectController *control = _controllers[id];
+ GBlackBoxModel *model = (GBlackBoxModel*) control->getModel();
+ script += model->getBBTKPackage()+":";
script += model->getBBTKType();
script += " ";
script += model->getBBTKName();
script += "# Complex input ports\n";
script += complexInputs;
+ if((_MessageKind!=" ")&&(_MessageLevel!=" ")){
+ script += LineNumber(wln, lnNmbr);
+ script += "message ";
+ script += _MessageKind;
+ script += " ";
+ script += _MessageLevel;
+ script += "\n";
+ }
+
for (i = 0; i < (int) execBoxes.size(); i++) {
script += LineNumber(wln, lnNmbr);
script += "exec ";
//=========================================================================
std::string wxVtkSceneManager::saveComplexBoxBBS() {
+ std::cout<<"wxVtkSceneManager::saveComplexBoxBBS"<<std::endl;
std::vector<std::string> packages;
std::vector<int> boxes;
std::vector<int> connections;
script += "\n";
+ script += "message ";
+ script += _MessageKind;
+ script += " ";
+ script += _MessageLevel;
+ script += "\n";
+
for (i = 0; i < (int) execBoxes.size(); i++) {
script += "exec ";
int id = execBoxes[i];
sprintf(buffer, "%d", bsize);
content += buffer;
content += "\n";
-
+
for (int i = 0; i < bsize; i++) {
int id = boxes[i];
+ std::cout<<"id "<<id<<std::endl;//CFT
GObjectController *cont = _controllers[id];
+ std::cout<<"nombre: "<<cont->getStatusText()<<std::endl;//CFT
+ std::cout<<"tipo: "<<cont->getModel()->getBBTKType()<<std::endl;//CFT
+ //boxesDiagram[i] = cont->getModel()->getBBTKType();//CFT
+ std::cout<<"nname: "<<cont->getModel()->getBBTKName()<<std::endl;//CFT
+ std::cout<<"categorie: "<<GetCategory()<<std::endl;//CFT
+ std::cout<<"type: "<<cont->getModel()->getGObjectType()<<std::endl;//CFT
cont->getModel()->save(content);
}
//=========================================================================
+void wxVtkSceneManager::SetMessageKind(std::string kind) {
+ _MessageKind = kind;
+
+}
+
+//=========================================================================
+
+std::string wxVtkSceneManager::GetMessageKind(){
+ return _MessageKind;
+}
+
+//=========================================================================
+
+void wxVtkSceneManager::SetMessageLevel(std::string Level){
+ _MessageLevel = Level;
+}
+
+//=========================================================================
+
+std::string wxVtkSceneManager::GetMessageLevel(){
+ return _MessageLevel;
+}
+
+//=========================================================================
+
std::vector< std::string> wxVtkSceneManager::GetExternalInputsNames()
{