'\"! tbl | mmdoc '\"macro stdmacro .ie n \{\ . ds Cr \fB . ds Cb \fB .\} .el \{\ . ds Cr \f7 . ds Cb \f8 .\} .TH SoXtRenderArea(3IV) .SH NAME SoXtRenderArea \(em Xt Component for rendering Inventor scene graphs .SH INHERITS FROM SoXtComponent > SoXtGLWidget > SoXtRenderArea .SH SYNOPSIS .ps -1 \*(Cr#include .sp .ta 20m .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(Crtypedef SbBool .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbSoXtRenderAreaEventCB\*(Cr(void *userData, XAnyEvent *anyevent) .sp .in 1i \f1Methods from class SoXtRenderArea: .in 0.5i .sp .ta 26m .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Cr .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbSoXtRenderArea\*(Cr(Widget parent = NULL, const char *name = NULL, SbBool buildInsideParent = TRUE, SbBool getMouseInput = TRUE, SbBool getKeyboardInput = TRUE) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Cr .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(Cb~SoXtRenderArea\*(Cr() .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvirtual void .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetSceneGraph\*(Cr(SoNode *newScene) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvirtual SoNode * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetSceneGraph\*(Cr() .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetOverlaySceneGraph\*(Cr(SoNode *newScene) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoNode * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlaySceneGraph\*(Cr() .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbregisterDevice\*(Cr(SoXtDevice *) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbunregisterDevice\*(Cr(SoXtDevice *) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetBackgroundColor\*(Cr(const SbColor &c) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crconst SbColor & .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetBackgroundColor\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetBackgroundIndex\*(Cr(int index) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crint .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetBackgroundIndex\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetOverlayBackgroundIndex\*(Cr(int index) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crint .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlayBackgroundIndex\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetColorMap\*(Cr(int startIndex, int num, const SbColor *colors) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetOverlayColorMap\*(Cr(int startIndex, int num, const SbColor *colors) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetViewportRegion\*(Cr(const SbViewportRegion &newRegion) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crconst SbViewportRegion & .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetViewportRegion\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetTransparencyType\*(Cr(SoGLRenderAction::TransparencyType type) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoGLRenderAction::TransparencyType .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetTransparencyType\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetAntialiasing\*(Cr(SbBool smoothing, int numPasses) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetAntialiasing\*(Cr(SbBool &smoothing, int &numPasses) const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetClearBeforeRender\*(Cr(SbBool trueOrFalse) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSbBool .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbisClearBeforeRender\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetClearBeforeOverlayRender\*(Cr(SbBool trueOrFalse) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSbBool .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbisClearBeforeOverlayRender\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetAutoRedraw\*(Cr(SbBool trueOrFalse) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSbBool .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbisAutoRedraw\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetRedrawPriority\*(Cr(uint32_t priority) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Cruint32_t .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetRedrawPriority\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crstatic uint32_t .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetDefaultRedrawPriority\*(Cr() .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(Cbrender\*(Cr() .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbrenderOverlay\*(Cr() .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbscheduleRedraw\*(Cr() .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbscheduleOverlayRedraw\*(Cr() .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbredrawOnSelectionChange\*(Cr(SoSelection *s) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbredrawOverlayOnSelectionChange\*(Cr(SoSelection *s) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetEventCallback\*(Cr(SoXtRenderAreaEventCB *fcn, void *userData = NULL) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetGLRenderAction\*(Cr(SoGLRenderAction *ra) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoGLRenderAction * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetGLRenderAction\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetOverlayGLRenderAction\*(Cr(SoGLRenderAction *ra) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoGLRenderAction * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlayGLRenderAction\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetSceneManager\*(Cr(SoSceneManager *sm) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoSceneManager * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetSceneManager\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetOverlaySceneManager\*(Cr(SoSceneManager *sm) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoSceneManager * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlaySceneManager\*(Cr() const .sp .in 1i \f1Methods from class SoXtGLWidget: .in 0.5i .sp .ta 20m .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetBorder\*(Cr(SbBool onOrOff) .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(CrSbBool .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbisBorder\*(Cr() const .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(Crvirtual void .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetDoubleBuffer\*(Cr(SbBool onOrOff) .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(CrSbBool .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbisDoubleBuffer\*(Cr() .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(CrWindow .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetNormalWindow\*(Cr() .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(CrWindow .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlayWindow\*(Cr() .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(CrGLXContext .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetNormalContext\*(Cr() .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(CrGLXContext .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlayContext\*(Cr() .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(CrWidget .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetNormalWidget\*(Cr() .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(CrWidget .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlayWidget\*(Cr() .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(Crvirtual void .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetNormalVisual\*(Cr(XVisualInfo *vis) .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(CrXVisualInfo * .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetNormalVisual\*(Cr() .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(Crvirtual void .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetOverlayVisual\*(Cr(XVisualInfo *vis) .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(CrXVisualInfo * .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlayVisual\*(Cr() .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetDrawToFrontBufferEnable\*(Cr(SbBool enableFlag) .br .in 1i+20n .ti 0.5i .ta 20m .ds Pt \*(CrSbBool .ie \w'\*(Pt'>=20n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbisDrawToFrontBufferEnable\*(Cr() const .sp .in 1i \f1Methods from class SoXtComponent: .in 0.5i .sp .ta 24m .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(Crvirtual void .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(Cbshow\*(Cr() .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(Crvirtual void .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(Cbhide\*(Cr() .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(CrSbBool .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbisVisible\*(Cr() .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(CrWidget .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetWidget\*(Cr() const .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(CrSbBool .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbisTopLevelShell\*(Cr() const .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(CrWidget .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetShellWidget\*(Cr() const .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(CrWidget .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetParentWidget\*(Cr() const .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetSize\*(Cr(const SbVec2s &size) .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(CrSbVec2s .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetSize\*(Cr() .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(CrDisplay * .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetDisplay\*(Cr() .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetTitle\*(Cr(const char *newTitle) .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(Crconst char * .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetTitle\*(Cr() const .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetIconTitle\*(Cr(const char *newIconTitle) .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(Crconst char * .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetIconTitle\*(Cr() const .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetWindowCloseCallback\*(Cr(SoXtComponentCB *func, void *data = NULL) .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(Crstatic SoXtComponent * .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetComponent\*(Cr(Widget w) .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(Crconst char * .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetWidgetName\*(Cr() const .br .in 1i+24n .ti 0.5i .ta 24m .ds Pt \*(Crconst char * .ie \w'\*(Pt'>=24n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetClassName\*(Cr() const .sp .SH DESCRIPTION This class provides Inventor rendering and event handling inside a GLX Motif widget. There is a routine to specify the scene to render. The scene is automatically rendered whenever anything under it changes \&(a data sensor is attached to the root of the scene), unless explicitly told not to do so (manual redraws). Users can also set Inventor rendering attributes such as the transparency type, antialiasing \&on or off, etc. This class employs an \*(CbSoSceneManager\f1 to manage rendering and event handling. .sp X events that occur in the render area can be handled by the application, by the viewer (if this is really a viewer) or by \&the nodes in the scene graph. When an event occurs, it is first passed to the application event callback function registered with the \*(CbsetEventCallback()\f1 method on \*(CbSoXtRenderArea\f1. If this function does not exist or returns FALSE, the \&X event is either used directly by the viewer or translated to an \*(CbSoEvent\f1 for further scene graph processing. If the viewer does not handle the event, and an overlay scene graph exists, the \*(CbSoEvent\f1 is sent to that \&scene graph by way of an \*(CbSoHandleEventAction\f1. If no node in the overlay scene graph handles the event (i.e., calls \*(CbsetHandled()\f1 on the \*(CbSoHandleEventAction\f1), the \*(CbSoEvent\f1 is passed to the normal scene graph in the same manner. .SH METHODS .ta 26m .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Cr .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbSoXtRenderArea\*(Cr(Widget parent = NULL, const char *name = NULL, SbBool buildInsideParent = TRUE, SbBool getMouseInput = TRUE, SbBool getKeyboardInput = TRUE) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Cr .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(Cb~SoXtRenderArea\*(Cr() .br .in 1i \f1Constructor which is passed arguments which tell it whether to register the mouse and keyboard devices by default (\*(CbSoXtMouse\f1 and \*(CbSoXtKeyboard\f1). .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvirtual void .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetSceneGraph\*(Cr(SoNode *newScene) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvirtual SoNode * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetSceneGraph\*(Cr() .br .in 1i \f1Set/get the scene graph to be rendered in this component's window. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetOverlaySceneGraph\*(Cr(SoNode *newScene) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoNode * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlaySceneGraph\*(Cr() .br .in 1i \f1Sets/gets the scene graph to render in the overlay bit planes. .sp Note: since the overlay bit planes are in color index mode, single buffer with a limited number of colors, the user should limit rendering \&in the overlay planes to simple objects. .sp Typically rendering in color index mode is done using the \*(CbSoColorIndex\f1 node with a \*(CbSoLightModel\f1 set to BASE_COLOR. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbregisterDevice\*(Cr(SoXtDevice *) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbunregisterDevice\*(Cr(SoXtDevice *) .br .in 1i \f1Register/unregister interest in devices. When a device is registered, events from that device will be processed by the render area, and passed into the scene graph. Events from unregistered devices will \&be ignored. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetBackgroundColor\*(Cr(const SbColor &c) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crconst SbColor & .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetBackgroundColor\*(Cr() const .br .in 1i \f1Set/get the background color for this window. Default is black (0,0,0). .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetBackgroundIndex\*(Cr(int index) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crint .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetBackgroundIndex\*(Cr() const .br .in 1i \f1Sets/gets the window background color when in color index mode. (default to black (index 0)). .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetOverlayBackgroundIndex\*(Cr(int index) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crint .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlayBackgroundIndex\*(Cr() const .br .in 1i \f1Sets/gets the overlay window background color index. (default to 0 (clear color)). .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetColorMap\*(Cr(int startIndex, int num, const SbColor *colors) .br .in 1i \f1Sets the colors to use when displaying in color index mode. This will load the color map with the given colors at the starting index. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetOverlayColorMap\*(Cr(int startIndex, int num, const SbColor *colors) .br .in 1i \f1Sets the colors to use for overlay bit planes.This will load the color map with the given colors at the starting index. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetViewportRegion\*(Cr(const SbViewportRegion &newRegion) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crconst SbViewportRegion & .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetViewportRegion\*(Cr() const .br .in 1i \f1Sets/gets current viewport region to use for rendering .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetTransparencyType\*(Cr(SoGLRenderAction::TransparencyType type) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoGLRenderAction::TransparencyType .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetTransparencyType\*(Cr() const .br .in 1i \f1Set/get the quality level for rendering transparent objects. See \*(CbSoGLRenderAction\f1 for possible transparency types. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetAntialiasing\*(Cr(SbBool smoothing, int numPasses) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetAntialiasing\*(Cr(SbBool &smoothing, int &numPasses) const .br .in 1i \f1Set/get the antialiasing for rendering. There are two kinds of antialiasing available: smoothing and multipass antialiasing. If \*(Crsmoothing\f1 is set to TRUE, smoothing is enabled. Smoothing uses OpenGL's line- and \&point-smoothing features to provide cheap antialiasing of lines and points. The value of \*(CrnumPasses\f1 controls multipass antialiasing. Each time a render action is applied, Inventor renders the scene \*(CrnumPasses\f1 times from \&slightly different camera positions, averaging the results. \*(CrnumPasses\f1 can be from one to 255, inclusive. Setting \*(CrnumPasses\f1 to one disables multipass antialiasing. You can use either, both, or neither of these antialiasing \&techniques. By default, both smoothing and multipass antialiasing are disabled. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetClearBeforeRender\*(Cr(SbBool trueOrFalse) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSbBool .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbisClearBeforeRender\*(Cr() const .br .in 1i \f1Enable/prevent window clearing from happening before a rendering starts (default is clear TRUE). This can be useful to limit flickering when doing single buffering and geometry covers the entire window \&(used in the material editor). .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetClearBeforeOverlayRender\*(Cr(SbBool trueOrFalse) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSbBool .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbisClearBeforeOverlayRender\*(Cr() const .br .in 1i \f1Enable/prevent overlay window clearing from happening before a rendering starts (default is clear TRUE). .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetAutoRedraw\*(Cr(SbBool trueOrFalse) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSbBool .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbisAutoRedraw\*(Cr() const .br .in 1i \f1The render area will automatically redraw whenever something in the scene graph changes. Passing FALSE will disable this feature. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetRedrawPriority\*(Cr(uint32_t priority) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Cruint32_t .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetRedrawPriority\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crstatic uint32_t .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetDefaultRedrawPriority\*(Cr() .br .in 1i \f1Sets/gets the priority of the redraw sensor and get the default priority number. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(Cbrender\*(Cr() .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbrenderOverlay\*(Cr() .br .in 1i \f1Calling this forces the render area to be redrawn now. It is not necessary to call this method if auto redraw is enabled (which is the default). .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbscheduleRedraw\*(Cr() .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbscheduleOverlayRedraw\*(Cr() .br .in 1i \f1Schedule a redraw to happen sometime soon (as opposed to immediately). This can be used to compress multiple redraws. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbredrawOnSelectionChange\*(Cr(SoSelection *s) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbredrawOverlayOnSelectionChange\*(Cr(SoSelection *s) .br .in 1i \f1Call this convenience method to have this render area redraw whenever the selection list changes in the passed node. This is useful if using a highlight render action like the \*(CbSoBoxHighlightRenderAction\f1 to correctly render whenever \&the selection changes. Pass NULL to turn this off. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetEventCallback\*(Cr(SoXtRenderAreaEventCB *fcn, void *userData = NULL) .br .in 1i \f1X events which occur in the render area window are either directly handled by the viewer (when this is really a viewer) or automatically translated to \*(CbSoEvents\f1, then passed into the scene graph (via the \*(CbSoHandleEventAction\f1) so that \&live scene graph objects can handle the event (when viewers are not in viewing mode). This method allows the application to register a callback for handling events that occur in the window, instead of sending \&them to the viewers or down the graph. The callback is passed the X event, and should return TRUE if it handled the event. If the callback returns FALSE, then the event will be handled by the render \&area. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetGLRenderAction\*(Cr(SoGLRenderAction *ra) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoGLRenderAction * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetGLRenderAction\*(Cr() const .br .in 1i \f1Sets/gets the GL render action to use. This is used to set selection highlighting with the \*(CbSoBoxHighlightRenderAction\f1 and \*(CbSoLineHighlightRenderAction\f1 classes. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetOverlayGLRenderAction\*(Cr(SoGLRenderAction *ra) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoGLRenderAction * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlayGLRenderAction\*(Cr() const .br .in 1i \f1Sets/gets the GL render action for the overlay window. .sp .in 0.5i .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetSceneManager\*(Cr(SoSceneManager *sm) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoSceneManager * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetSceneManager\*(Cr() const .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(Crvoid .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbsetOverlaySceneManager\*(Cr(SoSceneManager *sm) .br .in 1i+26n .ti 0.5i .ta 26m .ds Pt \*(CrSoSceneManager * .ie \w'\*(Pt'>=26n \{\ .ne 3 \*(Pt .ti 0.5i \c\ \} .el\{\ .ne 2 \*(Pt \c\ \} \*(CbgetOverlaySceneManager\*(Cr() const .br .in 1i \f1Sets/gets the normal and overlay plane scene managers. .sp Note: for convenience most of the \*(CbSoSceneManager\f1 methods have already been added to this class. .sp .in 0.5i .SH RESOURCES .nf .in 1i *SoXtRenderArea*BackgroundColor: black (color name or hex value) .fi .in 0.5i .SH SEE ALSO \*(CbSoXtGLWidget, SoXtComponent, SoXtViewer, SoSceneManager, SoBoxHighlightRenderAction, SoLineHighlightRenderAction