#include <GBoxController.h>
Public Member Functions | |
GBoxController () | |
~GBoxController () | |
void | setModelAndView (GObjectModel *model, vtkGObjectView *view) |
int | getGObjectType () |
GObjectModel * | getModel () |
vtkGObjectView * | getView () |
std::string | getStatusText () |
int | getId () |
void | setId (int id) |
virtual void | removeFromScene () |
Protected Member Functions | |
virtual bool | OnMouseMove () |
virtual bool | OnLeftButtonDown () |
virtual bool | OnLeftButtonUp () |
virtual bool | OnMiddleButtonDown () |
virtual bool | OnRightButtonUp () |
virtual bool | OnLeftDClick () |
virtual void | moveObject (int X, int Y) |
Protected Attributes | |
GObjectModel * | _model |
vtkGObjectView * | _view |
bool | _isLeftClickDown |
Definition at line 61 of file GBoxController.h.
bbtk::GBoxController::GBoxController | ( | ) |
bbtk::GBoxController::~GBoxController | ( | ) |
int bbtk::GObjectController::getGObjectType | ( | ) | [inherited] |
Definition at line 151 of file GObjectController.cxx.
References bbtk::GObjectController::_model, and bbtk::GObjectModel::getGObjectType().
Referenced by bbtk::wxVtkSceneManager::addObjects(), bbtk::wxVtkSceneManager::deleteObject(), bbtk::wxVtkSceneManager::DuplicateObjects(), bbtk::wxVtkSceneManager::getBlackBoxes(), bbtk::wxVtkSceneManager::getComplexInputPorts(), bbtk::wxVtkSceneManager::getComplexOutputPorts(), bbtk::wxVtkSceneManager::getConnections(), bbtk::wxVtkSceneManager::getDiagramBBS(), bbtk::wxVtkSceneManager::GetGBlackBoxControlerPointedByMouse(), bbtk::wxVtkSceneManager::getSelectedObjects(), bbtk::wxVtkSceneManager::OnLeftButtonDown(), bbtk::wxVtkSceneManager::OnMouseMove(), bbtk::wxVtkSceneManager::saveComplexBoxBBS(), and bbtk::wxVtkSceneManager::update().
00151 { 00152 return _model->getGObjectType( ) ; 00153 }
int bbtk::GObjectController::getId | ( | ) | [inherited] |
Definition at line 169 of file GObjectController.cxx.
References bbtk::GObjectController::_model, and bbtk::GObjectModel::getObjectId().
Referenced by bbtk::wxVtkSceneManager::addObjects(), bbtk::wxVtkSceneManager::createGInputPort(), bbtk::wxVtkSceneManager::createGOutputPort(), bbtk::wxVtkSceneManager::DuplicateObjects(), bbtk::wxVtkSceneManager::getBlackBoxes(), bbtk::wxVtkSceneManager::getComplexInputPorts(), bbtk::wxVtkSceneManager::getComplexOutputPorts(), bbtk::wxVtkSceneManager::getConnections(), bbtk::wxVtkSceneManager::getSelectedObjects(), bbtk::wxVtkSceneManager::MakeBoxExecutable(), OnLeftButtonDown(), bbtk::GBlackBoxController::OnLeftButtonDown(), bbtk::GPortController::OnLeftButtonUp(), bbtk::GConnectorController::OnLeftButtonUp(), OnLeftButtonUp(), bbtk::GBlackBoxController::OnLeftButtonUp(), bbtk::GBlackBoxController::OnMiddleButtonDown(), bbtk::GObjectController::OnMouseMove(), OnMouseMove(), and bbtk::GBlackBoxController::OnMouseMove().
00169 { 00170 return _model->getObjectId( ) ; 00171 }
GObjectModel * bbtk::GObjectController::getModel | ( | ) | [inherited] |
Definition at line 157 of file GObjectController.cxx.
References bbtk::GObjectController::_model.
Referenced by bbtk::wxVtkSceneManager::addObjects(), bbtk::wxVtkSceneManager::boxExist(), bbtk::wxVtkSceneManager::CancelConnection(), bbtk::wxVtkSceneManager::configGBlackBox(), bbtk::wxVtkSceneManager::configGComBoxInputOutputPort(), bbtk::wxVtkSceneManager::configGConnetion(), bbtk::wxVtkSceneManager::createGComplexBoxInputPort(), bbtk::wxVtkSceneManager::createGComplexBoxOutputPort(), bbtk::wxVtkSceneManager::createGInputPort(), bbtk::wxVtkSceneManager::createGOutputPort(), bbtk::wxVtkSceneManager::deleteObject(), bbtk::wxVtkSceneManager::DuplicateObjects(), bbtk::wxVtkSceneManager::getDiagramBBS(), bbtk::wxVtkSceneManager::getSelectedObjects(), bbtk::wxVtkSceneManager::MakeBoxExecutable(), bbtk::wxVtkSceneManager::OnLeftButtonDown(), bbtk::wxVtkSceneManager::OnLeftButtonUp(), bbtk::wxVtkSceneManager::OnLeftDClick(), bbtk::wxVtkSceneManager::OnMouseMove(), bbtk::wxVtkSceneManager::saveComplexBoxBBS(), bbtk::wxVtkSceneManager::saveDiagram(), bbtk::wxVtkSceneManager::UnSelectBlackBoxes(), and bbtk::wxVtkSceneManager::update().
00157 { 00158 return _model ; 00159 }
std::string bbtk::GObjectController::getStatusText | ( | ) | [inherited] |
Definition at line 181 of file GObjectController.cxx.
References bbtk::GObjectController::_model, and bbtk::GObjectModel::getStatusText().
Referenced by bbtk::wxVtkSceneManager::OnMouseMove().
00181 { 00182 return _model->getStatusText( ) ; 00183 }
vtkGObjectView * bbtk::GObjectController::getView | ( | ) | [inherited] |
Definition at line 163 of file GObjectController.cxx.
References bbtk::GObjectController::_view.
Referenced by bbtk::wxVtkSceneManager::addObjects(), bbtk::wxVtkSceneManager::CancelConnection(), bbtk::wxVtkSceneManager::configGConnetion(), bbtk::wxVtkSceneManager::DuplicateObjects(), bbtk::wxVtkSceneManager::GetGBlackBoxControlerPointedByMouse(), bbtk::wxVtkSceneManager::getSelectedObjects(), bbtk::wxVtkSceneManager::MakeBoxExecutable(), bbtk::wxVtkSceneManager::OnLeftButtonDown(), bbtk::wxVtkSceneManager::OnLeftButtonUp(), bbtk::wxVtkSceneManager::OnMouseMove(), bbtk::wxVtkSceneManager::UnSelectBlackBoxes(), and bbtk::wxVtkSceneManager::update().
00163 { 00164 return _view ; 00165 }
void bbtk::GObjectController::moveObject | ( | int | X, | |
int | Y | |||
) | [protected, virtual, inherited] |
Definition at line 145 of file GObjectController.cxx.
References bbtk::GObjectController::_view, and bbtk::vtkGObjectView::moveObject().
00145 { 00146 _view->moveObject( X , Y ) ; 00147 }
bool bbtk::GBoxController::OnLeftButtonDown | ( | ) | [protected, virtual] |
Reimplemented from bbtk::GObjectController.
Reimplemented in bbtk::GBlackBoxController.
Definition at line 95 of file GBoxController.cxx.
References bbtk::GObjectController::_isLeftClickDown, bbtk::GObjectController::_model, bbtk::GObjectController::_view, bbtk::ADD_TO_SELECTED, bbtk::GObjectController::getId(), bbtk::vtkGObjectView::getState(), bbtk::HIGHLIGHTED, bbtk::Observable::notifyObservers(), bbtk::SELECTED, and bbtk::vtkGObjectView::setState().
00096 { 00097 bool ok=true; 00098 printf("EED GBoxController::OnLeftButtonDown \n"); 00099 int state = _view->getState(); 00100 00101 //Evaluate new state 00102 if(state == HIGHLIGHTED) 00103 { 00104 ok=false; 00105 _isLeftClickDown=true; 00106 _view->setState(SELECTED); 00107 _model->notifyObservers(getId(),ADD_TO_SELECTED); 00108 } 00109 return ok; 00110 00111 }
bool bbtk::GBoxController::OnLeftButtonUp | ( | ) | [protected, virtual] |
Reimplemented from bbtk::GObjectController.
Reimplemented in bbtk::GBlackBoxController.
Definition at line 115 of file GBoxController.cxx.
References bbtk::GObjectController::_isLeftClickDown, bbtk::GObjectController::_model, bbtk::GObjectController::_view, bbtk::GObjectController::getId(), bbtk::vtkGObjectView::getState(), bbtk::vtkGObjectView::isPointInside(), bbtk::Observable::notifyObservers(), bbtk::SELECTED, and bbtk::vtkGObjectView::setState().
00116 { 00117 int X,Y; 00118 wxVTKRenderWindowInteractor *wxVTKiren; 00119 wxVTKiren = _vtkInteractorStyleBaseView->GetWxVtk3DBaseView()->GetWxVTKRenderWindowInteractor(); 00120 wxVTKiren->GetEventPosition(X,Y); 00121 00122 int state = _view->getState(); 00123 //Evaluate new state 00124 if(_isLeftClickDown) 00125 { 00126 _isLeftClickDown=false; 00127 if(_view->isPointInside(X,Y)) 00128 { 00129 // It is supposed that I'm always inside even if the box is in drag 00130 _view->setState(SELECTED); 00131 _model->notifyObservers(getId()); 00132 } 00133 } 00134 return true; 00135 00136 }
bool bbtk::GObjectController::OnLeftDClick | ( | ) | [protected, virtual, inherited] |
bool bbtk::GBoxController::OnMiddleButtonDown | ( | ) | [protected, virtual] |
Reimplemented from bbtk::GObjectController.
Reimplemented in bbtk::GBlackBoxController.
Definition at line 147 of file GBoxController.cxx.
bool bbtk::GBoxController::OnMouseMove | ( | ) | [protected, virtual] |
Reimplemented from bbtk::GObjectController.
Reimplemented in bbtk::GBlackBoxController.
Definition at line 58 of file GBoxController.cxx.
References bbtk::GObjectController::_model, bbtk::GObjectController::_view, bbtk::GObjectController::getId(), bbtk::vtkGObjectView::getState(), bbtk::HIGHLIGHTED, bbtk::vtkGObjectView::isPointInside(), bbtk::NOTHING_HAPPENS, bbtk::Observable::notifyObservers(), and bbtk::vtkGObjectView::setState().
00059 { 00060 00061 if ( _vtkInteractorStyleBaseView!=NULL) 00062 { 00063 int X,Y; 00064 wxVTKRenderWindowInteractor *_wxVTKiren; 00065 _wxVTKiren = _vtkInteractorStyleBaseView->GetWxVtk3DBaseView()->GetWxVTKRenderWindowInteractor(); 00066 _wxVTKiren->GetEventPosition( X , Y ); 00067 00068 int state = _view->getState(); 00069 00070 //Evaluate new state 00071 00072 if(state == NOTHING_HAPPENS) 00073 { 00074 if(_view->isPointInside(X,Y)) 00075 { 00076 _view->setState(HIGHLIGHTED); 00077 } 00078 } 00079 if( state==HIGHLIGHTED) 00080 { 00081 if(!_view->isPointInside(X,Y)) 00082 { 00083 _view->setState(NOTHING_HAPPENS); 00084 } 00085 } 00086 00087 _model->notifyObservers(getId()); 00088 00089 } 00090 return true; 00091 }
bool bbtk::GBoxController::OnRightButtonUp | ( | ) | [protected, virtual] |
void bbtk::GObjectController::removeFromScene | ( | ) | [virtual, inherited] |
Reimplemented in bbtk::GConnectorController.
Definition at line 187 of file GObjectController.cxx.
References bbtk::GObjectController::_view, and bbtk::vtkGObjectView::removeFromScene().
Referenced by bbtk::wxVtkSceneManager::deleteAllBoxes(), and bbtk::wxVtkSceneManager::deleteObject().
00187 { 00188 _view->removeFromScene( ) ; 00189 }
void bbtk::GObjectController::setId | ( | int | id | ) | [inherited] |
Definition at line 175 of file GObjectController.cxx.
References bbtk::GObjectController::_model, and bbtk::GObjectModel::setObjectId().
00175 { 00176 _model->setObjectId( id ) ; 00177 }
void bbtk::GObjectController::setModelAndView | ( | GObjectModel * | model, | |
vtkGObjectView * | view | |||
) | [inherited] |
Definition at line 58 of file GObjectController.cxx.
References bbtk::GObjectController::_model, and bbtk::GObjectController::_view.
Referenced by bbtk::wxVtkSceneManager::createGBlackBox(), bbtk::wxVtkSceneManager::createGComplexBoxInputPort(), bbtk::wxVtkSceneManager::createGComplexBoxOutputPort(), bbtk::wxVtkSceneManager::createGConnector(), and bbtk::wxVtkSceneManager::createGPort().
bool bbtk::GObjectController::_isLeftClickDown [protected, inherited] |
Definition at line 100 of file GObjectController.h.
Referenced by bbtk::GPortController::GPortController(), bbtk::GPortController::OnLeftButtonDown(), bbtk::GObjectController::OnLeftButtonDown(), OnLeftButtonDown(), bbtk::GBlackBoxController::OnLeftButtonDown(), bbtk::GPortController::OnLeftButtonUp(), OnLeftButtonUp(), bbtk::GBlackBoxController::OnLeftButtonUp(), and bbtk::GBlackBoxController::OnMouseMove().
GObjectModel* bbtk::GObjectController::_model [protected, inherited] |
Definition at line 97 of file GObjectController.h.
Referenced by bbtk::GObjectController::getGObjectType(), bbtk::GObjectController::getId(), bbtk::GObjectController::getModel(), bbtk::GObjectController::getStatusText(), OnLeftButtonDown(), bbtk::GBlackBoxController::OnLeftButtonDown(), bbtk::GPortController::OnLeftButtonUp(), bbtk::GConnectorController::OnLeftButtonUp(), OnLeftButtonUp(), bbtk::GBlackBoxController::OnLeftButtonUp(), bbtk::GBlackBoxController::OnMiddleButtonDown(), bbtk::GObjectController::OnMouseMove(), OnMouseMove(), bbtk::GBlackBoxController::OnMouseMove(), bbtk::GConnectorController::removeFromScene(), bbtk::GObjectController::setId(), and bbtk::GObjectController::setModelAndView().
vtkGObjectView* bbtk::GObjectController::_view [protected, inherited] |
Definition at line 98 of file GObjectController.h.
Referenced by bbtk::GObjectController::getView(), bbtk::GObjectController::moveObject(), bbtk::GPortController::OnLeftButtonDown(), bbtk::GObjectController::OnLeftButtonDown(), OnLeftButtonDown(), bbtk::GBlackBoxController::OnLeftButtonDown(), bbtk::GPortController::OnLeftButtonUp(), bbtk::GConnectorController::OnLeftButtonUp(), OnLeftButtonUp(), bbtk::GBlackBoxController::OnLeftButtonUp(), bbtk::GBlackBoxController::OnMiddleButtonDown(), bbtk::GObjectController::OnMouseMove(), OnMouseMove(), bbtk::GBlackBoxController::OnMouseMove(), bbtk::GObjectController::removeFromScene(), and bbtk::GObjectController::setModelAndView().