MutableView2DPosition just exists as a way to set the values in a View2DPosition object which will be...
void setVoxelPosition(const SbVec3f &pos)
void setDevicePosition(const SbVec2f &pos)
MutableView2DPosition(SoView2D *viewer)
void setViewport(const SbVec2f &origin, const SbVec2f &size)
SoCommandAction is the base class for instantaneous actions.
SoInteractionHandler is a mix-in class for instances of SoNode to handle the interactions it provides...
SoInteractionProvider is an abstract interface class that provides interactions to the SoInteractionC...
SoPointerPosition manages the current position of the mouse cursor.
SoPointingAction is the base class for any mouse based interaction.
SoView2DExtension Base class for all View2DExtensions used for drawing and event handling on the View...
SoView2D * getView() const
SoView2DKeyboardAction(SoView2D *view, const std::string &id, SoKeyboardEvent::Key key, SoKeyboardEvent::Key key2)
void execute() override
Execute the action. Must be overridden by user.
SoView2DKeyboardAction(SoView2D *view, const std::string &id, SoKeyboardEvent::Key key, bool withShift=false)
SoView2D is a 2D viewer for image data.
View2DInteractionHandler is derived from SoInteractionHandler mainly to provide additional SoView2D i...
bool _dragging
While dragging convert positions relative to the start slice.
MutableView2DPosition _view2DPosition
We always use the same View2DPosition object - we can only get one event at a time,...
bool isValidStartingLocation(const SoPointerPosition &location) override
Only start pointing actions on a valid starting location (to allow cooperation between multiple SoVie...
bool isEnabled(SoPointingAction *action, int currentMask) override
Only enable actions if the image in the SoView2D is valid.
View2DInteractionHandler(SoView2D *viewer, SoInteractionProvider *provider)
SoView2D * _viewer
Back-reference to the SoView2D object.
bool augmentLocation(SoPointerPosition &position, bool dragging) override
Set SoView2D information in position.
The View2DInteractionProvider extracts the interactions from the SoView2DExtensions.
const SoNodeList * getExtensionList(SoState *state)
Return list of extensions at the moment - returns NULL if the current action is not set in the SoView...
SoView2D * _viewer
Back-reference to the SoView2D object.
void pointerLeftWindow(SoState *state) override
Forwarding to the SoView2DExtensions.
std::list< SoInteraction * > getInteractions(SoState *state) override
return interactions from SoView2DExtensions
bool isExtensionEnabled(SoView2DExtension *ext) const
return true if interactions from the given SoView2DExtension should be handled
void pointerPosition(SoState *state, const SoPointerPosition &pos) override
Forwarding to the SoView2DExtensions.
View2DInteractionProvider(SoView2D *viewer)
This class stores all position information needed by SoView2DExtensions to handle the pointer positio...
Target mlrange_cast(Source arg)
Generic version of checked ML casts.