MeVisLab Toolbox Reference
|
SoOffsetPointingAction is an internal proxy class that helps controlling SoOffsetActions through a SoPointingAction. More...
#include <SoOffsetPointingAction.h>
Public Member Functions | |
SoOffsetPointingAction (SoOffsetAction *offsetAction) | |
Standard constructor. More... | |
bool | isEnabled () const override |
Returns the enabled status of this interaction - if this returns false , the action is not selectable (but if a mouse action has already been started, it will not be aborted if this returns false ). More... | |
void | setEnabled (bool enabled) override |
Sets the enabled status of this interaction. More... | |
bool | isSensitiveAt (const SoPointerPosition &) override |
Returns true if the gesture is startable at the given device position. More... | |
int | getCurrentCursor (SoViewerProxy *viewerProxy) const override |
Returns the cursor ID to display for this action, as defined in SoViewerProxy.h - this gets (at least) called after setMode(), isSensitiveAt(), startPressAt(), dragMoveTo(), and endPress(). More... | |
std::string | getCurrentStatusMessage () const override |
Returns a status message for display in the status bar of MeVisLab (make it short!), this is called at same time as getCurrentCursor. More... | |
void | startPressAt (const SoPointerPosition &pos) override |
Starts a drag at given device position. More... | |
void | dragMoveTo (const SoPointerPosition &pos) override |
Continues the drag to given device position. More... | |
SoPointingAction * | endPress (int clickCount) override |
Ends the drag at last device position. More... | |
void | setOffsetParameters (double sensitivityX, double sensitivityY, bool swapAxes) |
![]() | |
SoPointingAction (SoInteractionOwner *owner, std::string id, bool positionSensitive=true) | |
Standard constructor. More... | |
virtual bool | isPositionSensitive () const |
Position sensitive actions can only start at positions where isSensitiveAt() return true . More... | |
void | clearTriggers () |
Removes all triggers. More... | |
void | setTrigger (int triggerMask, int ignoreMask=0) |
Sets the (only) default modifier/button mask for triggering this action. More... | |
void | setTrigger (const Trigger &trigger) |
Same with Trigger object. More... | |
void | addTrigger (const Trigger &trigger) |
Adds another default modifier/button mask as trigger. More... | |
TriggerList | getTriggers () const |
Returns the list of default modifier/button mask combinations set for this action. More... | |
virtual bool | triggersAction (int mask) |
Returns whether the given modifier/button combination activates this action according to the default bindings. More... | |
virtual int | getNumModes () const |
Returns the number of different modes of this action - modes can be changed during drag, and handle drag restrictions or drag result. More... | |
virtual void | setMode (int) |
This gets called if the mode was changed and before startPressAt is called. More... | |
virtual void | setHighlightAt (const SoPointerPosition &) |
This method is called so that highlighting of objects under the mouse cursor can occur. More... | |
virtual void | unsetHighlight () |
Removes any highlighting if this method is called. More... | |
virtual void | dragCancelled () |
This is called if the current drag operation is canceled, e.g., through a key command like Escape. More... | |
virtual bool | wantsMouseOverUpdates () |
Override this to return true if this action should get location updates directly before rendering, so it can update its status. More... | |
void | grabReleased () |
Call this to release an interaction grab that has been established by the return value of endPress(), e.g., because it was aborted through a SoCommandAction. More... | |
virtual void | releaseGrab (StopMode) |
This will be called by the controller if you should release the grab established by endPress. More... | |
virtual bool | wantsImmediateDragUpdates () |
Let this method return false if you do not want dragMoveTo to be called until it is clear that the interaction will not be handled as a click (endPress will be called with a clickCount greater zero). More... | |
![]() | |
SoInteraction (InteractionType type, SoInteractionOwner *owner, const std::string &id, bool registerWithOwner=true) | |
Standard constructor. More... | |
virtual | ~SoInteraction () |
Virtual destructor. More... | |
SoInteractionOwner * | getOwner () const |
Returns the interaction provider of this entry. More... | |
std::string | getID () const |
Returns the ID of this interaction. More... | |
void | setID (const std::string &id) |
Sets the ID of this interaction. More... | |
std::string | getFullID () const |
Returns the ID string consisting of the ID of the provider and this action's ID, separated by '. More... | |
InteractionType | getInteractionType () const |
Returns type of interaction object. More... | |
template<class T > | |
bool | isOfType () const |
Convenience method for checking type. More... | |
int | getMenuPriority () const |
void | setMenuPriority (int priority) |
Sets the priority value for ordered display in menus/tool boxes. More... | |
virtual std::string | getUserName () const |
Returns user-visible name of this item for direct display (e.g., in tool box or menu). More... | |
virtual void | setUserName (const std::string &name) |
Sets the user name of this interaction entry. More... | |
virtual std::string | getIconFile () const |
Returns the filename of an icon (e.g., for use in a tool box or in menu). More... | |
virtual void | setIconFile (const std::string &file) |
Sets the filename of an icon used for this interaction entry. More... | |
virtual std::string | getDescription () const |
Returns the description for user help. More... | |
virtual void | setDescription (const std::string &descr) |
Sets the description for user help. More... | |
virtual void | ref () |
virtual void | unref () |
int | getStateVersion () const |
void | touch () |
Increments the version number of attribute state to mark attribute changes. More... | |
Protected Member Functions | |
SoOffsetAction * | proxiedOffsetAction () const override |
Additional Inherited Members | |
![]() | |
enum | StopMode { AbortAction , FinishAction } |
Argument type for releaseGrab() More... | |
enum | { Button1Mask = ManagedMouseButtonTrigger::Button1Mask , Button2Mask = ManagedMouseButtonTrigger::Button2Mask , Button3Mask = ManagedMouseButtonTrigger::Button3Mask , AllButtonsMask = ManagedMouseButtonTrigger::AllButtonsMask } |
Configuration values for the Trigger type. More... | |
enum | { TypeId = TypePointingAction } |
typedef ManagedMouseButtonTrigger | Trigger |
Class Trigger encapsulates the combination of required and ignored button, and modifier keys that activate a pointing action. More... | |
typedef std::list< Trigger > | TriggerList |
List of triggers. More... | |
![]() | |
enum | { NoModifier = ManagedActionTrigger::NoModifier , ShiftModifier = ManagedActionTrigger::ShiftModifier , ControlModifier = ManagedActionTrigger::ControlModifier , AltModifier = ManagedActionTrigger::AltModifier , AllModifiersMask = ManagedActionTrigger::AllModifiersMask , ShiftMask = ShiftModifier , CtrlMask = ControlModifier , AltMask = AltModifier } |
Constants to use where keyboard modifiers must be specified. More... | |
enum | InteractionType { TypePointingAction , TypeCommandAction , TypeOffsetAction } |
Enum identifying subtypes of this class. More... | |
SoOffsetPointingAction is an internal proxy class that helps controlling SoOffsetActions through a SoPointingAction.
Definition at line 21 of file SoOffsetPointingAction.h.
SoOffsetPointingAction::SoOffsetPointingAction | ( | SoOffsetAction * | offsetAction | ) |
Standard constructor.
|
overridevirtual |
Continues the drag to given device position.
Implements SoPointingAction.
|
overridevirtual |
Ends the drag at last device position.
If this method returns a non-NULL SoPointingAction, the pointing device is restricted to this SoPointingAction until releaseGrab() is called or another call to endPress returns NULL. This is useful if the end user is required to click at at least one other position.
Note that locking of the returned action breaks down if the same node is used in several viewers, since each viewer usually has its own interaction controller that manages locked actions on its own.
clickCount | gives the number of clicks at the last start position. This is, for a normal drag it is 0, for a single click it is 1, for a double click it is 2, and for a triple click it is 3. Note that for a clickCount greater than zero, you will not have received any dragMoveTo calls if wantsImmediateDragUpdates returns false . |
Implements SoPointingAction.
Referenced by SoPointingAction::dragCancelled().
|
overridevirtual |
Returns the cursor ID to display for this action, as defined in SoViewerProxy.h - this gets (at least) called after setMode(), isSensitiveAt(), startPressAt(), dragMoveTo(), and endPress().
The SoViewerProxy pointer is provided so one can define custom cursors when this method is called (see header file SoViewerProxy.h for instructions).
Reimplemented from SoPointingAction.
|
overridevirtual |
Returns a status message for display in the status bar of MeVisLab (make it short!), this is called at same time as getCurrentCursor.
Reimplemented from SoPointingAction.
|
overridevirtual |
Returns the enabled status of this interaction - if this returns false
, the action is not selectable (but if a mouse action has already been started, it will not be aborted if this returns false
).
Reimplemented from SoInteraction.
|
inlineoverridevirtual |
Returns true
if the gesture is startable at the given device position.
Otherwise, a mouse click will be handed to another SoPointingAction and the cursor shape of this action is ignored!
Implements SoPointingAction.
Definition at line 31 of file SoOffsetPointingAction.h.
|
inlineoverrideprotectedvirtual |
Reimplemented from SoPointingAction.
Definition at line 41 of file SoOffsetPointingAction.h.
|
overridevirtual |
Sets the enabled status of this interaction.
Reimplemented from SoInteraction.
void SoOffsetPointingAction::setOffsetParameters | ( | double | sensitivityX, |
double | sensitivityY, | ||
bool | swapAxes | ||
) |
|
overridevirtual |
Starts a drag at given device position.
It is guaranteed that this will be followed by (possibly) dragMoveTo calls and either an endPress or dragCancelled call.
Implements SoPointingAction.