|
| SoHandleEventAction (const SbViewportRegion &viewportRegion) |
| Constructor takes viewport region to use; this is needed to perform a pick operation when requested.
|
|
virtual | ~SoHandleEventAction () |
| Destructor.
|
|
void | setViewportRegion (const SbViewportRegion &newRegion) |
| Sets/returns current viewport region to use for action.
|
|
const SbViewportRegion & | getViewportRegion () const |
| Sets/returns current viewport region to use for action.
|
|
void | setEvent (const SoEvent *ev) |
| Sets/returns the event being handled.
|
|
const SoEvent * | getEvent () const |
| Sets/returns the event being handled.
|
|
void | setHandled () |
| Sets/returns whether any node has yet handled the event.
|
|
bool | isHandled () const |
| Sets/returns whether any node has yet handled the event.
|
|
void | setGrabber (SoNode *node) |
| Initiates grabbing of future events.
|
|
void | releaseGrabber () |
| Releases the grab.
|
|
SoNode * | getGrabber () const |
| Returns the node that is currently grabbing events, or NULL if there is none.
|
|
void | setPickRoot (SoNode *node) |
| Sets/returns the root node used for initiating a pick action for those nodes that want to know what is under the cursor.
|
|
SoNode * | getPickRoot () const |
| Sets/returns the root node used for initiating a pick action for those nodes that want to know what is under the cursor.
|
|
void | setPickRadius (float radiusInPixels) |
| Set the radius (in pixels) around the viewport-space point through which the ray passes when doing ray picking.
|
|
const SoPickedPoint * | getPickedPoint () |
| Returns the frontmost object hit (as an SoPickedPoint) by performing a pick based on the mouse location specified in the event for which the action is being applied.
|
|
const SoPickedPointList & | getPickedPointList () |
| Returns a list of objects intersected by a picking operation, sorted from nearest to farthest.
|
|
virtual | ~SoAction () |
| Destructor.
|
|
virtual SoType | getTypeId () const =0 |
| Returns the type identifier for a specific instance.
|
|
bool | isOfType (SoType type) const |
| Returns TRUE if this instance is of the type specified in type or is derived from that type.
|
|
virtual void | apply (SoNode *node) |
|
virtual void | apply (SoPath *path) |
|
virtual void | apply (const SoPathList &pathList, bool obeysRules=FALSE) |
| Initiates an action on the graph defined either by a node, path, or list of paths.
|
|
virtual void | invalidateState () |
| Invalidates the current traversal state in the action, forcing it to be recreated when the action is next applied.
|
|
AppliedCode | getWhatAppliedTo () const |
| Returns code indicating what action is being applied to.
|
|
SoNode * | getNodeAppliedTo () const |
| These returns a pointer to the node, path, or path list the action is being applied to.
|
|
SoPath * | getPathAppliedTo () const |
|
const SoPathList * | getPathListAppliedTo () const |
| A single path list may be split into several, one for each different head node.
|
|
const SoPathList * | getOriginalPathListAppliedTo () const |
|
bool | isLastPathListAppliedTo () const |
|
PathCode | getPathCode (int &numIndices, const int *&indices) |
| Returns path code based on where current node (the node at the end of the current path) lies with respect to the path(s) the action is being applied to.
|
|
void | traverse (SoNode *node) |
| Does traversal of a graph rooted by a node.
|
|
bool | hasTerminated () const |
| Returns TRUE if the traversal has reached a termination condition.
|
|
const SoPath * | getCurPath () |
| Returns a pointer to the path accumulated during traversal, i.e., the chain of nodes from the root of the traversed graph to the current node being traversed.
|
|
SoState * | getState () const |
| Get the state from the action.
|
|
PathCode | getCurPathCode () const |
| These methods maintain the current path accumulated so far during traversal.
|
|
void | pushCurPath (int childIndex) |
|
void | popCurPath (PathCode prevPathCode) |
|
virtual SoNode * | getCurPathTail () |
| This is virtual, so that SoCallbackAction can use current node.
|
|
void | usePathCode (int &numIndices, const int *&indices) |
| called by inline getPathCode:
|
|
void | pushCurPath () |
| Optimized versions of push/pop when we know path codes won't change:
|
|
void | popPushCurPath (int childIndex) |
|
void | popCurPath () |
|
const SoLightweightPath & | getCurrentLightweightPath () const |
| Returns the current "light" path.
|
|
void | setCurrentLightweightPath (const SoLightweightPath &path) |
| Sets the current "light" path.
|
|
This class is used to allow nodes in a scene graph to handle input events. It is usually invoked from a component derived from SoQtRenderArea when the component receives a window system event.
Manipulator, dragger and selection nodes respond to and process events. Most other group nodes just pass the event to their children, while most other nodes simply ignore the action entirely. Once a node has indicated to the action that it has handled the event, traversal stops.
A node that handles an event can also grab future events. Once it has done so, all events will be sent directly to that node, with no traversal taking place, until the node releases the grab.
- See Also
- SoEvent, SoPickedPoint, SoRayPickAction
Definition at line 94 of file SoHandleEventAction.h.