SOXTFULLVIEWER(3iv)
π NAME π
SoXtFullViewer β okay so this is the base viewer class, and what it does is add a whole decoration around the rendering area. it's giving "frame it, bestie, make it cute" πΌοΈβ¨
(also hi, this page lives in manual section 3IV, so jot that down π)
πΈ INHERITS FROM πΈ
the whole glow-up lineage, oldest to newest, no skips:
SoXtComponent > SoXtGLWidget > SoXtRenderArea > SoXtViewer > SoXtFullViewer
it's a whole family tree and SoXtFullViewer is the final form π
π SYNOPSIS π
#include <Inventor/Xt/viewers/SoXtFullViewer.h>
okay and then there's this enum, which is basically the "how much stuff do you want built" menu:
enum BuildFlag {
SoXtFullViewer::BUILD_NONE doesn't build anything extra
SoXtFullViewer::BUILD_DECORATION
build the decoration only
SoXtFullViewer::BUILD_POPUP build the popup menu only
SoXtFullViewer::BUILD_ALL build everything by default
}
Methods from class SoXtFullViewer: (the ones this page is actually about π)
void setDecoration(SbBool onOrOff)
SbBool isDecoration()
void setPopupMenuEnabled(SbBool trueOrFalse)
SbBool isPopupMenuEnabled()
Widget getAppPushButtonParent() const
void addAppPushButton(Widget newButton)
void insertAppPushButton(Widget newButton, int index)
void removeAppPushButton(Widget oldButton)
int findAppPushButton(Widget oldButton)
int lengthAppPushButton()
Widget getRenderAreaWidget()
Methods from class SoXtViewer: (inherited, still iconic)
virtual void setCamera(SoCamera *cam)
SoCamera * getCamera()
virtual void setCameraType(SoType type)
SoType getCameraType()
virtual void viewAll()
virtual void saveHomePosition()
virtual void resetToHomePosition()
virtual void setHeadlight(SbBool onOrOff)
SbBool isHeadlight()
SoDirectionalLight * getHeadlight()
virtual void setDrawStyle(SoXtViewer::DrawType type,
SoXtViewer::DrawStyle style)
SoXtViewer::DrawStyle getDrawStyle(SoXtViewer::DrawType type)
virtual void setBufferingType(SoXtViewer::BufferType type)
SoXtViewer::BufferType getBufferingType()
virtual void setViewing(SbBool onOrOff)
SbBool isViewing() const
virtual void setCursorEnabled(SbBool onOrOff)
SbBool isCursorEnabled() const
void setAutoClipping(SbBool onOrOff)
SbBool isAutoClipping() const
virtual void setStereoViewing(SbBool onOrOff)
virtual SbBool isStereoViewing()
void setStereoOffset(float dist)
float getStereoOffset()
void setDetailSeek(SbBool onOrOff)
SbBool isDetailSeek()
void setSeekTime(float seconds)
float getSeekTime()
void addStartCallback(SoXtViewerCB *f, void *userData =
NULL)
void addFinishCallback(SoXtViewerCB *f, void *userData
= NULL)
void removeStartCallback(SoXtViewerCB *f, void
*userData = NULL)
void removeFinishCallback(SoXtViewerCB *f, void
*userData = NULL)
void copyView(Time eventTime)
void pasteView(Time eventTime)
virtual void recomputeSceneSize()
Methods from class SoXtRenderArea: (more inheritance, more slay)
virtual void setSceneGraph(SoNode *newScene)
virtual SoNode * getSceneGraph()
void setOverlaySceneGraph(SoNode *newScene)
SoNode * getOverlaySceneGraph()
void registerDevice(SoXtDevice *)
void unregisterDevice(SoXtDevice *)
void setBackgroundColor(const SbColor &c)
const SbColor & getBackgroundColor() const
void setBackgroundIndex(int index)
int getBackgroundIndex() const
void setOverlayBackgroundIndex(int index)
int getOverlayBackgroundIndex() const
void setColorMap(int startIndex, int num, const
SbColor *colors)
void setOverlayColorMap(int startIndex, int num,
const SbColor *colors)
void setViewportRegion(const SbViewportRegion
&newRegion)
const SbViewportRegion & getViewportRegion() const
void setTransparencyType(SoGLRenderAction::TransparencyType
type)
SoGLRenderAction::TransparencyType
getTransparencyType() const
void setAntialiasing(SbBool smoothing, int numPasses)
void getAntialiasing(SbBool &smoothing, int
&numPasses) const
void setClearBeforeRender(SbBool trueOrFalse)
SbBool isClearBeforeRender() const
void setClearBeforeOverlayRender(SbBool trueOrFalse)
SbBool isClearBeforeOverlayRender() const
void setAutoRedraw(SbBool trueOrFalse)
SbBool isAutoRedraw() const
void setRedrawPriority(uint32_t priority)
uint32_t getRedrawPriority() const
static uint32_t getDefaultRedrawPriority()
void render()
void renderOverlay()
void scheduleRedraw()
void scheduleOverlayRedraw()
void redrawOnSelectionChange(SoSelection *s)
void redrawOverlayOnSelectionChange(SoSelection *s)
void setEventCallback(SoXtRenderAreaEventCB *fcn,
void *userData = NULL)
void setGLRenderAction(SoGLRenderAction *ra)
SoGLRenderAction * getGLRenderAction() const
void setOverlayGLRenderAction(SoGLRenderAction *ra)
SoGLRenderAction * getOverlayGLRenderAction() const
void setSceneManager(SoSceneManager *sm)
SoSceneManager * getSceneManager() const
void setOverlaySceneManager(SoSceneManager *sm)
SoSceneManager * getOverlaySceneManager() const
Methods from class SoXtGLWidget: (the GL bits, keep scrolling bestie)
void setBorder(SbBool onOrOff)
SbBool isBorder() const
virtual void setDoubleBuffer(SbBool onOrOff)
SbBool isDoubleBuffer()
Window getNormalWindow()
Window getOverlayWindow()
GLXContext getNormalContext()
GLXContext getOverlayContext()
Widget getNormalWidget()
Widget getOverlayWidget()
virtual void setNormalVisual(XVisualInfo *vis)
XVisualInfo * getNormalVisual()
virtual void setOverlayVisual(XVisualInfo *vis)
XVisualInfo * getOverlayVisual()
void setDrawToFrontBufferEnable(SbBool enableFlag)
SbBool isDrawToFrontBufferEnable() const
Methods from class SoXtComponent: (the great-grandparent, still relevant)
virtual void show()
virtual void hide()
SbBool isVisible()
Widget getWidget() const
SbBool isTopLevelShell() const
Widget getShellWidget() const
Widget getParentWidget() const
void setSize(const SbVec2s &size)
SbVec2s getSize()
Display * getDisplay()
void setTitle(const char *newTitle)
const char * getTitle() const
void setIconTitle(const char *newIconTitle)
const char * getIconTitle() const
void setWindowCloseCallback(SoXtComponentCB *func, void
*data = NULL)
static SoXtComponent * getComponent(Widget w)
const char * getWidgetName() const
const char * getClassName() const
β¨ DESCRIPTION β¨
okay so here's the tea β this is a base class used by all the viewer components. what it does is add a decoration around the rendering area β and that decoration includes thumb wheels, a zoom slider, and push buttons π‘ποΈπ
it also comes with a viewer popup menu AND a preference sheet with generic viewing functions. and here's the part that matters: the constructors for the various subclasses of SoXtFullViewer take a flag that lets you say whether the decoration and popup menus should be built at all. so you're in control, bestie π«Ά
π οΈ METHODS π οΈ
void setDecoration(SbBool onOrOff) SbBool isDecoration()
show or hide the viewer component trim. it's default on β so like, the trim is already there, no need to ask. if you want to stop the decoration from ever being built in the first place, go look at the viewer constructor instead π
void setPopupMenuEnabled(SbBool trueOrFalse) SbBool isPopupMenuEnabled()
turn the viewer popup menu on or off β default enabled. same deal as above: if you want it to never get built, that's a viewer-constructor thing, not this one β¨
Widget getAppPushButtonParent() const
hands you back the parent widget, which you need if you're gonna create new buttons. β οΈ note: if the decoration wasn't created in the constructor, this will be NULL until the decoration is shown. so don't come for it early, it's not ready yet π
void addAppPushButton(Widget newButton) void insertAppPushButton(Widget newButton, int index) void removeAppPushButton(Widget oldButton) int findAppPushButton(Widget oldButton) int lengthAppPushButton()
add or remove push buttons for the application β these get placed in the left hand side decoration trim π adding buttons appends them to the end of the list, while inserting them puts them at whatever index you want. so you can be chaotic or you can be organized, your call π
β οΈ note: the button pixmaps should be 24-by-24 pixels in size so they fit all nicely into the decoration trim like the other viewer buttons. do NOT show up with a weirdly-sized pixmap, it will not eat, periodt π«
Widget getRenderAreaWidget()
returns the render area widget. that's it, that's the whole thing π
π SEE ALSO π
the whole friend group:
SoXtViewerSoXtComponentSoXtRenderAreaSoXtExaminerViewerSoXtWalkViewerSoXtFlyViewerSoXtPlaneViewer
and that's the page!! this one signs off as SoXtFullViewer(3IV)() β manual section 3IV, stamp and all, no cap π«Άπ thanks for reading bestie, go build something cute β¨
π¦ where this page comes from
- debian bookworm: inventor-doc 2.1.5-10+dfsg-2 Β· LGPL-2.0-or-later
- debian trixie: inventor-doc 2.1.6+ds-2 Β· LGPL-2.0-or-later
- ubuntu jammy: inventor-doc 2.1.5-10-24
- ubuntu noble: inventor-doc 2.1.5-10+dfsg-2.1build2 Β· LGPL-2.0-or-later
- ubuntu questing: inventor-doc 2.1.6+ds-2
- ubuntu resolute: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- ubuntu stonking: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms