X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsVtkGUIEditorGraphic%2FGObjectController.cxx;h=06958b67c9929eeb7b32905e415b14ae4b32d8c9;hb=0dfaa8eefbfad1092161af92ba548f1172ed6652;hp=745cbf22c8e3d2e05879d085b2fd3416db7bcc09;hpb=f4dd416d1d3a91b9d684f55a14d78c6b54f2725a;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/GObjectController.cxx b/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/GObjectController.cxx index 745cbf2..06958b6 100644 --- a/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/GObjectController.cxx +++ b/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/GObjectController.cxx @@ -8,189 +8,189 @@ Version: $Revision$ /* --------------------------------------------------------------------- -* Copyright (c) CREATIS-LRMN (Centre de Recherche en Imagerie Medicale) -* Authors : Eduardo Davila, Laurent Guigues, Jean-Pierre Roux -* -* This software is governed by the CeCILL-B license under French law and -* abiding by the rules of distribution of free software. You can use, -* modify and/ or redistribute the software under the terms of the CeCILL-B -* license as circulated by CEA, CNRS and INRIA at the following URL -* http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html -* or in the file LICENSE.txt. -* -* As a counterpart to the access to the source code and rights to copy, -* modify and redistribute granted by the license, users are provided only -* with a limited warranty and the software's author, the holder of the -* economic rights, and the successive licensors have only limited -* liability. -* -* The fact that you are presently reading this means that you have had -* knowledge of the CeCILL-B license and that you accept its terms. -* ------------------------------------------------------------------------ */ + * Copyright (c) CREATIS-LRMN (Centre de Recherche en Imagerie Medicale) + * Authors : Eduardo Davila, Laurent Guigues, Jean-Pierre Roux + * + * This software is governed by the CeCILL-B license under French law and + * abiding by the rules of distribution of free software. You can use, + * modify and/ or redistribute the software under the terms of the CeCILL-B + * license as circulated by CEA, CNRS and INRIA at the following URL + * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html + * or in the file LICENSE.txt. + * + * As a counterpart to the access to the source code and rights to copy, + * modify and redistribute granted by the license, users are provided only + * with a limited warranty and the software's author, the holder of the + * economic rights, and the successive licensors have only limited + * liability. + * + * The fact that you are presently reading this means that you have had + * knowledge of the CeCILL-B license and that you accept its terms. + * ------------------------------------------------------------------------ */ /** -* \file -* \brief Class bbtk::GObjectController -*/ + * \file + * \brief Class bbtk::GObjectController + */ #include "GObjectController.h" + #ifdef _DEBUG #define new DEBUG_NEW #endif namespace bbtk { + //========================================================================= + + GObjectController::GObjectController( ) { + + } + + //========================================================================= + + GObjectController::~GObjectController( ) { + } + //========================================================================= - //========================================================================= - GObjectController::GObjectController() - { + void GObjectController::setModelAndView( GObjectModel* model , vtkGObjectView* view ) { + _model = model ; + _view = view ; + } - } + //========================================================================= - //========================================================================= + bool GObjectController::OnMouseMove( ) { + int X , Y ; + wxVTKRenderWindowInteractor *_wxVTKiren ; + _wxVTKiren = _vtkInteractorStyleBaseView->GetWxVtk3DBaseView( )->GetWxVTKRenderWindowInteractor( ) ; + _wxVTKiren->GetEventPosition( X , Y ) ; + int state = _view->getState( ) ; - GObjectController::~GObjectController() - { - } - //========================================================================= + //Evaluate new state + if ( state == NOTHING_HAPPENS ) { + if ( _view->isPointInside( X , Y ) ) { + _view->setState( HIGHLIGHTED ) ; + } + } + if ( state == HIGHLIGHTED ) { + if ( !_view->isPointInside( X , Y ) ) { + _view->setState( NOTHING_HAPPENS ) ; + } + } - void GObjectController::setModelAndView(GObjectModel* model, vtkGObjectView* view) - { - _model = model; - _view = view; - } + // JGRR & CM WH - //========================================================================= + if ( state == POSSIBLE_CONNECTION ) { + if ( _view->isPointInside( X , Y ) ) { + _view->setState( SELECTED_POSSIBLE_CONNECTION ) ; + } + } - bool GObjectController::OnMouseMove() - { - int X,Y; - wxVTKRenderWindowInteractor *_wxVTKiren; - _wxVTKiren= _vtkInteractorStyleBaseView->GetWxVtk3DBaseView()->GetWxVTKRenderWindowInteractor(); - _wxVTKiren->GetEventPosition( X , Y ); - int state = _view->getState(); + if ( state == SELECTED_POSSIBLE_CONNECTION ) { + if ( !_view->isPointInside( X , Y ) ) { + _view->setState( POSSIBLE_CONNECTION ) ; + } + } - //Evaluate new state - if( state == NOTHING_HAPPENS) - { - if(_view->isPointInside(X,Y)) - { - _view->setState(HIGHLIGHTED); - } - } - if( state==HIGHLIGHTED) - { - if(!_view->isPointInside(X,Y)) - { - _view->setState(NOTHING_HAPPENS); - } - } + // EO JGRR & CM WH - //_model->notifyObservers(getId()); + _model->notifyObservers( getId( ) ) ; - return true; - } + return true ; + } - //========================================================================= + //========================================================================= - bool GObjectController::OnLeftButtonDown()//virtual - { - int state = _view->getState(); + bool GObjectController::OnLeftButtonDown( )//virtual + { + int state = _view->getState( ) ; - //Evaluate new state - if(state == HIGHLIGHTED) - { - _isLeftClickDown=true; - _view->setState(SELECTED); - } - return true; - } + //Evaluate new state + if ( state == HIGHLIGHTED ) { + _isLeftClickDown = true ; + _view->setState( SELECTED ) ; + } + return true ; + } - //========================================================================= + //========================================================================= - bool GObjectController::OnLeftButtonUp()//virtual - { - return true; - } + bool GObjectController::OnLeftButtonUp( )//virtual + { + return true ; + } - //========================================================================= + //========================================================================= - bool GObjectController::OnLeftDClick()//virtual - { + bool GObjectController::OnLeftDClick( )//virtual + { - return true; - } + return true ; + } - //========================================================================= + //========================================================================= - bool GObjectController::OnMiddleButtonDown()//virtual - { - return true; - } + bool GObjectController::OnMiddleButtonDown( )//virtual + { + return true ; + } - //========================================================================= + //========================================================================= - void GObjectController::moveObject(int X,int Y) - { - _view->moveObject(X,Y); - } + void GObjectController::moveObject( int X , int Y ) { + _view->moveObject( X , Y ) ; + } - //========================================================================= + //========================================================================= - int GObjectController::getGObjectType() - { - return _model->getGObjectType(); - } + int GObjectController::getGObjectType( ) { + return _model->getGObjectType( ) ; + } - //========================================================================= + //========================================================================= - GObjectModel* GObjectController::getModel() - { - return _model; - } + GObjectModel* GObjectController::getModel( ) { + return _model ; + } - //========================================================================= + //========================================================================= - vtkGObjectView* GObjectController::getView() - { - return _view; - } + vtkGObjectView* GObjectController::getView( ) { + return _view ; + } - //========================================================================= + //========================================================================= - int GObjectController::getId() - { - return _model->getObjectId(); - } + int GObjectController::getId( ) { + return _model->getObjectId( ) ; + } - //========================================================================= + //========================================================================= - void GObjectController::setId(int id) - { - _model->setObjectId(id); - } + void GObjectController::setId( int id ) { + _model->setObjectId( id ) ; + } - //========================================================================= + //========================================================================= - std::string GObjectController::getStatusText() - { - return _model->getStatusText(); - } + std::string GObjectController::getStatusText( ) { + return _model->getStatusText( ) ; + } - //========================================================================= + //========================================================================= - void GObjectController::removeFromScene() - { - _view->removeFromScene(); - } + void GObjectController::removeFromScene( ) { + _view->removeFromScene( ) ; + } - //========================================================================= + //========================================================================= -} // EO namespace bbtk +} // EO namespace bbtk // EOF