Coin Logo http://www.sim.no
http://www.coin3d.org

SoQtPlaneViewer.h

00001 /**************************************************************************\
00002  *
00003  *  This file is part of the Coin 3D visualization library.
00004  *  Copyright (C) 1998-2005 by Systems in Motion.  All rights reserved.
00005  *
00006  *  This library is free software; you can redistribute it and/or
00007  *  modify it under the terms of the GNU General Public License
00008  *  ("GPL") version 2 as published by the Free Software Foundation.
00009  *  See the file LICENSE.GPL at the root directory of this source
00010  *  distribution for additional information about the GNU GPL.
00011  *
00012  *  For using Coin with software that can not be combined with the GNU
00013  *  GPL, and for taking advantage of the additional benefits of our
00014  *  support services, please contact Systems in Motion about acquiring
00015  *  a Coin Professional Edition License.
00016  *
00017  *  See <URL:http://www.coin3d.org/> for more information.
00018  *
00019  *  Systems in Motion, Postboks 1283, Pirsenteret, 7462 Trondheim, NORWAY.
00020  *  <URL:http://www.sim.no/>.
00021  *
00022 \**************************************************************************/
00023 
00024 #ifndef SOQTPLANEVIEWER_H
00025 #define SOQTPLANEVIEWER_H
00026 
00027 #include <Inventor/Qt/viewers/SoQtFullViewer.h>
00028 
00029 // ************************************************************************
00030 
00031 class SOQT_DLL_API SoQtPlaneViewer : public SoQtFullViewer {
00032   SOQT_OBJECT_HEADER(SoQtPlaneViewer, SoQtFullViewer);
00033 
00034 public:
00035   SoQtPlaneViewer(QWidget * parent = NULL,
00036                      const char * const name = NULL, 
00037                      SbBool embed = TRUE, 
00038                      SoQtFullViewer::BuildFlag flag = BUILD_ALL, 
00039                      SoQtViewer::Type type = BROWSER);
00040   ~SoQtPlaneViewer();
00041 
00042   virtual void setViewing(SbBool enable);
00043   virtual void setCamera(SoCamera * camera);
00044   virtual void setCursorEnabled(SbBool enable);
00045 
00046 protected:
00047   SoQtPlaneViewer(QWidget * parent,
00048                      const char * const name, 
00049                      SbBool embed, 
00050                      SoQtFullViewer::BuildFlag flag, 
00051                      SoQtViewer::Type type, 
00052                      SbBool build);
00053 
00054   QWidget * buildWidget(QWidget * parent);
00055 
00056   virtual const char * getDefaultWidgetName(void) const;
00057   virtual const char * getDefaultTitle(void) const;
00058   virtual const char * getDefaultIconTitle(void) const;
00059 
00060   virtual SbBool processSoEvent(const SoEvent * const event);
00061   virtual void setSeekMode(SbBool enable);
00062   virtual void actualRedraw(void);
00063 
00064   virtual void bottomWheelStart(void);
00065   virtual void bottomWheelMotion(float value);
00066   virtual void bottomWheelFinish(void);
00067 
00068   virtual void leftWheelStart(void);
00069   virtual void leftWheelMotion(float value);
00070   virtual void leftWheelFinish(void);
00071 
00072   virtual void rightWheelStart(void);
00073   virtual void rightWheelMotion(float value);
00074   virtual void rightWheelFinish(void);
00075 
00076   virtual void createViewerButtons(QWidget * parent, SbPList * buttons);
00077 
00078   virtual void afterRealizeHook(void);
00079 
00080 private:
00081   class SoQtPlaneViewerP * pimpl;
00082 
00083   friend class SoGuiPlaneViewerP;
00084   friend class SoQtPlaneViewerP;
00085 };
00086 
00087 #endif // !SOQTPLANEVIEWER_H

Copyright © 1998-2005 by Systems in Motion AS. All rights reserved.

Generated on Mon Mar 27 00:38:51 2006 for SoQt by Doxygen. 1.4.6