]> Creatis software - bbtkGEditor.git/blobdiff - lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/GPortController.cxx
Organizing code, the state now is in the view and the general render was simplified...
[bbtkGEditor.git] / lib / EditorGraphicBBS / bbsVtkGUIEditorGraphic / GPortController.cxx
index 7e66a83ecfe11dbe44a366f80583dfc4c0b15d83..b2f863be11d9c522f89e343c1e2a4b70b3e138f4 100644 (file)
@@ -62,18 +62,18 @@ namespace bbtk
                        wxVTKiren = _vtkInteractorStyleBaseView->GetWxVtk3DBaseView()->GetWxVTKRenderWindowInteractor();
                        wxVTKiren->GetEventPosition(X,Y);
 
-                       int state  = _model->getState();
+                       int state  = _view->getState();
                        
                        int portType = ((GPortModel*)_model)->getPortType();
 
                        //Evaluate new state
                        if(!_model->hasChanged() && state==HIGHLIGHTED && portType==GOUTPUTPORT )
                        {
-                               _model->setState(CREATING_CONTOUR);
+                               _view->setState(CREATING_CONTOUR);
                                _model->setChanged();
                        }
 
-                       _model->notifyObservers();
+                       _model->notifyObservers(_id);
 
                }
                return true;
@@ -88,21 +88,22 @@ namespace bbtk
                        wxVTKiren = _vtkInteractorStyleBaseView->GetWxVtk3DBaseView()->GetWxVTKRenderWindowInteractor();
                        wxVTKiren->GetEventPosition(X,Y);
 
-                       int state  = _model->getState();
+                       int state  = _view->getState();
                        
                        //Evaluate new state
                        if(!_model->hasChanged() && state==CREATING_CONTOUR)
                        {
                                if(_view->isPointInside(X,Y))
                                {
+                                       _view->setState(CREATING_CONTOUR);
                                        _model->setChanged();
-                                       _model->notifyObservers(INIT_CREATION_CONTOUR);
+                                       _model->notifyObservers(_id,INIT_CREATION_CONTOUR);
                                }
                                else
                                {
-                                       _model->setState(NOTHING_HAPPENS);
+                                       _view->setState(NOTHING_HAPPENS);
                                        _model->setChanged();
-                                       _model->notifyObservers();
+                                       _model->notifyObservers(_id);
                                }
                        }