VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtEyepointControlWidget.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCoreQt/vrvCoreQt.h>
13 #include <vrvCoreQt/DtPage.h>
15 #include <vrvCore/DtUniqueID.h>
16 
17 class QCheckBox;
18 class QDialog;
19 class QMenu;
20 class QAction;
21 class QSlider;
22 class QDoubleSpinBox;
23 class QRadioButton;
24 class QButtonGroup;
25 
26 namespace makVrv
27 {
28  class DtEyepointControlWidgetLogic;
29  class DtObserverModeSelectionWidget;
30  class DtSliderDoubleSpinboxWidget;
31 
35  : public DtPage
37 
38  {
39 
40  Q_OBJECT
41 
42  public:
43 
45  virtual ~DtEyepointControlWidget();
46 
48  virtual QIcon icon();
49 
51  virtual QString title();
52 
54  virtual const std::string& pageClassName() const;
55 
57  virtual void setScalingCheckBox( bool checked );
58 
60  virtual void setConstrainCheckBox( bool checked );
61 
63  virtual void enableConstrainCheckBox( bool enabled );
64 
66  virtual void setTerrainDragCheckBox( bool checked );
67 
69  virtual void setLinearSpeedGainSlider( int gain );
70 
72  virtual void setRotationSpeedGainSlider( int gain );
73 
75  virtual void setOrbitSpeedGainSlider( int gain );
76 
78  virtual void setSliderGainPrecision( int precision );
79 
81  virtual void setModelScaleFactorSlider( int factor );
82 
84  virtual void enableModelScaleFactorSlider( bool enable );
85 
87  virtual void setMaxModelScaleFactor( int maxModelScaleFactor );
88 
90  virtual void setViewMagnificationSpinBox( double mag );
91 
93  virtual void enableViewMagnificationSpinBox( bool enable );
94 
96  virtual void setLodScaleSpinBox(double lodScale);
97 
99  virtual void setLodScaleMinRange(float minRange);
101  virtual void setLodScaleMaxRange(float maxRange);
102  virtual void setLodScaleDecimals(int decimals);
103  virtual void setLodScaleSingleStep(float step);
105 
106 
108  virtual void enableLodScaleSpinBox(bool enable);
109 
110  virtual void setSpeedScalingMode( DtObserverObject::SpeedScalingMode mode );
111  virtual void setSpeedScalingMslModeOffset( double offset );
112 
114  virtual QSize sizeHint() const;
115 
116  public slots:
117 
119  virtual void toggleScaling( bool checked );
120 
122  virtual void toggleConstrain( bool checked );
123 
125  virtual void toggleTerrainDragging( bool checked );
126 
128  virtual void linearSpeedGainSliderChanged( int value );
129 
131  virtual void rotationSpeedGainSliderChanged( int value );
132 
134  virtual void orbitSpeedGainSliderChanged( int value );
135 
136  virtual void onModelScaleFactorSliderChanged( int value );
137 
138  virtual void onViewMagnificationSpinBoxChanged(double value);
139 
140  virtual void onLodScaleSpinBoxChanged(double value);
141 
142  virtual void onSpeedScalingMslRadioButtonClicked();
143 
144  virtual void onSpeedScalingAglRadioButtonClicked();
145 
146  virtual void onSpeedScalingMslModeOffsetSliderChanged( double value );
147 
148  protected:
149 
152 
154  DtEyepointControlWidget(DtDe& de, QWidget* parent = 0, Qt::WindowFlags f = 0);
155 
157  virtual void activate();
158 
160  virtual void deactivate();
161 
162  void setupGui();
163 
167  virtual void keyReleaseEvent( QKeyEvent* event );
168 
169 
170  protected:
171 
174  std::string myClassName;
189 
190  };
191 
195  {
196  public:
197 
200 
203 
207  virtual std::string pageClassName() const;
208 
210  virtual DtPage* create(QWidget* parent = 0, Qt::WindowFlags f = 0);
211  };
212 
213 }
214 
DtObserverModeSelectionWidget * myObserverModeComboBox
Definition: DtEyepointControlWidget.h:181
A widget class for managing attachment.
Definition: DtEyepointControlWidget.h:34
QSlider * myModelScaleFactorSlider
Definition: DtEyepointControlWidget.h:182
QSlider * myLinearSpeedGainSlider
Definition: DtEyepointControlWidget.h:175
QRadioButton * mySpeedScalingMslRadioButton
Definition: DtEyepointControlWidget.h:187
Contains makVrv::DtPage class.
Widget for choosing the current observer mode for an observer.
Definition: DtObserverModeSelectionWidget.h:27
DtSliderDoubleSpinboxWidget * myLodScaleSpinBox
Definition: DtEyepointControlWidget.h:184
The page creator.
Definition: DtPage.h:117
QDoubleSpinBox * myViewMagnificationSpinBox
Definition: DtEyepointControlWidget.h:183
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
Contains DLL export macros.
std::string myClassName
Definition: DtEyepointControlWidget.h:174
The creator class needed to be used to create a DtDriverWidget.
Definition: DtEyepointControlWidget.h:194
SpeedScalingMode
Definition: DtObserverObject.h:50
QSlider * myRotationSpeedGainSlider
Definition: DtEyepointControlWidget.h:176
QButtonGroup * mySpeedScalingModeButtonGroup
Definition: DtEyepointControlWidget.h:185
DtSliderDoubleSpinboxWidget * mySpeedScalingMslModeOffsetSlider
Definition: DtEyepointControlWidget.h:188
Abstract interface for the attach widget.
Definition: DtEyepointControlWidgetInterface.h:22
DtEyepointControlWidgetLogic * myLogic
Pointer to our logic handler.
Definition: DtEyepointControlWidget.h:173
A widget for pairing a horizontal slider with a double spin-box.
Definition: DtSliderDoubleSpinboxWidget.h:30
The page is a single widget component which is viewed in a page collection.
Definition: DtPage.h:30
QRadioButton * mySpeedScalingAglRadioButton
Definition: DtEyepointControlWidget.h:186
DT_DLL_vrfutil double mag(double x[3])
const char int mode
Definition: ioapi.h:38
QCheckBox * myTerrainDraggingCheckBox
Definition: DtEyepointControlWidget.h:180
Contains makVrv::DtEyepointControlWidgetInterface class.
Contains makVrv::DtUniqueID type.
QCheckBox * myConstrainCheckBox
Definition: DtEyepointControlWidget.h:178
QCheckBox * myScalingCheckBox
Definition: DtEyepointControlWidget.h:179
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
voidpf uLong offset
Definition: ioapi.h:42
QSlider * myOrbitSpeedGainSlider
Definition: DtEyepointControlWidget.h:177
Logic to manage the Observer Control Widget.
Definition: DtEyepointControlWidgetLogic.h:28

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)