MeVisLab Toolbox Reference
SoInteractionNode Class Reference

#include <SoInteractionNode.h>

Inheritance diagram for SoInteractionNode:
SoInteractionProviderNode SoInteractionHandler SoInteractionOwner SoInteractionProvider SoCSO3DVis SoCSODrawOnSurface SoMouseGrabber SoPicking

Public Member Functions

 SoInteractionNode ()
 Constructor.
 ~SoInteractionNode () override
void handleEvent (SoHandleEventAction *action) override
 Handles the mouse and keyboard events.
Public Member Functions inherited from SoInteractionProviderNode
 SoInteractionProviderNode ()
 ~SoInteractionProviderNode () override
 Destructor.
std::string getID () const override
void objRef () override
void objUnref () override
Public Member Functions inherited from SoInteractionOwner
 SoInteractionOwner ()
 Default constructor.
 ~SoInteractionOwner () override
 The destructor will destroy all interactions created with this object as owner.
std::list< SoInteraction * > getInteractions (SoState *state) override
 Returns the list of all interactions of this provider.
void pointerPosition (SoState *state, const SoPointerPosition &pos) override
 Same as below, with additional SoState argument. By default, simply calls the below version.
void pointerLeftWindow (SoState *state) override
 Same as below, with additional SoState argument. By defaults, simply calls the below version.
void addListener (SoInteractionOwnerListenerInterface *listener)
 Adds a listener object that is notified of changes in the interaction list.
void removeListener (SoInteractionOwnerListenerInterface *listener)
 Removes a listener object that was notified of changes in the interaction list.
Public Member Functions inherited from SoInteractionProvider
 SoInteractionProvider ()
 Default constructor.
virtual ~SoInteractionProvider ()
template<class T>
std::list< T * > getInteractionsOfType (SoState *state)
 Returns list of interactions of a specific type.
virtual std::list< SoCommandAction * > getCommandActions (SoState *state)
virtual std::list< SoPointingAction * > getPointingActions (SoState *state)
virtual std::list< SoOffsetAction * > getOffsetActions (SoState *state)
Public Member Functions inherited from SoInteractionHandler
 SoInteractionHandler (SoInteractionProvider *provider)
virtual ~SoInteractionHandler ()
virtual void handleEventForInteraction (SoHandleEventAction *action)
 Handles the mouse and keyboard events and send them to interaction nodes.

Static Public Member Functions

static void initClass ()
 Initializes this class.
static SoInteractionProvidergetInteractionProvider (SoNode *node)
Static Public Member Functions inherited from SoInteractionProviderNode
static void initClass ()
 Initializes this class.
static void registerInteractionProviderNode (SoType type, GetProviderFunc func)
 Registers a function to obtain a SoInteractionProvider from a SoNode.
static SoInteractionProvidergetInteractionProvider (SoNode *node)

Additional Inherited Members

typedef SoInteractionProvider *(* GetProviderFunc) (SoNode *)
Public Attributes inherited from SoInteractionProviderNode
SoSFString instanceName
 Defines interface field to store the instance name.
SoSFString interactionProviderID
 This field overrides the instanceName as providerID if specified.
Protected Member Functions inherited from SoInteractionOwner
virtual void pointerPosition (const SoPointerPosition &)
 Override this if you always need to be informed of the current mouse cursor position.
virtual void pointerLeftWindow ()
 This is called when the mouse cursor leaves the window.
bool hasInteractions () const
 Returns whether there are any actions defined by this owner.
template<class T>
bool hasInteractionsOfType () const
 Same as above, but asking for a specific type of interaction.
void addPointingAction (SoPointingAction *)
void addCommandAction (SoCommandAction *)
void addOffsetAction (SoOffsetAction *)
Protected Member Functions inherited from SoInteractionHandler
bool handleKeyPress (SoState *state, const SoPointerPosition &location, int modifiers, SoKeyboardEvent::Key nKey, bool positionValid)
virtual bool augmentLocation (SoPointerPosition &, bool)
void buttonMaskChanged (SoState *state, const SoPointerPosition &location, int buttonMask)
 Called if the button mask changed since the last input event.
void modifierMaskChanged (SoState *state, const SoPointerPosition &location, int modifierMask)
 Called if the modifier mask changed since the last input event.
void locationChanged (SoState *state, const SoPointerPosition &location, bool force=false, bool renderRefresh=false)
bool wheelRotated (SoState *state, const SoPointerPosition &location, int modifierMask, SoMouseWheelEvent::Orientation orientation, short rotation)
void handlePointerLeftWindow (SoState *state)
 Called if the pointer left the scene widget.
SoInteractionCoordinatorgetCoordinator ()
 Access method, returns the interaction coordinator during event handling.
SoPointingActiongetLocalCurrentPointingAction ()
virtual bool isEnabled (SoPointingAction *action, int currentMask)
virtual bool isValidStartingLocation (const SoPointerPosition &location)
bool canSelectPointingAction ()
void selectTargetPointingAction (SoState *state, const SoPointerPosition &location, int mask)
bool trySwitchGlobalPointingAction (SoState *state, const SoPointerPosition &location, int buttonMask, int modifierMask)
int getCurrentButtonMask ()
int getCurrentModifierMask ()
 Returns the currently active button modifier.
SoPointerPosition getCurrentPointerLocation ()
 Returns the current position of the mouse cursor.
bool isCurrentPointerLocationValid ()
 Returns whether the current mouse cursor position is valid.

Detailed Description

SoInteractionNode is the base class for normal interaction nodes in OpenInventor that handle their interactions directly.

SoInteractionNode is the base class for normal interaction nodes in OpenInventor that handle their interactions directly.

Definition at line 24 of file SoInteractionNode.h.

Constructor & Destructor Documentation

◆ SoInteractionNode()

SoInteractionNode::SoInteractionNode ( )

Constructor.

◆ ~SoInteractionNode()

SoInteractionNode::~SoInteractionNode ( )
override

Member Function Documentation

◆ getInteractionProvider()

SoInteractionProvider * SoInteractionNode::getInteractionProvider ( SoNode * node)
static

◆ handleEvent()

void SoInteractionNode::handleEvent ( SoHandleEventAction * action)
override

Handles the mouse and keyboard events.

◆ initClass()

void SoInteractionNode::initClass ( )
static

Initializes this class.


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