+*/
+
+bool GBoxController::OnLeftButtonDown()
+{
+// _objHasBeenMoved = false;
+ _isLeftClickDown = true;
+ bool ok=true;
+ int X,Y;
+ crea::wxVTKRenderWindowInteractor *_wxVTKiren;
+ _wxVTKiren= _vtkInteractorStyleBaseView->GetWxVtk3DBaseView()->GetWxVTKRenderWindowInteractor();
+ _wxVTKiren->GetEventPosition( X , Y );
+ int state = _view->getState();
+ //Evaluate new state
+ if(_view->isPointInside(X,Y))
+ {
+// if(state == HIGHLIGHTED)
+//EED3oct2010 if ( (state == HIGHLIGHTED) && (ctrlkey==1 ) )
+ if(state == SELECTED)
+ {
+ _view->setState(NOTHING_HAPPENS);
+ _model->notifyObservers(getId(),REMOVE_FROM_SELECTED);
+ } else {
+ ok=false;
+ _view->setState(SELECTED);
+ _model->notifyObservers(getId(),ADD_TO_SELECTED);
+ }
+ } // EED 2022-09-16
+ int shiftkey = _vtkInteractorStyleBaseView->GetInteractor()->GetShiftKey();
+ int ctrlkey = _vtkInteractorStyleBaseView->GetInteractor()->GetControlKey();
+ ctrlkey = ctrlkey + shiftkey;
+ if ( (state==DRAG) && (ctrlkey==1) && (_view->isPointInside(X,Y)==true) )
+ {
+ _view->setState(NOTHING_HAPPENS);
+ _model->notifyObservers(getId(),REMOVE_FROM_SELECTED);
+ }
+ return ok;
+}
+
+