]> Creatis software - bbtkGEditor.git/blobdiff - lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGObjectView.cxx
Move box and refresh position ... ports don't refresh automatically their position...
[bbtkGEditor.git] / lib / EditorGraphicBBS / bbsVtkGUIEditorGraphic / vtkGObjectView.cxx
index c20afadbdf133627b4720f415ebbead9035d549c..4e92f740266fb4bcd745c0e1b69145f9342e7b64 100644 (file)
@@ -45,6 +45,7 @@ namespace bbtk
        {
                _baseView=NULL;
                _objectActor=NULL;
+               _isFirstDragging=false;
        }
 
        //=========================================================================
@@ -53,7 +54,7 @@ namespace bbtk
        }
        //=========================================================================
 
-       void vtkGObjectView::update()//virtual
+       void vtkGObjectView::update(int command)//virtual
        {
                //virtual
        }
@@ -97,7 +98,7 @@ namespace bbtk
 
        //=========================================================================
 
-       bool vtkGObjectView::isPointInside(int X,int Y) 
+       bool vtkGObjectView::isPointInside(int X,int Y) //virtual
        {
                double xx=X,yy=Y,zz=0;
                _baseView->TransCoordScreenToWorld(xx,yy,zz);
@@ -106,6 +107,38 @@ namespace bbtk
 
        //=========================================================================
 
+       void vtkGObjectView::moveObject(int X,int Y) //virtual
+       {               
+               double xx=X,yy=Y,zz=0;
+               _baseView->TransCoordScreenToWorld(xx,yy,zz);
+
+               
+
+               if(_isFirstDragging)
+               {
+                       _isFirstDragging=false;
+                       
+                       double xInic,yInic,zInic;
+                       _model->getInicPoint(xInic,yInic,zInic);                        
+                       dragDifX=xx-xInic;
+                       dragDifY=yy-yInic;      
+               }
+
+               _model->move(xx-dragDifX,yy-dragDifY,zz);
+
+       }
+
+       //=========================================================================
+
+       void vtkGObjectView::isFirstDragging(bool param)
+       {
+               _isFirstDragging=param;
+               dragDifX=0;
+               dragDifX=0;
+       }
+
+       //=========================================================================
+
 }  // EO namespace bbtk
 
 // EOF