.TH "SoQtFullViewer" 3 "Sun Dec 11 2011" "Version 1.5.0" "SoQt" \" -*- nroff -*- .ad l .nh .SH NAME SoQtFullViewer \- .PP The \fBSoQtFullViewer\fP class adds some user interface components to the viewer canvas\&. .PP The \fBSoQtFullViewer\fP is an abstract viewer class which extends it's superclass (the basic \fBSoQtViewer\fP class) with two major user interface additions: .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits \fBSoQtViewer\fP\&. .PP Inherited by \fBSoQtConstrainedViewer\fP, \fBSoQtExaminerViewer\fP, and \fBSoQtPlaneViewer\fP\&. .SS "Public Types" .in +1c .ti -1c .RI "enum \fBBuildFlag\fP { \fBBUILD_NONE\fP = 0x00, \fBBUILD_DECORATION\fP = 0x01, \fBBUILD_POPUP\fP = 0x02, \fBBUILD_ALL\fP = (BUILD_DECORATION | BUILD_POPUP) }" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "void \fBsetDecoration\fP (const SbBool on)" .br .ti -1c .RI "SbBool \fBisDecoration\fP (void) const " .br .ti -1c .RI "void \fBsetPopupMenuEnabled\fP (const SbBool on)" .br .ti -1c .RI "SbBool \fBisPopupMenuEnabled\fP (void) const " .br .ti -1c .RI "QWidget * \fBgetAppPushButtonParent\fP (void) const " .br .ti -1c .RI "void \fBaddAppPushButton\fP (QWidget *newButton)" .br .ti -1c .RI "void \fBinsertAppPushButton\fP (QWidget *newButton, int index)" .br .ti -1c .RI "void \fBremoveAppPushButton\fP (QWidget *oldButton)" .br .ti -1c .RI "int \fBfindAppPushButton\fP (QWidget *oldButton) const " .br .ti -1c .RI "int \fBlengthAppPushButton\fP (void) const " .br .ti -1c .RI "QWidget * \fBgetRenderAreaWidget\fP (void) const " .br .ti -1c .RI "virtual void \fBsetViewing\fP (SbBool on)" .br .ti -1c .RI "virtual void \fBsetComponentCursor\fP (const \fBSoQtCursor\fP &cursor)" .br .in -1c .SS "Protected Member Functions" .in +1c .ti -1c .RI "\fBSoQtFullViewer\fP (QWidget *parent, const char *name, SbBool embed, \fBBuildFlag\fP flag, \fBType\fP type, SbBool build)" .br .ti -1c .RI "\fB~SoQtFullViewer\fP ()" .br .ti -1c .RI "virtual void \fBsizeChanged\fP (const SbVec2s &size)" .br .ti -1c .RI "QWidget * \fBbuildWidget\fP (QWidget *parent)" .br .ti -1c .RI "virtual void \fBbuildDecoration\fP (QWidget *parent)" .br .ti -1c .RI "virtual QWidget * \fBbuildLeftTrim\fP (QWidget *parent)" .br .ti -1c .RI "virtual QWidget * \fBbuildBottomTrim\fP (QWidget *parent)" .br .ti -1c .RI "virtual QWidget * \fBbuildRightTrim\fP (QWidget *parent)" .br .ti -1c .RI "QWidget * \fBbuildAppButtons\fP (QWidget *parent)" .br .ti -1c .RI "QWidget * \fBbuildViewerButtons\fP (QWidget *parent)" .br .ti -1c .RI "virtual void \fBcreateViewerButtons\fP (QWidget *parent, SbPList *buttonlist)" .br .ti -1c .RI "virtual void \fBbuildPopupMenu\fP (void)" .br .ti -1c .RI "virtual void \fBsetPopupMenuString\fP (const char *title)" .br .ti -1c .RI "virtual void \fBopenPopupMenu\fP (const SbVec2s position)" .br .ti -1c .RI "virtual void \fBleftWheelStart\fP (void)" .br .ti -1c .RI "virtual void \fBleftWheelMotion\fP (float)" .br .ti -1c .RI "virtual void \fBleftWheelFinish\fP (void)" .br .ti -1c .RI "float \fBgetLeftWheelValue\fP (void) const " .br .ti -1c .RI "void \fBsetLeftWheelValue\fP (const float value)" .br .ti -1c .RI "virtual void \fBbottomWheelStart\fP (void)" .br .ti -1c .RI "virtual void \fBbottomWheelMotion\fP (float)" .br .ti -1c .RI "virtual void \fBbottomWheelFinish\fP (void)" .br .ti -1c .RI "float \fBgetBottomWheelValue\fP (void) const " .br .ti -1c .RI "void \fBsetBottomWheelValue\fP (const float value)" .br .ti -1c .RI "virtual void \fBrightWheelStart\fP (void)" .br .ti -1c .RI "virtual void \fBrightWheelMotion\fP (float)" .br .ti -1c .RI "virtual void \fBrightWheelFinish\fP (void)" .br .ti -1c .RI "float \fBgetRightWheelValue\fP (void) const " .br .ti -1c .RI "void \fBsetRightWheelValue\fP (const float value)" .br .ti -1c .RI "void \fBsetLeftWheelString\fP (const char *const name)" .br .ti -1c .RI "QWidget * \fBgetLeftWheelLabelWidget\fP (void) const " .br .ti -1c .RI "void \fBsetBottomWheelString\fP (const char *const name)" .br .ti -1c .RI "QWidget * \fBgetBottomWheelLabelWidget\fP (void) const " .br .ti -1c .RI "void \fBsetRightWheelString\fP (const char *const name)" .br .ti -1c .RI "const char * \fBgetRightWheelString\fP () const " .br .ti -1c .RI "QWidget * \fBgetRightWheelLabelWidget\fP (void) const " .br .ti -1c .RI "virtual SbBool \fBprocessSoEvent\fP (const SoEvent *const event)" .br .in -1c .SS "Protected Attributes" .in +1c .ti -1c .RI "QWidget * \fBleftWheel\fP" .br .ti -1c .RI "QWidget * \fBrightWheel\fP" .br .ti -1c .RI "QWidget * \fBbottomWheel\fP" .br .ti -1c .RI "QWidget * \fBleftDecoration\fP" .br .ti -1c .RI "QWidget * \fBrightDecoration\fP" .br .ti -1c .RI "QWidget * \fBbottomDecoration\fP" .br .ti -1c .RI "QWidget * \fBleftWheelLabel\fP" .br .ti -1c .RI "char * \fBleftWheelStr\fP" .br .ti -1c .RI "float \fBleftWheelVal\fP" .br .ti -1c .RI "QWidget * \fBrightWheelLabel\fP" .br .ti -1c .RI "char * \fBrightWheelStr\fP" .br .ti -1c .RI "float \fBrightWheelVal\fP" .br .ti -1c .RI "QWidget * \fBbottomWheelLabel\fP" .br .ti -1c .RI "char * \fBbottomWheelStr\fP" .br .ti -1c .RI "float \fBbottomWheelVal\fP" .br .ti -1c .RI "SoQtPopupMenu * \fBprefmenu\fP" .br .in -1c .SS "Friends" .in +1c .ti -1c .RI "class \fBSoGuiFullViewerP\fP" .br .ti -1c .RI "class \fBSoQtFullViewerP\fP" .br .in -1c .SH "Detailed Description" .PP The \fBSoQtFullViewer\fP class adds some user interface components to the viewer canvas\&. .PP The \fBSoQtFullViewer\fP is an abstract viewer class which extends it's superclass (the basic \fBSoQtViewer\fP class) with two major user interface additions: .PD 0 .IP "\(bu" 2 decorations around the render canvas, with buttons and thumbwheels to control camera interaction and various other aspects of model / scene viewing .PP .IP "\(bu" 2 a popup menu, invoked with the right mouse button, which controls yet more aspects of the rendering and the viewer .PP .PP .PP The user interface features listed above are the common parts of the user interfaces of the \fBSoQtFullViewer\fP's non-abstract subclasses\&. .PP For 'real' application programs, the viewers / components from this class onwards and further down in the inheritance hierarchy is usually not all that interesting, as they enforces too much extra user interface cruft not compatible with the look and feel of the other parts of the application user interface\&. So most 'real' applications will use either the \fBSoQtViewer\fP or the \fBSoQtRenderArea\fP as their base-level component, and then inherit one of these down into one's own 'proper' viewer classes\&. .PP The non-abstract subclasses of the \fBSoQtFullViewer\fP class are viewer components often used as a test-bed for prototyping / rapid application development when doing quick testing of scenes, stand-alone 3D-models, animation techniques, etc etc\&. .PP \fBSee also:\fP .RS 4 \fBSoQtConstrainedViewer\fP, \fBSoQtExaminerViewer\fP, \fBSoQtPlaneViewer\fP .RE .PP .SH "Member Enumeration Documentation" .PP .SS "enum \fBSoQtFullViewer::BuildFlag\fP"Valid values for the constructor argument that decides how much of the user interface features to set up\&. The enum values are bitflags that can be OR'ed together\&. .PP \fBEnumerator: \fP .in +1c .TP \fB\fIBUILD_NONE \fP\fP Do not add any of the user interface components\&. .TP \fB\fIBUILD_DECORATION \fP\fP Only build and set up the decorations around the OpenGL canvas\&. .TP \fB\fIBUILD_POPUP \fP\fP Only build the popup menu\&. (Activated with the right mousebutton\&.) .TP \fB\fIBUILD_ALL \fP\fP Build all user interface components of the \fBSoQtFullViewer\fP\&. .SH "Constructor & Destructor Documentation" .PP .SS "\fBSoQtFullViewer::SoQtFullViewer\fP (QWidget *parent, const char *name, SbBoolembed, \fBSoQtFullViewer::BuildFlag\fPbuildFlag, \fBSoQtViewer::Type\fPtype, SbBoolbuild)\fC [protected]\fP"Constructor\&. See parent class for explanation of arguments\&. .PP Subclasses will probably usually call with the \fIbuildNow\fP flag set to \fCFALSE\fP to be able to do delayed building of the OpenGL canvas after other setup tasks has been performed\&. .PP References bottomDecoration, bottomWheel, bottomWheelLabel, bottomWheelStr, bottomWheelVal, BUILD_DECORATION, BUILD_POPUP, buildWidget(), SoQtComponent::getParentWidget(), leftDecoration, leftWheel, leftWheelLabel, leftWheelStr, leftWheelVal, prefmenu, rightDecoration, rightWheel, rightWheelLabel, rightWheelStr, rightWheelVal, SoQtComponent::setBaseWidget(), setBottomWheelString(), SoQtComponent::setClassName(), setLeftWheelString(), setRightWheelString(), and SoQtComponent::setSize()\&. .SS "\fBSoQtFullViewer::~SoQtFullViewer\fP ()\fC [protected]\fP"Destructor\&. .PP References bottomWheelStr, leftWheelStr, prefmenu, rightWheelStr, and SoQtComponent::unregisterWidget()\&. .SH "Member Function Documentation" .PP .SS "void \fBSoQtFullViewer::setDecoration\fP (const SbBoolenable)"Turn the viewer decorations on or off\&. .PP \fBSee also:\fP .RS 4 \fBisDecoration()\fP .RE .PP .PP References isDecoration()\&. .SS "SbBool \fBSoQtFullViewer::isDecoration\fP (void) const"Return \fCTRUE\fP if the viewer decorations are on, otherwise \fCFALSE\fP\&. .PP \fBSee also:\fP .RS 4 \fBsetDecoration()\fP .RE .PP .PP Referenced by setDecoration()\&. .SS "void \fBSoQtFullViewer::setPopupMenuEnabled\fP (const SbBoolenable)"Decide whether or not if clicking with the right mouse button on the OpenGL canvas should reveal a preferences popup menu when in viewing mode\&. .PP \fBSee also:\fP .RS 4 \fBisPopupMenuEnabled()\fP .RE .PP .PP References isPopupMenuEnabled()\&. .SS "SbBool \fBSoQtFullViewer::isPopupMenuEnabled\fP (void) const"Return \fCTRUE\fP if the popup preferences menu is enabled, otherwise \fCFALSE\fP\&. .PP \fBSee also:\fP .RS 4 \fBsetPopupMenuEnabled()\fP .RE .PP .PP Referenced by openPopupMenu(), processSoEvent(), and setPopupMenuEnabled()\&. .SS "QWidget * \fBSoQtFullViewer::getAppPushButtonParent\fP (void) const"Returns the widget which is used as the parent of application specified buttons\&. The row of application buttons (if any) will be placed in the upper left corner\&. .PP \fBSee also:\fP .RS 4 \fBaddAppPushButton()\fP, \fBinsertAppPushButton()\fP, \fBremoveAppPushButton()\fP .RE .PP .PP Referenced by addAppPushButton(), insertAppPushButton(), and removeAppPushButton()\&. .SS "void \fBSoQtFullViewer::addAppPushButton\fP (QWidget *newButton)"Add an application specific push button to the viewer decorations\&. Application buttons will be laid out in a vertical row from the upper left corner\&. .PP The button will be added bottom-most\&. .PP \fBSee also:\fP .RS 4 \fBinsertAppPushButton()\fP, \fBremoveAppPushButton()\fP, \fBgetAppPushButtonParent()\fP .RE .PP .PP References getAppPushButtonParent()\&. .SS "void \fBSoQtFullViewer::insertAppPushButton\fP (QWidget *newButton, intindex)"Insert an application specific push button to the viewer decorations at the given \fCindex\fP\&. .PP \fBSee also:\fP .RS 4 \fBaddAppPushButton()\fP, \fBremoveAppPushButton()\fP, \fBgetAppPushButtonParent()\fP .RE .PP .PP References getAppPushButtonParent(), and lengthAppPushButton()\&. .SS "void \fBSoQtFullViewer::removeAppPushButton\fP (QWidget *oldButton)"Remove one of the application specific buttons\&. .PP \fBSee also:\fP .RS 4 \fBaddAppPushButton()\fP, \fBinsertAppPushButton()\fP .RE .PP .PP References getAppPushButtonParent()\&. .SS "int \fBSoQtFullViewer::findAppPushButton\fP (QWidget *oldButton) const"Return the index of a particular button that has been specified by the application, or -1 of the button has not been added\&. .PP \fBSee also:\fP .RS 4 \fBaddAppPushButton()\fP .RE .PP .SS "int \fBSoQtFullViewer::lengthAppPushButton\fP (void) const"Return number of application specific buttons added\&. .PP \fBSee also:\fP .RS 4 \fBaddAppPushButton()\fP, insertAddAppPushButton() .RE .PP .PP Referenced by buildAppButtons(), and insertAppPushButton()\&. .SS "QWidget * \fBSoQtFullViewer::getRenderAreaWidget\fP (void) const"Returns the render area OpenGL canvas widget\&. .SS "void \fBSoQtFullViewer::setViewing\fP (SbBoolenable)\fC [virtual]\fP"Set view mode\&. .PP If the view mode is on, user events will be caught and used to influence the camera position / orientation\&. If view mode is off, all events in the viewer canvas (like for instance keypresses or mouseclicks and -movements) will be passed along to the scene graph\&. .PP Default is to have the view mode active\&. .PP \fBSee also:\fP .RS 4 \fBisViewing()\fP .RE .PP .PP Reimplemented from \fBSoQtViewer\fP\&. .PP Reimplemented in \fBSoQtExaminerViewer\fP, \fBSoQtFlyViewer\fP, and \fBSoQtPlaneViewer\fP\&. .PP References SoQtViewer::isViewing()\&. .SS "void \fBSoQtFullViewer::setComponentCursor\fP (const \fBSoQtCursor\fP &cursor)\fC [virtual]\fP"Sets the cursor for this component\&. .PP Note: not part of the original SGI InventorXt API\&. .PP Reimplemented from \fBSoQtComponent\fP\&. .PP References SoQtGLWidget::getGLWidget(), and SoQtComponent::setWidgetCursor()\&. .SS "void \fBSoQtFullViewer::sizeChanged\fP (const SbVec2s &size)\fC [protected, virtual]\fP"Called internally from within the \fBSoQt\fP library when the widget embedded in a component changes it size, which is usually triggered by end-user interaction\&. .PP This method is then invoked to notify the component that the size has changed\&. It is called from the top and all the way down to the bottom, the size being adjusted to take into account extra decorations having been added at each level in the component class hierarchy\&. .PP Reimplemented from \fBSoQtViewer\fP\&. .PP References bottomDecoration, leftDecoration, and rightDecoration\&. .SS "QWidget * \fBSoQtFullViewer::buildWidget\fP (QWidget *parent)\fC [protected]\fP"This method builds the component contents in the given \fIparent\fP widget\&. For subclasses adding new user interface items, this method is typically overridden in the following manner: .PP .PP .nf QWidget * MyOwnViewer::buildWidget(QWidget * parent) { QWidget * superw = ::buildWidget(parent); // [then move superw within MyOwnViewer framework and add own // user interface components] } .fi .PP .PP Reimplemented from \fBSoQtRenderArea\fP\&. .PP Reimplemented in \fBSoQtPlaneViewer\fP\&. .PP References buildDecoration(), buildPopupMenu(), and SoQtComponent::registerWidget()\&. .PP Referenced by SoQtConstrainedViewer::SoQtConstrainedViewer(), and SoQtFullViewer()\&. .SS "void \fBSoQtFullViewer::buildDecoration\fP (QWidget *parent)\fC [protected, virtual]\fP"Build viewer decorations\&. .PP References bottomDecoration, buildBottomTrim(), buildLeftTrim(), buildRightTrim(), leftDecoration, and rightDecoration\&. .PP Referenced by buildWidget()\&. .SS "QWidget * \fBSoQtFullViewer::buildLeftTrim\fP (QWidget *parent)\fC [protected, virtual]\fP"Build decorations on the left of the render canvas\&. Override this method in subclasses if you want your own decorations on the viewer window\&. .PP The decoration will be 30 pixels wide\&. .PP References buildAppButtons(), leftWheel, and leftWheelVal\&. .PP Referenced by buildDecoration()\&. .SS "QWidget * \fBSoQtFullViewer::buildBottomTrim\fP (QWidget *parent)\fC [protected, virtual]\fP"Build decorations on the bottom of the render canvas\&. Override this method in subclasses if you want your own decorations on the viewer window\&. .PP References bottomWheel, bottomWheelLabel, bottomWheelStr, bottomWheelVal, leftWheelLabel, leftWheelStr, rightWheelLabel, and rightWheelStr\&. .PP Referenced by buildDecoration()\&. .SS "QWidget * \fBSoQtFullViewer::buildRightTrim\fP (QWidget *parent)\fC [protected, virtual]\fP"Build decorations on the right side of the render canvas\&. Override this method in subclasses if you want your own decorations on the viewer window\&. .PP References buildViewerButtons(), rightWheel, and rightWheelVal\&. .PP Referenced by buildDecoration()\&. .SS "QWidget * \fBSoQtFullViewer::buildAppButtons\fP (QWidget *parent)\fC [protected]\fP"Build the application specified button row (if any buttons were set up)\&. .PP References lengthAppPushButton()\&. .PP Referenced by buildLeftTrim()\&. .SS "QWidget * \fBSoQtFullViewer::buildViewerButtons\fP (QWidget *parent)\fC [protected]\fP"Build and layout viewer specified button row\&. .PP References createViewerButtons()\&. .PP Referenced by buildRightTrim()\&. .SS "void \fBSoQtFullViewer::createViewerButtons\fP (QWidget *parent, SbPList *buttonlist)\fC [protected, virtual]\fP"Set up the viewer buttons with pixmaps and event connections\&. .PP One important note if you want to override this method to add your own buttons to the list (in the explanation below, it is assumed that you know how virtual function table pointers are handled by C++): .PP \fBcreateViewerButtons()\fP is called (indirectly) from the constructors of the viewer classes\&. This means that you need to delay it's invocation until your own subclass's constructor is run, because otherwise your re-implementation won't have been added to the internal virtual function table yet\&. .PP Delaying a superclass viewer from building it's decorations is done by passing build==FALSE as the last argument of the protected constructors\&. You will then have to explicitly trigger the building in your own constructor\&. .PP Here's a minimal example that shows the steps needed to be able to override \fBcreateViewerButtons()\fP from \fBSoQtExaminerViewer\fP: .PP .PP .nf class MyExaminerViewer : public SoQtExaminerViewer { public: MyExaminerViewer(QWidget * parent); protected: virtual void createViewerButtons(QWidget * parent, SbPList * buttonlist); }; MyExaminerViewer::MyExaminerViewer(QWidget * parent) : SoQtExaminerViewer(parent, NULL, TRUE, SoQtFullViewer::BUILD_ALL, SoQtFullViewer::BROWSER, // build == FALSE, to delay creation of decorations FALSE) { // Explicitly trigger the construction of viewer decorations\&. QWidget * widget = this->buildWidget(this->getParentWidget()); this->setBaseWidget(widget); } void MyExaminerViewer::createViewerButtons(QWidget * parent, SbPList * buttonlist) { SoQtExaminerViewer::createViewerButtons(parent, buttonlist); // [now add your own button(s) to the buttonlist] } .fi .PP .PP Reimplemented in \fBSoQtExaminerViewer\fP, and \fBSoQtPlaneViewer\fP\&. .PP References SoQtViewer::isViewing()\&. .PP Referenced by buildViewerButtons()\&. .SS "void \fBSoQtFullViewer::buildPopupMenu\fP (void)\fC [protected, virtual]\fP"Make a popup menu with preferences settings\&. .PP One important note as for when you want to override this function in a subclass: be aware that it will usually be invoked (indirectly) from this class's constructor\&. That is \fIbefore\fP the table of virtual function pointers has been set up for the subclass, and because of this, the function will not be called in the subclass even though it is virtual\&. .PP To make the overriding actually be in effect, you need to delay building the widgets of this class\&. For information on how to do that, see the documentation of \fBSoQtFullViewer::createViewerButtons()\fP\&. .PP References prefmenu\&. .PP Referenced by buildWidget(), and openPopupMenu()\&. .SS "void \fBSoQtFullViewer::setPopupMenuString\fP (const char *name)\fC [protected, virtual]\fP"Set title of popup menu\&. .PP References prefmenu\&. .SS "void \fBSoQtFullViewer::openPopupMenu\fP (const SbVec2sposition)\fC [protected, virtual]\fP"NOTE: This method is not part of the original InventorXt API\&. .PP References buildPopupMenu(), SoQtGLWidget::getGLSize(), SoQtGLWidget::getGLWidget(), isPopupMenuEnabled(), and prefmenu\&. .PP Referenced by processSoEvent()\&. .SS "void \fBSoQtFullViewer::leftWheelStart\fP (void)\fC [protected, virtual]\fP"Called when the user start to drag the thumbwheel in the left frame\&. Override this method in subclassed viewers to provide your own functionality on the thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBleftWheelMotion()\fP, \fBleftWheelFinish()\fP .PP \fBbottomWheelStart()\fP, \fBrightWheelStart()\fP .RE .PP .PP Reimplemented in \fBSoQtPlaneViewer\fP\&. .PP References SoQtViewer::interactiveCountInc()\&. .SS "void \fBSoQtFullViewer::leftWheelMotion\fP (floatvalue)\fC [protected, virtual]\fP"Called repeatedly as the user drags the thumbwheel in the left frame\&. Override this method in subclassed viewers to provide your own functionality on the thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBleftWheelStart()\fP, \fBleftWheelFinish()\fP .PP \fBbottomWheelStart()\fP, \fBrightWheelStart()\fP .RE .PP .PP Reimplemented in \fBSoQtExaminerViewer\fP, \fBSoQtPlaneViewer\fP, and \fBSoQtConstrainedViewer\fP\&. .PP References leftWheelVal\&. .SS "void \fBSoQtFullViewer::leftWheelFinish\fP (void)\fC [protected, virtual]\fP"Called as the user let go of the thumbwheel in the left frame after a drag operation\&. Override this method in subclassed viewers to provide your own functionality on the thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBleftWheelStart()\fP, \fBleftWheelMotion()\fP .PP \fBbottomWheelStart()\fP, \fBrightWheelStart()\fP .RE .PP .PP Reimplemented in \fBSoQtPlaneViewer\fP\&. .PP References SoQtViewer::interactiveCountDec()\&. .SS "float \fBSoQtFullViewer::getLeftWheelValue\fP (void) const\fC [protected]\fP"Get current value of the left thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBleftWheelMotion()\fP .RE .PP .PP References leftWheelVal\&. .PP Referenced by SoQtConstrainedViewer::leftWheelMotion(), SoQtPlaneViewer::leftWheelMotion(), and SoQtExaminerViewer::leftWheelMotion()\&. .SS "void \fBSoQtFullViewer::setLeftWheelValue\fP (const floatvalue)\fC [protected]\fP"Set a new value for the left thumbwheel\&. .PP References leftWheel, and leftWheelVal\&. .SS "void \fBSoQtFullViewer::bottomWheelStart\fP (void)\fC [protected, virtual]\fP"Called when the user start to drag the thumbwheel in the bottom frame\&. Override this method in subclassed viewers to provide your own functionality on the thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBbottomWheelMotion()\fP, \fBbottomWheelFinish()\fP .PP \fBleftWheelStart()\fP, \fBrightWheelStart()\fP .RE .PP .PP Reimplemented in \fBSoQtPlaneViewer\fP\&. .PP References SoQtViewer::interactiveCountInc()\&. .SS "void \fBSoQtFullViewer::bottomWheelMotion\fP (floatvalue)\fC [protected, virtual]\fP"Called repeatedly as the user drags the thumbwheel in the bottom frame\&. Override this method in subclassed viewers to provide your own functionality on the thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBbottomWheelStart()\fP, \fBbottomWheelFinish()\fP .PP \fBleftWheelStart()\fP, \fBrightWheelStart()\fP .RE .PP .PP Reimplemented in \fBSoQtExaminerViewer\fP, \fBSoQtPlaneViewer\fP, and \fBSoQtConstrainedViewer\fP\&. .PP References bottomWheelVal\&. .SS "void \fBSoQtFullViewer::bottomWheelFinish\fP (void)\fC [protected, virtual]\fP"Called as the user let go of the thumbwheel in the bottom frame after a drag operation\&. Override this method in subclassed viewers to provide your own functionality on the thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBbottomWheelStart()\fP, \fBbottomWheelMotion()\fP .PP \fBleftWheelStart()\fP, \fBrightWheelStart()\fP .RE .PP .PP Reimplemented in \fBSoQtPlaneViewer\fP\&. .PP References SoQtViewer::interactiveCountDec()\&. .SS "float \fBSoQtFullViewer::getBottomWheelValue\fP (void) const\fC [protected]\fP"Get current value of the bottom thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBbottomWheelMotion()\fP .RE .PP .PP References bottomWheelVal\&. .PP Referenced by SoQtConstrainedViewer::bottomWheelMotion(), SoQtPlaneViewer::bottomWheelMotion(), and SoQtExaminerViewer::bottomWheelMotion()\&. .SS "void \fBSoQtFullViewer::setBottomWheelValue\fP (const floatvalue)\fC [protected]\fP"Set a new value for the bottom thumbwheel\&. .PP References bottomWheel, and bottomWheelVal\&. .SS "void \fBSoQtFullViewer::rightWheelStart\fP (void)\fC [protected, virtual]\fP"Called when the user start to drag the thumbwheel in the right frame\&. Override this method in subclassed viewers to provide your own functionality on the thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBrightWheelMotion()\fP, \fBrightWheelFinish()\fP .PP \fBleftWheelStart()\fP, \fBbottomWheelStart()\fP .RE .PP .PP Reimplemented in \fBSoQtPlaneViewer\fP\&. .PP References SoQtViewer::interactiveCountInc()\&. .SS "void \fBSoQtFullViewer::rightWheelMotion\fP (floatvalue)\fC [protected, virtual]\fP"Called repeatedly as the user drags the thumbwheel in the right frame\&. Override this method in subclassed viewers to provide your own functionality on the thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBrightWheelStart()\fP, \fBrightWheelFinish()\fP .PP \fBleftWheelStart()\fP, \fBbottomWheelStart()\fP .RE .PP .PP Reimplemented in \fBSoQtExaminerViewer\fP, \fBSoQtPlaneViewer\fP, and \fBSoQtFlyViewer\fP\&. .PP References rightWheelVal\&. .SS "void \fBSoQtFullViewer::rightWheelFinish\fP (void)\fC [protected, virtual]\fP"Called as the user let go of the thumbwheel in the right frame after a drag operation\&. Override this method in subclassed viewers to provide your own functionality on the thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBrightWheelStart()\fP, \fBrightWheelMotion()\fP .PP \fBleftWheelStart()\fP, \fBbottomWheelStart()\fP .RE .PP .PP Reimplemented in \fBSoQtPlaneViewer\fP\&. .PP References SoQtViewer::interactiveCountDec()\&. .SS "float \fBSoQtFullViewer::getRightWheelValue\fP (void) const\fC [protected]\fP"Get current value of the right thumbwheel\&. .PP \fBSee also:\fP .RS 4 \fBrightWheelMotion()\fP .RE .PP .PP References rightWheelVal\&. .PP Referenced by SoQtPlaneViewer::processSoEvent(), SoQtFlyViewer::rightWheelMotion(), SoQtPlaneViewer::rightWheelMotion(), and SoQtExaminerViewer::rightWheelMotion()\&. .SS "void \fBSoQtFullViewer::setRightWheelValue\fP (const floatvalue)\fC [protected]\fP"Set a new value for the right thumbwheel\&. .PP References rightWheel, and rightWheelVal\&. .PP Referenced by SoQtPlaneViewer::processSoEvent()\&. .SS "void \fBSoQtFullViewer::setLeftWheelString\fP (const char *conststring)\fC [protected]\fP"Set label of the left thumbwheel\&. .PP References leftWheelLabel, and leftWheelStr\&. .PP Referenced by SoQtConstrainedViewer::SoQtConstrainedViewer(), and SoQtFullViewer()\&. .SS "QWidget * \fBSoQtFullViewer::getLeftWheelLabelWidget\fP (void) const\fC [protected]\fP"This method returns the native widget for the label below the left thumb wheel\&. .PP References leftWheelLabel\&. .SS "void \fBSoQtFullViewer::setBottomWheelString\fP (const char *conststring)\fC [protected]\fP"Set label of the bottom thumbwheel\&. .PP References bottomWheelLabel, and bottomWheelStr\&. .PP Referenced by SoQtConstrainedViewer::SoQtConstrainedViewer(), and SoQtFullViewer()\&. .SS "QWidget * \fBSoQtFullViewer::getBottomWheelLabelWidget\fP (void) const\fC [protected]\fP"This method returns the native widget for the label beside the bottom thumb wheel\&. .PP References bottomWheelLabel\&. .SS "void \fBSoQtFullViewer::setRightWheelString\fP (const char *conststring)\fC [protected]\fP"Set label of the right thumbwheel\&. .PP References rightWheelLabel, and rightWheelStr\&. .PP Referenced by SoQtPlaneViewer::setCamera(), SoQtExaminerViewer::setCamera(), SoQtConstrainedViewer::SoQtConstrainedViewer(), and SoQtFullViewer()\&. .SS "QWidget * \fBSoQtFullViewer::getRightWheelLabelWidget\fP (void) const\fC [protected]\fP"This method returns the native widget for the label below the right thumb wheel\&. .PP References rightWheelLabel\&. .SS "SbBool \fBSoQtFullViewer::processSoEvent\fP (const SoEvent *constevent)\fC [protected, virtual]\fP"Toolkit-native events are attempted converted to Coin-generic events in the \fBSoQtRenderArea::processEvent()\fP method\&. If this succeeds, they are forwarded to this method\&. .PP This is a virtual method, and is overridden in it's subclasses to catch events of particular interest to the viewer classes, for instance\&. .PP Return \fCTRUE\fP iff the event was processed\&. If not it should be passed on further up in the inheritance hierarchy by the caller\&. This last point is extremely important to take note of if you are expanding the toolkit with your own viewer class\&. .PP This method is not part of the original SGI InventorXt API\&. Note that you can still override the toolkit-native \fBprocessEvent()\fP method instead of this 'generic' method\&. .PP Reimplemented from \fBSoQtViewer\fP\&. .PP Reimplemented in \fBSoQtExaminerViewer\fP, \fBSoQtFlyViewer\fP, and \fBSoQtPlaneViewer\fP\&. .PP References isPopupMenuEnabled(), SoQtViewer::isViewing(), and openPopupMenu()\&. .SH "Member Data Documentation" .PP .SS "QWidget * \fBSoQtFullViewer::leftWheel\fP\fC [protected]\fP"The widget representing the thumbwheel left of the render canvas\&. .PP Referenced by buildLeftTrim(), setLeftWheelValue(), and SoQtFullViewer()\&. .SS "QWidget * \fBSoQtFullViewer::rightWheel\fP\fC [protected]\fP"The widget representing the thumbwheel on the right side of the render canvas\&. .PP Referenced by buildRightTrim(), setRightWheelValue(), and SoQtFullViewer()\&. .SS "QWidget * \fBSoQtFullViewer::bottomWheel\fP\fC [protected]\fP"The widget representing the thumbwheel below the render canvas\&. .PP Referenced by buildBottomTrim(), setBottomWheelValue(), and SoQtFullViewer()\&. .SS "QWidget * \fBSoQtFullViewer::leftDecoration\fP\fC [protected]\fP"The root widget for the left-side decorations\&. .PP Referenced by buildDecoration(), sizeChanged(), and SoQtFullViewer()\&. .SS "QWidget * \fBSoQtFullViewer::rightDecoration\fP\fC [protected]\fP"The root widget for the right-side decorations\&. .PP Referenced by buildDecoration(), sizeChanged(), and SoQtFullViewer()\&. .SS "QWidget * \fBSoQtFullViewer::bottomDecoration\fP\fC [protected]\fP"The root widget for the bottom decorations\&. .PP Referenced by buildDecoration(), sizeChanged(), and SoQtFullViewer()\&. .SS "QWidget * \fBSoQtFullViewer::leftWheelLabel\fP\fC [protected]\fP"Label widget of left wheel\&. .PP Referenced by buildBottomTrim(), getLeftWheelLabelWidget(), setLeftWheelString(), and SoQtFullViewer()\&. .SS "char * \fBSoQtFullViewer::leftWheelStr\fP\fC [protected]\fP"Text of left thumbwheel's label\&. .PP Referenced by buildBottomTrim(), setLeftWheelString(), SoQtFullViewer(), and ~SoQtFullViewer()\&. .SS "float \fBSoQtFullViewer::leftWheelVal\fP\fC [protected]\fP"Current value of the left thumbwheel\&. .PP Referenced by buildLeftTrim(), getLeftWheelValue(), leftWheelMotion(), setLeftWheelValue(), and SoQtFullViewer()\&. .SS "QWidget * \fBSoQtFullViewer::rightWheelLabel\fP\fC [protected]\fP"Label widget of right wheel\&. .PP Referenced by buildBottomTrim(), getRightWheelLabelWidget(), setRightWheelString(), and SoQtFullViewer()\&. .SS "char * \fBSoQtFullViewer::rightWheelStr\fP\fC [protected]\fP"Text of right thumbwheel's label\&. .PP Referenced by buildBottomTrim(), setRightWheelString(), SoQtFullViewer(), and ~SoQtFullViewer()\&. .SS "float \fBSoQtFullViewer::rightWheelVal\fP\fC [protected]\fP"Current value of the right-side thumbwheel\&. .PP Referenced by buildRightTrim(), getRightWheelValue(), rightWheelMotion(), setRightWheelValue(), and SoQtFullViewer()\&. .SS "QWidget * \fBSoQtFullViewer::bottomWheelLabel\fP\fC [protected]\fP"Label widget of bottom wheel\&. .PP Referenced by buildBottomTrim(), getBottomWheelLabelWidget(), setBottomWheelString(), and SoQtFullViewer()\&. .SS "char * \fBSoQtFullViewer::bottomWheelStr\fP\fC [protected]\fP"Text of bottom thumbwheel's label\&. .PP Referenced by buildBottomTrim(), setBottomWheelString(), SoQtFullViewer(), and ~SoQtFullViewer()\&. .SS "float \fBSoQtFullViewer::bottomWheelVal\fP\fC [protected]\fP"Current value of the bottom thumbwheel\&. .PP Referenced by bottomWheelMotion(), buildBottomTrim(), getBottomWheelValue(), setBottomWheelValue(), and SoQtFullViewer()\&. .SS "SoQtPopupMenu * \fBSoQtFullViewer::prefmenu\fP\fC [protected]\fP"Pointer to the popup menu instance\&. .PP Referenced by buildPopupMenu(), openPopupMenu(), setPopupMenuString(), SoQtFullViewer(), and ~SoQtFullViewer()\&. .SH "Author" .PP Generated automatically by Doxygen for SoQt from the source code\&.