Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

QStereoCtrl.h

Go to the documentation of this file.
00001 /*
00002  * QStereoCtrl.h
00003  * $Id: QStereoCtrl.h,v 1.3 2001/11/15 16:54:52 guenth Exp $
00004  *
00005  * Copyright (C) 1999, 2000 Markus Janich
00006  *
00007  * This program is free software; you can redistribute it and/or modify
00008  * it under the terms of the GNU General Public License as published by
00009  * the Free Software Foundation; either version 2 of the License, or
00010  * (at your option) any later version.
00011  *
00012  * This program is distributed in the hope that it will be useful,
00013  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00014  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015  * GNU General Public License for more details.
00016  *
00017  * You should have received a copy of the GNU General Public License
00018  * along with this program; if not, write to the Free Software
00019  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00020  *
00021  * As a special exception to the GPL, the QGLViewer authors (Markus
00022  * Janich, Michael Meissner, Richard Guenther, Alexander Buck and Thomas
00023  * Woerner) give permission to link this program with Qt (non-)commercial
00024  * edition, and distribute the resulting executable, without including
00025  * the source code for the Qt (non-)commercial edition in the source
00026  * distribution.
00027  *
00028  */
00029 
00030 #ifndef QSTEREODLG_H
00031 #define QSTEREODLG_H
00032 
00033 #include <qwidget.h>
00034 #include <qcheckbox.h>
00035 #include <qlcdnumber.h>
00036 #include <qmenubar.h>
00037 #include <qpopupmenu.h>
00038 #include <qlabel.h>
00039 #include <qradiobutton.h>
00040 #include <qbuttongroup.h>
00041 #include <qlayout.h>
00042 #include <qslider.h>
00043 #include <qcombobox.h>
00044 
00045 class QGLViewer;
00046 
00047 class QStereoCtrl : public QWidget
00048 {
00049   Q_OBJECT
00050 
00051     public:
00052   
00053   enum StereoType {
00054     TYPE1,    
00055     TYPE2
00056   };
00057 
00058 
00060   QStereoCtrl( QGLViewer *pViewer, const char * name=0 );
00061 
00063   ~QStereoCtrl( void );
00064 
00065 
00066 public slots:
00067 
00068  void sltAngleChanged( int value );
00069  void sltStereoTypeChanged( int type );
00070 
00071  signals:
00072 
00073  void sigApply( void );
00074 
00075 private:
00076 
00077  void initDlg(void);
00078  void setValues( int type, float parallaxAngle );
00079  void setStereoType( int index );
00080  void setAngle(float);
00081  void activateStereoFrustum(int dir);
00082 
00083  public:
00084 
00085  void activateLeftStereoFrustum(void);
00086  void activateRightStereoFrustum(void);
00087  void showDlg( void );
00088  void hideDlg( void );
00089 
00090  private:
00091 
00092  QGLViewer     *m_pViewer;
00093  QComboBox     *m_pTypeCombo;
00094  QSlider       *m_pAngleSlider;
00095  float          m_maxAllowedAngle;
00096  float          m_parallaxAngle;
00097  int            m_stereoType;
00098  bool           m_createDlg;
00099 
00100 };
00101 
00102 
00103 #endif // QSTEREODLG_H
00104 
00105 
00106 
00107 
00108 
00109 
00110 

Generated on Wed Oct 22 05:02:31 2003 for QGLViewer by doxygen 1.3.4