Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SoEventCallback(3IV)()					SoEventCallback(3IV)()

NAME
       SoEventCallback -- node which invokes callbacks for events

INHERITS FROM
       SoBase >	SoFieldContainer > SoNode > SoEventCallback

SYNOPSIS
       #include	<Inventor/nodes/SoEventCallback.h>

     typedef   void	   SoEventCallbackCB(void  *userData,  SoEventCallback
			      *node)

	  Methods from class SoEventCallback:

     static SoType	    getClassTypeId()
			    SoEventCallback()
     void		    setPath(SoPath *path)
     const SoPath *	    getPath()
     void		    addEventCallback(SoType  eventType,	  SoEventCall-
				 backCB	*f, void *userData = NULL)
     void		    removeEventCallback(SoType eventType, SoEventCall-
				 backCB	*f, void *userData = NULL)
     SoHandleEventAction *  getAction()	const
     const SoEvent *	    getEvent() const
     const SoPickedPoint *  getPickedPoint() const
     void		    setHandled()
     SbBool		    isHandled()	const
     void		    grabEvents()
     void		    releaseEvents()

	  Methods from class SoNode:

     void		 setOverride(SbBool state)
     SbBool		 isOverride() const
     SoNode *		 copy(SbBool copyConnections = FALSE) const
     virtual SbBool	 affectsState()	const
     static SoNode *	 getByName(const SbName	&name)
     static int		 getByName(const SbName	&name, SoNodeList &list)

	  Methods from class SoFieldContainer:

     void		 setToDefaults()
     SbBool		 hasDefaultValues() const
     SbBool		 fieldsAreEqual(const SoFieldContainer *fc) const
     void		 copyFieldValues(const	SoFieldContainer  *fc,	SbBool
			      copyConnections =	FALSE)
     SbBool		 set(const char	*fieldDataString)
     void		 get(SbString &fieldDataString)
     virtual int	 getFields(SoFieldList &resultList) const
     virtual SoField *	 getField(const	SbName &fieldName) const
     SbBool		 getFieldName(const SoField *field, SbName &fieldName)
			      const
     SbBool		 isNotifyEnabled() const
     SbBool		 enableNotify(SbBool flag)

	  Methods from class SoBase:

     void		 ref()
     void		 unref() const
     void		 unrefNoDelete() const
     void		 touch()
     virtual SoType	 getTypeId() const
     SbBool		 isOfType(SoType type) const
     virtual void	 setName(const SbName &name)
     virtual SbName	 getName() const

DESCRIPTION
       SoEventCallback will invoke  application	 supplied  callback  functions
       during  SoHandleEventAction traversal. Methods allow the	application to
       specify which Inventor events should trigger callbacks, and which  path
       must  be	 picked, if any, for the callback invocation to	occur. The ap-
       plication callback is able to get information about the event  and  the
       pick  detail,  and may grab events, release events, and set whether the
       event was handled.

       If you register more than one callback function in  an  SoEventCallback
       node,  all the callback functions will be invoked when an event occurs,
       even if one of the callbacks handles the	event. However,	if  the	 event
       is handled by any of the	callback functions, no other node in the scene
       graph will see the event.

METHODS
     static SoType	    getClassTypeId()
	  Return the type id for the SoEventCallback class.

			    SoEventCallback()
	  Constructor creates an event callback	node with  no  event  interest
	  and a	NULL path.

     void		    setPath(SoPath *path)
     const SoPath *	    getPath()
	  Set and get the path which must be picked in order for the callbacks
	  to be	invoked. If the	path is	NULL, the callbacks  will  be  invoked
	  for  every  interesting  event,  as specified	by addEventCallback(),
	  regardless of	what is	picked.	The setPath()  method  makes  its  own
	  copy of the passed path.

     void		    addEventCallback(SoType   eventType,  SoEventCall-
				 backCB	*f, void *userData = NULL)
     void		    removeEventCallback(SoType eventType, SoEventCall-
				 backCB	*f, void *userData = NULL)
	  Specifies  the  callback functions to	be invoked for different event
	  types. When invoked, the callback function will be passed the	 user-
	  Data,	 along	with a pointer to this SoEventCallback node. For exam-
	  ple, passing SoMouseButtonEvent::getClassTypeId()   means  callbacks
	  will	be  invoked  only  when	a mouse	button is pressed or released.
	  Passing SoEvent::getClassTypeId() for	the eventType will  cause  the
	  callback  to	be  invoked  for every event which passes through this
	  event	callback node.

     SoHandleEventAction *  getAction()	const
	  Returns the SoHandleEventAction currently traversing this  node,  or
	  NULL	if  traversal  is not taking place. This should	be called only
	  from callback	functions.

     const SoEvent *	    getEvent() const
	  Returns the event currently being handled, or	NULL if	 traversal  is
	  not  taking  place.  This  should be called only from	callback func-
	  tions.

     const SoPickedPoint *  getPickedPoint() const
	  Returns pick information during  SoHandleEventAction	traversal,  or
	  NULL	if  traversal  is not taking place. This should	be called only
	  from callback	functions.

     void		    setHandled()
	  Tells	the node the event was handled.	The callback function  is  re-
	  sponsible for	setting	whether	the event was handled or not. If there
	  is more than one callback function registered	with  an  SoEventCall-
	  back	node,  all  of them will be invoked, regardless	of whether one
	  has handled the event	or not.	This should be called only from	 call-
	  back functions.

     SbBool		    isHandled()	const
	  Returns  whether  the	 event has been	handled. This should be	called
	  only from callback functions.

     void		    grabEvents()
     void		    releaseEvents()
	  Tells	the event callback node	to grab	events or  release  the	 grab.
	  While	 grabbing,  the	 node  will  consume all events; however, each
	  callback function will only be invoked for events of interest.

FILE FORMAT/DEFAULTS
       EventCallback {
       }

SEE ALSO
       SoInteraction, SoSelection, SoHandleEventAction,	SoDragger

							SoEventCallback(3IV)()

NAME | INHERITS FROM | SYNOPSIS | DESCRIPTION | METHODS | FILE FORMAT/DEFAULTS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=SoEventCallback&sektion=3iv&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help