VR-Forces 4.0.4 Class Documentation
include/vrvCoreQt/DtEyepointControlWidget.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2008 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 /******************************************************************************
00006 ** $RCSfile: DtEyepointControlWidget.h,v $ $Revision: 1.22 $ $State: Exp $
00007 ******************************************************************************/
00008 
00012 
00013 #pragma once
00014 
00015 #include <vrvCoreQt/vrvCoreQt.h>
00016 #include <vrvCoreQt/DtPage.h>
00017 #include <vrvCoreQt/DtEyepointControlWidgetInterface.h>
00018 #include <vrvCore/DtUniqueID.h>
00019 
00020 class QCheckBox;
00021 class QDialog;
00022 class QMenu;
00023 class QAction;
00024 class QSlider;
00025 class QDoubleSpinBox;
00026 
00027 namespace makVrv
00028 {
00029    class DtEyepointControlWidgetLogic;
00030    class DtObserverModeSelectionWidget;
00031 
00034    class DT_DLL_VRVCOREQT DtEyepointControlWidget
00035       : public DtPage
00036       , public DtEyepointControlWidgetInterface
00037 
00038    {
00039 
00040    Q_OBJECT
00041 
00042    public:
00043 
00045       virtual ~DtEyepointControlWidget();
00046        
00048       virtual QIcon icon();
00049 
00051       virtual QString title();
00052 
00054       virtual const std::string& pageClassName() const;
00055 
00057       virtual void setScalingCheckBox( bool checked );
00058       
00060       virtual void setConstrainCheckBox( bool checked );
00061       
00063       virtual void enableConstrainCheckBox( bool enabled );
00064       
00065       virtual void setViewControlCheckBox( bool checked );
00066 
00068       virtual void setTerrainDragCheckBox( bool checked );
00069       
00071       virtual void setLinearSpeedGainSlider( int gain );
00072       
00074       virtual void setRotationSpeedGainSlider( int gain );
00075       
00077       virtual void setOrbitSpeedGainSlider( int gain );
00078        
00080       virtual void setSliderGainPrecision( int precision );
00081 
00083       virtual void setModelScaleFactorSlider( int factor );
00084 
00086       virtual void enableModelScaleFactorSlider( bool enable );
00087      
00089       virtual void setMaxModelScaleFactor( int maxModelScaleFactor );
00090 
00092       virtual void setViewMagnificationSpinBox( double mag );
00093 
00095       virtual void enableViewMagnificationSpinBox( bool enable );
00096 
00098       virtual QSize sizeHint() const;
00099         
00100    public slots:
00101       
00103       virtual void toggleScaling( bool checked );
00104       
00106       virtual void toggleConstrain( bool checked );
00107       
00109       virtual void toggleViewControl( bool checked );
00110 
00112       virtual void toggleTerrainDragging( bool checked );
00113       
00115       virtual void linearSpeedGainSliderChanged( int value );
00116       
00118       virtual void rotationSpeedGainSliderChanged( int value );
00119       
00121       virtual void orbitSpeedGainSliderChanged( int value );
00122 
00123       virtual void onModelScaleFactorSliderChanged( int value );
00124 
00125       virtual void onViewMagnificationSpinBoxChanged( double value );
00126 
00127    protected:
00128 
00130       friend class DtEyepointControlWidgetCreator;
00131 
00133       DtEyepointControlWidget(DtDe& de, QWidget* parent = 0, Qt::WindowFlags f = 0);
00134 
00136       virtual void activate();
00137 
00139       virtual void deactivate();
00140 
00141       void setupGui();
00142 
00146       virtual void keyReleaseEvent( QKeyEvent* event );
00147 
00148 
00149    protected:
00150    
00152       DtEyepointControlWidgetLogic*    myLogic;
00153       std::string myClassName;
00154       QSlider* myLinearSpeedGainSlider;
00155       QSlider* myRotationSpeedGainSlider;
00156       QSlider* myOrbitSpeedGainSlider;
00157       QCheckBox* myConstrainCheckBox;
00158       QCheckBox* myScalingCheckBox;
00159       QCheckBox* myViewControlCheckBox;
00160       QCheckBox* myTerrainDraggingCheckBox;
00161       DtObserverModeSelectionWidget* myObserverModeComboBox;
00162       QSlider* myModelScaleFactorSlider;
00163       QDoubleSpinBox* myViewMagnificationSpinBox;
00164    };
00165 
00168    class DT_DLL_VRVCOREQT DtEyepointControlWidgetCreator : public DtPageCreator
00169    {
00170    public:
00171 
00173       DtEyepointControlWidgetCreator(DtDe& de);
00174 
00176       virtual ~DtEyepointControlWidgetCreator();
00177 
00181       virtual std::string pageClassName() const;
00182 
00184       virtual DtPage* create(QWidget* parent = 0, Qt::WindowFlags f = 0);
00185    };
00186 
00187 }
00188 

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)