VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtObserverSettingsPage.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 #include <vrvCoreQt/vrvCoreQt.h>
12 #include <vrvCoreQt/DtPage.h>
14 
15 
16 class QComboBox;
17 class QTreeWidget;
18 class QTreeWidgetItem;
19 class QSlider;
20 class QDoubleSpinBox;
21 class QRadioButton;
22 class QButtonGroup;
23 class QLabel;
24 class QCheckBox;
25 
26 namespace makVrv
27 {
28  class DtDe;
29  class DtSelectInstanceWidget;
30  class DtObserverSettingsLogic;
31  class DtPersistenceToolbarWidget;
32  class DtSliderDoubleSpinboxWidget;
33 
38  {
39  Q_OBJECT
40 
41  public:
42 
44  DtObserverSettingsPage(DtDe& de, QWidget* parent, Qt::WindowFlags f = 0);
45 
47  virtual ~DtObserverSettingsPage();
48 
50  virtual QIcon icon();
51 
53  virtual QString title();
54 
56  virtual const std::string& pageClassName() const;
57 
59  static const std::string& thePageClassName();
60 
63  virtual int currentObserverIndex() const;
64 
67  virtual std::string currentObserverName() const;
68 
71  virtual int findObserverInstanceIndex(const std::string& instanceName);
72 
74  virtual void setObserverInstanceNames(const std::list<std::string>& instanceNames);
75 
78  virtual void setCurrentObserverIndex(int i);
79 
83  virtual void setCurrentObserverInstanceName(const std::string& instanceName) ;
84 
89  virtual void addObserverInstance(const DtUnicode& name, int index = -1);
90 
96  virtual void removeObserverInstance(int i);
97 
99  virtual void setDeleteObserverEnabled( bool enabled );
100 
103  virtual int currentObserverModeIndex() const;
104 
107  virtual std::string currentObserverModeName() const;
108 
111  virtual int findObserverModeInstanceIndex( const std::string& instanceName );
112 
114  virtual void setObserverModeInstanceNames( const std::list<std::string>& instanceNames );
115 
118  virtual void setCurrentObserverModeIndex( int i );
119 
123  virtual void setCurrentObserverModeInstanceName( const std::string& instanceName );
124 
129  virtual void addObserverModeInstance( const std::string& name, int index = -1 );
130 
131 
137  virtual void removeObserverModeInstance( int i );
138 
139  virtual void observerCreateRequestFailed( const std::string& observerName );
140 
141  virtual void addModelSet( int modelSet, const DtUnicode& displayName );
142  virtual void setCurrentProjection( const std::string& projectionName );
143 
144  virtual void setCurrentModelSet( int modelSet );
145  virtual void addProjection( const DtUnicode& displayName );
146 
147  virtual void setCurrentSensorMode( const std::string& sensorName );
148  virtual void addSensorMode( const std::string& sensorName );
149  virtual void removeSensorMode( const std::string& sensorName );
150  virtual void renameSensorMode( const std::string& oldName, const std::string& newName );
151  virtual void enableSensorMode( bool enable );
152 
153  virtual void addKeyMap( const std::string& displayName );
154  virtual void setCurrentKeyMap( const std::string& keyMapName );
155 
156  virtual void setOrbitSpeedGainSlider( int gain );
157  virtual void setRotationSpeedGainSlider( int gain );
158  virtual void setLinearSpeedGainSlider( int gain );
159  virtual void setSliderGainPrecision( int precision );
160 
161  virtual void addModelScaleType(const DtUnicode& displayName, const std::string& value);
162  virtual void clearModelScaleTypes();
163  virtual void setModelScaleFactorSlider( int factor );
164  virtual void enableModelScaleFactorSlider( bool enable );
165  virtual void setModelScaleFactorSliderMaximum( int maximum );
166 
167  virtual void setModelScaleTypeSelector(const std::string& scaleType);
168  virtual void enableModelScaleTypeSelector( bool enable );
169 
170  virtual void setMaxModelScaleFactorSpinBox( double maxScaleFactor );
171  virtual void enableMaxModelScaleFactorSpinBox( bool enable );
172 
173  virtual void setSpeedScalingMode( DtObserverObject::SpeedScalingMode mode );
174  virtual void setSpeedScalingMslModeOffset( double offset );
175  virtual void setSpeedScalingMslModeOffsetRanges( double minRange, double maxRange );
176  virtual void setDistanceUnitLabels( const DtUnicode& unitLabel );
177  virtual void setDistanceDecimals( int decimals );
178 
179  virtual void setCameraShakeEnabled( bool enabled );
180  virtual void setCameraShakeIntensity( float intensity );
181 
183  virtual void setLodScaleCenterEnabled(bool enabled);
185  virtual void setLodScaleCenterMagMinLimit(double limit);
186 
187  virtual void clearObserverSettings();
188  virtual void addObserverSetting( int key, const DtUnicode& displayName, bool visualTypeSetting );
189  virtual void setObserverSetting(const DtUnicode& displayName, bool checked, bool visualTypeSetting);
190 
192  virtual void enableNorthType(bool enable);
193 
195  virtual void clearNorthTypes();
196 
200  virtual void addNorthType(const std::string& displayName, DtObserverObject::NorthType northType);
201 
204  virtual void setCurrentNorthType(DtObserverObject::NorthType northType);
205 
206  protected:
207 
209  void setupGui();
210 
212  virtual void activate();
213 
215  virtual void deactivate();
216 
218  QString askForObserverModeName(QString initial, const QString& title);
219 
221  QString askForObserverName(QString initial, const QString& title);
222 
223  // ** boost signal receivers (from selectObserverInstanceWidget)
224 
225  virtual void onObserverChanged( int index, const std::string& observerName );
226 
227  virtual void onRenameObserverRequested();
228 
229  virtual void onNewObserverRequested();
230 
231  virtual void onDeleteObserverRequested();
232 
233  // ** boost signal receivers (from selectObserverModeInstanceWidget)
234 
235  virtual void onObserverModeChanged( int index, const std::string& modeName );
236 
237  virtual void onRenameObserverModeRequested();
238 
239  virtual void onNewObserverModeRequested();
240 
241  virtual void onDeleteObserverModeRequested();
242 
243  // ** Qt signal receivers (from other Qt components)
244 
245  protected slots:
246 
247  virtual void onModelSetChanged( int index );
248  virtual void onKeyMapChanged( int index );
249  virtual void onProjectionChanged( int index );
250  virtual void onTreeItemChanged( QTreeWidgetItem* item, int column );
251  virtual void onLinearSpeedGainSliderChanged( int value );
252  virtual void onRotationSpeedGainSliderChanged( int value );
253  virtual void onOrbitSpeedGainSliderChanged( int value );
254  virtual void onModelScaleFactorSliderChanged( int value );
255  virtual void onModelScaleTypeChanged( int index );
256  virtual void onMaxModelScaleFactorSpinBoxChanged( double value );
257  virtual void onSensorModeChanged( int index );
258  virtual void onSpeedScalingMslRadioButtonClicked();
259  virtual void onSpeedScalingAglRadioButtonClicked();
260  virtual void onSpeedScalingMslModeOffsetSliderChanged( double value );
261  virtual void onCameraShakeEnabledCheckBoxChanged( bool enabled );
262  virtual void onCameraShakeIntensitySliderChanged( double value );
263 
265  virtual void onLodScaleCenterEnabledCheckBoxChanged(bool enabled);
267  virtual void onLodScaleCenterMagMinLimitSliderChanged(double intensity);
268 
270  virtual void onNorthTypeChanged(int index);
271 
272  protected:
273 
275 
279 
295 
299 
303 
306 
308  };
309 
314 }
315 
A widget that displays a persistence GUI in some way Operations presented are import, export, save, and restore.
Definition: DtPersistenceToolbarWidget.h:26
This is the interface for the DtObserverSettingsPage.
Definition: DtObserverSettingsInterface.h:21
QCheckBox * myCameraShakeEnabledCheckBox
Definition: DtObserverSettingsPage.h:296
A unicode string.
Definition: DtUnicode.h:33
QTreeWidget * myVisualTypeSettingsWidget
Definition: DtObserverSettingsPage.h:304
Contains makVrv::DtPage class.
QComboBox * myNorthTypeComboBox
Definition: DtObserverSettingsPage.h:307
DtSliderDoubleSpinboxWidget * myLodScaleCenterMagMinLimitSlider
Definition: DtObserverSettingsPage.h:302
DtSliderDoubleSpinboxWidget * mySpeedScalingMslModeOffsetSlider
Definition: DtObserverSettingsPage.h:294
QComboBox * myModelSetComboBox
Definition: DtObserverSettingsPage.h:282
Base select instance widget.
Definition: DtSelectInstanceWidget.h:28
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
QLabel * myMslOffsetLabel
Definition: DtObserverSettingsPage.h:293
Contains DLL export macros.
QSlider * myModelScaleFactorSlider
Definition: DtObserverSettingsPage.h:287
Definition: DtPage.h:143
QRadioButton * mySpeedScalingAglRadioButton
Definition: DtObserverSettingsPage.h:291
QSlider * myRotationSpeedGainSlider
Definition: DtObserverSettingsPage.h:285
QLabel * myLodScaleCenterMagMinLimitLabel
Definition: DtObserverSettingsPage.h:301
QComboBox * myKeyMapComboBox
Definition: DtObserverSettingsPage.h:281
QComboBox * myModelScaleTypeComboBox
Definition: DtObserverSettingsPage.h:288
Contains makVrv::DtObserverSettingsInterface class.
SpeedScalingMode
Definition: DtObserverObject.h:50
DtSelectInstanceWidget * myObserverModeSelectInstanceWidget
Definition: DtObserverSettingsPage.h:277
A widget for pairing a horizontal slider with a double spin-box.
Definition: DtSliderDoubleSpinboxWidget.h:30
DtPersistenceToolbarWidget * myPersistenceToolbar
Definition: DtObserverSettingsPage.h:278
QButtonGroup * mySpeedScalingModeButtonGroup
Definition: DtObserverSettingsPage.h:290
QComboBox * myProjectionComboBox
Definition: DtObserverSettingsPage.h:280
NorthType
Definition: DtObserverObject.h:56
QTreeWidget * myObsererControlSettingsWidget
Definition: DtObserverSettingsPage.h:305
The page is a single widget component which is viewed in a page collection.
Definition: DtPage.h:27
QDoubleSpinBox * myMaxModelScaleFactorSpinBox
Definition: DtObserverSettingsPage.h:289
QComboBox * mySensorComboBox
Definition: DtObserverSettingsPage.h:283
DtPageCreatorTemplate< DtObserverSettingsPage > DtObserverSettingsPageCreator
Creator class for DtObserverSettingsPage.
Definition: DtObserverSettingsPage.h:313
Logic class for editing definition ObserverMode.
Definition: DtObserverSettingsLogic.h:27
const char int mode
Definition: ioapi.h:38
DtSelectInstanceWidget * myObserverSelectInstanceWidget
Definition: DtObserverSettingsPage.h:276
DtSliderDoubleSpinboxWidget * myCameraShakeIntensitySlider
Definition: DtObserverSettingsPage.h:298
DtObserverSettingsLogic * myLogic
Definition: DtObserverSettingsPage.h:274
QCheckBox * myLodScaleCenterEnabledCheckBox
Definition: DtObserverSettingsPage.h:300
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
QRadioButton * mySpeedScalingMslRadioButton
Definition: DtObserverSettingsPage.h:292
A dialog for editing ObserverModes.
Definition: DtObserverSettingsPage.h:36
voidpf uLong offset
Definition: ioapi.h:42
QSlider * myOrbitSpeedGainSlider
Definition: DtObserverSettingsPage.h:286
QSlider * myLinearSpeedGainSlider
Definition: DtObserverSettingsPage.h:284
QLabel * myCameraShakeIntensityLabel
Definition: DtObserverSettingsPage.h:297

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)