voidsetBorder(SbBoolonOrOff)SbBoolisBorder()const
Show and hide the border around the glx widgets (thickness 3). Default is no border (FALSE). (The
SoXtRenderArea subclass defaults turns the border on by default.)
virtualvoidsetDoubleBuffer(SbBoolonOrOff)SbBoolisDoubleBuffer()
Routine which dynamically changes between single and double buffering. Default is double buffer off.
(The SoXtRenderArea subclass makes it double buffer by default.)
WindowgetNormalWindow()WindowgetOverlayWindow()GLXContextgetNormalContext()GLXContextgetOverlayContext()WidgetgetNormalWidget()WidgetgetOverlayWidget()
Get the current normal and overlay GLX windows, contexes and widgets, which are needed as arguments to
glXMakeCurrent() when doing drawing in the normal or overlay planes.
Note: These should not be cached by users because they will change as single/double buffering changes.
virtualvoidsetNormalVisual(XVisualInfo*vis)XVisualInfo*getNormalVisual()virtualvoidsetOverlayVisual(XVisualInfo*vis)XVisualInfo*getOverlayVisual()
Specify exactly what the visual should be for the normal and overlay window. This allows the user to
create all possible visuals supported by OpenGL. The XVisualInfo structure should be a valid OpenGL
visual returned by glXChooseVisual(). This structure will be copied by the SoXtGLWidget; the
application is responsible for freeing the visual info with XFree() when done. (The methods for
setting the visual are virtual so that derived classes can know when the visual is changing.)
voidsetDrawToFrontBufferEnable(SbBoolenableFlag)SbBoolisDrawToFrontBufferEnable()const
Inventor 2.1 changed the behavior of double buffered windows to redraw temporary to the front buffer
when an expose event is received or when a new sceneGraph() is set on an SoXtRenderArea. This does not
apply for general interactive rendering. The idea is that it is better to see something redraw
(especially if it is slow) than to see garbage in the window (in the expose case) or an old invalid
scene graph (in the SoXtRenderArea::setSceneGraph() case).
This API enables you to turn this functionality OFF if for some reason you are unable to prevent
repeated expose from causing a redraw (which is bad and should be fixed, as it gets worse for large
scenes). This will be the case for example if you can't create a pulldown menu in the popup planes.
NOTE: this api might be removed in some future releases and is only intended as a porting help for
Inventor 2.0 to 2.1