13#ifndef SO_VIEWER_NODE_H
14#define SO_VIEWER_NODE_H
20#include <Inventor/nodes/SoSubNode.h>
21#include <Inventor/nodes/SoSeparator.h>
71 if (_keyPressedCB)
return (*_keyPressedCB)(_keyPressedCBData,
this, message) ?
true :
false;
80 if (_handleEventCB)
return (*_handleEventCB)(_handleEventCBData,
this, message) ?
true :
false;
88 void generateMovie(
const char* name,
const char* extension,
int count,
float framerate,
const char* targetFile=
nullptr) {
89 if (_movieCB) (*_movieCB)(_movieCBData,
this, name, extension, count, framerate, targetFile);
#define INVENTORGUIWRAPPER_API
void InvGenerateMovieCB(void *data, void *component, const char *name, const char *extension, int count, float framerate, const char *targetFile)
Callback used for movie generation.
int InvKeyPressedCB(void *data, void *component, void *message)
Callback used for key pressed forwarding (return 1 if used, 0 else).
int InvHandleEventCB(void *data, void *component, void *message)
Callback used for event handling of viewers (return 1 if handled, 0 else) this replaces the above Inv...
Base class for all viewer nodes in MeVisLab.
void * _movieCBData
Callback data for movie generation.
void setKeyPressedCB(InvKeyPressedCB *cb, void *data)
Sets a keypressed callback.
void * _currentViewer
Pointer to the current viewer (void, as the concrete type is unknown).
SoViewerProxy * _viewerProxy
Pointer to the proxy for this viewer.
void * _handleEventCBData
Callback data for handleEvent.
virtual void deleteViewer(void *viewer)
Deletes the viewer that was created with createViewer.
virtual void * createViewer(void *hwnd, SoNode *scene)
Creates a viewer in the given window, the scene is shown in the viewer.
virtual void * getCurrentViewer()
Returns the currently viewer (or NULL if none was created).
virtual void syncFromViewerNode(SoViewerNode *)
Syncs field from given src viewer node (derive to add more synched fields).
InvHandleEventCB * _handleEventCB
Callback for handleEvent.
void generateMovie(const char *name, const char *extension, int count, float framerate, const char *targetFile=nullptr)
Runs move generation callback.
void * _keyPressedCBData
Callback data for key pressed.
bool keyPressedNotify(void *message)
Runs callback for keypressed event.
InvGenerateMovieCB * _movieCB
Callback for movie generation.
void setHandleEventCB(InvHandleEventCB *cb, void *data)
Sets a handle event callback.
InvKeyPressedCB * _keyPressedCB
Callback for key pressed.
bool handleEventNotify(void *message)
Runs handle event callback.
void setGenerateMovieCB(InvGenerateMovieCB *cb, void *data)
Sets movie generation callback.
This class gives access to state of a viewer during scene graph traversal.