VRUT::Navigation::NavigationStyleCameraManipulatorSpecific Class Reference

Type for CameraManipulator specific variables needed for a proper emulation. More...

#include <navigation.h>

Inheritance diagram for VRUT::Navigation::NavigationStyleCameraManipulatorSpecific:

NavigationStyleInterface

List of all members.

Public Member Functions

 NavigationStyleCameraManipulatorSpecific (const MODULE_ID &_id, const wxString &_name, Navigation *navigation)
void getAndFixButtonValues (const wxCommandEvent &evt)
void registerButtons ()
bool isAnyButtonSelected () const
void buttonEvent ()
void updateParams (const wxCommandEvent &evt)
 Updates the module specific registered parameters.
void keyStyle (wxKeyEvent &evt)
 CameraManipulator key style.
void mouseStyle (wxMouseEvent &evt)
 CameraManipulator mouse style.

Private Attributes

Navigationnavigation
 C++ does not allow the embedded class to see its surrounding class, so we need this pointer.


Detailed Description

Type for CameraManipulator specific variables needed for a proper emulation.

Definition at line 88 of file navigation.h.


Constructor & Destructor Documentation

Navigation::NavigationStyleCameraManipulatorSpecific::NavigationStyleCameraManipulatorSpecific ( const MODULE_ID _id,
const wxString &  _name,
Navigation navigation 
)

Definition at line 1127 of file navigation.cpp.

01128 : NavigationStyleInterface(wxT("Default"))
01129 {
01130        this->navigation = navigation;
01131 }


Member Function Documentation

void VRUT::Navigation::NavigationStyleCameraManipulatorSpecific::getAndFixButtonValues ( const wxCommandEvent &  evt  )  [inline, virtual]

Implements NavigationStyleInterface.

Definition at line 94 of file navigation.h.

00094 {}

void VRUT::Navigation::NavigationStyleCameraManipulatorSpecific::registerButtons (  )  [inline, virtual]

Implements NavigationStyleInterface.

Definition at line 95 of file navigation.h.

00095 {}

bool VRUT::Navigation::NavigationStyleCameraManipulatorSpecific::isAnyButtonSelected (  )  const [inline]

Definition at line 96 of file navigation.h.

00096 {};

void VRUT::Navigation::NavigationStyleCameraManipulatorSpecific::buttonEvent (  )  [inline, virtual]

Implements NavigationStyleInterface.

Definition at line 97 of file navigation.h.

00097 {}

void VRUT::Navigation::NavigationStyleCameraManipulatorSpecific::updateParams ( const wxCommandEvent &  evt  )  [inline, virtual]

Updates the module specific registered parameters.

Implements NavigationStyleInterface.

Definition at line 99 of file navigation.h.

00099 {}

void Navigation::NavigationStyleCameraManipulatorSpecific::keyStyle ( wxKeyEvent &  evt  )  [virtual]

CameraManipulator key style.

Implements NavigationStyleInterface.

Definition at line 1133 of file navigation.cpp.

01134 {
01135        if (int(navigation->windowID) == evt.GetId() && evt.GetEventType() == wxEVT_KEY_UP)
01136        {
01137               switch (evt.GetKeyCode())
01138               {
01139               case WXK_SPACE:
01140                      {
01141                             wxCommandEvent fsEvt = Event::GET_EVT_RENDER_FULLSCREEN_TOGGLE(navigation->windowID);
01142                             navigation->PostToKernel(fsEvt);
01143                      }
01144                      break;
01145               case WXK_ESCAPE:
01146                      {
01147                             wxCommandEvent fsEvt = Event::GET_EVT_RENDER_FULLSCREEN_SET(navigation->windowID, false);
01148                             navigation->PostToKernel(fsEvt);
01149                      }
01150                      break;
01151               }
01152        }
01153 }

void Navigation::NavigationStyleCameraManipulatorSpecific::mouseStyle ( wxMouseEvent &  evt  )  [virtual]

CameraManipulator mouse style.

Implements NavigationStyleInterface.

Definition at line 1155 of file navigation.cpp.

01156 {
01157        NODE_ID cameraID = navigation->getCameraID();
01158        Scene * scene = navigation->GetSceneMgr()->GetScene(navigation->getSceneID());
01159        const SceneNode * camNode = scene->GetNode(cameraID);
01160        Camera * camera = (Camera *)(const_cast<SceneNode *>(camNode));
01161 
01162        if (evt.LeftDClick() && !evt.Moving())
01163        {
01164               navigation->select(scene, camera, evt);
01165        }
01166 
01167        navigation->mouseDelta = wxPoint(evt.GetPosition().x - navigation->lastPos.x, evt.GetPosition().y - navigation->lastPos.y);
01168        if (evt.Dragging() && evt.MiddleIsDown())
01169        {
01170               navigation->zoom(scene, camera, cameraID, navigation->mouseDelta.y, navigation->zoomspeed);
01171        }
01172        else if (evt.Dragging() && evt.RightIsDown())
01173        {
01174               navigation->pan(scene, camera, cameraID, navigation->mouseDelta, navigation->panspeed);
01175        }
01176        else if (evt.Dragging() && evt.LeftIsDown())
01177        {
01178               navigation->rotate(scene, camera, cameraID, evt.GetPosition(), navigation->mouseDelta, false, false, false);
01179        }
01180        else
01181               evt.Skip();
01182 
01183        navigation->lastPos = evt.GetPosition();
01184 }


Member Data Documentation

C++ does not allow the embedded class to see its surrounding class, so we need this pointer.

Definition at line 91 of file navigation.h.


The documentation for this class was generated from the following files:

Generated on Tue Mar 10 14:41:48 2009 for VRUT by  doxygen 1.5.5