13#ifndef SO_INTERACTION_COORDINATOR_H
14#define SO_INTERACTION_COORDINATOR_H
20#include <ThirdPartyWarningsDisable.h>
23#include <Inventor/events/SoKeyboardEvent.h>
24#include <ThirdPartyWarningsRestore.h>
127 double& sensitivityX,
double& sensitivityY,
bool& swapAxes);
141 double& sensitivityX,
double& sensitivityY,
bool& swapAxes);
182 std::list<SoInteractionMapper*> _mappers;
196 bool _pointingActionSelected;
199 bool _currentPointingActionAllowed;
#define SOMANAGEDINTERACTION_API
File to resolve system dependencies in View2D library.
std::list< Shortcut > ShortcutList
A list of shortcuts.
bool isCancelled() const
This returns true if the current drag action has been canceled.
void addMapper(SoInteractionMapper *mapper)
bool _maySelectPointingAction
SoCommandAction::ShortcutList getShortcuts(SoCommandAction *action)
Returns the current shortcuts for a command action.
virtual int getModeFromModifiers(int numModes, int modifierMask)
SoInteractionCoordinator()
virtual void setSelectedPointingAction(SoPointingAction *action, SoInteractionHandler *handler, const SoPointerPosition &location, bool allowed=true)
SoPointingAction::TriggerList getTriggers(SoPointingAction *action)
Returns the current triggers for a pointing action.
bool wheelModifiersFitOffsetAction(SoOffsetAction *action, int modifiers, double &sensitivityX, double &sensitivityY, bool &swapAxes)
SoOffsetAction::TriggerList getTriggers(SoOffsetAction *action)
Returns current triggers for an offset action.
void affirmSelectedPointingAction()
virtual bool startPress(const SoPointerPosition &position, int modifierMask)
Starts a mouse button press for current action.
void setKeyboardActionExecuted()
Prevents further keyboard actions from being executed.
SoInteractionHandler * getCurrentPointingActionHandler() const
Returns the handler for currently selected pointing action.
bool mayExecuteKeyboardAction() const
Checks whether it is allowed to execute keyboard actions.
bool keyFitsCommandAction(SoCommandAction *action, int modifiers, SoKeyboardEvent::Key nKey)
Checks whether a keyboard event fits a certain command action.
void clearMappers()
Clears the list of mappers.
bool getCurrentPointingActionAllowed() const
Returns whether the current pointing action may be applied at the current location.
virtual bool isDragging()
Queries the flag indicating drag action.
void setWheelActionExecuted()
Prevents further wheel actions from being executed.
SoPointingAction * getCurrentPointingAction() const
Returns the currently selected pointing action.
size_t getNumMappers()
Returns the number of added mappers, to be used with truncateMappers.
virtual bool isPointingActionActive(SoPointingAction *action, int currentMask)
This method will be used to override the default action selection mechanism.
bool _mayExecuteWheelAction
SoInteractionHandler * getLockedPointingActionHandler()
Returns the handler for locked pointing action.
virtual void endPress(int clickCount)
Stops a mouse button press for current action.
bool keyFitsOffsetAction(SoOffsetAction *action, int modifiers, SoKeyboardEvent::Key nKey, double &sensitivityX, double &sensitivityY, bool &swapAxes)
Checks whether a keyboard event fits a certain offset action.
virtual int getModeModifierMask(int numModes)
void truncateMappers(size_t n=0)
bool maySelectPointingAction() const
Returns whether one is even allowed to select a (new) pointing action.
SoPointingAction * getLockedPointingAction()
Returns the locked pointing action.
bool mayExecuteWheelAction() const
Checks whether it is allowed to execute wheel actions.
virtual void setLockedPointingAction(SoPointingAction *action, SoInteractionHandler *handler)
virtual void setDragging(bool dragging)
Sets the flag indicating drag action.
void unsetPointingActionSelected()
Resets the _pointingActionSelected flag (before traversing the scene).
bool _mayExecuteKeyboardAction
void grabReleasedByAction(SoPointingAction *action)
This method is called from a PointingAction if a grab should be released.
virtual bool isDragThresholdExceeded() const
Must be overridden to implement click detection.
bool isPointingActionSelected() const
virtual ~SoInteractionCoordinator()
std::list< Trigger > TriggerList
List of triggers.
SoPointerPosition manages the current position of the mouse cursor.
std::list< Trigger > TriggerList
List of triggers.